Team access
owner_user_id identifies the workspace owner. member_user_id identifies the accepted member and is null while an invitation is pending. The legacy user_id field is deprecated. In collection responses it retains the member ID meaning, while detail and acceptance responses retain the owner ID meaning during the compatibility window.
Endpoint
Authentication
An API key with the teams:read scope (Read teams and members), sent as Authorization: Bearer YOUR_API_KEY.
Example
--url 'https://zapped.to/api/teams-member/' \
--header 'Authorization: Bearer YOUR_API_KEY' \
| Parameters | Details | Description |
|---|---|---|
| search | Optional String | The search string. |
| search_by | Optional String | What field are you searching by. Allowed values are: name. |
| datetime_field | Optional String | Allowed values: datetime, last_datetime |
| datetime_start | Optional String | Filter results starting from this datetime. Y-m-d H:i:s format. |
| datetime_end | Optional String | Filter results up to this datetime. Y-m-d H:i:s format. |
| order_by | Optional String | What field to order the results by. Allowed values are: team_member_id, datetime, last_datetime. |
| order_type | Optional String | The ordering of the results. Allowed values are: ASC for ascending ordering, and DESC for descending ordering. |
| page | Optional Integer | The page number that you want results from. Defaults to 1. |
| results_per_page | Optional Integer | How many results you want per page. Allowed values are: 10, 25, 50, 100, 250, 500, 1000. Defaults to 25. |
Response example
{
"data": [
{
"id": 1,
"access": {
"read": true,
"create": true,
"update": true,
"delete": false
},
"role": "editor",
"resource_scope": "all",
"status": 1,
"last_datetime": null,
"datetime": "2026-10-18 09:03:27",
"team_id": 1,
"user_id": 42,
"owner_user_id": 7,
"member_user_id": 42,
"name": "Example team"
},
{
"id": 2,
"access": {
"read": true,
"create": false,
"update": false,
"delete": false
},
"role": "viewer",
"resource_scope": "all",
"status": 0,
"last_datetime": null,
"datetime": "2026-10-18 09:03:27",
"team_id": 2,
"user_id": 0,
"owner_user_id": 9,
"member_user_id": null,
"name": "Pending team"
}
],
"meta": {
"page": 1,
"results_per_page": 25,
"total": 2,
"total_pages": 1
},
"links": {
"first": "https://zapped.to/api/teams-member?page=1",
"last": "https://zapped.to/api/teams-member?page=1",
"next": null,
"prev": null,
"self": "https://zapped.to/api/teams-member?page=1"
}
}
Endpoint
Authentication
An API key with the teams:read scope (Read teams and members), sent as Authorization: Bearer YOUR_API_KEY.
Example
--url 'https://zapped.to/api/teams-member/{team_member_id}' \
--header 'Authorization: Bearer YOUR_API_KEY' \
Response example
{
"data": {
"id": 1,
"access": {
"read": true,
"create": true,
"update": true,
"delete": false
},
"role": "viewer",
"resource_scope": "projects",
"status": 1,
"last_datetime": null,
"datetime": "2026-10-18 09:03:27",
"team_id": 1,
"user_id": 7,
"owner_user_id": 7,
"member_user_id": 42,
"name": "Example team"
}
}
Endpoint
Authentication
An API key with the teams:write scope (Manage teams, invitations and memberships), sent as Authorization: Bearer YOUR_API_KEY.
| Parameters | Details | Description |
|---|---|---|
| status | Required Boolean | - |
| invitation_token | Optional String | Required for an unverified API account while the invitation is pending. A current exact-email verified account may omit it. Use the current opaque token from the invitation email as the compatible fallback. It is never returned by this API. |
Example
--url 'https://zapped.to/api/teams-member/{team_member_id}' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: multipart/form-data' \
--form 'status=1' \
--form 'invitation_token={invitation_token}' \
Response example
{
"data": {
"id": 1,
"role": "viewer",
"resource_scope": "all",
"status": 1,
"team_id": 1,
"user_id": 7,
"owner_user_id": 7,
"member_user_id": 42,
"name": "Example team"
}
}
Endpoint
Authentication
An API key with the teams:write scope (Manage teams, invitations and memberships), sent as Authorization: Bearer YOUR_API_KEY.
Example
--url 'https://zapped.to/api/teams-member/{team_member_id}' \
--header 'Authorization: Bearer YOUR_API_KEY' \
Declining a pending invitation requires either current exact-email verification for the API account or the current invitation_token in the DELETE form body.
A successful DELETE returns HTTP 200 with an empty response body.