Team Members API

Interfaces to manage team members


Team members are users who have access to campaigns in a team. We support read-only users, team members, and org admins.

ℹ️

V1 API Only

Team member management is available in V1 API only.


Add Team Member

Add a new user to one or more teams. If the user already exists, they will be added to the specified teams.

bash
curl -X POST 'https://api.supersend.io/v1/team/member' \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"firstName": "John",
"lastName": "Doe",
"email": "john@example.com",
"TeamId": "team-uuid",
"role": "org_admin",
"sendEmail": true,
"team_x_users": [
{
"TeamId": "team-uuid",
"name": "Sales Team"
},
{
"TeamId": "team-uuid-2",
"name": "Marketing Team"
}
]
}'

# Response (200 OK)
{
"success": true,
"user": {
"id": "user-uuid",
"firstName": "John",
"lastName": "Doe",
"email": "john@example.com",
"role": "org_admin",
...
},
"inviteToken": "jwt-token-here"
}

Request Parameters:

ParameterTypeRequiredDescription
firstNamestringYesUser's first name
lastNamestringYesUser's last name
emailstringYesUser's email address (must be valid email format)
TeamIdstringYesPrimary team ID
rolestringNoUser role: org_admin (default), read_only, or team_member
sendEmailbooleanNoSend invitation email (default: false)
team_x_usersarrayNoArray of teams to add user to. Each object should have TeamId and optionally name


Note:

  • If user already exists in your organization, they will be added to the specified teams

  • If user was previously soft-deleted, they will be reactivated

  • An invitation token is generated and returned (valid for 7 days)

  • If sendEmail is true, an invitation email is sent with login credentials

  • Get Team Members

    Get all members of a team with filtering and pagination.

    bash
    curl -X GET 700 dark:text-green-400">'https://api.supersend.io/v1/team/members?id=team-uuid&limit=20&offset=0&name=john&filters=[{"field":"role","value":"org_admin"}]&orderBy={"title":"firstName"}&orderDirection=ASC' \
    -H "Authorization: Bearer YOUR_API_KEY"

    # Response (200 OK)
    {
    "success": true,
    "team": [
    {
    "id": "team-x-user-uuid",
    "TeamId": "team-uuid",
    "UserId": "user-uuid",
    "Team": {...},
    "User": {
    "id": "user-uuid",
    "firstName": "John",
    "lastName": "Doe",
    "email": "john@example.com",
    "role": "org_admin",
    ...
    }
    }
    ],
    "limit": 20,
    "offset": 0,
    "count": 5
    }

    Query Parameters:

    ParameterTypeRequiredDescription
    idstringYesTeam ID
    namestringNoSearch by user name
    limitnumberNoResults per page (default: 10)
    offsetnumberNoPagination offset (default: 0)
    pagenumberNoPage number (zero-indexed, default: 0)
    pageSizenumberNoPage size (default: 10)
    filtersstringNoJSON string array of filter objects: [{"field":"role","value":"org_admin"}]
    orderBystringNoJSON object: {"title":"firstName"}
    orderDirectionstringNoSort direction: ASC or DESC



    Get Team Member

    Get a specific team member by user ID.

    bash
    curl -X GET 'https://api.supersend.io/v1/team/member/user-uuid?TeamId=team-uuid' \
    -H "Authorization: Bearer YOUR_API_KEY"

    # Response (200 OK)
    {
    "success": true,
    "user": {
    "id": "user-uuid",
    "firstName": "John",
    "lastName": "Doe",
    "email": "john@example.com",
    "role": "org_admin",
    ...
    }
    }

    Query Parameters:

    ParameterTypeRequiredDescription
    TeamIdstringYesTeam ID



    Update Team Member

    Update a team member's details, role, or team associations.

    bash
    curl -X PUT 'https://api.supersend.io/v1/team/member' \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
    "id": "user-uuid",
    "firstName": "Jane",
    "lastName": "Smith",
    "email": "jane@example.com",
    "role": "read_only",
    "TeamId": "team-uuid",
    "tags": ["sales", "manager"],
    "team_x_users": [
    {
    "TeamId": "team-uuid",
    "name": "Sales Team"
    },
    {
    "TeamId": "team-uuid-2",
    "name": "Marketing Team"
    }
    ]
    }'

    # Response (200 OK)
    {
    "success": true
    }

    Request Parameters:

    ParameterTypeRequiredDescription
    idstringYesUser ID to update
    TeamIdstringYesPrimary team ID
    firstNamestringNoUser's first name
    lastNamestringNoUser's last name
    emailstringNoUser's email address
    rolestringNoUser role: org_admin, team_member, or read_only
    tagsarrayNoArray of tag strings
    team_x_usersarrayNoArray of teams user should belong to. User will be removed from teams not in this list


    Note:

  • Only org_admin users can update team members

  • You cannot change your own role unless you're an org_admin

  • Updating team_x_users will add/remove user from teams accordingly

  • Role changes update user permissions automatically

  • User Roles

    RoleDescriptionPermissions
    org_adminOrganization administratorFull access to all features
    team_memberTeam memberCan perform most actions except admin functions
    read_onlyRead-only userCan only view data, cannot make changes