Skip to main content
POST
/
api
/
organizations
/
transfer
/
execute
Execute a cross-organization user transfer (SuperAdmin only)
curl --request POST \
  --url https://your-instance.example.com/api/organizations/transfer/execute \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "scanVersion": "scan-2026-05-18T14:30:00Z-abc123",
  "userId": "5f7b1c2e8a1d4e0012c3b4a6",
  "targetOrganizationId": "5f7b1c2e8a1d4e0012c3b401",
  "targetDepartmentId": "5f7b1c2e8a1d4e0012c3b510",
  "newAccessRole": "SALES_REP",
  "reassigneeUserId": "5f7b1c2e8a1d4e0012c3b4a8",
  "agentRemaps": [
    {
      "fromAgentId": "5f7b1c2e8a1d4e0012c3b610",
      "toAgentId": "5f7b1c2e8a1d4e0012c3b611"
    }
  ]
}
'
{
  "transferId": "5f7b1c2e8a1d4e0012c3b900",
  "status": "in_progress"
}

Documentation Index

Fetch the complete documentation index at: https://docs.tetherai.ca/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
scanVersion
string
required

Version token returned by the prior scan call; rejected if stale to prevent applying an out-of-date transfer plan.

Minimum string length: 1
userId
string
required

User being transferred; must match the userId from the matching scan.

targetOrganizationId
string
required

Destination organization for the user; must match the targetOrganizationId from the matching scan.

newAccessRole
enum<string>
required

Access role the user receives in the target organization.

Available options:
ADMIN,
DEPARTMENT_HEAD,
SALES_REP
reassigneeUserId
string
required

User in the source org who inherits the transferring user's owned resources (contacts, conversations, automations, workflows, webchat configs, prompts); must differ from userId.

targetDepartmentId
string

Optional department within the target organization the user joins; the user is added as a manager when newAccessRole is DEPARTMENT_HEAD, otherwise as a member.

agentRemaps
object[]

Optional remappings applied to the transferring user's automations so each fromAgentId is swapped to the corresponding toAgentId owned by the reassignee.

Response

Transfer accepted and started in the background

transferId
string
required
status
enum<string>
required
Available options:
in_progress