The Bookings Attributes API lets you define typed custom properties (string, number, or boolean) and attach values to entities in your business. It's designed for back-office admins who need to capture structured data about resources, services, or other entities, and for sites that need to display that data to end users.
With the Bookings Attributes API, you can:
For example, a vacation rentals app might define Bed Type (string), Capacity (number), and Has WiFi (boolean) attributes, then store per-room values that get displayed on the public site next to each room.
The API uses two core concepts:
An entity is any item your application owns that you want to attach values to, for example a resource in a Wix Rentals integration. The entity's identity is supplied by the caller via entityId; the API does not own or validate it.
Define attributes once with Create Attribute Definition. Set values for a specific entity with Bulk Upsert Attribute Values, remove them with Bulk Delete Attribute Values, and read an entity's values, each paired with its definition, with List Entity Attributes.
Each attribute definition has a visibility flag that indicates whether the attribute is intended for end users on the public site. When visibility is false, back-office admins can still see and edit the attribute, but it should be hidden from site visitors. Visibility is not enforced by the API: List Entity Attributes and Query Attribute Values return values regardless of visibility, so callers fetching attributes for public display are responsible for filtering out hidden attributes when rendering.
It's important to note the following points before starting to code:
valueType is immutable. To switch types, delete the attribute definition (which deletes all related attribute values) and create a new one.name on an attribute definition is a single-language string. If your site supports multiple languages, you need to handle translation outside this API.entityId; this API does not own or validate it.Last updated: 14 July 2026