Skip to main content

Team Management API

Manage organization members, roles, and environment-level permissions.

Roles​

RoleDescription
ownerFull access, can manage billing and organization settings
adminCan manage members, API keys, webhooks, and approve changes
developerCan create and modify flags, segments, and submit approvals
viewerRead-only access to all resources

List Members​

GET /v1/members

Auth: JWT (All roles)

Response 200 OK​

{
"data": [
{
"id": "member-uuid",
"org_id": "org-uuid",
"role": "owner",
"email": "admin@example.com",
"name": "Admin User"
}
],
"total": 1,
"limit": 50,
"offset": 0,
"has_more": false
}

Invite Member​

POST /v1/members/invite

Auth: JWT (Owner, Admin)

Request​

{
"email": "dev@example.com",
"role": "developer"
}
FieldTypeRequiredDefaultDescription
emailstringYes—Invitee's email
rolestringNodeveloperowner, admin, developer, viewer

Response 201 Created​

Returns a member response object. If the user doesn't have an account, a stub account is created.

Error 409 Conflict​

Returned if the user is already a member of the organization.


Update Role​

PUT /v1/members/{memberID}

Auth: JWT (Owner, Admin)

Request​

{
"role": "admin"
}

Response 204 No Content​


Remove Member​

DELETE /v1/members/{memberID}

Auth: JWT (Owner, Admin)

Response 204 No Content​

Members cannot remove themselves.


Environment Permissions​

Fine-grained permissions control what a member can do in specific environments.

List Permissions​

GET /v1/members/{memberID}/permissions

Response 200 OK​

[
{
"id": "uuid",
"member_id": "uuid",
"env_id": "uuid",
"can_toggle": true,
"can_edit_rules": false
}
]

Update Permissions​

PUT /v1/members/{memberID}/permissions

Auth: JWT (Owner, Admin)

Request​

{
"permissions": [
{
"env_id": "production-uuid",
"can_toggle": true,
"can_edit_rules": false
}
]
}

Response 200 OK​

Returns the full updated permission list.