Two Minute Reports Logo
Teams

Remove member

Remove a member from a team.
DELETE /teams/{teamId}/members/{userId}

Removes a member from the team.

The key holder's role must include Remove members (Owner, Admin and Deputy Admin include it), and the key holder must have a seat in the team.

Authentication: Bearer token · Permission:teams:delete · Team permission:members.remove · Rate limit: default (120 / 60s)
You cannot remove yourself, and you cannot remove the last remaining owner. Both fail with 400 BAD_REQUEST.

Beyond the key's own scope, the person who created the key must hold members.remove on the team, and the same containment rules apply as in the Hub: you cannot remove somebody whose role is not smaller than yours, and the team owner cannot be removed by anyone. One Admin cannot remove another, because Admin and Owner hold the same permissions and neither is below the other. A key created by the account owner is the exception: it can remove anybody.

What happens to their work

Removing a member removes their access, not their work. Dashboards, clients, goals, connections, Google Sheets queries and Google Data Studio query configs all stay with the team, and their scheduled refreshes keep running.

The exception is credentials they created. API keys and MCP connections carry their holder's permissions, so removing the holder stops them working. If an integration runs on a key belonging to somebody you are removing, re-create it under an account that is staying first.

If you only want to free their seat, unassign the seat instead of removing them. They keep read access, and nothing they built is affected. See Manage members.

Path parameters

teamId
string · uuid v7 required
The ID of the team.
userId
string · uuid v7 required
The ID of the member to remove, from list members.

Request

curl -X DELETE https://api.twominutereports.com/v1/teams/0190f8b0-1a2b-7c3d-8e4f-5a6b7c8d9e0f/members/0190f8a4-5e6f-7a8b-9c0d-1e2f3a4b5c6d \
  -H "Authorization: Bearer tmrc_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

Response

{
  "success": true,
  "data": { "removed": true }
}
Copyright © 2026