Saltar al contenido

Accept ownership

Módulo Platform

POST/ownership-transfers/{id}/acceptownershipTransfers.accept

The member the org was offered to accepts with step-up, so a second factor (app.accept_ownership_transfer): they become an Owner, then the old Owner becomes an Admin (or leaves) and loses the Owner role, so the org keeps an Owner at every step (invariant 4). An answered, withdrawn or lapsed offer answers 422. Requires `Idempotency-Key`; a replay returns the original response. A rule that refuses the request returns 422 with `refusal` and `reason`.

  • Requiere la capacidad org.members.read.
  • Alcances de OAuth: org.
  • Envía el encabezado Idempotency-Key. Una repetición con la misma clave devuelve la respuesta original.
  • Estados de error: 400, 401, 404, 409, 422, 429. Los errores son detalles de problema RFC 9457.

Parámetros de ruta y de consulta

ownershipTransfers.accept: Parámetros de ruta y de consulta
CampoTipoObligatorioDescripción
idstring (uuid)SíIdentifier of the ownership transfer.

Respuesta 200: OwnershipTransfer

ownershipTransfers.accept: OwnershipTransfer
CampoTipoObligatorioDescripción
idstring (uuid)SíIdentifier of the ownership transfer.
org_idstring (uuid)SíIdentifier of the owning organization, derived from the parent row and never accepted from the caller.
created_atstring (date-time)SíWhen the row was created.
created_bystring (uuid) | nullSíIdentifier of the person who created the row.
updated_atstring (date-time)SíWhen the row was last updated.
updated_bystring (uuid) | nullSíIdentifier of the person who last updated the row.
from_person_idstring (uuid)SíIdentifier of the Owner who offered the org.
to_person_idstring (uuid)SíIdentifier of the member the org is offered to.
previous_owner_outcome"admin" | "leave"SíWhat happens to the Owner who offered on acceptance.
offered_atstring (date-time)SíWhen the offer was made.
expires_atstring (date-time)SíWhen an unanswered offer lapses, 7 days after it was made.
accepted_atstring (date-time) | nullSíWhen the member accepted and became an Owner.
declined_atstring (date-time) | nullSíWhen the member declined.
canceled_atstring (date-time) | nullSíWhen an Owner withdrew the offer.
canceled_bystring (uuid) | nullSíIdentifier of the Owner who withdrew it.
expired_atstring (date-time) | nullSíWhen the lifecycle job lapsed the unanswered offer.
{
  "id": "0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f",
  "org_id": "0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f",
  "created_at": "2026-10-08T14:30:00Z",
  "created_by": "0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f",
  "updated_at": "2026-10-08T14:30:00Z",
  "updated_by": "0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f",
  "from_person_id": "0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f",
  "to_person_id": "0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f",
  "previous_owner_outcome": "admin",
  "offered_at": "2026-10-08T14:30:00Z",
  "expires_at": "2026-10-08T14:30:00Z",
  "accepted_at": "2026-10-08T14:30:00Z",
  "declined_at": "2026-10-08T14:30:00Z",
  "canceled_at": "2026-10-08T14:30:00Z",
  "canceled_by": "0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f",
  "expired_at": "2026-10-08T14:30:00Z"
}

Ejemplos de código

curl -X POST "$XOS_BASE_URL/ownership-transfers/0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f/accept" \
  -H "Authorization: Bearer $XOS_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)"
const { data } = await xos.ownershipTransfers.accept("0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f");
response = xos.ownership_transfers.accept("0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f")
xos ownership-transfers accept 0192f1e2-7c3a-7b4d-9e8f-1a2b3c4d5e6f