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
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:
{
"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.
V2 API (Recommended)
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:
| Parameter | Type | Required | Description |
|---|---|---|---|
limit | number | No | Results per page (default: 20, max: 100) |
offset | number | No | Pagination offset (default: 0) |
search | string | No | Search by team name |
all | string | No | If "true" and user is org_admin, returns all teams in org (default: "false") |
V1 API
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.
V2 API (Recommended)
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.
V2 API (Recommended)
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:
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Team name (1-255 characters) |
domain | string | No | Team domain URL |
logo | string | No | Logo URL (max 500 chars, must be valid URI) |
about | string | No | Team description (max 2000 characters) |
meeting_link | string | No | Meeting scheduling link URL |
meeting_link_text | string | No | Meeting link button text (default: "Schedule a call") |
auto_placement_testing | boolean | No | Enable auto placement testing (default: false) |
V1 API
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.
V2 API (Recommended)
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:
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | No | Team name (1-255 characters) |
domain | string | No | Team domain URL |
logo | string | No | Logo URL (max 500 chars, must be valid URI) |
about | string | No | Team description (max 2000 characters) |
meeting_link | string | No | Meeting scheduling link URL |
meeting_link_text | string | No | Meeting link button text |
auto_placement_testing | boolean | No | Enable auto placement testing |
auto_placement_testing_frequency | number | No | Testing frequency in days (7, 14, or 30) |
inbox_auto_tag_settings | object | No | Auto-tagging settings (see below) |
inbox_auto_tag_settings object:
auto_tag_bounced (boolean) - Auto-tag bounced emailsauto_tag_opt_out (boolean) - Auto-tag opt-out emailsauto_tag_out_of_office (boolean) - Auto-tag out-of-office repliesauto_tag_mood_positive (boolean) - Auto-tag positive sentimentauto_tag_mood_negative (boolean) - Auto-tag negative sentimentauto_tag_mood_neutral (boolean) - Auto-tag neutral sentimentauto_tag_mood_needs_review (boolean) - Auto-tag for reviewV1 API
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
| Field | Type | Description |
|---|---|---|
name | string | Team name |
logo | string | URL to team logo |
domain | string | Team website URL |
about | string | Team description |
google_oauth | object | Google OAuth JSON (V1 only) |
Get Team Usage
Get contact usage and capacity for a team.
V2 API
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
| Action | V1 Endpoint | V2 Endpoint |
|---|---|---|
| List | GET /v1/teams | GET /v2/teams |
| Get | GET /v1/team/:id | GET /v2/teams/:id |
| Create | POST /v1/team | POST /v2/teams |
| Update | PUT /v1/team/:id | PATCH /v2/teams/:id |
| Usage | Not available | GET /v2/teams/:id/usage |