Change a member's role or project limit
patch/v1/teams/{team_id}/members/{user_id}
Requires an API key
Owners and admins (members:manage) and Ivora administrators. Only an owner grants, changes or removes the owner role; a team keeps at least one owner (409 last_owner). Owners and admins are never limited to projects.
Path parameters
- team_idstringRequiredPattern
^team_[0-9a-f]{32}$ - user_idstringRequired1–64 characters
Request body
- roleenum | nullTeam role: owner (everything, the team's card and members; never limited to projects), admin (every project, its creation and renaming, the team's billing and the members, never an owner), developer (tenant-admin project access: stations, billing, tokens, webhooks, the project's API keys), operator (read access plus stations:control), viewer (read access, webhooks included) or billing (the team's billing pages and card, no project scope).One of
owner,admin,developer,operator,viewer,billing - projectsarray of integer | nullTenant IDs of the team's projects the member is limited to; null for every project, now and later. Owners and admins are never limited. Omit to keep the current limit; send all_projects to lift it.
- all_projectsboolean | nulltrue lifts a project limit.
Returns · 200
- user_idstringRequired
- emailstring | null
- roleenumRequiredOne of
owner,admin,developer,operator,viewer,billing - projectsarray of integer | nullRequiredTenant IDs of the team's projects the member is limited to; null for every project, now and later. Owners and admins are never limited.
- originenumRequiredgrant or account: imported from an Ivora access grant or Host-account ownership; invite; team: changed by a team manager.One of
grant,account,invite,team - created_atstringRequired
- updated_atstringRequired
- updated_bystringRequired
PATCH /v1/teams/{team_id}/members/{user_id}
curl --fail-with-body -X PATCH "https://api.ivoracharge.com/v1/teams/team_0123456789abcdef0123456789abcdef/members/user_0123456789abcdef" \
-H "Authorization: Bearer $IVORA_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'Response · 200
{
"user_id": "user_0123456789abcdef",
"email": "developer@example.com",
"role": "owner",
"projects": [
1
],
"origin": "grant",
"created_at": "2026-09-30T17:00:00Z",
"updated_at": "2026-09-30T17:00:00Z",
"updated_by": "string"
}Try it is not available here yetRequests from this page are off until the production API at
https://api.ivoracharge.com is public. Use the code samples from your application server; Ivora grants production access. Keys are created in Developer tools.