unlink_member_identity
Disconnect one of a project member's platform accounts, keeping them a way to sign in.
Purpose
Disconnects one of a member's connected accounts on the creator's behalf: the account no longer signs the member in to the portal, and the project's bot no longer knows them by it. The same recovery rule the portal applies to the member holds here — the account cannot be removed when it is the member's last way to sign in (no verified email, linked Google account or other connected account remains). Emits member.identity_unlinked. Destructive and not idempotent: a second call answers RESOURCE_NOT_FOUND.
Required ability
project-user:update
Input schema
{
"type": "object",
"required": ["member_id", "identity_id"],
"properties": {
"member_id": {
"type": "string",
"description": "UUID of the project member."
},
"identity_id": {
"type": "string",
"description": "The link `id` from `list_member_identities` to disconnect."
}
}
}Output shape
{
"data": {
"member_id": "2a91c4e7-6f38-4b52-8e0d-9c1a7b3f5d80",
"identity_id": "6a1f0c3e-2d4b-4e8a-9c7d-1b5e3f9a2c4d",
"connector": "telegram",
"removed": true
}
}Example prompts
"Disconnect the Telegram account from member
2a91c4e7-…; they asked us to."
"Remove connected account
6a1f0c3e-…from this subscriber."
Failure modes
RESOURCE_NOT_FOUND— unknownmember_id, anidentity_idthat is not one of that member's links, or a member outside the token's scope.VALIDATION_FAILED— the account is the member's last way to sign in. Have them add an email or connect another account first.TOKEN_MISSING_ABILITY— token lacksproject-user:update.
Related
How is this guide?