Two Minute Reports Logo
Teams

List members

List the members of a team.
GET /teams/{teamId}/members

Returns the members of a team, oldest first. Requires the members.read permission, which every standard role holds.

Breaking change, September 2026. The role field is gone. It carried viewer | editor | owner, which could not describe a member holding Deputy Admin, Data Manager or a custom role — it reported the closest of the three, which was wrong for 168 memberships on the day it was removed. Read roleCode and roleName instead.
Authentication: Bearer token · Role: viewer · Permission:teams:read · Rate limit: default (120 / 60s)

Path parameters

teamId
string · uuid v7 required
The ID of the team.

Request

curl https://api.twominutereports.com/v1/teams/0190f8b0-1a2b-7c3d-8e4f-5a6b7c8d9e0f/members \
  -H "Authorization: Bearer tmrc_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

Response

{
  "success": true,
  "data": [
    {
      "id": "0190f8a1-2b3c-7d4e-8f90-1a2b3c4d5e6f",
      "name": "Ada Lovelace",
      "firstName": "Ada",
      "lastName": "Lovelace",
      "email": "[email protected]",
      "avatarUrl": "https://assets.gox.ai/tmr/avatars/ada.png",
      "roleCode": "owner",
      "roleName": "Owner",
      "roleId": "01930000-0000-7000-8000-000000000001",
      "seat": "standard",
      "joinedAt": "2026-01-12T08:15:00.000Z"
    },
    {
      "id": "0190f8a4-5e6f-7a8b-9c0d-1e2f3a4b5c6d",
      "name": "Grace Hopper",
      "firstName": "Grace",
      "lastName": "Hopper",
      "email": "[email protected]",
      "avatarUrl": null,
      "roleCode": "data_manager",
      "roleName": "Data Manager",
      "roleId": "01930000-0000-7000-8000-000000000004",
      "seat": "none",
      "joinedAt": "2026-02-01T10:00:00.000Z"
    }
  ]
}

The member object

id
string · uuid v7
The member's user ID. Use it as userId in update role and remove member.
name
string | null
The member's full name, or null if not set. Derived from firstName and lastName.
firstName
string | null
The member's first name, or null if not set.
lastName
string | null
The member's last name, or null if not set. A one-word name has a firstName and no lastName.
email
string
The member's email address.
avatarUrl
string | null
The member's avatar image URL, or null if they have not set one.
roleCode
string | null
The member's role: owner, admin, deputy_admin, data_manager, editor or viewer — or null when they hold a custom role, which has no standard code.
roleName
string | null
The role's display name, custom roles included. Always populated when the member has a role.
roleId
string | null
The role's ID. Pass it to update member role to name a role unambiguously — the only way to assign a custom one.
seat
string
standard if this member holds a seat, none if not. Without one they can see everything and change nothing, whatever their role says.
joinedAt
string
When the member joined the team.
Copyright © 2026