Skip to main content

Team

Every call needs Authorization: Bearer <key>. 8 calls:

The workspace's pending invites​

GET /v1/invites

Invites not yet accepted, newest first, including expired ones.

Headers

NameTypeRequiredDescription
x-workspace-idstringNoWorkspace for session (JWT) callers. API keys carry their own workspace.

Response 200

FieldTypeDescription
dataobject[]
data[].accepted_atstring (date-time) or nullISO 8601 timestamp.
data[].created_atstring (date-time)ISO 8601 timestamp.
data[].emailstring
data[].expires_atstring (date-time)ISO 8601 timestamp.
data[].idstring (uuid)
data[].roleenumOne of: owner, admin, billing, manager, agent, developer, analyst.
data[].team_idstring (uuid) or null

Errors: 400, 401, 403, 404, 409, 413, 415, 429, 500. See errors for the shape and codes.

Invite someone to the workspace​

POST /v1/invites

Emails a single-use link that expires after 7 days. Only an owner can invite an owner. With team_id, the member joins that team on acceptance.

Headers

NameTypeRequiredDescription
x-workspace-idstringNoWorkspace for session (JWT) callers. API keys carry their own workspace.
idempotency-keystringNoMakes the write safe to retry for 24 hours. 1 to 255 printable characters. Keys starting with outreach:, workflow: or agent: are reserved for messages bubbl3 sends itself and are refused with 400. Up to 255 characters.

Request body

FieldTypeRequiredDescription
emailstring (email)YesUp to 254 characters.
roleenumYesOne of: owner, admin, billing, manager, agent, developer, analyst.
team_idstring (uuid)No

Response 201

FieldTypeDescription
accepted_atstring (date-time) or nullISO 8601 timestamp.
created_atstring (date-time)ISO 8601 timestamp.
emailstring
expires_atstring (date-time)ISO 8601 timestamp.
idstring (uuid)
roleenumOne of: owner, admin, billing, manager, agent, developer, analyst.
team_idstring (uuid) or null

Errors: 400, 401, 403, 404, 409, 413, 415, 429, 500. See errors for the shape and codes.

Accept an invite as the signed-in user​

POST /v1/invites/accept

Needs a user session whose email matches the invite. No X-Workspace-Id is needed.

Request body

FieldTypeRequiredDescription
tokenstringYesUp to 256 characters.

Response 200

FieldTypeDescription
orgobject
org.idstringOrganisation id (org_...).
org.namestring
org.planenumOne of: pilot, growth, enterprise.
org.slugstring
org.statusenumOne of: onboarding, live, paused, suspended, offboarded.
org.timezonestringThe organisation's IANA time zone, used for analytics days and weeks.
roleenumOne of: owner, admin, billing, manager, agent, developer, analyst.
statusenumOne of: active, invited, suspended.
team_idstring (uuid) or null
workspaceobject
workspace.idstringWorkspace id (ws_...).
workspace.is_defaultboolean
workspace.namestring

Errors: 400, 401, 403, 404, 409, 413, 415, 429, 500. See errors for the shape and codes.

Revoke an invite​

DELETE /v1/invites/:id

Deletes a pending invite, so its link stops working. Only an owner can revoke an owner invite.

Path parameters

NameTypeRequiredDescription
idstring (uuid)Yes

Headers

NameTypeRequiredDescription
x-workspace-idstringNoWorkspace for session (JWT) callers. API keys carry their own workspace.
idempotency-keystringNoMakes the write safe to retry for 24 hours. 1 to 255 printable characters. Keys starting with outreach:, workflow: or agent: are reserved for messages bubbl3 sends itself and are refused with 400. Up to 255 characters.

Response 200

FieldTypeDescription
deletedenumOne of: true.
idstring (uuid)

Errors: 400, 401, 403, 404, 409, 413, 415, 429, 500. See errors for the shape and codes.

Resend an invite​

POST /v1/invites/:id/resend

Emails a new single-use link that expires after 7 days. The previous link stops working once the email is sent. Only an owner can resend an owner invite. Each invite can be resent once a minute and 5 times in 24 hours; beyond that the response is 429 with retry-after.

Path parameters

NameTypeRequiredDescription
idstring (uuid)Yes

Headers

NameTypeRequiredDescription
x-workspace-idstringNoWorkspace for session (JWT) callers. API keys carry their own workspace.
idempotency-keystringNoMakes the write safe to retry for 24 hours. 1 to 255 printable characters. Keys starting with outreach:, workflow: or agent: are reserved for messages bubbl3 sends itself and are refused with 400. Up to 255 characters.

Response 200

FieldTypeDescription
accepted_atstring (date-time) or nullISO 8601 timestamp.
created_atstring (date-time)ISO 8601 timestamp.
emailstring
expires_atstring (date-time)ISO 8601 timestamp.
idstring (uuid)
roleenumOne of: owner, admin, billing, manager, agent, developer, analyst.
team_idstring (uuid) or null

Errors: 400, 401, 403, 404, 409, 413, 415, 429, 500. See errors for the shape and codes.

List the workspace's members​

GET /v1/members

Headers

NameTypeRequiredDescription
x-workspace-idstringNoWorkspace for session (JWT) callers. API keys carry their own workspace.

Response 200

FieldTypeDescription
dataobject[]
data[].avatar_urlstring or null
data[].created_atstring (date-time)ISO 8601 timestamp.
data[].emailstring
data[].full_namestring or null
data[].idstring (uuid)Membership id.
data[].last_active_atstring (date-time) or nullISO 8601 timestamp.
data[].roleenumOne of: owner, admin, billing, manager, agent, developer, analyst.
data[].statusenumOne of: active, invited, suspended.
data[].team_idstring (uuid) or null
data[].user_idstring (uuid)

Errors: 400, 401, 403, 404, 409, 413, 415, 429, 500. See errors for the shape and codes.

Change a member's role, team or status​

PATCH /v1/members/:id

Path parameters

NameTypeRequiredDescription
idstring (uuid)Yes

Headers

NameTypeRequiredDescription
x-workspace-idstringNoWorkspace for session (JWT) callers. API keys carry their own workspace.
idempotency-keystringNoMakes the write safe to retry for 24 hours. 1 to 255 printable characters. Keys starting with outreach:, workflow: or agent: are reserved for messages bubbl3 sends itself and are refused with 400. Up to 255 characters.

Request body

FieldTypeRequiredDescription
roleenumNoOne of: owner, admin, billing, manager, agent, developer, analyst.
statusenumNoOne of: active, suspended.
team_idstring (uuid) or nullNo

Response 200

FieldTypeDescription
avatar_urlstring or null
created_atstring (date-time)ISO 8601 timestamp.
emailstring
full_namestring or null
idstring (uuid)Membership id.
last_active_atstring (date-time) or nullISO 8601 timestamp.
roleenumOne of: owner, admin, billing, manager, agent, developer, analyst.
statusenumOne of: active, invited, suspended.
team_idstring (uuid) or null
user_idstring (uuid)

Errors: 400, 401, 403, 404, 409, 413, 415, 429, 500. See errors for the shape and codes.

Remove a member from the workspace​

DELETE /v1/members/:id

Path parameters

NameTypeRequiredDescription
idstring (uuid)Yes

Headers

NameTypeRequiredDescription
x-workspace-idstringNoWorkspace for session (JWT) callers. API keys carry their own workspace.
idempotency-keystringNoMakes the write safe to retry for 24 hours. 1 to 255 printable characters. Keys starting with outreach:, workflow: or agent: are reserved for messages bubbl3 sends itself and are refused with 400. Up to 255 characters.

Response 204

No body.

Errors: 400, 401, 403, 404, 409, 413, 415, 429, 500. See errors for the shape and codes.