Sites & Organisation

Sites

A Site represents a property using Trybe.

The Site object

Attributes

  • iduuidrequired

    The ID of the site

  • billing_customer_idstringrequired
  • brand_iduuidrequired

    The ID of the Brand the Site belongs to.

  • brand_namestringrequired

    The name of the Brand the Site belongs to.

  • country_codestringrequirednullable

    The country code of the site

  • created_atdate-timerequired

    The date and time that the site was created

  • onboarding_completed_atdate-timerequirednullable

    The date and time that the site's onboarding was completed

  • currencystringrequired

    The currency of the site. See Supported Currencies for a list of supported currencies.

  • external_idstringrequirednullable

    An external ID for the site This can be used to link the site to an external system.

  • frontend_subdomainstringrequired

    The subdomain of the site's frontend

  • is_read_onlybooleanrequired

    Are billing details read-only.

  • localestringrequired

    The locale of the site. See Supported Locales for a list of supported locales.

  • namestringrequired

    Display name of the site. Shown to customers in the storefront, in the admin UI, on receipts, and on communications. Trimmed; 1-120 characters, must not contain HTML.

  • organisation_iduuidrequired

    The ID of the organisation that the site belongs to

  • organisation_namestringrequired

    The name of the organisation that the site belongs to

  • timezonestringrequirednullable

    The site's local timezone as an IANA zone identifier (e.g. Europe/London, America/New_York). All schedule, opening hours and reporting figures are interpreted in this zone, and the value is used to convert UTC timestamps in API responses into local times for display.

{
  "id": "00000000-0000-0000-0000-000000000000",
  "billing_customer_id": "00000000-0000-0000-0000-000000000000",
  "brand_id": "00000000-0000-0000-0000-000000000000",
  "brand_name": "string",
  "country_code": "GB",
  "created_at": "2026-01-15T09:30:00+00:00",
  "onboarding_completed_at": "2026-01-15T09:30:00+00:00",
  "currency": "GBP",
  "external_id": "ext-site-london-bridge",
  "frontend_subdomain": "palmtreespa",
  "is_read_only": true,
  "locale": "en",
  "name": "Palm Tree Spa",
  "organisation_id": "00000000-0000-0000-0000-000000000000",
  "organisation_name": "Palm Tree Holdings Ltd.",
  "timezone": "Europe/London"
}
get/sites

Retrieve Sites

listSites

Use this endpoint to retrieve a paginated list of Sites.

Query parameters

  • pageintegeroptional

    The page to retrieve results from

  • per_pageintegeroptional

    The number of results to return per page

  • site_idstringoptional

    Filter results by the site they belong to

  • querystringoptional

    Filter results by name or ID.

  • sort_bystringoptional

    The field to sort the results by.

  • sort_by_directionstringoptional

    The direction in which to sort to the response.

    Possible values:ascdesc

Responses

  • 200

    Sites were successfully retrieved.

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

get/sites/{siteId}

Get the details of a single Site

getSiteDetails

Returns the full details of a single Site — including its name, locale, timezone, currency, and the organisation and brand it belongs to. Use this when you need the canonical record for a site identifier you already hold; for browsing the full list use listSites.

Distinct from getSite, which is the admin-scoped read at /shop/admin/sites/{siteId}.

Path parameters

  • siteIduuidrequired

    The ID of the site

Responses

  • 200

    The Site was successfully retrieved

  • 401

    The user is unauthenticated

  • 404

    The resource couldn't be found

put/sites/{siteId}

Update a Site

updateSite

Use this endpoint to update an existing Site.

Path parameters

  • siteIduuidrequired

    The ID of the site

Request body

  • namestringoptional

    Display name of the site. Shown to customers in the storefront, in the admin UI, on receipts, and on communications. Trimmed; 1-120 characters, must not contain HTML.

  • localestringoptional

    The locale of the site. See Supported Locales for a list of supported locales.

  • currencystringoptional

    The currency of the site. See Supported Currencies for a list of supported currencies.

  • timezonestringoptionalnullable

    The site's local timezone as an IANA zone identifier (e.g. Europe/London, America/New_York). All schedule, opening hours and reporting figures are interpreted in this zone, and the value is used to convert UTC timestamps in API responses into local times for display.

  • logo_media_iduuidoptionalnullable

    The media ID of the Site's logo.

    To obtain a Media ID, use the createMedia endpoint to upload your media.

  • external_idstringoptionalnullable

    An external ID for the site This can be used to link the site to an external system.

  • country_codestringoptionalnullable

    The country code of the site

Responses

  • 200

    The Site was successfully updated

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

  • 422

    The request didn't pass validation

get/shop/sites/{siteId}

Retrieve a ShopSite

getShopSite

Use this endpoint to retrieve a single ShopSite.

Path parameters

  • siteIduuidrequired

    The ID of the site

Responses

  • 200

    The ShopSite was successfully retrieved.

  • 401

    The user is unauthenticated

  • 404

    The resource couldn't be found

put/shop/sites/{siteId}

Update a ShopSite

updateShopSite

Use this endpoint to update a ShopSite.

Path parameters

  • siteIduuidrequired

    The ID of the site

Request body

  • basket_confirmed_email_messagestringoptionalnullable

    A message which is appended to the end of every Basket Confirmed email for this site.

    HTML is supported, however only the following tags are allowed: h1, strong, a, p, br.

  • category_idsstring[]optional
  • custom_payment_type_idsstring[]optional

    An array of custom payment type IDs for the site

  • email_from_addressstringoptionalnullable

    The email address used as the From header on all customer- facing email this site sends (confirmations, reminders, receipts). Must be verified with the email provider before delivery succeeds — check email_from_address_verified_at.

  • email_settingsobjectoptional
  • intake_form_questionnaire_idstringoptionalnullable

    ID of the intake-form questionnaire applied to bookings at this site. Null means no questionnaire is attached and the intake step is skipped.

  • namestringoptional

    Display name of the site, shown to customers in the storefront, on receipts, and in confirmation emails sent to guests. Trimmed; 1-120 characters and must not contain HTML.

  • opening_hoursobject[]optional
  • privacy_policystringoptionalnullable

    Customer-facing privacy policy shown during checkout and on receipts. Markdown is rendered; null means inherit from the organisation.

  • scheduling_week_intervalintegeroptionalnullable

    Number of weeks between repeating scheduling rotations. Used to roll fortnightly or multi-week rotas. 2 means alternating weeks; null means no rotation (every week is identical).

  • scheduling_week_interval_startdate-timeoptionalnullable

    Anchor datetime used to compute which week of a multi-week rotation any given date falls into. Paired with scheduling_week_interval; null disables the rotation.

  • termsstringoptionalnullable

    Customer-facing terms and conditions shown at checkout and linked in confirmation emails. Markdown is rendered; null means inherit from the organisation.

Responses

  • 200

    The ShopSite was successfully updated.

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

  • 422

    The request didn't pass validation

get/shop/sites/{siteId}/appointment-enquiry-settings

Retrieve a site's appointment enquiry settings

getAppointmentEnquirySettings

Use this endpoint to retrieve the appointment enquiry settings for a site

Path parameters

  • siteIduuidrequired

    The ID of the site

Responses

  • 200

    A response containing a site's appointment enquiry settings.

  • 401

    The user is unauthenticated

  • 404

    The resource couldn't be found

put/shop/sites/{siteId}/appointment-enquiry-settings

Update a site's appointment enquiry settings

updateAppointmentEnquirySettings

Use this endpoint to update the appointment enquiry settings for a site

Path parameters

  • siteIduuidrequired

    The ID of the site

Request body

Responses

  • 200

    A response containing a site's appointment enquiry settings.

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

  • 422

    The request didn't pass validation

get/shop/sites/{siteId}/opening-hours-overrides

Retrieve a ShopSites' opening hours overrides

listShopSiteOpeningHoursOverrides

Use this endpoint to retrieve the overrides for a ShopSites' opening hours.

Path parameters

  • siteIduuidrequired

    The ID of the site

Responses

  • 200

    The ShopSites' opening hours overrides were successfully retrieved.

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

post/shop/sites/{siteId}/opening-hours-overrides

Create an opening hours override for a ShopSite

createShopSiteOpeningHoursOverride

Use this endpoint to create an exception for the ShopSites' standard opening hours.

Path parameters

  • siteIduuidrequired

    The ID of the site

Request body

  • date_fromdaterequired

    The start of the rule period.

  • date_todaterequired

    The end of the rule period.

  • is_availablebooleanoptional

    Whether the resource is available during this period. Any false rules will override true rules.

  • time_fromstringoptional

    The daily start time of the time period, in 24 hour format.

  • time_tostringoptional

    The daily end time of the time period, in 24 hour format.

Responses

  • 201

    An opening hours override was successfully created.

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

  • 422

    The request didn't pass validation

get/shop/sites/{siteId}/opening-hours-overrides/{openingHoursOverrideId}

Retrieve a ShopSite opening hours override

getShopSiteOpeningHoursOverride

Use this endpoint to retrieve an override for a ShopSites' opening hours.

Path parameters

Responses

  • 200

    The opening hour override was successfully retrieved.

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

put/shop/sites/{siteId}/opening-hours-overrides/{openingHoursOverrideId}

Update a ShopSites' opening hour override

updateOpeningHoursOverride

Update an existing override for a ShopSites' opening hours. Use this endpoint when you need to amend a previously created exception — for example, extending a holiday closure by a day, or adjusting the time window during which the site is open. All fields in the request body are optional, but date_from and date_to together must form a valid range, and if time_to is provided it must fall after time_from.

Path parameters

Request body

  • date_fromdateoptional

    The start of the rule period.

  • date_todateoptional

    The end of the rule period.

  • is_availablebooleanoptional

    Whether the resource is available during this period. Any false rules will override true rules.

  • time_fromstringoptional

    The daily start time of the time period, in 24 hour format.

  • time_tostringoptional

    The daily end time of the time period, in 24 hour format.

Responses

  • 200

    The opening hour override was successfully updated.

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

  • 422

    The request didn't pass validation

patch/shop/sites/{siteId}/opening-hours-overrides/{openingHoursOverrideId}

Update a ShopSites' opening hour override

updateShopSiteOpeningHoursOverride

Use this endpoint to update an override for a ShopSites' opening hours.

Path parameters

Request body

  • date_fromdateoptional

    The start of the rule period.

  • date_todateoptional

    The end of the rule period.

  • is_availablebooleanoptional

    Whether the resource is available during this period. Any false rules will override true rules.

  • time_fromstringoptional

    The daily start time of the time period, in 24 hour format.

  • time_tostringoptional

    The daily end time of the time period, in 24 hour format.

Responses

  • 200

    The opening hour override was successfully updated.

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

  • 422

    The request didn't pass validation

delete/shop/sites/{siteId}/opening-hours-overrides/{openingHoursOverrideId}

Delete a ShopSites' opening hours override

deleteShopSiteOpeningHoursOverride

Use this endpoint to delete an override for a ShopSites' opening hours.

Path parameters

Responses

  • 204

    The opening hours override was successfully deleted.

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

get/shop/sites/{siteId}/service-charge-settings

Retrieve a site's service charge settings

getServiceChargeSettings

Use this endpoint to retrieve the service charge settings for a site

Path parameters

  • siteIduuidrequired

    The ID of the site

Responses

  • 200

    A response containing a site's service charge settings.

  • 401

    The user is unauthenticated

  • 404

    The resource couldn't be found

put/shop/sites/{siteId}/service-charge-settings

Update a site's service charge settings

updateServiceChargeSettings

Use this endpoint to update the service charge settings for a site

Path parameters

  • siteIduuidrequired

    The ID of the site

Request body

  • default_percentagenumberoptional

    The percentage service charge to be applied, to the nearest half percent

  • The percentage options to be presented to customers when exiting through a gate

  • Whether to support adding a tip from card reader payments.

  • tip_on_exit_gatestringoptionalnullable

    Whether to support adding a tip when a customer exits through a gate.

    Possible values:ask_lead_bookerask_each_guest
  • no_tip_exit_behaviourstringoptionalnullable

    The behavior to apply when a customer exits through a gate and does not select a tip option for these offerings.

    Possible values:allow_exitdisallow_exit
  • tip_wordingstringoptionalnullable

    Custom wording to use for the tip option when a customer exits through a gate for these offerings. If not provided, a default wording will be used.

  • offering_defaultsobject[]optional

Responses

  • 200

    A response containing a site's service charge settings.

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

  • 422

    The request didn't pass validation

get/shop/sites/{siteId}/auto-checkout-settings

Retrieve a site's auto checkout settings

getAutoCheckoutSettings

Use this endpoint to retrieve auto checkout settings for a site

Path parameters

  • siteIduuidrequired

    The ID of the site

Responses

  • 200

    A response containing a site's auto checkout settings.

  • 401

    The user is unauthenticated

  • 404

    The resource couldn't be found

put/shop/sites/{siteId}/auto-checkout-settings

Update a site's auto checkout settings

updateAutoCheckoutSettings

Use this endpoint to update the auto checkout settings for a site

Path parameters

  • siteIduuidrequired

    The ID of the site

Request body

Responses

  • 200

    A response containing a site's auto checkout settings.

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

  • 422

    The request didn't pass validation

get/shop/sites/{siteId}/sms-settings

Show SMS Notification Settings

getSmsNotificationSettings

This endpoint retrieves the SMS Notification Settings for the given site.

Path parameters

  • siteIduuidrequired

    Identifier of the site whose SMS settings are being read or updated. SMS settings (sender names, default templates, Twilio bindings) are scoped per site so each location can configure its own customer-comms behaviour.

Responses

  • 200

    The SMS Notification Settings were successfully retrieved

  • 401

    The user is unauthenticated

  • 404

    The resource couldn't be found

put/shop/sites/{siteId}/sms-settings

Update SMS Notification Settings

updateSmsNotificationSettings

This endpoint updates the SMS Notification Settings for the given site.

Path parameters

  • siteIduuidrequired

    Identifier of the site whose SMS settings are being read or updated. SMS settings (sender names, default templates, Twilio bindings) are scoped per site so each location can configure its own customer-comms behaviour.

Request body

  • Whether the order confirmation SMS is enabled.

  • Whether the order confirmation SMS has automation turned off or not.

  • Whether the order cancellation SMS is enabled.

  • Whether the billing details request SMS for memberships is enabled.

  • Whether the waitlist update SMS is enabled.

  • reminder_sms_enabledbooleanoptional

    Whether the reminder SMS is enabled.

  • Whether the order reminder SMS has automation turned off or not.

  • reminder_sms_timetimeoptional

    The time of day the reminder SMS will be sent for automated messages.

  • The number of days ahead of the booking the reminder SMS will be sent for automated messages.

  • follow_up_sms_enabledbooleanoptional

    Whether the follow up SMS is enabled.

  • Whether the order follow up SMS has automation turned off or not.

  • follow_up_sms_timetimeoptional

    The time of day the follow up SMS will be sent for automated messages.

  • The number of days after the booking the follow up SMS will be sent for automated messages.

  • sidstringoptional

    The sender identifier registered with the SMS gateway. For Twilio this is the alphanumeric sender ID or Messaging Service SID; recipients see it as the "from" name on the text. Country restrictions on alphanumeric sender IDs apply.

  • providerstringoptional

    Which SMS gateway sends outbound texts for this site. Only twilio is supported today; new sites should leave this at the default and configure Twilio credentials separately in the integrations section.

  • from_numberstringoptional

    The phone number the SMS will be sent from.

Responses

  • 200

    The SMS Notification Settings were successfully retrieved

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

  • 422

    The request didn't pass validation

get/shop/sites/{siteId}/supported-comms-locales

Get supported comms locales

getSupportedCommsLocales

This endpoint returns a list of the locales that are supported by the site.

When a Customer has a preferred locale, if the locale is included in the site's supported comms locales, then any email communication will be sent in that preferred locale.

The locales must be included in the platform's supported locales, which can be retrieved using the listMetaSupportedLocales endpoint.

Path parameters

  • siteIduuidrequired

    Identifier of the site whose supported communication locales are being read or updated. The locales control which translations are selectable when authoring email/SMS templates and which locales customers may pick from at checkout.

Responses

  • 200

    A list of supported comms locales

  • 401

    The user is unauthenticated

  • 404

    The resource couldn't be found

put/shop/sites/{siteId}/supported-comms-locales

Update supported comms locales

updateSupportedCommsLocales

This endpoint allows you to update the list of locales that are supported by the site.

When a Customer has a preferred locale, if the locale is included in the site's supported comms locales, then any email communication will be sent in that preferred locale.

The locales must be included in the platform's supported locales, which can be retrieved using the listMetaSupportedLocales endpoint.

Path parameters

  • siteIduuidrequired

    Identifier of the site whose supported communication locales are being read or updated. The locales control which translations are selectable when authoring email/SMS templates and which locales customers may pick from at checkout.

Request body

  • localesstring[]optional

    A list of locales that are supported by the site.

    This should be a string of locale codes that are supported by the platform.

Responses

  • 200

    A list of supported comms locales

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

  • 422

    The request didn't pass validation

get/shop/sites/{siteId}/features

Get the features of a Site

getSiteFeatures

Use this endpoint to retrieve the features of an existing Site.

Path parameters

  • siteIduuidrequired

    The ID of the site

Responses

  • 200

    The Site features were successfully retrieved

  • 401

    The user is unauthenticated

  • 404

    The resource couldn't be found

put/shop/sites/{siteId}/features

Update the features of a Site

updateSiteFeatures

Use this endpoint to update the features of an existing Site.

Path parameters

  • siteIduuidrequired

    The ID of the site

Request body

  • Whether the site supports wearable payments

  • Whether the site supports terminal initiated payments

  • terminal_payment_retail_product_idobject-idoptionalnullable

    Identifier of the retail product used to back ad-hoc terminal-initiated payments (e.g. open-amount tap-to-pay charges). The product's revenue centre is what the resulting sale will post to. Pass null to disable terminal-initiated payments.

Responses

  • 200

    The Site features were successfully retrieved

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

  • 422

    The request didn't pass validation

get/shop/sites/{siteId}/shop-config/offering-order

Get details of all offerings available on the shop in their specified order

getOfferingOrder

This endpoint retrieves the details of all offerings available on the shop in their specified order for the given site.

Path parameters

  • siteIduuidrequired

    The ID of the site

Responses

  • 200

    The order of offerings available on the shop for the site.

  • 401

    The user is unauthenticated

  • 404

    The resource couldn't be found

put/shop/sites/{siteId}/shop-config/offering-order

Update the order of offerings available on the shop

updateOfferingOrder

Use this endpoint to update the order of offerings available on the shop for a specific site.

Path parameters

  • siteIduuidrequired

    The ID of the site

Request body

Responses

  • 200

    The order of offerings available on the shop for the site.

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

  • 422

    The request didn't pass validation

get/shop/sites/{siteId}/shop-config/sso

Get the SSO configuration for a site

getSsoConfig

This endpoint retrieves the SSO configuration for a specific site.

Path parameters

  • siteIduuidrequired

    The ID of the site

Responses

  • 200

    The SSO configuration for the site.

  • 401

    The user is unauthenticated

  • 404

    The resource couldn't be found

put/shop/sites/{siteId}/shop-config/sso

Update the SSO configuration for a site

updateSsoConfig

Use this endpoint to update the SSO configuration for a specific site.

Path parameters

  • siteIduuidrequired

    The ID of the site

Request body

  • iduuidoptional

    Identifier of the SSO configuration to update, returned by the SSO config read endpoint. Must match the configuration currently attached to the site in the URL.

  • site_iduuidoptional

    Identifier of the site that owns this SSO configuration. Must match the siteId in the request URL; provided redundantly to make the body self-describing for audit logs.

  • typestringoptional

    The type of SSO configuration.

  • enabledbooleanoptional

    Whether the SSO configuration is enabled.

  • authorize_urlstringoptional

    The URL to redirect to for authorization.

  • credentialsobjectoptional

    The credentials required for the SSO configuration.

  • token_urlstringoptional

    The URL to request an access token.

  • user_info_urlstringoptional

    The URL to request user information.

  • scopesstring[]optional

    The scopes to request during authorization.

  • Whether to include existing URL parameters in the authorization request.

  • token_request_stylestringoptional

    The style of the token request.

    Possible values:form_paramsjson
  • user_mappingsobject[]optional

    Mappings from user attributes to SSO token fields.

Responses

  • 200

    The SSO configuration for the site.

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

  • 422

    The request didn't pass validation

get/shop/sites/{siteId}/custom-payment-types

List a Site's custom payment types

listSiteCustomPaymentTypes

Returns the set of CustomPaymentTypes enabled for the given Site. Custom payment types let operators record tenders that are not handled by the platform's first-class processors — typical examples include third-party voucher providers, hotel PMS prepayments, and arbitrary "cash equivalent" tenders.

Custom payment types are defined at the organisation level via the /shop/organisations/{organisationId}/custom-payment-types endpoints; this endpoint returns the subset associated with the named Site.

Path parameters

  • siteIduuidrequired

    The ID of the site

Responses

  • 200

    The Site's custom payment types were successfully retrieved.

  • 401

    The user is unauthenticated

  • 404

    The resource couldn't be found

get/shop/sites/{siteId}/sold-by-users

List sold-by users for a Site

listSiteSoldByUsers

Returns the combined list of Trybe users and Practitioners who can be selected as the "sold by" attribution on an Order, OrderLine, or basket. The list is filtered to those that belong to the named Site's organisation.

Use the returned id and type values to populate sold_by fields when creating or updating sales records.

Path parameters

  • siteIduuidrequired

    The ID of the site

Responses

  • 200

    The sold-by entities were successfully retrieved.

  • 401

    The user is unauthenticated

  • 404

    The resource couldn't be found

get/customers/sites/{siteId}/mobile-pass-customisation

Retrieve the mobile pass customisation

getMobilePassCustomisation

Retrieves the mobile pass customisation for the given site. The customisation controls the visual appearance of digital wallet passes (Apple Wallet / Google Wallet) issued to members.

Path parameters

Responses

  • 200

    The mobile pass customisation for the site was successfully retrieved or updated.

  • 401

    The user is unauthenticated

  • 404

    The resource couldn't be found

post/customers/sites/{siteId}/mobile-pass-customisation

Update the mobile pass customisation

updateMobilePassCustomisation

Updates the mobile pass customisation for the given site, including the icon, logo, strip image and colour scheme. The icon_id is required; the other media references are optional.

Path parameters

Request body

  • icon_iduuidrequired

    Media to use as the icon on the mobile pass. Apple Wallet renders this in notifications; aim for a small square image. Must already be uploaded via the Media API.

  • logo_iduuidoptional

    Media to use as the logo on the mobile pass. Shown at the top of the pass next to the brand name.

  • strip_iduuidoptional

    The media id of the strip image

  • background_colourstringoptional

    Background hex colour for the pass, excluding the leading #. Use the brand colour that contrasts well with white text.

  • foreground_colourstringoptional

    Foreground hex colour for the primary pass copy, excluding the leading #. Pick a value with high contrast against background_colour.

  • label_colourstringoptional

    Hex colour for the small field labels on the pass, excluding the leading #. Defaults to a slightly dimmer shade than foreground_colour.

  • enabledbooleanoptional

    Whether or not to enable mobile passes for this site

Responses

  • 200

    The mobile pass customisation for the site was successfully retrieved or updated.

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

  • 422

    The request didn't pass validation

get/sites/{siteId}/tax-info

Get the tax details for a Site

getSiteTaxInfo

Returns the registered tax identifier (e.g. VAT or GST number) and registered company address for a Site. These values appear on receipts, invoices, and exported tax reports.

Path parameters

  • siteIduuidrequired

    The ID of the site

Responses

  • 200

    The site tax info

  • 401

    The user is unauthenticated

  • 404

    The resource couldn't be found

post/sites/{siteId}/tax-info

Update the tax details for a Site

updateSiteTaxInfo

Updates the registered tax identifier (e.g. VAT or GST number) and registered company address for a Site. The updated values take effect on invoices and tax reports generated after the request — historical receipts are unaffected.

Path parameters

  • siteIduuidrequired

    The ID of the site

Request body

  • tax_idstringrequired

    The tax ID, ie the VAT number.

  • address_line_1stringrequired

    The first address line of the registered company.

  • address_line_2stringoptional

    The second address line of the registered company.

  • citystringrequired

    The city of the registered company.

  • countystringoptional

    The county of the registered company.

  • countrystringrequired

    The country of the registered company.

  • postcodestringrequired

    The postcode of the registered company.

Responses

  • 200

    The site tax info

  • 401

    The user is unauthenticated

  • 403

    The authenticated user does not have permission.

  • 404

    The resource couldn't be found

  • 422

    The request didn't pass validation

get/shop/sites

List shop sites

listShopSites

Returns every Site the caller has permission to see, projected through the shop API's ShopSite shape. The projection includes storefront-facing configuration (currency, payment types, email branding, feature flags, category mappings) that is not exposed on the bare Site record.

The list is unpaginated — sites per organisation are expected to be small enough to return in a single response.

Responses

  • 200

    The sites were successfully retrieved.

  • 401

    The user is unauthenticated

  • 404

    The resource couldn't be found