Manual
CLI
API
Log in Get started free

Add a team member

Adds a member of the organisation to the team. An address that is not a member yet is invited to the organisation and joins the team once they accept.

Adds a member of the organisation to the team. An address that is not a member yet is invited to the organisation and joins the team once they accept.

HTTP
POST /teams/{teamId}/members

Access: Session token only. API keys get 403 with insufficient_scope.

Role: Organisation owner or admin, or owner or admin of the team.

Path parameters #

ParameterDescription
teamIdThe id of the team.

Request body #

JSON.

FieldTypeRequiredDescription
emailstringyesThe address of the person.
rolestringnoowner, admin, reviewer or translator. Default translator.
JSON
{ "email": "grace@example.com", "role": "reviewer" }

Response 201 #

The team. A person who was invited is not in it yet.

JSON
{
  "id": "0197a3c5-3c42-7f33-96ea-8a2d4b9f1c53",
  "name": "Core",
  "icon": "👥",
  "accent": null,
  "description": "Product translators",
  "allProjects": false,
  "languages": ["de-de", "fr-fr"],
  "members": [
    { "id": "0197a3c2-5b1e-7c4a-9d2f-3e8b6a1f0c55", "name": "Ada Lovelace", "email": "ada@example.com", "initials": "AL", "gradient": "...", "from": "#06b6d4", "to": "#7c3aed", "role": "owner" }
  ],
  "projects": [
    { "projectId": "0197a3c6-4d53-7a44-87fb-9b3e5c0a2d64", "role": "translator" }
  ]
}

Response fields #

FieldTypeDescription
idstringThe id of the team.
namestringThe name.
iconstringAn emoji. The app shows an abbreviation of the name instead.
accentstring or nullA colour.
descriptionstringA description.
allProjectsbooleanWhether the team has access to every project.
languageslist of stringLanguage codes the team works in.
memberslist of objectThe members: the fields of a person (id, name, email, initials, gradient, from, to) and their team role.
projectslist of objectThe projects the team has access to: projectId and the role the team has there.

Errors #

StatuserrorWhen
401unauthenticatedThe token is missing or not valid.
404not_foundThe team does not exist in your organisation, or an id is not a UUID.
403forbiddenYou may not change this team.
402plan_limitAn invitation was needed and the plan has no room for another member.
422invalid_requestrole is not valid, or the invitation failed: email is invalid, already_member or domain_not_allowed.
429rate_limitedToo many requests, see Rate limiting.

See Errors for the error format.

Notes #

Inviting someone needs the organisation owner or admin role.