Salta ai contenuti
ArenileArenile
Coste360.itCoste360.it

Dettaglio di uno stabilimento

GET
/api/admin/v1/establishments/{establishmentId}
curl --request GET \
--url https://example.com/api/admin/v1/establishments/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \
--cookie arenile_session=<arenile_session>
establishmentId
required
string format: uuid

Stabilimento

Media typeapplication/json
object
id
required
string format: uuid
organization_id
required
string format: uuid
slug
required
string
name
required
string
timezone
required
string
currency
required
string
default_locale
required
string
enabled_locales
required
Array<string>
contact_email
required
string
contact_phone
required
string
address
required
object
street
string
city
string
province
string
postal_code
string
country
string
geo
object
lat
required
number format: double
lon
required
number format: double
concession_ref
string
booking_enabled
required
boolean
allowed_embed_origins
required
Array<string>
theme
required

Tema della pagina pubblica (specifica 12.5).

object
logo_url
string
primary_color
string
accent_color
string
font_family
string
Allowed values: Inter system serif
radius
string
Allowed values: none sm md lg
show_prices_on_map
boolean
hide_header_in_embed
boolean
map_kit

Kit di illustrazioni della mappa (ADR 0024), per pannello e pagina pubblica: modern (v3, stato sul disegno) o classic (v2.1, stato nell’alone). Assente = modern. Gli id delle illustrazioni sono gli stessi nei due kit, quindi cambiarlo non tocca le mappe salvate.

string
Allowed values: modern classic
custom_texts

Testi personalizzati per lingua, es. {“it”: {“intro”: “…”}}.

object
key
additional properties
object
key
additional properties
string
settings
required

Impostazioni versionate. In scrittura sostituisce l’intero documento.

object
pricing
required

Impostazioni dei prezzi dello stabilimento (spec 8.1, 8.5).

object
half_day_factor
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})?$/
rounding
required

Arrotondamento del totale finale.

string
Allowed values: none euro fifty_cents
default_vat_rate_bp
required

Aliquota in punti base (2200 = 22%).

integer format: int64
<= 10000
local_holidays
Array<string>
recurring_local_holidays
Array<string>
default_policy
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
version
required

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

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

Example

{
"theme": {
"font_family": "Inter",
"radius": "none",
"map_kit": "modern"
},
"settings": {
"pricing": {
"rounding": "none"
},
"default_policy": {
"same_day_booking": {
"only_slot": "AM"
},
"duration": {
"allowed_formulas": [
"half_day"
]
},
"payment": {
"mode": "full",
"deposit": {
"type": "percent"
}
},
"cancellation": [
{
"as": "refund"
}
],
"weather_policy": {
"as": "refund"
}
}
}
}
ETag
string

Versione della risorsa ("<version>"), da reinviare in If-Match.

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"
}