Skip to main content

Team

The Team API provides CRUD access to team members (staff users).
New to the API? Start with Getting started (base URL, response envelope, errors, pagination) and Authentication (API keys).
Identifier note: team members are addressed by their numeric user id.
A team member is a staff user (type='team') with a role (Administrator / Staff). Creating one provisions a login (a random password is generated) and a personal workspace; the welcome email is opt-in.
Scope: per-user preferences, avatar upload and role management (a separate concern) are out of API scope. Web events are not fired.

The team member object

{
  "id": 280,
  "first_name": "Jane",
  "last_name": "Doe",
  "name": "Jane Doe",
  "email": "jane@example.com",
  "phone": "12345",
  "job_position": "Developer",
  "role": { "id": 3, "name": "Staff" },
  "status": "active",
  "dashboard_access": "yes",
  "social": { "facebook": null, "twitter": null, "linkedin": null, "github": null, "dribbble": null },
  "dates": { "created": "...", "updated": "..." }
}
FieldTypeNotes
idintegerUser id.
first_name / last_name / namestring
emailstringUnique across all users.
roleobject{ id, name } (Administrator=1, Staff=3).
statusstringactive / suspended / deleted.
job_position / phonestringOptional.

List / search team members

GET /api/team
Query params: status, role_id, search, sort (first_name,last_name,email,created), order, limit, page. Soft-deleted members are excluded by default.
curl -G https://your-domain/api/team -H "Authorization: Bearer YOUR_API_KEY" -d role_id=3

Get a team member

GET /api/team/{id}

Create a team member

POST /api/team
ParameterTypeRequiredNotes
first_namestringyes
last_namestringyes
emailstringyesUnique across all users.
role_idintegeryesA team role (Administrator=1 / Staff=3).
phonestringno
positionstringno
send_emailstringnoyes to send the welcome email (with login details). Default no.
curl -X POST https://your-domain/api/team -H "Authorization: Bearer YOUR_API_KEY" \
  -d first_name=Jane -d last_name=Doe -d email=jane@example.com -d role_id=3 -d send_email=yes
Returns the new team member (201, status active).

Update a team member

PATCH /api/team/{id}
ParameterTypeRequiredNotes
first_name / last_namestringyes
emailstringyesUnique (ignoring this user).
role_idintegerno
phone / positionstringno
passwordstringnoNew password (min 5), applied if supplied.

Delete a team member

DELETE /api/team/{id}
Soft-deletes the account (status deleted, login cleared) and removes the member’s project/task/ lead assignments, project-manager rows and calendar events.

Errors

See Getting started. Team-specific:
StatusMeaning
404 Not FoundThe team member id does not exist.
422 Unprocessable EntityValidation failed (missing name/email/role, duplicate email, or an invalid role).