Salta ai contenuti
ArenileArenile
Coste360.itCoste360.it

Aggiunge una nota

POST
/api/admin/v1/establishments/{establishmentId}/bookings/{bookingId}/notes
curl --request POST \
--url https://example.com/api/admin/v1/establishments/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/bookings/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/notes \
--header 'Content-Type: application/json' \
--cookie arenile_session=<arenile_session> \
--data '{ "text": "example", "visibility": "internal" }'

Idempotency-Key consigliata (coda offline del pannello, spec 21.2).

establishmentId
required
string format: uuid
bookingId
required
string format: uuid
Idempotency-Key
string
>= 8 characters <= 128 characters

Chiave di idempotenza scelta dal client (consigliato un UUID). Una richiesta ripetuta con la stessa chiave restituisce la risposta originale; con un corpo diverso risponde 422 idempotency_key_reused.

X-CSRF-Token
string

Obbligatorio per le richieste autenticate via cookie che modificano dati: deve coincidere con il valore del cookie arenile_csrf.

Media typeapplication/json
object
text
required
string
>= 1 characters <= 2000 characters
visibility
string
Allowed values: internal customer

Prenotazione con la nota

Media typeapplication/json
object
id
required
string format: uuid
code
required
string
status
required

Stato della prenotazione (spec 10.2).

string
Allowed values: draft held pending_payment awaiting_approval confirmed checked_in completed cancelled no_show expired rejected
channel
required

Canale di vendita.

string
Allowed values: desk online api
customer
required
object
id
required
string format: uuid
first_name
required
string
last_name
required
string
display_name
required

Cognome e nome per elenchi e mappa.

string
email
string
phone
string
locale
required
string
notes
required
string
tags
required
Array<string>
agreement_id
string format: uuid
marketing_consent

Consenso marketing separato e facoltativo (spec 23).

object
given_at
required
string format: date-time
source
required
string
<= 40 characters
text_version
required
string
<= 40 characters
anonymized_at
string format: date-time
version
required

Versione per la concorrenza ottimistica; coincide con l’ETag.

integer format: int64
>= 1
created_at
required
string format: date-time
updated_at
required
string format: date-time
starts_on
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
ends_on
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
slots
required

Fasce prenotate: mattina, pomeriggio o giorno intero.

string
Allowed values: AM PM FULL
formula
required

Formula di durata.

string
Allowed values: half_day day multi_day week fortnight month season
is_season_pass
required
boolean
test

Creata in modalità prova (spec 15.4): esclusa da report, KPI, corrispettivi ed esportazioni.

boolean
season_id
string format: uuid
total_amount
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
paid_amount
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
balance_due
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
deposit_due
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
hold_expires_at
string format: date-time
lines
required
Array<object>
object
id
required
string format: uuid
pack_id
required
string format: uuid
pack_code
string
zone_id
required
string format: uuid
spot_id
string format: uuid
spot_label
string
assignment_status
required
string
Allowed values: assigned pending not_applicable
quantity
required

Unità per le zone a quantità; 1 altrimenti.

integer
line_total
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
extras
required
Array<object>
object
id
required
string format: uuid
extra_id
required
string format: uuid
extra_code
string
booking_line_id

Assente per gli extra legati alla prenotazione.

string format: uuid
quantity
required
integer
total
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
extras
required

Extra legati alla prenotazione (attach_to = booking).

Array<object>
object
id
required
string format: uuid
extra_id
required
string format: uuid
extra_code
string
booking_line_id

Assente per gli extra legati alla prenotazione.

string format: uuid
quantity
required
integer
total
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
allocations
required
Array<object>

Una riga di spot_allocations o pool_allocations della prenotazione.

object
booking_line_id
string format: uuid
spot_id
string format: uuid
pool_id
string format: uuid
date
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
slot
required

Fascia: mattina o pomeriggio.

string
Allowed values: AM PM
kind
required
string
Allowed values: booking hold block season
quantity
integer
expires_at
string format: date-time
payments
required
Array<object>
object
id
required
string format: uuid
booking_id
string format: uuid
booking_code
string
provider
required

Manual, stripe, …

string
method
required

Metodo di pagamento (spec 6.7); credit = uso del saldo crediti del cliente (spec 13.4).

string
Allowed values: cash card bank_transfer wallet credit other
direction
required
string
Allowed values: in refund
amount
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
status
required
string
Allowed values: pending succeeded failed cancelled
provider_ref
string
cash_session_id
string format: uuid
refund_of_payment_id
string format: uuid
received_by_user_id
string format: uuid
description
string
note
string
created_at
required
string format: date-time
test

Incassato in modalità prova (spec 15.4): escluso da report, KPI, corrispettivi ed esportazioni.

boolean
history
required
Array<object>

Voce dello storico, letta dal registro attività (audit_log).

object
at
required
string format: date-time
action
required

Es. booking.created, booking.confirmed, booking.note_added, payment.succeeded.

string
actor_type
required
string
Allowed values: user customer system api_key
actor_id
string
actor_name
string
details
object
key
additional properties
any
price_snapshot
required

Dettaglio completo del calcolo (spec 8.6), con le regole applicate passo per passo.

object
engine_version
required
integer
currency
required
string
lines
required
Array<object>
object
pack
required
string
zone
required
string
spot
string
fixed
object
formula
required

Formula a durata fissa.

string
Allowed values: week fortnight month season
rate_period
string
amount
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
days
required
Array<object>
object
date
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
slots
required

Fasce prenotate: mattina, pomeriggio o giorno intero.

string
Allowed values: AM PM FULL
base
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
applied
required
Array<object>
object
rule
required
string
stage
required
string
Allowed values: base modifier discount
effect
required
string
total
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
extras
required
Array<object>
object
code
required
string
qty
required
integer
total
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
total
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
extras
Array<object>
object
code
required
string
qty
required
integer
total
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
discounts
required
Array<object>
object
source
required
string
amount
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
rounding
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
total
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
vat
required
Array<object>
object
rate
required

Numero decimale esatto come stringa (es. “1.2”, “0.5”, “10”). Mai float nel calcolo.

string
/^-?[0-9]{1,9}(\.[0-9]{1,6})?$/
taxable
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
tax
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
price_current

Scomposizione corrente del prezzo dopo una modifica successiva alla conferma (ADR 0011): total_amount coincide con il suo totale. Assente finché la prenotazione non è stata modificata dopo la conferma (vale price_snapshot, immutabile, INV-21).

object
engine_version
required
integer
currency
required
string
lines
required
Array<object>
object
pack
required
string
zone
required
string
spot
string
fixed
object
formula
required

Formula a durata fissa.

string
Allowed values: week fortnight month season
rate_period
string
amount
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
days
required
Array<object>
object
date
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
slots
required

Fasce prenotate: mattina, pomeriggio o giorno intero.

string
Allowed values: AM PM FULL
base
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
applied
required
Array<object>
object
rule
required
string
stage
required
string
Allowed values: base modifier discount
effect
required
string
total
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
extras
required
Array<object>
object
code
required
string
qty
required
integer
total
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
total
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
extras
Array<object>
object
code
required
string
qty
required
integer
total
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
discounts
required
Array<object>
object
source
required
string
amount
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
rounding
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
total
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
vat
required
Array<object>
object
rate
required

Numero decimale esatto come stringa (es. “1.2”, “0.5”, “10”). Mai float nel calcolo.

string
/^-?[0-9]{1,9}(\.[0-9]{1,6})?$/
taxable
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
tax
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
policy_snapshot
required

Policy applicata al momento della creazione (spec 9), base di rimborsi e modifiche.

object
policy_id
string format: uuid
rules
required

Vincoli di prenotazione (spec 9); i campi assenti ereditano dalla policy di default.

object
min_lead_time
object
days
integer
cutoff_time
string
/^([01][0-9]|2[0-3]):[0-5][0-9]$/
max_lead_time_days
integer
same_day_booking
object
enabled
boolean
until
string
/^([01][0-9]|2[0-3]):[0-5][0-9]$/
only_slot
string
Allowed values: AM PM PM_after
duration
object
allowed_formulas
Array<string>
Allowed values: half_day day multi_day week fortnight month season
min_days
integer
>= 1
max_days
integer
>= 1
fixed_start_weekday

ISO 1..7; 0 = qualsiasi.

integer
<= 7
payment
object
mode
string
Allowed values: full deposit none
deposit
object
type
string
Allowed values: percent amount
value

Percentuale intera o importo in centesimi.

integer format: int64
balance_due
string
/^(on_arrival|days_before:[0-9]{1,3})$/
cancellation
Array<object>
object
until_days_before
required
integer
refund_percent
required
integer
<= 100
as
string
Allowed values: refund credit
modification
object
allowed_until_days_before
integer
fee

Importo in centesimi di euro (IVA inclusa).

integer format: int64
weather_policy
object
enabled
boolean
as
string
Allowed values: refund credit
approval_required
boolean
max_spots_per_booking
integer
>= 1
allow_spot_change_during_stay
boolean
customer_can_release_season_days
boolean
season_release_credit
object
enabled
boolean
percent
integer
<= 100
credit_validity_days

Validità in giorni dei crediti emessi da questa policy (cancellazione, meteo, rilascio): expires_on = giorno di emissione + giorni. Assente o 0 = nessuna scadenza (spec 9, 13.4).

integer
<= 3650
promo_code
string
agreement_id
string format: uuid
notes_customer
required
string
notes_internal
required
string
cancelled_at
string format: date-time
cancel_reason
string
created_by_user_id
string format: uuid
refunds

Rimborsi garantiti verso il provider (stato visibile, mai persi né doppi).

Array<object>
object
id
required
string format: uuid
booking_id
required
string format: uuid
booking_code
string
amount
required

Importo in centesimi di euro (IVA inclusa).

integer format: int64
provider
required
string
payment_intent_id

Intent di pagamento rimborsato.

string format: uuid
refund_intent_id

Intent di rimborso presso il provider (dopo il primo invio).

string format: uuid
payment_id

Riga refund del registro pagamenti (dopo la conferma).

string format: uuid
status
required

Pending: riservato, in attesa di invio (o di nuovo tentativo); processing: inviato al provider, in attesa di conferma; succeeded: confermato dal provider (riga refund nel registro pagamenti); failed: tentativi esauriti, serve un intervento (notifica al gestore); cancelled: annullato dal gestore (rimborso fatto altrove).

string
Allowed values: pending processing succeeded failed cancelled
attempts
required
integer
next_attempt_at
string format: date-time
last_error
string
reason
required
string
Allowed values: customer_cancellation panel_cancellation expired_hold
test
boolean
created_at
required
string format: date-time
updated_at
required
string format: date-time
completed_at
string format: date-time
next_statuses
required

Stati raggiungibili da quello corrente (macchina a stati, spec 10.2).

Array<string>
Allowed values: draft held pending_payment awaiting_approval confirmed checked_in completed cancelled no_show expired rejected
version
required

Versione per la concorrenza ottimistica; coincide con l’ETag.

integer format: int64
>= 1
created_at
required
string format: date-time
updated_at
required
string format: date-time

Example

{
"status": "draft",
"channel": "desk",
"slots": "AM",
"formula": "half_day",
"lines": [
{
"assignment_status": "assigned"
}
],
"allocations": [
{
"slot": "AM",
"kind": "booking"
}
],
"payments": [
{
"method": "cash",
"direction": "in",
"status": "pending"
}
],
"history": [
{
"actor_type": "user"
}
],
"price_snapshot": {
"lines": [
{
"fixed": {
"formula": "week"
},
"days": [
{
"slots": "AM",
"applied": [
{
"stage": "base"
}
]
}
]
}
]
},
"price_current": {
"lines": [
{
"fixed": {
"formula": "week"
},
"days": [
{
"slots": "AM",
"applied": [
{
"stage": "base"
}
]
}
]
}
]
},
"policy_snapshot": {
"rules": {
"same_day_booking": {
"only_slot": "AM"
},
"duration": {
"allowed_formulas": [
"half_day"
]
},
"payment": {
"mode": "full",
"deposit": {
"type": "percent"
}
},
"cancellation": [
{
"as": "refund"
}
],
"weather_policy": {
"as": "refund"
}
}
},
"refunds": [
{
"status": "pending",
"reason": "customer_cancellation"
}
],
"next_statuses": [
"draft"
]
}

Richiesta non valida

Media typeapplication/problem+json

Errore RFC 9457 (application/problem+json).

object
type
required

Slug stabile del tipo di errore. I client devono basarsi su questo valore, mai sul testo di title o detail.

string
Allowed values: bad_request validation_failed unauthorized invalid_credentials totp_required invalid_totp totp_enrolment_required totp_already_enabled forbidden csrf_failed not_found conflict method_not_allowed unsupported_media_type rate_limited idempotency_key_reused idempotency_in_progress internal_error spot_unavailable no_price policy_violation hold_expired version_conflict precondition_required spot_has_future_allocations not_implemented pool_exhausted quota_exceeded invalid_transition cash_session_closed cash_session_already_open booking_outside_period checkout_not_found payment_provider_unavailable webhook_signature_invalid pairing_code_invalid lan_mode_required loopback_required setup_token_invalid setup_completed renewal_expired waitlist_offer_expired waitlist_disabled credit_insufficient season_rollover_conflict test_mode_preview_required import_invalid import_already_applied refund_in_progress zone_full assignment_conflict ticket_number_conflict ticket_voided ticket_already_entered price_changed ticket_owned printing_unavailable printer_address_not_allowed print_route_missing payment_provider_test_mode email_template_invalid
title
required
string
status
required
integer
detail
string
instance
string
request_id
string
retry_after

Secondi da attendere (solo per rate_limited).

integer
errors
Array<object>
object
field
required
string
message
required
string
current_version

Versione corrente della risorsa (solo per version_conflict).

integer format: int64
spot_ids

Postazioni con allocazioni future (solo per spot_has_future_allocations).

Array<string>
violations

Vincoli violati (solo per policy_violation).

Array<object>
object
code
required

Codice stabile (es. lead_time_too_short).

string
params
object
key
additional properties
string
conflicts

Mezze giornate non disponibili (solo per spot_unavailable, pool_exhausted, quota_exceeded).

Array<object>

Mezza giornata non disponibile per una risorsa (spec 7.2), restituita in Problem.conflicts e nelle anteprime.

object
spot_id
string format: uuid
pool_id
string format: uuid
zone_id
string format: uuid
date
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
slot
required

Fascia: mattina o pomeriggio.

string
Allowed values: AM PM
reason
required
string
Allowed values: spot_unavailable pool_exhausted quota_exceeded closed inactive
current_status

Stato della prenotazione (spec 10.2).

string
Allowed values: draft held pending_payment awaiting_approval confirmed checked_in completed cancelled no_show expired rejected
existing_customer_id

Cliente già presente con la stessa email o telefono (solo per conflict su createCustomer).

string format: uuid
period

Periodo del soggiorno e data odierna dello stabilimento (solo per booking_outside_period).

object
today
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
starts_on
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
ends_on
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date

Example

{
"type": "bad_request",
"conflicts": [
{
"slot": "AM",
"reason": "spot_unavailable"
}
],
"current_status": "draft"
}

Autenticazione assente o non valida

Media typeapplication/problem+json

Errore RFC 9457 (application/problem+json).

object
type
required

Slug stabile del tipo di errore. I client devono basarsi su questo valore, mai sul testo di title o detail.

string
Allowed values: bad_request validation_failed unauthorized invalid_credentials totp_required invalid_totp totp_enrolment_required totp_already_enabled forbidden csrf_failed not_found conflict method_not_allowed unsupported_media_type rate_limited idempotency_key_reused idempotency_in_progress internal_error spot_unavailable no_price policy_violation hold_expired version_conflict precondition_required spot_has_future_allocations not_implemented pool_exhausted quota_exceeded invalid_transition cash_session_closed cash_session_already_open booking_outside_period checkout_not_found payment_provider_unavailable webhook_signature_invalid pairing_code_invalid lan_mode_required loopback_required setup_token_invalid setup_completed renewal_expired waitlist_offer_expired waitlist_disabled credit_insufficient season_rollover_conflict test_mode_preview_required import_invalid import_already_applied refund_in_progress zone_full assignment_conflict ticket_number_conflict ticket_voided ticket_already_entered price_changed ticket_owned printing_unavailable printer_address_not_allowed print_route_missing payment_provider_test_mode email_template_invalid
title
required
string
status
required
integer
detail
string
instance
string
request_id
string
retry_after

Secondi da attendere (solo per rate_limited).

integer
errors
Array<object>
object
field
required
string
message
required
string
current_version

Versione corrente della risorsa (solo per version_conflict).

integer format: int64
spot_ids

Postazioni con allocazioni future (solo per spot_has_future_allocations).

Array<string>
violations

Vincoli violati (solo per policy_violation).

Array<object>
object
code
required

Codice stabile (es. lead_time_too_short).

string
params
object
key
additional properties
string
conflicts

Mezze giornate non disponibili (solo per spot_unavailable, pool_exhausted, quota_exceeded).

Array<object>

Mezza giornata non disponibile per una risorsa (spec 7.2), restituita in Problem.conflicts e nelle anteprime.

object
spot_id
string format: uuid
pool_id
string format: uuid
zone_id
string format: uuid
date
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
slot
required

Fascia: mattina o pomeriggio.

string
Allowed values: AM PM
reason
required
string
Allowed values: spot_unavailable pool_exhausted quota_exceeded closed inactive
current_status

Stato della prenotazione (spec 10.2).

string
Allowed values: draft held pending_payment awaiting_approval confirmed checked_in completed cancelled no_show expired rejected
existing_customer_id

Cliente già presente con la stessa email o telefono (solo per conflict su createCustomer).

string format: uuid
period

Periodo del soggiorno e data odierna dello stabilimento (solo per booking_outside_period).

object
today
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
starts_on
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
ends_on
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date

Example

{
"type": "bad_request",
"conflicts": [
{
"slot": "AM",
"reason": "spot_unavailable"
}
],
"current_status": "draft"
}

Permesso negato

Media typeapplication/problem+json

Errore RFC 9457 (application/problem+json).

object
type
required

Slug stabile del tipo di errore. I client devono basarsi su questo valore, mai sul testo di title o detail.

string
Allowed values: bad_request validation_failed unauthorized invalid_credentials totp_required invalid_totp totp_enrolment_required totp_already_enabled forbidden csrf_failed not_found conflict method_not_allowed unsupported_media_type rate_limited idempotency_key_reused idempotency_in_progress internal_error spot_unavailable no_price policy_violation hold_expired version_conflict precondition_required spot_has_future_allocations not_implemented pool_exhausted quota_exceeded invalid_transition cash_session_closed cash_session_already_open booking_outside_period checkout_not_found payment_provider_unavailable webhook_signature_invalid pairing_code_invalid lan_mode_required loopback_required setup_token_invalid setup_completed renewal_expired waitlist_offer_expired waitlist_disabled credit_insufficient season_rollover_conflict test_mode_preview_required import_invalid import_already_applied refund_in_progress zone_full assignment_conflict ticket_number_conflict ticket_voided ticket_already_entered price_changed ticket_owned printing_unavailable printer_address_not_allowed print_route_missing payment_provider_test_mode email_template_invalid
title
required
string
status
required
integer
detail
string
instance
string
request_id
string
retry_after

Secondi da attendere (solo per rate_limited).

integer
errors
Array<object>
object
field
required
string
message
required
string
current_version

Versione corrente della risorsa (solo per version_conflict).

integer format: int64
spot_ids

Postazioni con allocazioni future (solo per spot_has_future_allocations).

Array<string>
violations

Vincoli violati (solo per policy_violation).

Array<object>
object
code
required

Codice stabile (es. lead_time_too_short).

string
params
object
key
additional properties
string
conflicts

Mezze giornate non disponibili (solo per spot_unavailable, pool_exhausted, quota_exceeded).

Array<object>

Mezza giornata non disponibile per una risorsa (spec 7.2), restituita in Problem.conflicts e nelle anteprime.

object
spot_id
string format: uuid
pool_id
string format: uuid
zone_id
string format: uuid
date
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
slot
required

Fascia: mattina o pomeriggio.

string
Allowed values: AM PM
reason
required
string
Allowed values: spot_unavailable pool_exhausted quota_exceeded closed inactive
current_status

Stato della prenotazione (spec 10.2).

string
Allowed values: draft held pending_payment awaiting_approval confirmed checked_in completed cancelled no_show expired rejected
existing_customer_id

Cliente già presente con la stessa email o telefono (solo per conflict su createCustomer).

string format: uuid
period

Periodo del soggiorno e data odierna dello stabilimento (solo per booking_outside_period).

object
today
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
starts_on
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
ends_on
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date

Example

{
"type": "bad_request",
"conflicts": [
{
"slot": "AM",
"reason": "spot_unavailable"
}
],
"current_status": "draft"
}

Risorsa inesistente

Media typeapplication/problem+json

Errore RFC 9457 (application/problem+json).

object
type
required

Slug stabile del tipo di errore. I client devono basarsi su questo valore, mai sul testo di title o detail.

string
Allowed values: bad_request validation_failed unauthorized invalid_credentials totp_required invalid_totp totp_enrolment_required totp_already_enabled forbidden csrf_failed not_found conflict method_not_allowed unsupported_media_type rate_limited idempotency_key_reused idempotency_in_progress internal_error spot_unavailable no_price policy_violation hold_expired version_conflict precondition_required spot_has_future_allocations not_implemented pool_exhausted quota_exceeded invalid_transition cash_session_closed cash_session_already_open booking_outside_period checkout_not_found payment_provider_unavailable webhook_signature_invalid pairing_code_invalid lan_mode_required loopback_required setup_token_invalid setup_completed renewal_expired waitlist_offer_expired waitlist_disabled credit_insufficient season_rollover_conflict test_mode_preview_required import_invalid import_already_applied refund_in_progress zone_full assignment_conflict ticket_number_conflict ticket_voided ticket_already_entered price_changed ticket_owned printing_unavailable printer_address_not_allowed print_route_missing payment_provider_test_mode email_template_invalid
title
required
string
status
required
integer
detail
string
instance
string
request_id
string
retry_after

Secondi da attendere (solo per rate_limited).

integer
errors
Array<object>
object
field
required
string
message
required
string
current_version

Versione corrente della risorsa (solo per version_conflict).

integer format: int64
spot_ids

Postazioni con allocazioni future (solo per spot_has_future_allocations).

Array<string>
violations

Vincoli violati (solo per policy_violation).

Array<object>
object
code
required

Codice stabile (es. lead_time_too_short).

string
params
object
key
additional properties
string
conflicts

Mezze giornate non disponibili (solo per spot_unavailable, pool_exhausted, quota_exceeded).

Array<object>

Mezza giornata non disponibile per una risorsa (spec 7.2), restituita in Problem.conflicts e nelle anteprime.

object
spot_id
string format: uuid
pool_id
string format: uuid
zone_id
string format: uuid
date
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
slot
required

Fascia: mattina o pomeriggio.

string
Allowed values: AM PM
reason
required
string
Allowed values: spot_unavailable pool_exhausted quota_exceeded closed inactive
current_status

Stato della prenotazione (spec 10.2).

string
Allowed values: draft held pending_payment awaiting_approval confirmed checked_in completed cancelled no_show expired rejected
existing_customer_id

Cliente già presente con la stessa email o telefono (solo per conflict su createCustomer).

string format: uuid
period

Periodo del soggiorno e data odierna dello stabilimento (solo per booking_outside_period).

object
today
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
starts_on
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
ends_on
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date

Example

{
"type": "bad_request",
"conflicts": [
{
"slot": "AM",
"reason": "spot_unavailable"
}
],
"current_status": "draft"
}

Operazione non ancora disponibile (not_implemented)

Media typeapplication/problem+json

Errore RFC 9457 (application/problem+json).

object
type
required

Slug stabile del tipo di errore. I client devono basarsi su questo valore, mai sul testo di title o detail.

string
Allowed values: bad_request validation_failed unauthorized invalid_credentials totp_required invalid_totp totp_enrolment_required totp_already_enabled forbidden csrf_failed not_found conflict method_not_allowed unsupported_media_type rate_limited idempotency_key_reused idempotency_in_progress internal_error spot_unavailable no_price policy_violation hold_expired version_conflict precondition_required spot_has_future_allocations not_implemented pool_exhausted quota_exceeded invalid_transition cash_session_closed cash_session_already_open booking_outside_period checkout_not_found payment_provider_unavailable webhook_signature_invalid pairing_code_invalid lan_mode_required loopback_required setup_token_invalid setup_completed renewal_expired waitlist_offer_expired waitlist_disabled credit_insufficient season_rollover_conflict test_mode_preview_required import_invalid import_already_applied refund_in_progress zone_full assignment_conflict ticket_number_conflict ticket_voided ticket_already_entered price_changed ticket_owned printing_unavailable printer_address_not_allowed print_route_missing payment_provider_test_mode email_template_invalid
title
required
string
status
required
integer
detail
string
instance
string
request_id
string
retry_after

Secondi da attendere (solo per rate_limited).

integer
errors
Array<object>
object
field
required
string
message
required
string
current_version

Versione corrente della risorsa (solo per version_conflict).

integer format: int64
spot_ids

Postazioni con allocazioni future (solo per spot_has_future_allocations).

Array<string>
violations

Vincoli violati (solo per policy_violation).

Array<object>
object
code
required

Codice stabile (es. lead_time_too_short).

string
params
object
key
additional properties
string
conflicts

Mezze giornate non disponibili (solo per spot_unavailable, pool_exhausted, quota_exceeded).

Array<object>

Mezza giornata non disponibile per una risorsa (spec 7.2), restituita in Problem.conflicts e nelle anteprime.

object
spot_id
string format: uuid
pool_id
string format: uuid
zone_id
string format: uuid
date
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
slot
required

Fascia: mattina o pomeriggio.

string
Allowed values: AM PM
reason
required
string
Allowed values: spot_unavailable pool_exhausted quota_exceeded closed inactive
current_status

Stato della prenotazione (spec 10.2).

string
Allowed values: draft held pending_payment awaiting_approval confirmed checked_in completed cancelled no_show expired rejected
existing_customer_id

Cliente già presente con la stessa email o telefono (solo per conflict su createCustomer).

string format: uuid
period

Periodo del soggiorno e data odierna dello stabilimento (solo per booking_outside_period).

object
today
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
starts_on
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date
ends_on
required

Data di calendario YYYY-MM-DD nel fuso dello stabilimento.

string format: date

Example

{
"type": "bad_request",
"conflicts": [
{
"slot": "AM",
"reason": "spot_unavailable"
}
],
"current_status": "draft"
}