Skip to main content

Embed Settings

These settings decide how the shop's booking pieces look on its own website: how a single item shows, the words and icon on the Add to booking button, the My booking button, and whether the pieces take on the website's own fonts and colors. The portal, the API and Dash all save them the same way, so a value refused in one is refused in all.

Endpointsโ€‹

GET   /v1/settings/embed    (read)
PATCH /v1/settings/embed (write)

Reading needs the settings:read scope. Writing needs settings:write.

Fieldsโ€‹

FieldTypeValuesDescription
single_product_embed_stylestringfull, calendar, buttonHow one item shows on the website: the whole item page, just its calendar, or a button that opens it
embed_button_textstring or nullUp to 40 charactersWords on the Add to booking button. null or blank goes back to the default
embed_button_iconstringcalendar, ticket, cart, noneIcon on the Add to booking button
my_booking_enabledbooleanShow a My booking button customers tap to see what they have added
my_booking_textstring or nullUp to 40 charactersWords on the My booking button. null or blank goes back to the default
my_booking_iconstringcalendar, ticket, cart, noneIcon on the My booking button
match_sitebooleanUse the website's fonts and colors instead of the booking page look
extra_cssstring or nullUp to 5,000 charactersExtra styling rules. Anything unsafe is removed before it is saved

GET always returns every field, with the defaults filled in for anything the shop has not set.

Read the settingsโ€‹

curl https://app.equipdash.com/api/v1/settings/embed \
-H "Authorization: Bearer YOUR_API_KEY"
{
"data": {
"single_product_embed_style": "calendar",
"embed_button_text": "Add to booking",
"embed_button_icon": "cart",
"my_booking_enabled": false,
"my_booking_text": "My booking",
"my_booking_icon": "cart",
"match_site": false,
"extra_css": null
},
"meta": {
"request_id": "req_abc123",
"timestamp": "2026-10-02T12:00:00+00:00"
}
}

Update the settingsโ€‹

Send only the fields you want to change. Anything left out keeps its current value. The response is the full set, as GET returns it.

curl -X PATCH https://app.equipdash.com/api/v1/settings/embed \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"single_product_embed_style": "button",
"embed_button_text": "Reserve",
"embed_button_icon": "ticket",
"my_booking_enabled": true
}'

Errorsโ€‹

A value outside the list, or text over its limit, returns 422 with the field named in error.details:

{
"error": {
"code": "validation_error",
"message": "The given data was invalid.",
"details": [
{ "field": "single_product_embed_style", "message": "Pick Full page, Calendar only or Button." }
]
}
}

Collectionsโ€‹

A collection's search box, how many items it shows before Show all, and its date box are set on the collection itself with PATCH /v1/collections/{id} (show_search, show_up_to, ask_dates_first).