Skip to main content
A Venue is the physical place where treatments are delivered. There are two types of venues on Saoma (venue_type):
  • hotel — a spa inside a hotel. Guests can charge their booking to their room (the room-number field applies).
  • spa — an independent day spa. No room charge.
The Venue object comes in two shapes. The list shape (returned by GET /v1/venues) carries marketing/contact fields. The detail shape (returned by GET /v1/venues/{id}) carries scheduling and booking-policy fields. The two shapes do not currently expose the exact same set of fields.

List shape — GET /v1/venues

id
string
Stable, opaque identifier (UUID) for the venue.
slug
string
Human-readable identifier, unique within your organization (kebab-case, e.g. akasha-lutetia). Stable: it does not change when the venue is renamed. Any endpoint that accepts {venue_id} in the URL also accepts the slug — use whichever you prefer when integrating.
name
string
Display name in French.
name_en
string | null
Display name in English.
description
string | null
Long-form description in French.
description_en
string | null
Long-form description in English.
address
string | null
Street address.
postal_code
string | null
Postal or ZIP code.
city
string | null
City.
country
string | null
ISO 3166-1 alpha-2 country code (e.g. FR).
currency
string
ISO 4217 currency code for pricing (e.g. EUR).
venue_type
'hotel' | 'spa'
Whether the venue is a hotel spa or a standalone day spa.
timezone
string | null
IANA timezone (e.g. Europe/Paris).
image
string | null
Primary image URL.
cover_image
string | null
Cover image URL, suitable for a hero banner.

Detail shape — GET /v1/venues/{id}

Includes id, name, image, cover_image, city, country, currency, venue_type, description and landing_subtitle, plus the scheduling and policy fields below.
status
string
Lifecycle status (e.g. active).
vat
number
VAT rate applied to prices, as a percentage (e.g. 20).
opening_time
string
Daily opening time in HH:mm:ss, in the venue’s local timezone.
closing_time
string
Daily closing time in HH:mm:ss, in the venue’s local timezone.
slot_interval
integer
Granularity of bookable slots, in minutes (typically 30).
schedule_type
string
How the venue’s availability is defined (e.g. recurring).
days_of_week
integer[]
Days the venue operates, 0 (Sunday) … 6 (Saturday).
recurrence_interval
integer | null
Recurrence interval for the schedule.
recurring_start_date
string (ISO date) | null
First date the recurring schedule applies.
recurring_end_date
string (ISO date) | null
Last date the recurring schedule applies, or null for open-ended.
offert
boolean
When true, the venue currently offers complimentary treatments.
booking_hold_enabled
boolean
Whether slots are temporarily held while a customer completes payment.
booking_hold_duration_minutes
integer
How long a slot is held when booking_hold_enabled is true.
allow_out_of_hours_booking
boolean
Whether bookings outside opening hours are accepted.
out_of_hours_surcharge_percent
number
Surcharge applied to out-of-hours bookings, as a percentage.
Only venues with status = 'active' (and in scope for your API key) are returned by GET /v1/venues. Inactive or archived venues are filtered out automatically.