Update a guest-registration form in your API scope.
PUT /v1/forms/{id}
Updates an existing form, running the same safety pipeline as the in-app flow. Requires a read-write key (a read-only key returns 403). The form and the target listingId (a form may be moved to another in-scope listing) must both be in scope, or the request returns 404 with no existence disclosure. PUT targets a specific form id and is therefore naturally idempotent; it carries no Idempotency-Key.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”The form id (UUID).
Request Body required
Section titled “Request Body required ”The body for updating a guest-registration form. The form id is the path parameter, not a body field.
object
The in-scope listing the form belongs to (a PUT may move the form to another in-scope listing).
Check-in instant (ISO-8601, UTC).
Check-out instant (ISO-8601, UTC). Must be after checkInDate.
Number of guests on the form.
Optional guest contact email. Write-only — never returned in FormV1.
Responses
Section titled “ Responses ”The updated form.
The public projection of a guest-registration form. A curated, additive-only subset.
object
The form’s unique id.
The id of the listing this form belongs to.
The form’s public slug.
The public form status. Additive-only — new values may appear over time. Always handle UNKNOWN as a forward-compatible catch-all for any status this API version does not enumerate.
When the form was created (ISO-8601, UTC). The cursor ordering key.
The request was malformed — an invalid cursor (INVALID_CURSOR) or a failed parameter validation (VALIDATION_ERROR, with field-level errors[]).
The single error envelope for every public-surface error response.
object
A stable, enumerated error code. Branch on this, never on message.
A human-readable description. May change without a contract break.
A per-response id for support correlation.
Present only for VALIDATION_ERROR — the field-level validation failures.
One field-level validation failure.
object
The rejected field or query parameter name.
What was wrong with it.
The API key is missing, malformed, revoked, or expired (UNAUTHENTICATED).
The single error envelope for every public-surface error response.
object
A stable, enumerated error code. Branch on this, never on message.
A human-readable description. May change without a contract break.
A per-response id for support correlation.
Present only for VALIDATION_ERROR — the field-level validation failures.
One field-level validation failure.
object
The rejected field or query parameter name.
What was wrong with it.
The key is authenticated but not permitted this operation (FORBIDDEN) — e.g. a read-only key on a write.
The single error envelope for every public-surface error response.
object
A stable, enumerated error code. Branch on this, never on message.
A human-readable description. May change without a contract break.
A per-response id for support correlation.
Present only for VALIDATION_ERROR — the field-level validation failures.
One field-level validation failure.
object
The rejected field or query parameter name.
What was wrong with it.
The resource does not exist, or the key has no access to it (RESOURCE_NOT_FOUND). The two cases are indistinguishable — no existence disclosure.
The single error envelope for every public-surface error response.
object
A stable, enumerated error code. Branch on this, never on message.
A human-readable description. May change without a contract break.
A per-response id for support correlation.
Present only for VALIDATION_ERROR — the field-level validation failures.
One field-level validation failure.
object
The rejected field or query parameter name.
What was wrong with it.
The request body exceeded the public-surface size or field-count limit (PAYLOAD_TOO_LARGE).
The single error envelope for every public-surface error response.
object
A stable, enumerated error code. Branch on this, never on message.
A human-readable description. May change without a contract break.
A per-response id for support correlation.
Present only for VALIDATION_ERROR — the field-level validation failures.
One field-level validation failure.
object
The rejected field or query parameter name.
What was wrong with it.
The per-key rate limit was exceeded (RATE_LIMITED). Retry after the interval in Retry-After.
The single error envelope for every public-surface error response.
object
A stable, enumerated error code. Branch on this, never on message.
A human-readable description. May change without a contract break.
A per-response id for support correlation.
Present only for VALIDATION_ERROR — the field-level validation failures.
One field-level validation failure.
object
The rejected field or query parameter name.
What was wrong with it.
Headers
Section titled “Headers ”Integer seconds to wait before retrying (RFC 7231 delta-seconds form, always >= 1).