DELETE /v1/identity/session-families/{family_id}
撤销当前用户的一个设备会话族
Description (from the contract)
目标必须属于当前已认证 principal 的同一 scope/user。服务端在同一事务中重新锁定并校验 caller session、账户、membership 和 scope 后锁定整个 family。原 caller 仍有效时,精确重试 返回原响应;相同 Idempotency-Key 改变 family、revision、caller 或 request identity 返回 409。 撤销当前会话时,本次响应成功后当前 Bearer token 立即失效,后续请求先返回 401,不能绕过 caller 认证读取幂等收据。
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
family_id | path | string(uuid) | Yes | — |
X-Request-ID | header | string(uuid) | Yes | — |
If-Match | header | string | Yes | 列表返回的当前 family revision,必须使用强 ETag 形式 |
Idempotency-Key | header | string | Yes | — |
Responses
| Status | Description |
|---|---|
200 | 已撤销或精确幂等重放 Fields: |
400 | 稳定错误码和默认中文消息;不包含服务端原始错误或敏感会话数据 |
401 | 稳定错误码和默认中文消息;不包含服务端原始错误或敏感会话数据 |
404 | 稳定错误码和默认中文消息;不包含服务端原始错误或敏感会话数据 |
405 | 稳定错误码和默认中文消息;不包含服务端原始错误或敏感会话数据 |
409 | 稳定错误码和默认中文消息;不包含服务端原始错误或敏感会话数据 |
500 | 稳定错误码和默认中文消息;不包含服务端原始错误或敏感会话数据 |
503 | 稳定错误码和默认中文消息;不包含服务端原始错误或敏感会话数据 |
What to do on failure
400Fix the parameters or body per the field list; do not retry unchanged.401Check the credential format and whether it expired or was rotated.404The resource does not exist or belongs to another tenant.409Read the current state first; a retry of the same operation keeps the original Idempotency-Key and body.500Outcome unknown: read back by ID or list first, then decide whether to retry with the original Idempotency-Key.503A dependency is unavailable: retry later with the original Idempotency-Key.