Team

A teammate is a special user who represents a Tiledesk user invited to a project with a specific role. When you work with teammates you will often use the teammate id in the project (called project_user in the Tiledesk API) rather than the underlying Tiledesk user_id. For example, to get a project_user in a specific project, call this API: https://developer.tiledesk.com/apis/rest-api/team#get-a-teammate-by-id

The Team Model

Key (field) — Type — Description

  • id — String — The unique identifier for the teammate which is given by Tiledesk.

  • role — String — The teammate role. Values: owner, agent, admin, user, guest

  • user_available — Boolean — Determine if the teammate is available or unavailable to accept requests

  • id_user — Object — The user object referenced by the teammate

  • max_served_chat — Number — Number of chats that agent is allowed to take at one time (Only Enterprise)

  • number_assigned_requests — Number — Number of active requests for the teammate (Only Enterprise)

  • status — String — The status of a teammate. Can be "active" or "disabled"

  • isBusy — Boolean — Determine if the teammate is busy (Only Enterprise)

  • profileStatus — String — Alias associated to the teammate availability (e.g., inactive, to the toilet, on the phone)

  • attributes — Object — The custom attributes which are set for the teammate

  • tags — Array — A list of tag objects associated with the teammate

  • settings — Object — The setting configurations of the teammate

  • presence — Object — The presence info of the teammate

  • isAuthenticated — Boolean — Returns true if strongly authenticated (custom-auth or email/password), false otherwise (anonymous)

  • isBusy — Boolean — Returns true if the teammate is busy, false otherwise. See Tiledesk Smart Assignment for more info

  • createdAt — String — The time (ISO-8601 date string) when the teammate was created

  • updatedAt — String — The time (ISO-8601 date string) when the teammate was updated

  • createdBy — String — The unique identifier of the row creator

  • id_project — String — The unique identifier of the project

  • trashed — Boolean — True if the teammate has been removed from the project

The Presence model

Presence lets you track the online/offline status of teammates in real-time (if you use Tiledesk Websocket or Webhook) and store the state. Possible values: online, offline.

Note: an agent passes from online to offline only when they close all Tiledesk messaging apps (e.g., Agent web chat in all tabs and mobile apps).

Agent availability

The field user_available determines if the teammate is available or unavailable to accept requests.

Note: Agent availability changes only when the agent explicitly toggles it in the UI. If an agent is available and logs out, they remain available because they may decide to serve chats from another channel (e.g., Tiledesk mobile app).

Get the team

GET https://api.tiledesk.com/v3/:project_id/project_users

Return the team members and availability.

Path parameters

  • project_id (string) — The Project Id is a unique code assigned to your project when you create it in Tiledesk.

Headers

  • Authorization (string) — Authorization token. Basic Auth or JWT. Minimum role: agent

Response (200)

Example JSON response

Get a teammate by id

GET https://api.tiledesk.com/v3/:project_id/project_users/:project_user_id

Path parameters

  • project_id (string) — The Project Id assigned to your project when created in Tiledesk.

  • project_user_id (string) — The teammate identifier.

Headers

  • Authorization (string) — Authorization token. Basic Auth or JWT. Minimum role: agent

Response (200)

Example JSON response

Get a teammate by user id

GET https://api.tiledesk.com/v3/:project_id/project_users/users/:user_id

Path parameters

  • project_id (string) — The Project Id assigned to your project when created in Tiledesk.

  • user_id (string) — The user identifier.

Headers

  • Authorization (string) — Authorization token. Basic Auth or JWT. Minimum role: agent

Response (200)

Example JSON response

Invite an agent

POST https://api.tiledesk.com/v3/:project_id/project_users/invite

Invite an agent to a project.

Path parameters

  • project_id (string) — The project_id is a unique code assigned to your project when you create it in Tiledesk.

Headers

  • Authorization (string) — Authorization token. Basic Auth or JWT. Minimum role: admin

  • Content-Type (string) — use "application/json"

Request body fields

  • email (string) — the agent email address

  • role (string) — the agent role. Accepted values: agent, admin

  • firstname (string) — the firstname of the agent

  • lastname (string) — the lastname of the agent

  • user_available (boolean) — the initial agent status. Available (true) or unavailable (false).

Response (200)

Example JSON response

Update the current logged teammate

PUT https://api.tiledesk.com/v3/:project_id/project_users/

Path parameters

  • project_id (string) — The project_id assigned to your project.

Headers

  • Authorization (string) — Authorization token. Basic Auth or JWT. Minimum role: agent

  • Content-Type (string) — use "application/json"

Request body fields

  • role (string) — The teammate role. Permitted values: admin, agent.

  • user_available (boolean) — The teammate availability. True for available, false for unavailable. Default is true.

  • max_served_chat (number) — The number of concurrent chats the teammate can take at once.

  • attributes (object) — The teammate custom attributes.

  • settings (object) — The teammate settings object.

Response (200)

Example JSON response

Update a teammate by id

PUT https://api.tiledesk.com/v3/:project_id/project_users/:project_user_id

Requires admin role.

Path parameters

  • project_id (string) — The project_id assigned to your project.

  • project_user_id (string) — The teammate identifier.

Headers

  • Authorization (string) — Authorization token. Basic Auth or JWT. Minimum role: admin

  • Content-Type (string) — use "application/json"

Request body fields

  • role (string) — The teammate role. Permitted values: admin, agent.

  • user_available (boolean) — The teammate availability. True for available, false for unavailable. Default is true.

  • max_served_chat (number) — The number of concurrent chats the teammate can take at once.

  • attributes (object) — The teammate custom attributes.

  • settings (object) — The teammate settings object.

Response (200)

Example JSON response

Leave a project

DELETE https://api.tiledesk.com/v3/:project_id/project_users/:project_user_id

Remove (leave) an agent from a project.

Path parameters

  • project_id (string) — The project_id assigned to your project.

  • project_user_id (string) — The teammate identifier.

Headers

  • Authorization (string) — Authorization token. Basic Auth or JWT. Minimum role: admin

Response (200)

Example JSON response

Links

  • Previous: https://developer.tiledesk.com/apis/rest-api/projects

  • Next: https://developer.tiledesk.com/apis/rest-api/user

Last updated: 5 months ago