BookingCustomAttributeDefinitions
Create, update, delete, and query custom attribute definitions for Square Bookings.
Table Specific Information
Select
The add-in uses the Square API to filter the results by the following columns and operators while the rest of the filter is executed client-side within the add-in.
- Key supports the following operator: =.
Retrieve all booking custom attribute definitions:
SELECT * FROM BookingCustomAttributeDefinitions
Retrieve a specific booking custom attribute definition:
SELECT * FROM BookingCustomAttributeDefinitions WHERE Key = 'my-custom-attribute'
Insert
To create a booking custom attribute definition, you must specify the Key, Name, and Schema columns.
INSERT INTO BookingCustomAttributeDefinitions (Key, Name, Schema, Visibility) VALUES ('preferred-provider', 'Preferred Provider', '{"$schema": "http://json-schema.org/draft-04/schema#", "type": "string"}', 'VISIBILITY_READ_WRITE_VALUES')
Update
Modify the details of an existing booking custom attribute definition by providing the Key:
UPDATE BookingCustomAttributeDefinitions SET Name = 'Updated Name', Description = 'Updated description' WHERE Key = 'preferred-provider'
Delete
Delete a booking custom attribute definition by providing the Key:
DELETE FROM BookingCustomAttributeDefinitions WHERE Key = 'preferred-provider'
Columns
| Name | Type | ReadOnly | Description |
| Key [KEY] | String | False |
The identifier of the custom attribute definition and its corresponding custom attributes. Can contain up to 60 alphanumeric characters, periods, underscores, and hyphens. Cannot be changed after creation. |
| Name | String | False |
The name of the custom attribute definition for API and seller-facing UI purposes. Must be unique within seller and application. Max 255 characters. |
| Description | String | False |
Seller-oriented description of the custom attribute definition, including any constraints. Max 255 characters. |
| Visibility | String | False |
Specifies how the definition and values are shared with seller and other applications. Defaults to VISIBILITY_HIDDEN if not specified. The allowed values are VISIBILITY_HIDDEN, VISIBILITY_READ_ONLY, VISIBILITY_READ_WRITE_VALUES. |
| Schema | String | False |
The JSON schema for the custom attribute definition, which determines the data type of the corresponding custom attributes. Required when creating a definition. |
| Version | Integer | False |
The current version of the custom attribute definition. Incremented with each update. Used for optimistic concurrency control. |
| CreatedAt | Datetime | True |
The timestamp when the custom attribute definition was created, in RFC 3339 format. |
| UpdatedAt | Datetime | True |
The timestamp when the custom attribute definition was most recently updated, in RFC 3339 format. |
Pseudocolumns
Pseudo column fields are used in the WHERE clause of SELECT statements (unless stated otherwise) and offer a more granular control over the tuples that are returned from the data source.
| Name | Type | Description |
| IdempotencyKey | String |
A unique string that identifies the request. Supported only for INSERT operations. Maximum length is 45 characters. |