Restriction: This feature is available only in paid Premium and Enterprise groups.
It is not available in free Premium trial groups.
Overview
Groups.io supports uploads of JSON (JavaScript Object Notation format) files to direct add members (see Adding members directly). JSON files allow you to specify member labels and extra member data when you add members directly.
Note:
- The system automatically detects the format based on the first character:
[
= JSON array
{
= JSON Lines
Otherwise = traditional format - JSON Lines format can fall back to traditional format for non-JSON lines, allowing mixed input.
- Member labels must exist in the group; non-existent labels are skipped with a warning.
- Extra member data columns must exist and types must match; invalid entries are skipped.
JSON array format
[
{
"email": "user1@...",
"full_name": "User One",
"email_delivery": "digest",
"mod_status": "moderator",
"member_labels": ["VIP", "Board Member"],
"post_status": "sub_poststatus_allowed",
"message_selection": "message_selection_follow_only",
"auto_follow_replies": true,
"max_attachment_size": "max_attachment_size_large",
"about_me": "Senior engineer with 10 years experience",
"location": "San Francisco, CA",
"website": "https://example.com/user1",
"signature": "Best regards,\nUser One",
"use_signature": true,
"use_signature_email": true,
"extra_member_data": [
{"col_id": 1, "col_type": "text_column", "text": "EMP123"},
{"col_id": 2, "col_type": "text_column", "text": "Engineering"}
]
},
{
"email": "user2@...",
"full_name": "User Two",
"email_delivery": "nomail",
"post_status": "sub_poststatus_moderated",
"auto_follow_replies": false
}
]
JSON Lines format (NDJSON)
Each line is a separate JSON object:
{"email": "user1@...", "full_name": "User One", "email_delivery": "digest"}
{"email": "user2@...", "mod_status": "owner", "member_labels": ["VIP"]}
{"email": "user3@...", "email_delivery": "summary"}
Required fields
email
(string): Email address of the user
Optional fields
full_name
(string): Display name for the useremail_delivery
(string): Email delivery preference- Values:
"digest"
,"summary"
,"nomail"
,"special"
- Values:
mod_status
(string): Moderator status (requires AllowOwner permission)- Values:
"moderator"
,"owner"
- Values:
member_labels
(array of strings): Names of existing member labels to apply- Labels must already exist in the group
post_status
(string): Posting permission level- Values:
"sub_poststatus_normal"
,"sub_poststatus_allowed"
,"sub_poststatus_moderated"
,"sub_poststatus_notallowed"
,"sub_poststatus_newusermoderated"
,"sub_poststatus_mod_first_message"
,"sub_poststatus_mod_started_topics"
- Values:
message_selection
(string): Which messages to receive- Values:
"message_selection_all"
,"message_selection_follow_only"
,"message_selection_follow_and_first_message"
- Values:
auto_follow_replies
(Boolean): Automatically follow topics when replyingmax_attachment_size
(string): Maximum attachment size allowed- Values:
"max_attachment_size_unlimited"
,"max_attachment_size_small"
,"max_attachment_size_medium"
,"max_attachment_size_large"
,"max_attachment_size_none"
- Values:
about_me
(string): Profile about textlocation
(string): Profile locationwebsite
(string): Profile website URLsignature
(string): Email signature textuse_signature
(Boolean): Use signature for web postsuse_signature_email
(Boolean): Use signature for emailed postsextra_member_data
(array of objects): Extra member data values
Each object contains:col_id
(number): Column ID from group's extra member data definitioncol_type
(string): Column type (must match the defined column type)- Values:
"text_column"
,"paragraph_column"
,"checkbox_column"
,"multiple_choice_column"
,"date_column"
,"time_column"
,"address_column"
,"multi_choice_column"
,"link_column"
,"image_column"
,"html_paragraph_column"
,"number_column"
,"email_column"
- Values:
- Value fields depending on type:
text
(string): For text_column, paragraph_column, email_columnhtml_text
(string): For html_paragraph_columnchecked
(Boolean): For checkbox_columndate
(string): For date_column (ISO 8601 format)time
(string): For time_column (ISO 8601 format)number
(number): For number_columnmulti_choice
(array of numbers): For multiple_choice_column, multi_choice_column- Address fields for address_column:
street_address1
,street_address2
,city
,state
,zip
,country
- Link fields for link_column:
title
,url
,desc
- Image fields for image_column:
image_name