Team API

Interfaces to manage Teams


A team can have many campaigns. Often agencies will have a team for each client. Use teams to organize multiple campaigns into a single group. Some people have a single team for all their campaigns while others like to have one "team" per BDR/SDR.

ℹ️

V2 API Recommended

V2 API provides standardized responses and better error handling. See endpoint comparisons below.


Response Format

V2 endpoints return a standardized response with success, data (or message), and request_id. Legacy V1 endpoints may return different shapes. Errors return:

json
{
"error": {
"type": "invalid_request_error",
"code": "missing_team_id",
"message": "TeamId is required",
"param": "TeamId",
"doc_url": "https://docs.supersend.io/docs/errors#missing_team_id"
},
"request_id": "req_a1b2c3d4e5f6789012345678"
}


List Teams

Get all teams you have access to.

bash
curl -X GET 'https://api.supersend.io/v2/teams' \
-H "Authorization: Bearer YOUR_API_KEY"

# Response (200 OK)
{
"success": true,
"data": [
{
"id": "team-uuid",
"name": "Super Send",
"domain": "https://supersend.io",
"logo": "https://supersend.io/logo.svg",
"about": "We create sales tools",
"is_default": false,
"meeting_link": "https://calendly.com/example",
"meeting_link_text": "Schedule a call",
"auto_placement_testing": false,
"member_count": 5,
"organization": {
"id": "org-uuid",
"name": "Super Send Inc"
},
"created_at": "2025-01-01T00:00:00Z",
"updated_at": "2025-01-15T00:00:00Z"
}
],
"pagination": {
"total": 1,
"limit": 20,
"offset": 0,
"hasMore": false
},
"request_id": "req_a1b2c3d4e5f6789012345678"
}

V2 Query Parameters:

ParameterTypeRequiredDescription
limitnumberNoResults per page (default: 20, max: 100)
offsetnumberNoPagination offset (default: 0)
searchstringNoSearch by team name
allstringNoIf "true" and user is org_admin, returns all teams in org (default: "false")


V1 API

bash
curl -X GET 'https://api.supersend.io/v1/teams?all=false' \
-H "Authorization: Bearer YOUR_API_KEY"

# Response
{
"teams": [...]
}

V1 Parameters:

  • all - boolean - Get all org teams (true) or just user's teams (false)

  • Get Team

    Get a single team by ID.

    bash
    curl -X GET 'https://api.supersend.io/v2/teams/team-uuid' \
    -H "Authorization: Bearer YOUR_API_KEY"

    # Response (200 OK)
    {
    "success": true,
    "data": {
    "id": "team-uuid",
    "name": "Super Send",
    "domain": "https://supersend.io",
    "logo": "https://supersend.io/logo.svg",
    "about": "We create sales tools",
    "tags": ["sales", "outreach"],
    "is_default": false,
    "meeting_link": "https://calendly.com/example",
    "meeting_link_text": "Schedule a call",
    "auto_placement_testing": false,
    "auto_placement_testing_frequency": 14,
    "inbox_auto_tag_settings": {
    "auto_tag_bounced": true,
    "auto_tag_opt_out": true,
    "auto_tag_out_of_office": true
    },
    "mail_warm_schedule": {...},
    "organization": {
    "id": "org-uuid",
    "name": "Super Send Inc"
    },
    "members": [
    {
    "id": "user-uuid",
    "first_name": "John",
    "last_name": "Doe",
    "email": "john@example.com",
    "role": "team_member",
    "joined_at": "2025-01-01T00:00:00Z"
    }
    ],
    "member_count": 5,
    "created_at": "2025-01-01T00:00:00Z",
    "updated_at": "2025-01-15T00:00:00Z"
    },
    "request_id": "req_a1b2c3d4e5f6789012345678"
    }


    Create Team

    Create a new team.

    bash
    curl -X POST 'https://api.supersend.io/v2/teams' \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
    "name": "Super Send",
    "domain": "https://supersend.io",
    "logo": "https://supersend.io/logo.svg",
    "about": "We create sales tools",
    "meeting_link": "https://calendly.com/example",
    "meeting_link_text": "Schedule a call",
    "auto_placement_testing": false
    }'

    # Response (201 Created)
    {
    "success": true,
    "data": {
    "id": "team-uuid",
    "name": "Super Send",
    "domain": "https://supersend.io",
    "logo": "https://supersend.io/logo.svg",
    "about": "We create sales tools",
    "is_default": false,
    "meeting_link": "https://calendly.com/example",
    "meeting_link_text": "Schedule a call",
    "auto_placement_testing": false,
    "member_count": 1,
    "created_at": "2025-01-01T00:00:00Z",
    "updated_at": "2025-01-01T00:00:00Z"
    },
    "request_id": "req_a1b2c3d4e5f6789012345678"
    }

    V2 Create Parameters:

    ParameterTypeRequiredDescription
    namestringYesTeam name (1-255 characters)
    domainstringNoTeam domain URL
    logostringNoLogo URL (max 500 chars, must be valid URI)
    aboutstringNoTeam description (max 2000 characters)
    meeting_linkstringNoMeeting scheduling link URL
    meeting_link_textstringNoMeeting link button text (default: "Schedule a call")
    auto_placement_testingbooleanNoEnable auto placement testing (default: false)


    V1 API

    bash
    curl -X POST 'https://api.supersend.io/v1/team' \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
    "name": "Super Send",
    "domain": "https://supersend.io",
    "about": "We create sales tools"
    }'


    Update Team

    Update team details.

    bash
    curl -X PATCH 'https://api.supersend.io/v2/teams/team-uuid' \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
    "name": "Team Super",
    "logo": "https://supersend.io/logo.svg",
    "domain": "https://supersend.io",
    "about": "We make outbound super!",
    "meeting_link": "https://calendly.com/example",
    "meeting_link_text": "Book a call",
    "auto_placement_testing": true,
    "auto_placement_testing_frequency": 14,
    "inbox_auto_tag_settings": {
    "auto_tag_bounced": true,
    "auto_tag_opt_out": true
    }
    }'

    # Response (200 OK)
    {
    "success": true,
    "data": {
    "id": "team-uuid",
    "name": "Team Super",
    "logo": "https://supersend.io/logo.svg",
    "domain": "https://supersend.io",
    "about": "We make outbound super!",
    "is_default": false,
    "meeting_link": "https://calendly.com/example",
    "meeting_link_text": "Book a call",
    "auto_placement_testing": true,
    "auto_placement_testing_frequency": 14,
    "inbox_auto_tag_settings": {
    "auto_tag_bounced": true,
    "auto_tag_opt_out": true,
    "auto_tag_out_of_office": false
    },
    "organization": {
    "id": "org-uuid",
    "name": "Super Send Inc"
    },
    "member_count": 5,
    "created_at": "2025-01-01T00:00:00Z",
    "updated_at": "2025-01-15T00:00:00Z"
    },
    "request_id": "req_a1b2c3d4e5f6789012345678"
    }

    V2 Update Parameters:

    ParameterTypeRequiredDescription
    namestringNoTeam name (1-255 characters)
    domainstringNoTeam domain URL
    logostringNoLogo URL (max 500 chars, must be valid URI)
    aboutstringNoTeam description (max 2000 characters)
    meeting_linkstringNoMeeting scheduling link URL
    meeting_link_textstringNoMeeting link button text
    auto_placement_testingbooleanNoEnable auto placement testing
    auto_placement_testing_frequencynumberNoTesting frequency in days (7, 14, or 30)
    inbox_auto_tag_settingsobjectNoAuto-tagging settings (see below)


    inbox_auto_tag_settings object:

  • auto_tag_bounced (boolean) - Auto-tag bounced emails

  • auto_tag_opt_out (boolean) - Auto-tag opt-out emails

  • auto_tag_out_of_office (boolean) - Auto-tag out-of-office replies

  • auto_tag_mood_positive (boolean) - Auto-tag positive sentiment

  • auto_tag_mood_negative (boolean) - Auto-tag negative sentiment

  • auto_tag_mood_neutral (boolean) - Auto-tag neutral sentiment

  • auto_tag_mood_needs_review (boolean) - Auto-tag for review
  • V1 API

    bash
    curl -X PUT 'https://api.supersend.io/v1/team/team-uuid' \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
    "name": "Team Super",
    "logo": "https://supersend.io/logo.svg",
    "domain": "https://supersend.io",
    "about": "We make outbound super!"
    }'

    Team Fields

    FieldTypeDescription
    namestringTeam name
    logostringURL to team logo
    domainstringTeam website URL
    aboutstringTeam description
    google_oauthobjectGoogle OAuth JSON (V1 only)



    Get Team Usage

    Get contact usage and capacity for a team.

    V2 API

    bash
    curl -X GET 'https://api.supersend.io/v2/teams/team-uuid/usage' \
    -H "Authorization: Bearer YOUR_API_KEY"

    # Response (200 OK)
    {
    "success": true,
    "data": {
    "contacts_limit": 50000,
    "contacts_used": 12500,
    "contacts_available": 37500,
    "percentage_used": 25
    },
    "request_id": "req_a1b2c3d4e5f6789012345678"
    }

    This endpoint helps you track your contact allocation and plan accordingly.


    V1 vs V2 Endpoint Mapping

    ActionV1 EndpointV2 Endpoint
    ListGET /v1/teamsGET /v2/teams
    GetGET /v1/team/:idGET /v2/teams/:id
    CreatePOST /v1/teamPOST /v2/teams
    UpdatePUT /v1/team/:idPATCH /v2/teams/:id
    UsageNot availableGET /v2/teams/:id/usage