Пређи на садржај

Sites

Websites, either single-unit or catalog sites

The site object

Attributes

iduuid

Unique identifier

organization_iduuid
organizations.id

Identifier of the organization this site is defined in

created_atread-onlytimestamp with time zone

Creation timestamp

updated_atread-onlytimestamp with time zone

Last modification timestamp

autocomplete_date_selectionboolean

Whether to autocomplete the date selection when only one date is available

color_backgroundtext

Background color of the site

color_bookedtext

Color of booked dates

color_closedtext

Color of closed dates

color_errortext

Error color of the site

color_headertext

Header color of the site

color_infotext

Info color of the site

color_primarytext

Primary color of the site

color_texttext

Text color of the site

color_unavailabletext

Color of unavailable dates

color_warningtext

Warning color of the site

covertext | null

URL of the cover image

currencyCurrency

Currency of the site

custom_domaintext | null

Custom domain of the site

custom_htmltext

Custom HTML added to every page of the site

date_visibilityWidgetDateVisibility

Which dates the calendar shows: all, hide-closed to hide closed dates, hide-unavailable to hide unavailable dates, or the deprecated custom to show selected months

enable_shopping_cartboolean

Whether guests can book multiple units at once

failure_urltext

URL to redirect to when a payment fails. __BOOKING_PAGE__ shows the guest page

filterstext[]

Filters to show in the search bar

first_week_contains_date1 | 4 | null

Day of January the first week of the year contains: 1, or 4 as in ISO 8601

fonttext | null

Font of the site

ftsread-onlytsvector
icontext | null

URL of the icon image

initial_dateWidgetInitialDate

Initial date shown in the calendar

interval_wrap_styleChannelIntervalWrapStyle

Style of the interval when wrapping weeks

logotext | null

URL of the logo image

logo_alttext | null

URL of the logo image for dark backgrounds

logo_sizeinteger | null

Size of the logo in pixels, or null for automatic

nameMultiLanguageString

Localized name of the site

password_hashtext | null

Hash of the password required to access the site

pricing_versionSitePricingVersion

Version of Bookingmood's pricing that applies to the site: V1 sites are paid, older V0 sites are free

rate_locationChannelRateLocation

Where rates are shown in the calendar: inline or tooltip

rate_visibilityChannelRateVisibility

Which rates the calendar shows: all, available or none

redirect_urltext | null

URL to redirect to after submitting a booking

related_productsSiteRelatedProducts | null

Settings of the related units section on unit pages

show_booked_asShowBookedAs

How to show booked dates

show_brandingboolean

Whether to show the Bookingmood branding

show_closed_asShowClosedAs

How to show closed dates

show_complex_pricesboolean

Whether guests can inspect seasonal prices in the calendar

show_legendboolean

Whether to show a legend in the calendar

show_pending_asCalendarEventStatus

How to interpret pending events

show_pricingboolean

Whether to show the pricing section on unit pages

show_searchbarboolean

Whether to show the search bar

show_totalsboolean

Whether to show totals in the calendar

show_unavailable_resultsboolean

Whether search results also list units that don't match the search

subdomaintext

Subdomain of the site

typeSiteType

Type of the site: single-unit-site or multi-unit-site

week_starts_onDay | null

First day of the week: 0 for Sunday or 1 for Monday

Related resources

Embed related resources in the response with the select parameter, for example select=*,organizations!organization_id(*). Resources related through more than one column need the column as a hint, like table!column(*).

organizations!organization_id(*)object | null
organizations

The organization referenced by organization_id.

bookings(*)array
bookings

The bookings referencing this site through bookings.site_id.

site_listings(*)array
site_listings

The site listings referencing this site through site_listings.site_id.

site_nav_items(*)array
site_nav_items

The site nav items referencing this site through site_nav_items.site_id.

site_pages!site_id(*)array
site_pages

The site pages referencing this site through site_pages.site_id.

site_views(*)array
site_views

The site views referencing this site through site_views.site_id.

The site object
JSON
{
  "id": "00000000-0000-0000-0000-000000000000",
  "organization_id": "00000000-0000-0000-0000-000000000000",
  "created_at": "2026-10-30T23:39:58.169Z",
  "updated_at": "2026-10-30T23:39:58.169Z",
  "autocomplete_date_selection": false,
  "color_background": "#fff",
  "color_booked": "#faa5a5",
  "color_closed": "#f5f5f5",
  "color_error": "#faa5a5",
  "color_header": "#000",
  "color_info": "#2463eb",
  "color_primary": "#22c55e",
  "color_text": "#000",
  "color_unavailable": "#faa5a5",
  "color_warning": "#a75c03",
  "cover": "",
  "currency": "USD",
  "custom_domain": "",
  "custom_html": "",
  "date_visibility": "all",
  "enable_shopping_cart": false,
  "failure_url": "__BOOKING_PAGE__",
  "filters": [
    ""
  ],
  "first_week_contains_date": 0,
  "font": "",
  "icon": "",
  "initial_date": "today",
  "interval_wrap_style": "square",
  "logo": "",
  "logo_alt": "",
  "logo_size": 0,
  "name": {},
  "password_hash": "",
  "pricing_version": "V0",
  "rate_location": "inline",
  "rate_visibility": "available",
  "redirect_url": "https://example.com",
  "related_products": {
    "count": 3,
    "show_address": true,
    "show_capacity": true,
    "show_price_range": true,
    "show_rating": true
  },
  "show_booked_as": "unavailable",
  "show_branding": true,
  "show_closed_as": "closed",
  "show_complex_prices": true,
  "show_legend": true,
  "show_pending_as": "TENTATIVE",
  "show_pricing": true,
  "show_searchbar": true,
  "show_totals": true,
  "show_unavailable_results": true,
  "subdomain": "",
  "type": "multi-unit-site",
  "week_starts_on": 0
}
Including related resources
curl -X GET "https://api.bookingmood.com/v1/sites?limit=10&select=*,organizations!organization_id(*),bookings(*)" \
  -H "Authorization: Bearer YOUR_API_KEY"

List sites

Filters

idFilter<uuid>

Unique identifier

organization_idFilter<uuid>
organizations.id

Identifier of the organization this site is defined in

created_atFilter<timestamp with time zone>

Creation timestamp

updated_atFilter<timestamp with time zone>

Last modification timestamp

autocomplete_date_selectionFilter<boolean>

Whether to autocomplete the date selection when only one date is available

color_backgroundFilter<text>

Background color of the site

color_bookedFilter<text>

Color of booked dates

color_closedFilter<text>

Color of closed dates

color_errorFilter<text>

Error color of the site

color_headerFilter<text>

Header color of the site

color_infoFilter<text>

Info color of the site

color_primaryFilter<text>

Primary color of the site

color_textFilter<text>

Text color of the site

color_unavailableFilter<text>

Color of unavailable dates

color_warningFilter<text>

Warning color of the site

coverFilter<text | null>

URL of the cover image

currencyFilter<Currency>

Currency of the site

custom_domainFilter<text | null>

Custom domain of the site

custom_htmlFilter<text>

Custom HTML added to every page of the site

date_visibilityFilter<WidgetDateVisibility>

Which dates the calendar shows: all, hide-closed to hide closed dates, hide-unavailable to hide unavailable dates, or the deprecated custom to show selected months

enable_shopping_cartFilter<boolean>

Whether guests can book multiple units at once

failure_urlFilter<text>

URL to redirect to when a payment fails. __BOOKING_PAGE__ shows the guest page

filtersFilter<text[]>

Filters to show in the search bar

first_week_contains_dateFilter<1 | 4 | null>

Day of January the first week of the year contains: 1, or 4 as in ISO 8601

fontFilter<text | null>

Font of the site

ftsFilter<tsvector>
iconFilter<text | null>

URL of the icon image

initial_dateFilter<WidgetInitialDate>

Initial date shown in the calendar

interval_wrap_styleFilter<ChannelIntervalWrapStyle>

Style of the interval when wrapping weeks

logoFilter<text | null>

URL of the logo image

logo_altFilter<text | null>

URL of the logo image for dark backgrounds

logo_sizeFilter<integer | null>

Size of the logo in pixels, or null for automatic

nameFilter<MultiLanguageString>

Localized name of the site

password_hashFilter<text | null>

Hash of the password required to access the site

pricing_versionFilter<SitePricingVersion>

Version of Bookingmood's pricing that applies to the site: V1 sites are paid, older V0 sites are free

rate_locationFilter<ChannelRateLocation>

Where rates are shown in the calendar: inline or tooltip

rate_visibilityFilter<ChannelRateVisibility>

Which rates the calendar shows: all, available or none

redirect_urlFilter<text | null>

URL to redirect to after submitting a booking

related_productsFilter<SiteRelatedProducts | null>

Settings of the related units section on unit pages

show_booked_asFilter<ShowBookedAs>

How to show booked dates

show_brandingFilter<boolean>

Whether to show the Bookingmood branding

show_closed_asFilter<ShowClosedAs>

How to show closed dates

show_complex_pricesFilter<boolean>

Whether guests can inspect seasonal prices in the calendar

show_legendFilter<boolean>

Whether to show a legend in the calendar

show_pending_asFilter<CalendarEventStatus>

How to interpret pending events

show_pricingFilter<boolean>

Whether to show the pricing section on unit pages

show_searchbarFilter<boolean>

Whether to show the search bar

show_totalsFilter<boolean>

Whether to show totals in the calendar

show_unavailable_resultsFilter<boolean>

Whether search results also list units that don't match the search

subdomainFilter<text>

Subdomain of the site

typeFilter<SiteType>

Type of the site: single-unit-site or multi-unit-site

week_starts_onFilter<Day | null>

First day of the week: 0 for Sunday or 1 for Monday

Responses

200

A list of sites with the selected columns

206

Partial Content

400

The request is malformed, for example an unknown column or an invalid filter.

401

The API key is missing or invalid.

Error responses have a JSON body with a code, message, details and hint. See the introduction for more on errors.
GET /sites
curl -X GET "https://api.bookingmood.com/v1/sites?select=*&limit=10" \
  -H "Authorization: Bearer YOUR_API_KEY"
Example response
JSON
[
  {
    "id": "00000000-0000-0000-0000-000000000000",
    "organization_id": "00000000-0000-0000-0000-000000000000",
    "created_at": "2026-10-30T23:39:58.169Z",
    "updated_at": "2026-10-30T23:39:58.169Z",
    "autocomplete_date_selection": false,
    "color_background": "#fff",
    "color_booked": "#faa5a5",
    "color_closed": "#f5f5f5",
    "color_error": "#faa5a5",
    "color_header": "#000",
    "color_info": "#2463eb",
    "color_primary": "#22c55e",
    "color_text": "#000",
    "color_unavailable": "#faa5a5",
    "color_warning": "#a75c03",
    "cover": "",
    "currency": "USD",
    "custom_domain": "",
    "custom_html": "",
    "date_visibility": "all",
    "enable_shopping_cart": false,
    "failure_url": "__BOOKING_PAGE__",
    "filters": [
      ""
    ],
    "first_week_contains_date": 0,
    "font": "",
    "icon": "",
    "initial_date": "today",
    "interval_wrap_style": "square",
    "logo": "",
    "logo_alt": "",
    "logo_size": 0,
    "name": {},
    "password_hash": "",
    "pricing_version": "V0",
    "rate_location": "inline",
    "rate_visibility": "available",
    "redirect_url": "https://example.com",
    "related_products": {
      "count": 3,
      "show_address": true,
      "show_capacity": true,
      "show_price_range": true,
      "show_rating": true
    },
    "show_booked_as": "unavailable",
    "show_branding": true,
    "show_closed_as": "closed",
    "show_complex_prices": true,
    "show_legend": true,
    "show_pending_as": "TENTATIVE",
    "show_pricing": true,
    "show_searchbar": true,
    "show_totals": true,
    "show_unavailable_results": true,
    "subdomain": "",
    "type": "multi-unit-site",
    "week_starts_on": 0
  }
]

Update sites

Filters

Without filters, this request updates all sites you have access to. Always filter on at least one column, e.g. id=eq.{id}.

idFilter<uuid>

Unique identifier

organization_idFilter<uuid>
organizations.id

Identifier of the organization this site is defined in

created_atFilter<timestamp with time zone>

Creation timestamp

updated_atFilter<timestamp with time zone>

Last modification timestamp

autocomplete_date_selectionFilter<boolean>

Whether to autocomplete the date selection when only one date is available

color_backgroundFilter<text>

Background color of the site

color_bookedFilter<text>

Color of booked dates

color_closedFilter<text>

Color of closed dates

color_errorFilter<text>

Error color of the site

color_headerFilter<text>

Header color of the site

color_infoFilter<text>

Info color of the site

color_primaryFilter<text>

Primary color of the site

color_textFilter<text>

Text color of the site

color_unavailableFilter<text>

Color of unavailable dates

color_warningFilter<text>

Warning color of the site

coverFilter<text | null>

URL of the cover image

currencyFilter<Currency>

Currency of the site

custom_domainFilter<text | null>

Custom domain of the site

custom_htmlFilter<text>

Custom HTML added to every page of the site

date_visibilityFilter<WidgetDateVisibility>

Which dates the calendar shows: all, hide-closed to hide closed dates, hide-unavailable to hide unavailable dates, or the deprecated custom to show selected months

enable_shopping_cartFilter<boolean>

Whether guests can book multiple units at once

failure_urlFilter<text>

URL to redirect to when a payment fails. __BOOKING_PAGE__ shows the guest page

filtersFilter<text[]>

Filters to show in the search bar

first_week_contains_dateFilter<1 | 4 | null>

Day of January the first week of the year contains: 1, or 4 as in ISO 8601

fontFilter<text | null>

Font of the site

ftsFilter<tsvector>
iconFilter<text | null>

URL of the icon image

initial_dateFilter<WidgetInitialDate>

Initial date shown in the calendar

interval_wrap_styleFilter<ChannelIntervalWrapStyle>

Style of the interval when wrapping weeks

logoFilter<text | null>

URL of the logo image

logo_altFilter<text | null>

URL of the logo image for dark backgrounds

logo_sizeFilter<integer | null>

Size of the logo in pixels, or null for automatic

nameFilter<MultiLanguageString>

Localized name of the site

password_hashFilter<text | null>

Hash of the password required to access the site

pricing_versionFilter<SitePricingVersion>

Version of Bookingmood's pricing that applies to the site: V1 sites are paid, older V0 sites are free

rate_locationFilter<ChannelRateLocation>

Where rates are shown in the calendar: inline or tooltip

rate_visibilityFilter<ChannelRateVisibility>

Which rates the calendar shows: all, available or none

redirect_urlFilter<text | null>

URL to redirect to after submitting a booking

related_productsFilter<SiteRelatedProducts | null>

Settings of the related units section on unit pages

show_booked_asFilter<ShowBookedAs>

How to show booked dates

show_brandingFilter<boolean>

Whether to show the Bookingmood branding

show_closed_asFilter<ShowClosedAs>

How to show closed dates

show_complex_pricesFilter<boolean>

Whether guests can inspect seasonal prices in the calendar

show_legendFilter<boolean>

Whether to show a legend in the calendar

show_pending_asFilter<CalendarEventStatus>

How to interpret pending events

show_pricingFilter<boolean>

Whether to show the pricing section on unit pages

show_searchbarFilter<boolean>

Whether to show the search bar

show_totalsFilter<boolean>

Whether to show totals in the calendar

show_unavailable_resultsFilter<boolean>

Whether search results also list units that don't match the search

subdomainFilter<text>

Subdomain of the site

typeFilter<SiteType>

Type of the site: single-unit-site or multi-unit-site

week_starts_onFilter<Day | null>

First day of the week: 0 for Sunday or 1 for Monday

Body

Partial<Site>

Read-only attributes are set by the database and can't be written.

Responses

200

The updated sites with the selected columns. Returns 204 without a body when sending the header Prefer: return=minimal.

400

The request is malformed, for example an unknown column, an invalid filter or an invalid body.

401

The API key is missing or invalid.

403

The API key has no permission for this change, for example when writing rows of another organization.

409

The change conflicts with existing data, for example a duplicate key or a reference to a row that does not exist.

Error responses have a JSON body with a code, message, details and hint. See the introduction for more on errors.
PATCH /sites
curl -X PATCH "https://api.bookingmood.com/v1/sites?id=eq.00000000-0000-0000-0000-000000000000" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "autocomplete_date_selection": false
  }'
Example response
JSON
[
  {
    "id": "00000000-0000-0000-0000-000000000000",
    "organization_id": "00000000-0000-0000-0000-000000000000",
    "created_at": "2026-10-30T23:39:58.169Z",
    "updated_at": "2026-10-30T23:39:58.169Z",
    "autocomplete_date_selection": false,
    "color_background": "#fff",
    "color_booked": "#faa5a5",
    "color_closed": "#f5f5f5",
    "color_error": "#faa5a5",
    "color_header": "#000",
    "color_info": "#2463eb",
    "color_primary": "#22c55e",
    "color_text": "#000",
    "color_unavailable": "#faa5a5",
    "color_warning": "#a75c03",
    "cover": "",
    "currency": "USD",
    "custom_domain": "",
    "custom_html": "",
    "date_visibility": "all",
    "enable_shopping_cart": false,
    "failure_url": "__BOOKING_PAGE__",
    "filters": [
      ""
    ],
    "first_week_contains_date": 0,
    "font": "",
    "icon": "",
    "initial_date": "today",
    "interval_wrap_style": "square",
    "logo": "",
    "logo_alt": "",
    "logo_size": 0,
    "name": {},
    "password_hash": "",
    "pricing_version": "V0",
    "rate_location": "inline",
    "rate_visibility": "available",
    "redirect_url": "https://example.com",
    "related_products": {
      "count": 3,
      "show_address": true,
      "show_capacity": true,
      "show_price_range": true,
      "show_rating": true
    },
    "show_booked_as": "unavailable",
    "show_branding": true,
    "show_closed_as": "closed",
    "show_complex_prices": true,
    "show_legend": true,
    "show_pending_as": "TENTATIVE",
    "show_pricing": true,
    "show_searchbar": true,
    "show_totals": true,
    "show_unavailable_results": true,
    "subdomain": "",
    "type": "multi-unit-site",
    "week_starts_on": 0
  }
]

Преузмите контролу над својим резервацијама. Изградите свој посао.

Придружите се 1200+ независним компанијама за изнајмљивање смештаја користећи Bookingmood како бисте повећали број директних резервација и изградили јаче односе са гостима.

Започните бесплатну пробну верзију од 14 дана