API · holds

holds operations in the OpenAPI contract that accept an API key.

Updated:

POST /holds

Crear una pre-reserva (hold) de 10 minutos

La misma Idempotency-Key conserva el conjunto pedido, también en replays concurrentes del core. Otro conjunto responde 422 idempotency_conflict; el orden de recursos no altera el payload. 409 membership_blocked si el cliente tiene la membresía que cubre ese servicio bloqueada por impago (plan en el cuerpo; se libera al pagar la cuota).

  • Authentication: API key or dashboard session
  • Scopes: None

Parameters

NameInRequiredTypeDescription
Idempotency-KeyheaderYesstringUUID único por operación; reintentos con la misma key devuelven el mismo resultado durante 24 h.

Request body (required)

  • application/json: HoldCreate

Responses

StatusDescription
201Creado (Booking)
409Error (RFC 9457) (Problem)
defaultError (RFC 9457) (Problem)

DELETE /holds/{id}

Liberar un hold

Cancelar nunca se bloquea (F3-181, decisión del dueño 2026-10-09). Con etapas v2, liberar una tarea held/pending_payment no exige los datos de la etapa cancelada ni de la salida «cancelar».

  • Authentication: API key or dashboard session
  • Scopes: None

Parameters

NameInRequiredTypeDescription
idpathYesstring

Responses

StatusDescription
204Liberado
defaultError (RFC 9457) (Problem)

POST /holds/{id}/confirm

Confirmar un hold (o pasarlo a pending_payment si requiere seña)

Serializa la confirmación con reinicios de configuración. Un hold pendiente cuyo servicio está inactivo responde 409 service_inactive; una confirmación ya comprometida conserva su replay idempotente. Confirmar para otro cliente (customer_id) cuya membresía que cubre ese servicio está bloqueada por impago responde 409 membership_blocked.

  • Authentication: API key or dashboard session
  • Scopes: None

Parameters

NameInRequiredTypeDescription
idpathYesstring
Idempotency-KeyheaderYesstringUUID único por operación; reintentos con la misma key devuelven el mismo resultado durante 24 h.

Request body (required)

  • application/json: HoldConfirm

Responses

StatusDescription
200OK (Booking)
409Error (RFC 9457) (Problem)
410Error (RFC 9457) (Problem)
defaultError (RFC 9457) (Problem)