# Bulk apply site FAQs across many venues Applies FAQ changes to many venues in a single all-or-nothing transaction. Any per-item failure (unknown venue, foreign venue group, invalid composite ID, invalid patch) rolls back the whole request. Each item declares the target venue (venueCompositeId) and the mode: - replace — overwrite the stored array with faqs. - patch — apply an RFC 6902 JSON Patch document (patch field) to the stored array. Per mode, exactly one payload field is expected: faqs for replace, patch for patch. Endpoint: POST /venues/site-faqs/bulk Version: 1.0.0 Security: Live ## Request fields (application/json): - `items` (array, required) - `items.venueCompositeId` (string, required) Composite venue identifier in {venueGroupId}|{rmsSlug}|{venueId} format. Example: "1|CO|123" - `items.mode` (string, required) How to apply the payload to the stored array. Enum: "replace", "patch" - `items.faqs` (array,null) FAQ items. Required when mode is replace; ignored otherwise. - `items.faqs.question` (string,null) Example: "What is your cancellation policy?" - `items.faqs.answer` (string,null) Example: "See our **cancellation policy** [here](https://example.com/policy)." - `items.patch` (array,null) RFC 6902 JSON Patch operations. Required when mode is patch; ignored otherwise. - `items.patch.op` (string, required) The operation to perform. Enum: "add", "remove", "replace" - `items.patch.path` (string, required) JSON Pointer ([RFC 6901](https://datatracker.ietf.org/doc/html/rfc6901)) to the target location within the stored FAQ array. Must start with /. Use an integer segment to address an item by index (e.g. /0), and - to append (e.g. /-). Example: "/0/answer" - `items.patch.value` (any,null) The value to use for the operation. Required for add and replace. Omit (or set to null) for remove. Can be any valid JSON value (string, number, boolean, object, array, null). Example: "Updated answer text." ## Response 200 fields (application/json): - `applied` (integer, required) Number of items applied successfully. Example: 2 ## Response 400 fields (application/json): - `type` (string) A URI reference [rfc9457] that identifies the problem type. This specification encourages that, when dereferenced, it provides human-readable documentation for the problem type (e.g., using HTML [W3C.REC-html5-20141028]). When this member is not present, its value is assumed to be "about:blank". - `title` (string, required) A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization. - `status` (integer, required) The HTTP status code [rfc9457, Section 3.1.12] generated by the origin server for this occurrence of the problem. - `detail` (string) A human-readable explanation specific to this occurrence of the problem. - `code` (string, required) Error code in the format RESOURCE-X-NNN where X is R (retryable) or N (non-retryable). See ErrorCatalog.md for all error codes. Example: "VALID-N-001" - `isRetryable` (boolean, required) Indicates whether the error is retryable. If true, the request may succeed if retried. If false, the request will fail again with the same input. - `traceId` (string) Request trace identifier for debugging and correlation purposes. Example: "0HNJ2BG2TU3BU:00000001" - `errors` (object,null) Validation errors dictionary mapping field names to arrays of error messages. Only present for validation errors (VALID-N-001). Example: {"Date":["Availability date cannot be in the past."],"EndTime":["EndTime must be after StartTime."]} ## Response 401 fields (application/json): - `type` (string) A URI reference [rfc9457] that identifies the problem type. This specification encourages that, when dereferenced, it provides human-readable documentation for the problem type (e.g., using HTML [W3C.REC-html5-20141028]). When this member is not present, its value is assumed to be "about:blank". - `title` (string, required) A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization. - `status` (integer, required) The HTTP status code [rfc9457, Section 3.1.12] generated by the origin server for this occurrence of the problem. - `detail` (string) A human-readable explanation specific to this occurrence of the problem. - `code` (string, required) Error code in the format RESOURCE-X-NNN where X is R (retryable) or N (non-retryable). See ErrorCatalog.md for all error codes. Example: "VALID-N-001" - `isRetryable` (boolean, required) Indicates whether the error is retryable. If true, the request may succeed if retried. If false, the request will fail again with the same input. - `traceId` (string) Request trace identifier for debugging and correlation purposes. Example: "0HNJ2BG2TU3BU:00000001" - `errors` (object,null) Validation errors dictionary mapping field names to arrays of error messages. Only present for validation errors (VALID-N-001). Example: {"Date":["Availability date cannot be in the past."],"EndTime":["EndTime must be after StartTime."]} ## Response 403 fields (application/json): - `type` (string) A URI reference [rfc9457] that identifies the problem type. This specification encourages that, when dereferenced, it provides human-readable documentation for the problem type (e.g., using HTML [W3C.REC-html5-20141028]). When this member is not present, its value is assumed to be "about:blank". - `title` (string, required) A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization. - `status` (integer, required) The HTTP status code [rfc9457, Section 3.1.12] generated by the origin server for this occurrence of the problem. - `detail` (string) A human-readable explanation specific to this occurrence of the problem. - `code` (string, required) Error code in the format RESOURCE-X-NNN where X is R (retryable) or N (non-retryable). See ErrorCatalog.md for all error codes. Example: "VALID-N-001" - `isRetryable` (boolean, required) Indicates whether the error is retryable. If true, the request may succeed if retried. If false, the request will fail again with the same input. - `traceId` (string) Request trace identifier for debugging and correlation purposes. Example: "0HNJ2BG2TU3BU:00000001" - `errors` (object,null) Validation errors dictionary mapping field names to arrays of error messages. Only present for validation errors (VALID-N-001). Example: {"Date":["Availability date cannot be in the past."],"EndTime":["EndTime must be after StartTime."]} ## Response 404 fields (application/json): - `type` (string) A URI reference [rfc9457] that identifies the problem type. This specification encourages that, when dereferenced, it provides human-readable documentation for the problem type (e.g., using HTML [W3C.REC-html5-20141028]). When this member is not present, its value is assumed to be "about:blank". - `title` (string, required) A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization. - `status` (integer, required) The HTTP status code [rfc9457, Section 3.1.12] generated by the origin server for this occurrence of the problem. - `detail` (string) A human-readable explanation specific to this occurrence of the problem. - `code` (string, required) Error code in the format RESOURCE-X-NNN where X is R (retryable) or N (non-retryable). See ErrorCatalog.md for all error codes. Example: "VALID-N-001" - `isRetryable` (boolean, required) Indicates whether the error is retryable. If true, the request may succeed if retried. If false, the request will fail again with the same input. - `traceId` (string) Request trace identifier for debugging and correlation purposes. Example: "0HNJ2BG2TU3BU:00000001" - `errors` (object,null) Validation errors dictionary mapping field names to arrays of error messages. Only present for validation errors (VALID-N-001). Example: {"Date":["Availability date cannot be in the past."],"EndTime":["EndTime must be after StartTime."]} ## Response 429 fields (application/json): - `type` (string) A URI reference [rfc9457] that identifies the problem type. This specification encourages that, when dereferenced, it provides human-readable documentation for the problem type (e.g., using HTML [W3C.REC-html5-20141028]). When this member is not present, its value is assumed to be "about:blank". - `title` (string, required) A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization. - `status` (integer, required) The HTTP status code [rfc9457, Section 3.1.12] generated by the origin server for this occurrence of the problem. - `detail` (string) A human-readable explanation specific to this occurrence of the problem. - `code` (string, required) Error code in the format RESOURCE-X-NNN where X is R (retryable) or N (non-retryable). See ErrorCatalog.md for all error codes. Example: "VALID-N-001" - `isRetryable` (boolean, required) Indicates whether the error is retryable. If true, the request may succeed if retried. If false, the request will fail again with the same input. - `traceId` (string) Request trace identifier for debugging and correlation purposes. Example: "0HNJ2BG2TU3BU:00000001" - `errors` (object,null) Validation errors dictionary mapping field names to arrays of error messages. Only present for validation errors (VALID-N-001). Example: {"Date":["Availability date cannot be in the past."],"EndTime":["EndTime must be after StartTime."]} ## Response 500 fields (application/json): - `type` (string) A URI reference [rfc9457] that identifies the problem type. This specification encourages that, when dereferenced, it provides human-readable documentation for the problem type (e.g., using HTML [W3C.REC-html5-20141028]). When this member is not present, its value is assumed to be "about:blank". - `title` (string, required) A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization. - `status` (integer, required) The HTTP status code [rfc9457, Section 3.1.12] generated by the origin server for this occurrence of the problem. - `detail` (string) A human-readable explanation specific to this occurrence of the problem. - `code` (string, required) Error code in the format RESOURCE-X-NNN where X is R (retryable) or N (non-retryable). See ErrorCatalog.md for all error codes. Example: "BOOK-N-001" - `isRetryable` (boolean, required) Indicates whether the error is retryable. If true, the request may succeed if retried. If false, the request will fail again with the same input. - `traceId` (string) Request trace identifier for debugging and correlation purposes. Example: "0HNJ2BG2TU3BU:00000001"