API and MCP reference

Team

2 operations. Each REST operation is also an MCP tool of the same name. REST https://tlntconnect.com/api/v1

GET/api/v1/teamActive team members (an admin key sees the whole team; other roles only themselves), for assignments.

Active team members of the workspace, as GET /api/team shows them: an admin member's key gets every active member (id, name, email, role); any other role gets only its own member. Implementation (vendor) accounts never appear.

MCP tool
list_team_members
Scopes
workspace:read
Members
admin, manager, scout, viewer
Idempotency-Key
Ignored (read)
Rate weight
1

Responses

200Success
400invalid_input / invalid_json / invalid_id
401missing_token / invalid_token / revoked_token / expired_token
403missing_scope / actor_unavailable / plan_upgrade_required / role_forbidden
404not_found (unknown, cross-workspace or not visible to the key's member)
429rate_limited (honour Retry-After)
500internal_error
POST/api/v1/team/assignmentsAssign roster creators to a manager. Runs directly within the daily reassignment cap unless this credential asks for approval in TLNT for creator assignments (then 202 pending_approval).

Assigns roster creators to a manager (or admin) of this workspace — mode replace (the manager's assignments become exactly these creators) or append. Identity administration, in the "Creator assignments" approval class. By default it runs at once — every creator moved to the manager or taken off them (replace mode) counts against the credential's creators reassigned per day (default 100, up to 1,000; 429 daily_reassignment_cap_reached past it, nothing changes) — and answers 200 { status: "executed", action_id, action_status, result: { assigned, unassigned, manager_id } }: the Atlas team.creator_assign action, recorded against this credential (GET /actions/{action_id}) and run by the same handler an in-app approval runs. When the credential asks for approval in TLNT for creator assignments, it answers 202 { status: "pending_approval", action_id, approval_url } and an admin approves or rejects it in TLNT; poll GET /actions/{action_id}. Needs roster:write and an admin member's key; the manager must be an active admin or manager and every creator an active (not former) roster creator of this workspace (404 manager_not_found / creator_not_found). What runs is snapshotted first, by name: the manager, each creator with the member who currently has them (who loses them) and — for replace — every creator the manager loses (a replace that would unassign more than 1,000 is 400). If any of that changes before it runs — including a rename — nothing changes (409 stale_target when run directly; a failed action when approved). Requires an Idempotency-Key.

MCP tool
assign_creators_to_manager
Scopes
roster:write
Members
admin
Approval
Runs directly; queued when the credential asks for approval for creator_assignment
Idempotency-Key
required
Rate weight
1

Input

Idempotency-Key header, requiredstring — Retry-safe key (1-255 printable ASCII; a UUID is recommended; an RFC 8941 quoted string is accepted). The same key with the same request within 24h replays the stored response byte for byte (Idempotent-Replayed: true) without running again; the replay still consumes the operation's rate weight.
creator_ids body, requiredarray of string (uuid) — Roster creators in this workspace.
manager_id body, requiredstring (uuid) — An active admin or manager of this workspace (see GET /team).
mode body, required"append" | "replace" — append adds these creators; replace makes them the manager's only assignments.

Responses

200Success
202pending_approval — queued for approval in TLNT (only when the credential asks for approval for this action class; it runs directly by default)
400invalid_input / invalid_json / invalid_id / idempotency_key_required
401missing_token / invalid_token / revoked_token / expired_token
403missing_scope / actor_unavailable / plan_upgrade_required / role_forbidden
404not_found (unknown, cross-workspace or not visible to the key's member) / manager_not_found / creator_not_found
409stale_target / idempotency_key_reused / idempotency_in_progress / idempotency_context_changed / idempotency_response_too_large
429rate_limited (honour Retry-After) / daily_reassignment_cap_reached
500internal_error / idempotent_replay_of_failure
503service_unavailable