ProductOSDocs

Entity reference · v1

team-members

TEAM-NNNNNNtable team_memberssoft delete

Workspace members with capacity and skills. Only admins and the owner create, edit or trash them; members assign them to Work.

A team member is a person on the workspace roster, linked to a sign-in through profile_id or not.

Work and initiatives

/api/v1/team-members/{id}/links/features and /links/initiatives assign the person to Work items and initiatives. Each link carries allocation_pct (0 to 100, default 50) and a free-text role.

Products and modules

/api/v1/team-members/{id}/links/products and /links/modules give the person a role on a product or module (Owner, Product Manager, a custom role up to 60 characters; default Contributor). These are the same rows as the product's and module's members links, read from the person's side. See Products entity.

Merging two team members moves the duplicate's Work, initiative, product and module links to the one kept.

Endpoints

GET/api/v1/team-members
POST/api/v1/team-members
GET/api/v1/team-members/{id}
PATCH/api/v1/team-members/{id}
DELETE/api/v1/team-members/{id}
POST/api/v1/team-members/{id}/restore
GET/api/v1/team-members/{id}/links/features
POST/api/v1/team-members/{id}/links/features
DELETE/api/v1/team-members/{id}/links/features/{targetId}
GET/api/v1/team-members/{id}/links/initiatives
POST/api/v1/team-members/{id}/links/initiatives
DELETE/api/v1/team-members/{id}/links/initiatives/{targetId}
GET/api/v1/team-members/{id}/links/products
POST/api/v1/team-members/{id}/links/products
DELETE/api/v1/team-members/{id}/links/products/{targetId}
GET/api/v1/team-members/{id}/links/modules
POST/api/v1/team-members/{id}/links/modules
DELETE/api/v1/team-members/{id}/links/modules/{targetId}

Writable fields

* required on create. PATCH treats every field as optional.

FieldTypeConstraintsNotes
full_name*string
emailstring
role*string
teamstring
avatar_urlstring
statusstringactive | away | offboarded
capacityinteger≥ 0 · ≤ 100
skillsstring[]
profile_iduuid
manager_iduuidSelf-FK to team_members.id; powers the org chart hierarchy.
metadatajson

Listing & filtering

  • Pagination: ?limit=50&offset=0 · max limit 200
  • Default sort: ?sort=full_name&order=asc
  • Sortable fields: created_at · updated_at · full_name · capacity · id_number
  • Search (?q=): full_name, email, role
  • Filters: ?team= ?status= , repeat any filter to OR multiple values
  • Trash: hidden by default; pass ?include_deleted=true
  • Expand: ?expand=features,initiatives

Examples

curlbash
curl 'https://productos.ca/api/v1/team-members?limit=10' \
  -H "Authorization: Bearer $TOKEN"

Try it out

Paste a token and hit a real endpoint. The request goes from your browser straight to /api/v1/team-members. The token is held in this page only for the request and is never stored.

Try it out

Issue tokens in Settings → API tokens. Token never leaves this page.

GET/api/v1/team-members?limit=3

Generated from the API's entity configuration. This page is rebuilt on every deploy, so it always matches the live API.