Skip to main content
Questions or issues? Contact us at api-support@manus.ai.

Team User Management

Lets enterprise tenant administrators provision, modify, and offboard team members from external identity systems. Built for SCIM-style automation: account aggregation, role updates, lifecycle (active / inactive / removed), and the Profile Migration workflow for taking ownership of a deactivated colleague’s data.

Endpoints

List team members

Page through team members with status / delegation filters

Get member detail

Look up a single member by email or team_user_id

Add a member

Create a new team member, auto-provisioning the underlying personal account if needed

Update status / role

Activate, deactivate, or change role; cascading reclaim of delegated profiles when deactivating

Delegate a profile

Hand a deactivated profile to an active member so they can take over its data

Reclaim a profile

Return a delegated profile to the deactivated pool

Rename a profile

Update a profile’s display name (useful for delegated profiles)

Remove a member

Permanently remove a team member; cascading reclaim of delegated profiles

User lifecycle

ACTIVE ⇄ INACTIVE → REMOVED  (terminal, hard delete)

         (delegated profiles live here until reclaimed or re-delegated)
  • ACTIVE — full access. Can be promoted/demoted via team.user.update (except OWNER, which is API-immutable).
  • INACTIVE — disabled. Once inactive, a profile becomes eligible for delegation via team.user.delegate.
  • REMOVED — terminal. Hard-deletes the user; cascades to reclaim profiles delegated to them.

Profile delegation

When an employee leaves, their account is deactivated and may then be delegated to an active teammate so the teammate can keep working on the data:
  1. team.user.update sets status: USER_STATUS_INACTIVE on the departing employee.
  2. team.user.delegate hands team_user_id to target_team_user_id. The delegated profile’s email is rewritten to delegate-<id>@manus.im; the original is preserved in original_email.
  3. team.user.rename (optional) gives the delegated profile a human-readable label.
  4. team.user.reclaim returns the profile to the deactivated pool — no data loss; can be re-delegated later.
Removing or deactivating an assignee automatically reclaims everything delegated to them; the affected profiles are returned in cascade_affected[].

Operational notes

  • Authentication: X-API-Key with key type Team User Management. See Authentication.
  • Owner is read-only: The team owner cannot be modified, deactivated, removed, or downgraded via the API. Transfer ownership in the UI first.
  • team_user_id is the stable handle: Once a profile is delegated, its email becomes delegate-<id>@manus.im. Cache the team_user_id from your initial team.user.create / team.user.list response and use it for every subsequent profile operation.
  • Guest role does not consume a seat: Promoting GUEST → MEMBER/ADMIN/SUPER_ADMIN via team.user.update calls Stripe to bump seat quantity; the reverse direction releases the seat implicitly. A Stripe failure during a paid promotion surfaces as internal and the role change is rolled back.
  • Audit logging: Every call writes to the shared enterprise audit log, correlated by request_id from the response envelope.