> Portal Navigation: > > - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version. > - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages). > - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`). > - Top-level index of all portals: https://dev.wix.com/docs/llms.txt > - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt # Package: reservations # Namespace: reservationLocations # Webhook link: https://dev.wix.com/docs/api-reference/business-solutions/restaurants/reservations/reservation-locations/reservation-location-updated.md ## Introduction Triggered when a reservation location is updated. --- ## REST API ### Schema ``` Webhook: Reservation Location Updated Description: Triggered when a reservation location is updated. Event body: - name: id | type: string | description: Unique event ID. Allows clients to ignore duplicate events. - name: entityFqdn | type: string | description: Fully qualified domain name of the entity associated with the event. - name: slug | type: string | description: Event name. - name: entityId | type: string | description: ID of the entity associated with the event. - name: eventTime | type: string (date-time) | description: Event timestamp. - name: triggeredByAnonymizeRequest | type: boolean | description: Whether the event was triggered as a result of a privacy regulation application such as GDPR. - name: originatedFrom | type: string | description: If present, indicates the action that triggered the event. - name: updatedEvent | type: object | description: Updated event details. - name: currentEntity | type: ReservationLocation | description: The entity after the update. - name: id | type: string | description: Reservation location GUID. - name: revision | type: string | description: Represents the current state of a reservation location. Each time the reservation location is modified, its `revision` changes. For an update operation to succeed, you must specify the latest revision. - name: createdDate | type: string | description: The date and time this reservation location was created. - name: updatedDate | type: string | description: The date and time this reservation location was last updated. - name: location | type: Location | description: Physical location details. Locations can be created and configured using the Locations API. or on the [Business Info](https://www.wix.com/my-account/site-selector/?buttonText=Select%20Site&title=Select%20a%20Site&autoSelectOnSingleSite=true&actionUrl=https:%2F%2Fwww.wix.com%2Fdashboard%2F%7B%7BmetaSiteId%7D%7D%2Fsettings/business-info) page in the Dashboard. - name: id | type: string | description: Location GUID. - name: configuration | type: Configuration | description: Reservation location configuration. - name: onlineReservations | type: OnlineReservations | description: Settings for this location that are used to determine restaurant availability for reservations made online. - name: approval | type: Approval | description: Approval settings. - ONE-OF: - name: manualForLargePartiesOptions | type: ManualForLargePartiesOptions | description: Manual approval for large parties options. - name: partySizeThreshold | type: integer | description: The minimum party size that requires manual approval. - name: considerTablesForManualApproval | type: boolean | description: Use tables for manual approval part. - name: mode | type: Mode | description: Approval mode. - enum: AUTOMATIC, MANUAL, MANUAL_FOR_LARGE_PARTIES - name: seatPacing | type: SeatPacing | description: Seat pacing settings. The maximum number of seats that can be filled by new reservations within a 15-minute period. For example, setting a seat pacing of 15 would mean that between `10:00.000`-`10:14.999` there will be no more than 15 new seats available for reservation. - name: number | type: integer | description: Maximum number of seats allowed per `timeSlotInterval`. - name: enabled | type: boolean | description: Whether this option is enabled. - name: partyPacing | type: PartyPacing | description: Party pacing settings. The maximum number of party reservations that can start within a `timeSlotInterval` period. For example, if `timeSlotInterval` is 15 minutes, then a party pacing of 5 would mean that no more than 5 parties could make a reservation for the period between `10:00.000`-`10:14.999`. - name: number | type: integer | description: Maximum number of new party reservations allowed per `timeSlotInterval`. - name: enabled | type: boolean | description: Whether this option is enabled. - name: partySize | type: PartySize | description: Party size limits for a reservation. - name: min | type: integer | description: Minimum number of seats a party can reserve. - name: max | type: integer | description: Maximum number of seats a party can reserve. - name: minimumReservationNotice | type: NoticePeriod | description: Minimum reservation notice. The minimum amount of time that must be allowed between making a reservation and that reservation's start time. - name: number | type: integer | description: The quantity of the chosen time unit. - name: unit | type: Unit | description: Time unit. - enum: UNKNOWN, MINUTES, HOURS, DAYS - name: maximumReservationNotice | type: NoticePeriod | description: Maximum reservation notice. The maximum amount of time that can be allowed between making a reservation and that reservation's start time. - name: defaultTurnoverTime | type: integer | description: Default turnover time in minutes. Turnover time is how much time a party is allotted for their entire reservation - from being seated to leaving the restaurant. - name: turnoverTimeRules | type: array | description: Custom turnover time rules. This allows you to set different turnover times for different party sizes. - name: seatsMin | type: integer | description: Minimum number of seats to qualify for this rule. - name: seatsMax | type: integer | description: Maximum number of seats to qualify for this rule. - name: minutes | type: integer | description: Turnover time in minutes for qualifying parties. - name: businessSchedule | type: BusinessSchedule | description: The location's business schedule. Limited to 100 time periods. - name: periods | type: array | description: - name: openDay | type: DayOfWeek | description: Day of the week this period starts on. - enum: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY - name: openTime | type: string | description: Time this period starts in 24hr [ISO 8601](http://www.w3.org/TR/NOTE-datetime) extended format (hh:mm). Valid values are `00:00-24:00`, where `24:00` represents midnight at the end of the specified day field. - name: closeDay | type: DayOfWeek | description: Day of the week this period ends on. - enum: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY - name: closeTime | type: string | description: Time this period ends in 24hr [ISO 8601](http://www.w3.org/TR/NOTE-datetime) extended format (hh:mm). Valid values are `00:00-24:00`, where `24:00` represents midnight at the end of the specified day field. This is the last time a reservation can be made at the restaurant, not the time the restaurant closes its doors. - name: specialHourPeriod | type: array | description: Time periods during which this location is open. Each period represents a range of hours during the week during which the location is open. Max: 100 time periods - name: startDate | type: string | description: Start date and time in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#combined_date_and_time_representations) format. - name: endDate | type: string | description: End date and time in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#combined_date_and_time_representations) format. - name: isClosed | type: boolean | description: Whether or not the location is closed during this period. - name: comment | type: string | description: Additional details about the period. - name: showPhoneNumber | type: boolean | description: Whether a phone number is shown. - name: onlineReservationsEnabled | type: boolean | description: Whether online reservations are enabled. - name: pauseSettings | type: PauseSettings | description: Pause settings for reservations. - name: standardReservations | type: StandardReservations | description: Pause settings for standard reservations. - name: pauseFrom | type: string | description: Timestamp from which online reservations are paused. Read-only, set automatically when pause is configured. - name: pauseUntil | type: string | description: Timestamp until which online reservations are paused. When set and the current time is before this timestamp, online reservations are blocked. When the current time passes this timestamp, reservations automatically resume. - name: timeSlotInterval | type: integer | description: Interval between a reservation location's time slots in minutes. This controls the interval between time slots on a Wix site's Reservations page, and the interval between time slots returned by the Time Slots API's Get Time Slots method. Default: `15` - name: reservationForm | type: ReservationForm | description: Reservation form settings. - name: submitMessage | type: string | description: A message shown to the customer in the registration form. - name: policiesEnabled | type: boolean | description: Whether to show policies (the terms and conditions, and the privacy policy) to the customer. - name: termsAndConditions | type: TermsAndConditions | description: Settings for displaying the terms and conditions. - ONE-OF: - name: url | type: PageUrlV2 | description: Terms and conditions URL. - name: relativePath | type: string | description: The relative path for the page within the site. - name: url | type: string | description: The page's full URL. - name: text | type: string | description: Terms and conditions text. - name: enabled | type: boolean | description: Whether the terms and conditions are shown to the customer. Default: `false` - name: privacyPolicy | type: PrivacyPolicy | description: Settings for displaying the privacy policy. - ONE-OF: - name: url | type: PageUrlV2 | description: Privacy policy URL. - name: text | type: string | description: Privacy policy text. - name: enabled | type: boolean | description: Whether the privacy policy is shown to the customer. Default: `false` - name: customFieldDefinitions | type: array | description: Custom fields you wish to add to the registration form for the customer to fill in. - name: id | type: string | description: Custom field GUID. - name: name | type: string | description: Custom field name. - name: required | type: boolean | description: Whether the custom field is required. Default: `false` - name: lastNameRequired | type: boolean | description: Whether a last_name is required in the reservation form. Default: `false` - name: emailRequired | type: boolean | description: Whether an email is required in the reservation form. Default: `false` - name: emailMarketingCheckbox | type: EmailMarketingCheckbox | description: Email marketing checkbox settings. - name: enabled | type: boolean | description: Whether the checkbox is shown to the customer. Default: `false` - name: checkedByDefault | type: boolean | description: Whether the checkbox is checked by default. Default: `false` - name: tableManagement | type: TableManagement | description: Table management settings. - name: mode | type: TableManagementMode | description: Table management mode. The mode determines how tables are assigned for reservations at this location. - enum: - ON: Tables can be assigned manually for reservations at this location. When tables aren't manually assigned, Wix assigns them automatically. - IN_HOUSE_ONLY: Tables can be assigned manually for reservations at this location. Wix doesn't assign tables automatically. - OFF: Tables can't be assigned manually for reservations at this location. Wix doesn't assign tables automatically. If you try to assign a table manually, the request will fail. - name: tableDefinitions | type: array | description: Table definitions. - name: id | type: string | description: Table GUID. - name: name | type: string | description: Table name. - name: seatsMin | type: integer | description: Minimum number of seats. - name: seatsMax | type: integer | description: Maximum number of seats. - name: isActive | type: boolean | description: Whether the table is active (available to be reserved). - name: deletedTableDefinitions | type: array | description: Deleted table definitions. - name: tableCombinations | type: array | description: Table combinations. - name: id | type: string | description: Table combination GUID. - name: tableIds | type: array | description: IDs of tables in the combination. - name: seatsMin | type: integer | description: Minimum number of seats that can be reserved in this table combination. - name: seatsMax | type: integer | description: Maximum number of seats that can be reserved in this table combination. - name: isActive | type: boolean | description: Whether the table combination is active (available to be reserved). - name: paymentPolicy | type: PaymentPolicy | description: Reservation payment policy. This policy determines how the restaurant charges for reservations. - ONE-OF: - name: perGuestOptions | type: PerGuestOptions | description: Settings for charging per guest. - name: price | type: string | description: Monetary amount to charge. Must be a decimal string with a period as a decimal separator. For example, `"3.99"`. - name: minPartySize | type: integer | description: Minimum party size required to apply the payment policy. - name: perReservationOptions | type: PerReservationOptions | description: Settings for charging per reservation. - name: price | type: string | description: Monetary amount to charge. Must be a decimal string with a period as a decimal separator. For example, `"3.99"`. - name: minPartySize | type: integer | description: Minimum party size required to apply the payment policy. - name: paymentPolicyType | type: PaymentPolicyType | description: Type of payment policy. - enum: - UNKNOWN_PAYMENT_POLICY: Undefined table management mode. - PER_GUEST: A fee is charged for each guest in the reservation. - PER_RESERVATION: A fee is charged for the entire reservation. - name: default | type: boolean | description: Whether this reservation location's `location` is the default location of the business. - name: archived | type: boolean | description: Whether this reservation location's `location` is archived. - name: extendedFields | type: ExtendedFields | description: Custom field data for the reservation location object. [Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields.md) must be configured in the app dashboard before they can be accessed with API calls. - name: namespaces | type: object | description: Extended field data. Each key corresponds to the namespace of the app that created the extended fields. The value of each key is structured according to the schema defined when the extended fields were configured. You can only access fields for which you have the appropriate permissions. Learn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields.md). - name: modifiedFields | type: Map | description: Fields that were updated and their values before the update. ``` ### Examples ```curl { "entityId": "28bca9ee-e5b9-4081-9f45-a6dded8593a1", "slug": "updated", "id": "1d034196-3347-4a66-988a-3f30d7e51b9d", "updatedEvent": { "currentEntity": { "reservationLocation": { "id": "28bca9ee-e5b9-4081-9f45-a6dded8593a1", "revision": "2", "createdDate": "2022-10-20T13:28:33.106Z", "updatedDate": "2022-10-20T13:48:38.116Z", "location": { "id": "56d8ab44-7555-4324-95dc-36b5371a8ffe" }, "configuration": { "onlineReservations": { "seatPacing": { "number": 5, "enabled": true }, "partyPacing": { "number": 2, "enabled": true }, "partySize": { "min": 2, "max": 7 }, "minimumReservationNotice": { "number": 30, "unit": "MINUTES" }, "defaultTurnoverTime": 90, "turnoverTimeRules": [ { "seatsMin": 12, "seatsMax": 17, "minutes": 10 } ], "businessSchedule": { "periods": [ { "openDay": "SUNDAY", "openTime": "09:00", "closeDay": "SUNDAY", "closeTime": "18:00" }, { "openDay": "MONDAY", "openTime": "09:00", "closeDay": "MONDAY", "closeTime": "18:00" }, { "openDay": "WEDNESDAY", "openTime": "09:00", "closeDay": "WEDNESDAY", "closeTime": "18:00" }, { "openDay": "FRIDAY", "openTime": "09:00", "closeDay": "FRIDAY", "closeTime": "18:00" }, { "openDay": "SATURDAY", "openTime": "09:00", "closeDay": "SATURDAY", "closeTime": "18:00" } ], "specialHourPeriod": [] }, "onlineReservationsEnabled": true, "manualApproval": { "enabled": true, "partySizeThreshold": 4 } }, "reservationForm": { "customFieldDefinitions": [] }, "myReservationsFields": [ { "fieldType": "TABLE", "shown": true }, { "fieldType": "START_DATE", "shown": true }, { "fieldType": "END_DATE", "shown": true }, { "fieldType": "CREATED_DATE", "shown": true }, { "fieldType": "UPDATED_DATE", "shown": true }, { "fieldType": "PARTY_SIZE", "shown": true }, { "fieldType": "FIRST_NAME", "shown": true }, { "fieldType": "LAST_NAME", "shown": true }, { "fieldType": "EMAIL", "shown": true }, { "fieldType": "PHONE", "shown": true }, { "fieldType": "ADDITIONAL_INFO", "shown": true }, { "fieldType": "TEAM_MESSAGE", "shown": true } ], "tableManagement": { "tableDefinitions": [ { "id": "c215fb2a-0eb9-43d9-b7a7-8957e24c66e7", "name": "Small table", "seatsMin": 2, "seatsMax": 4, "isActive": false }, { "id": "32d26bf5-05ae-463b-b37a-596cd6263375", "name": "Medium table", "seatsMin": 2, "seatsMax": 6, "isActive": true }, { "id": "fccb04df-d22d-4832-ad34-2ac99d7a54e5", "name": "Big table", "seatsMin": 5, "seatsMax": 8, "isActive": true } ], "deletedTableDefinitions": [], "tableCombinations": [] } }, "default": true, "archived": false } } }, "entityFqdn": "wix.table_reservations.v1.reservation_location", "eventTime": "2022-10-20T13:48:38.116Z", "triggeredByAnonymizeRequest": false } ``` --- ## JavaScript SDK ### Schema ``` Webhook: onReservationLocationUpdated Description: Triggered when a reservation location is updated. Payload: ReservationLocationUpdatedEnvelope - name: entity | type: ReservationLocation | description: none - name: _id | type: string | description: Reservation location GUID. - name: revision | type: string | description: Represents the current state of a reservation location. Each time the reservation location is modified, its `revision` changes. For an update operation to succeed, you must specify the latest revision. - name: _createdDate | type: Date | description: The date and time this reservation location was created. - name: _updatedDate | type: Date | description: The date and time this reservation location was last updated. - name: location | type: Location | description: Physical location details. Locations can be created and configured using the Locations API. or on the [Business Info](https://www.wix.com/my-account/site-selector/?buttonText=Select%20Site&title=Select%20a%20Site&autoSelectOnSingleSite=true&actionUrl=https:%2F%2Fwww.wix.com%2Fdashboard%2F%7B%7BmetaSiteId%7D%7D%2Fsettings/business-info) page in the Dashboard. - name: _id | type: string | description: Location GUID. - name: configuration | type: Configuration | description: Reservation location configuration. - name: onlineReservations | type: OnlineReservations | description: Settings for this location that are used to determine restaurant availability for reservations made online. - name: approval | type: Approval | description: Approval settings. - ONE-OF: - name: manualForLargePartiesOptions | type: ManualForLargePartiesOptions | description: Manual approval for large parties options. - name: partySizeThreshold | type: integer | description: The minimum party size that requires manual approval. - name: considerTablesForManualApproval | type: boolean | description: Use tables for manual approval part. - name: mode | type: Mode | description: Approval mode. - enum: AUTOMATIC, MANUAL, MANUAL_FOR_LARGE_PARTIES - name: seatPacing | type: SeatPacing | description: Seat pacing settings. The maximum number of seats that can be filled by new reservations within a 15-minute period. For example, setting a seat pacing of 15 would mean that between `10:00.000`-`10:14.999` there will be no more than 15 new seats available for reservation. - name: number | type: integer | description: Maximum number of seats allowed per `timeSlotInterval`. - name: enabled | type: boolean | description: Whether this option is enabled. - name: partyPacing | type: PartyPacing | description: Party pacing settings. The maximum number of party reservations that can start within a `timeSlotInterval` period. For example, if `timeSlotInterval` is 15 minutes, then a party pacing of 5 would mean that no more than 5 parties could make a reservation for the period between `10:00.000`-`10:14.999`. - name: number | type: integer | description: Maximum number of new party reservations allowed per `timeSlotInterval`. - name: enabled | type: boolean | description: Whether this option is enabled. - name: partySize | type: PartySize | description: Party size limits for a reservation. - name: min | type: integer | description: Minimum number of seats a party can reserve. - name: max | type: integer | description: Maximum number of seats a party can reserve. - name: minimumReservationNotice | type: NoticePeriod | description: Minimum reservation notice. The minimum amount of time that must be allowed between making a reservation and that reservation's start time. - name: number | type: integer | description: The quantity of the chosen time unit. - name: unit | type: Unit | description: Time unit. - enum: UNKNOWN, MINUTES, HOURS, DAYS - name: maximumReservationNotice | type: NoticePeriod | description: Maximum reservation notice. The maximum amount of time that can be allowed between making a reservation and that reservation's start time. - name: defaultTurnoverTime | type: integer | description: Default turnover time in minutes. Turnover time is how much time a party is allotted for their entire reservation - from being seated to leaving the restaurant. - name: turnoverTimeRules | type: array | description: Custom turnover time rules. This allows you to set different turnover times for different party sizes. - name: seatsMin | type: integer | description: Minimum number of seats to qualify for this rule. - name: seatsMax | type: integer | description: Maximum number of seats to qualify for this rule. - name: minutes | type: integer | description: Turnover time in minutes for qualifying parties. - name: businessSchedule | type: BusinessSchedule | description: The location's business schedule. Limited to 100 time periods. - name: periods | type: array | description: - name: openDay | type: DayOfWeek | description: Day of the week this period starts on. - enum: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY - name: openTime | type: string | description: Time this period starts in 24hr [ISO 8601](http://www.w3.org/TR/NOTE-datetime) extended format (hh:mm). Valid values are `00:00-24:00`, where `24:00` represents midnight at the end of the specified day field. - name: closeDay | type: DayOfWeek | description: Day of the week this period ends on. - enum: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY - name: closeTime | type: string | description: Time this period ends in 24hr [ISO 8601](http://www.w3.org/TR/NOTE-datetime) extended format (hh:mm). Valid values are `00:00-24:00`, where `24:00` represents midnight at the end of the specified day field. This is the last time a reservation can be made at the restaurant, not the time the restaurant closes its doors. - name: specialHourPeriod | type: array | description: Time periods during which this location is open. Each period represents a range of hours during the week during which the location is open. Max: 100 time periods - name: startDate | type: string | description: Start date and time in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#combined_date_and_time_representations) format. - name: endDate | type: string | description: End date and time in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#combined_date_and_time_representations) format. - name: isClosed | type: boolean | description: Whether or not the location is closed during this period. - name: comment | type: string | description: Additional details about the period. - name: showPhoneNumber | type: boolean | description: Whether a phone number is shown. - name: onlineReservationsEnabled | type: boolean | description: Whether online reservations are enabled. - name: pauseSettings | type: PauseSettings | description: Pause settings for reservations. - name: standardReservations | type: StandardReservations | description: Pause settings for standard reservations. - name: pauseFrom | type: Date | description: Timestamp from which online reservations are paused. Read-only, set automatically when pause is configured. - name: pauseUntil | type: Date | description: Timestamp until which online reservations are paused. When set and the current time is before this timestamp, online reservations are blocked. When the current time passes this timestamp, reservations automatically resume. - name: timeSlotInterval | type: integer | description: Interval between a reservation location's time slots in minutes. This controls the interval between time slots on a Wix site's Reservations page, and the interval between time slots returned by the Time Slots API's Get Time Slots method. Default: `15` - name: reservationForm | type: ReservationForm | description: Reservation form settings. - name: submitMessage | type: string | description: A message shown to the customer in the registration form. - name: policiesEnabled | type: boolean | description: Whether to show policies (the terms and conditions, and the privacy policy) to the customer. - name: termsAndConditions | type: TermsAndConditions | description: Settings for displaying the terms and conditions. - ONE-OF: - name: url | type: string | description: Terms and conditions URL. - name: text | type: string | description: Terms and conditions text. - name: enabled | type: boolean | description: Whether the terms and conditions are shown to the customer. Default: `false` - name: privacyPolicy | type: PrivacyPolicy | description: Settings for displaying the privacy policy. - ONE-OF: - name: url | type: string | description: Privacy policy URL. - name: text | type: string | description: Privacy policy text. - name: enabled | type: boolean | description: Whether the privacy policy is shown to the customer. Default: `false` - name: customFieldDefinitions | type: array | description: Custom fields you wish to add to the registration form for the customer to fill in. - name: _id | type: string | description: Custom field GUID. - name: name | type: string | description: Custom field name. - name: required | type: boolean | description: Whether the custom field is required. Default: `false` - name: lastNameRequired | type: boolean | description: Whether a last_name is required in the reservation form. Default: `false` - name: emailRequired | type: boolean | description: Whether an email is required in the reservation form. Default: `false` - name: emailMarketingCheckbox | type: EmailMarketingCheckbox | description: Email marketing checkbox settings. - name: enabled | type: boolean | description: Whether the checkbox is shown to the customer. Default: `false` - name: checkedByDefault | type: boolean | description: Whether the checkbox is checked by default. Default: `false` - name: tableManagement | type: TableManagement | description: Table management settings. - name: mode | type: TableManagementMode | description: Table management mode. The mode determines how tables are assigned for reservations at this location. - enum: - ON: Tables can be assigned manually for reservations at this location. When tables aren't manually assigned, Wix assigns them automatically. - IN_HOUSE_ONLY: Tables can be assigned manually for reservations at this location. Wix doesn't assign tables automatically. - OFF: Tables can't be assigned manually for reservations at this location. Wix doesn't assign tables automatically. If you try to assign a table manually, the request will fail. - name: tableDefinitions | type: array | description: Table definitions. - name: _id | type: string | description: Table GUID. - name: name | type: string | description: Table name. - name: seatsMin | type: integer | description: Minimum number of seats. - name: seatsMax | type: integer | description: Maximum number of seats. - name: isActive | type: boolean | description: Whether the table is active (available to be reserved). - name: deletedTableDefinitions | type: array | description: Deleted table definitions. - name: tableCombinations | type: array | description: Table combinations. - name: _id | type: string | description: Table combination GUID. - name: tableIds | type: array | description: IDs of tables in the combination. - name: seatsMin | type: integer | description: Minimum number of seats that can be reserved in this table combination. - name: seatsMax | type: integer | description: Maximum number of seats that can be reserved in this table combination. - name: isActive | type: boolean | description: Whether the table combination is active (available to be reserved). - name: paymentPolicy | type: PaymentPolicy | description: Reservation payment policy. This policy determines how the restaurant charges for reservations. - ONE-OF: - name: perGuestOptions | type: PerGuestOptions | description: Settings for charging per guest. - name: price | type: string | description: Monetary amount to charge. Must be a decimal string with a period as a decimal separator. For example, `"3.99"`. - name: minPartySize | type: integer | description: Minimum party size required to apply the payment policy. - name: perReservationOptions | type: PerReservationOptions | description: Settings for charging per reservation. - name: price | type: string | description: Monetary amount to charge. Must be a decimal string with a period as a decimal separator. For example, `"3.99"`. - name: minPartySize | type: integer | description: Minimum party size required to apply the payment policy. - name: paymentPolicyType | type: PaymentPolicyType | description: Type of payment policy. - enum: - UNKNOWN_PAYMENT_POLICY: Undefined table management mode. - PER_GUEST: A fee is charged for each guest in the reservation. - PER_RESERVATION: A fee is charged for the entire reservation. - name: default | type: boolean | description: Whether this reservation location's `location` is the default location of the business. - name: archived | type: boolean | description: Whether this reservation location's `location` is archived. - name: extendedFields | type: ExtendedFields | description: Custom field data for the reservation location object. [Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields.md) must be configured in the app dashboard before they can be accessed with API calls. - name: namespaces | type: object | description: Extended field data. Each key corresponds to the namespace of the app that created the extended fields. The value of each key is structured according to the schema defined when the extended fields were configured. You can only access fields for which you have the appropriate permissions. Learn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields.md). - name: modifiedFields | type: Map | description: Fields that were updated and their values before the update. - ONE-OF: - name: nullValue | type: | description: - name: numberValue | type: number | description: - name: stringValue | type: string | description: - name: boolValue | type: boolean | description: - name: structValue | type: object | description: - name: listValue | type: ListValue | description: - name: values | type: array | description: - name: metadata | type: EventMetadata | description: none - name: instanceId | type: string | description: App instance GUID. - name: eventType | type: string | description: Event type. - name: identity | type: IdentificationData | description: The identification type and identity data. - ONE-OF: - name: anonymousVisitorId | type: string | description: GUID of a site visitor that has not logged in to the site. - name: memberId | type: string | description: GUID of a site visitor that has logged in to the site. - name: wixUserId | type: string | description: GUID of a Wix user (site owner, contributor, etc.). - name: appId | type: string | description: GUID of an app. - name: identityType | type: WebhookIdentityType | description: - enum: UNKNOWN, ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP - name: accountInfo | type: AccountInfo | description: Details related to the account - name: accountId | type: string | description: GUID of the Wix account associated with the event. - name: parentAccountId | type: string | description: GUID of the parent Wix account. Only included when accountId belongs to a child account. - name: siteId | type: string | description: GUID of the Wix site associated with the event. Only included when the event is tied to a specific site. - name: _id | type: string | description: Event GUID. With this GUID you can easily spot duplicated events and ignore them. - name: entityFqdn | type: string | description: Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities. For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`. - name: slug | type: string | description: Event action name, placed at the top level to make it easier for users to dispatch messages. For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`. - name: entityId | type: string | description: GUID of the entity associated with the event. - name: eventTime | type: Date | description: Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. - name: triggeredByAnonymizeRequest | type: boolean | description: Whether the event was triggered as a result of a privacy regulation application (for example, GDPR). - name: originatedFrom | type: string | description: If present, indicates the action that triggered the event. - name: entityEventSequence | type: string | description: A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number. You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it. ``` ### Examples ```javascript import { reservationLocations } from '@wix/table-reservations'; reservationLocations.onReservationLocationUpdated((event) => { // handle your event here }); ``` ```javascript import { createClient, AppStrategy } from '@wix/sdk'; import { reservationLocations } from '@wix/table-reservations'; const wixClient = createClient({ auth: AppStrategy({ appId: 'MY-APP-ID', publicKey: 'YOUR_APP_PUBLIC_KEY', }), modules: { reservationLocations, }, }); wixClient.reservationLocations.onReservationLocationUpdated((event) => { // handle your event here }); ``` ---