List team members

Lists the people in your Bonsai account, a page at a time. This is where you turn a name into an id before assigning work: use company_member_id for assignee_member_id and owner_member_id, and user_id for filter[assignee_id] on the tasks list.

Two fields that sound alike mean different things. role is a job title your team typed in, such as Software Engineer, and carries no authority. permission_profile is the profile that decides what the member can do, such as Owner or Collaborator.

Your clients are not team members and never appear here.

Membership status

There is no single status field. Work it out from three timestamps, checking them in this order:

Condition Status
deactivated_at is set Deactivated — no access, whatever else is set
declined_at is set Declined the invitation
confirmed_at is set Active
all three are null Invited, waiting for a response

Filtering

  • filter[name] — searches member names, ignoring case.
  • filter[id] — one or more team member ids.
  • filter[user_id] — one or more user ids.
  • filter[project_id] — one or more project ids. Returns only the members assigned to those projects.
Query Parameters
  • page[number]
    Type: integer
    min:  
    1

    Page to return, starting at 1.

  • page[size]
    Type: integer
    min:  
    1
    max:  
    100

    Records per page. Defaults to 25; anything above 100 is reduced to 100.

  • filter[id]
    Type: string

    One or more team member ids, comma-separated or repeated.

  • filter[user_id]
    Type: string

    One or more user ids, comma-separated or repeated.

  • filter[project_id]
    Type: string

    One or more project ids, comma-separated or repeated. Returns only the members assigned to those projects.

  • filter[name]
    Type: string

    Searches member names, ignoring case.

Responses
  • application/json
  • application/json
  • application/json
  • application/json
  • application/json
Request Example for get/public-api/v1/team_members
curl https://app.hellobonsai.com/public-api/v1/team_members \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN'
{
  "data": [
    {
      "user_id": 6012,
      "deactivated_at": "2026-04-14T09:12:04.000Z",
      "confirmed_at": "2026-04-14T09:12:04.000Z",
      "declined_at": "2026-04-14T09:12:04.000Z",
      "company_member_id": 314,
      "name": "Maria Santos",
      "email": "maria@example.com",
      "role": "Software Engineer",
      "permission_profile": "Project Manager"
    }
  ],
  "meta": {
    "request_id": "b1f0d2c4-7a9e-4c3b-8d5f-1e2a3b4c5d6e",
    "pagination": {
      "page": 1,
      "page_size": 25,
      "has_more": true
    }
  }
}