{
  "openapi": "3.1.0",
  "info": {
    "title": "Voyant Operator API",
    "version": "0.0.0",
    "description": "Generated from the composed operator app. Do not edit by hand."
  },
  "servers": [
    {
      "url": "/",
      "description": "This deployment (same origin)"
    }
  ],
  "components": {
    "schemas": {
      "CatalogSearchFilter": {
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "enum": ["eq"]
              },
              "field": {
                "type": "string",
                "minLength": 1
              },
              "value": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "number"
                  },
                  {
                    "type": "boolean"
                  }
                ]
              }
            },
            "required": ["kind", "field", "value"]
          },
          {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "enum": ["in"]
              },
              "field": {
                "type": "string",
                "minLength": 1
              },
              "values": {
                "type": "array",
                "items": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "number"
                    }
                  ]
                }
              }
            },
            "required": ["kind", "field", "values"]
          },
          {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "enum": ["range"]
              },
              "field": {
                "type": "string",
                "minLength": 1
              },
              "gte": {
                "type": "number"
              },
              "lte": {
                "type": "number"
              }
            },
            "required": ["kind", "field"]
          },
          {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "enum": ["and"]
              },
              "clauses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CatalogSearchFilter"
                }
              }
            },
            "required": ["kind", "clauses"]
          },
          {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "enum": ["or"]
              },
              "clauses": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CatalogSearchFilter"
                }
              }
            },
            "required": ["kind", "clauses"]
          }
        ]
      }
    },
    "parameters": {}
  },
  "paths": {
    "/v1/public/bookings/sessions/{sessionId}": {
      "get": {
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "sessionId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Booking session snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "sessionId": {
                          "type": "string"
                        },
                        "bookingNumber": {
                          "type": "string"
                        },
                        "status": {
                          "type": "string",
                          "enum": [
                            "draft",
                            "on_hold",
                            "awaiting_payment",
                            "confirmed",
                            "in_progress",
                            "completed",
                            "expired",
                            "cancelled"
                          ]
                        },
                        "externalBookingRef": {
                          "type": ["string", "null"]
                        },
                        "communicationLanguage": {
                          "type": ["string", "null"]
                        },
                        "sellCurrency": {
                          "type": "string"
                        },
                        "sellAmountCents": {
                          "type": ["integer", "null"]
                        },
                        "startDate": {
                          "type": ["string", "null"]
                        },
                        "endDate": {
                          "type": ["string", "null"]
                        },
                        "pax": {
                          "type": ["integer", "null"]
                        },
                        "holdExpiresAt": {
                          "type": ["string", "null"]
                        },
                        "confirmedAt": {
                          "type": ["string", "null"]
                        },
                        "expiredAt": {
                          "type": ["string", "null"]
                        },
                        "cancelledAt": {
                          "type": ["string", "null"]
                        },
                        "completedAt": {
                          "type": ["string", "null"]
                        },
                        "travelers": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "participantType": {
                                "type": "string",
                                "enum": ["traveler", "occupant", "other"]
                              },
                              "travelerCategory": {
                                "type": ["string", "null"],
                                "enum": ["adult", "child", "infant", "senior", "other", null]
                              },
                              "firstName": {
                                "type": "string"
                              },
                              "lastName": {
                                "type": "string"
                              },
                              "email": {
                                "type": ["string", "null"]
                              },
                              "phone": {
                                "type": ["string", "null"]
                              },
                              "preferredLanguage": {
                                "type": ["string", "null"]
                              },
                              "specialRequests": {
                                "type": ["string", "null"]
                              },
                              "isPrimary": {
                                "type": "boolean"
                              },
                              "notes": {
                                "type": ["string", "null"]
                              }
                            },
                            "required": [
                              "id",
                              "participantType",
                              "travelerCategory",
                              "firstName",
                              "lastName",
                              "email",
                              "phone",
                              "preferredLanguage",
                              "specialRequests",
                              "isPrimary",
                              "notes"
                            ]
                          }
                        },
                        "items": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "title": {
                                "type": "string"
                              },
                              "description": {
                                "type": ["string", "null"]
                              },
                              "itemType": {
                                "type": "string",
                                "enum": [
                                  "unit",
                                  "extra",
                                  "service",
                                  "fee",
                                  "tax",
                                  "discount",
                                  "adjustment",
                                  "accommodation",
                                  "transport",
                                  "other"
                                ]
                              },
                              "status": {
                                "type": "string",
                                "enum": [
                                  "draft",
                                  "on_hold",
                                  "confirmed",
                                  "cancelled",
                                  "expired",
                                  "fulfilled"
                                ]
                              },
                              "serviceDate": {
                                "type": ["string", "null"]
                              },
                              "startsAt": {
                                "type": ["string", "null"]
                              },
                              "endsAt": {
                                "type": ["string", "null"]
                              },
                              "quantity": {
                                "type": "integer"
                              },
                              "sellCurrency": {
                                "type": "string"
                              },
                              "unitSellAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "totalSellAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "costCurrency": {
                                "type": ["string", "null"]
                              },
                              "unitCostAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "totalCostAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "notes": {
                                "type": ["string", "null"]
                              },
                              "productId": {
                                "type": ["string", "null"]
                              },
                              "optionId": {
                                "type": ["string", "null"]
                              },
                              "optionUnitId": {
                                "type": ["string", "null"]
                              },
                              "pricingCategoryId": {
                                "type": ["string", "null"]
                              },
                              "travelerLinks": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "id": {
                                      "type": "string"
                                    },
                                    "travelerId": {
                                      "type": "string"
                                    },
                                    "role": {
                                      "type": "string",
                                      "enum": ["traveler", "occupant", "beneficiary", "other"]
                                    },
                                    "isPrimary": {
                                      "type": "boolean"
                                    }
                                  },
                                  "required": ["id", "travelerId", "role", "isPrimary"]
                                }
                              }
                            },
                            "required": [
                              "id",
                              "title",
                              "description",
                              "itemType",
                              "status",
                              "serviceDate",
                              "startsAt",
                              "endsAt",
                              "quantity",
                              "sellCurrency",
                              "unitSellAmountCents",
                              "totalSellAmountCents",
                              "costCurrency",
                              "unitCostAmountCents",
                              "totalCostAmountCents",
                              "notes",
                              "productId",
                              "optionId",
                              "optionUnitId",
                              "pricingCategoryId",
                              "travelerLinks"
                            ]
                          }
                        },
                        "allocations": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "bookingItemId": {
                                "type": ["string", "null"]
                              },
                              "productId": {
                                "type": ["string", "null"]
                              },
                              "optionId": {
                                "type": ["string", "null"]
                              },
                              "optionUnitId": {
                                "type": ["string", "null"]
                              },
                              "pricingCategoryId": {
                                "type": ["string", "null"]
                              },
                              "availabilitySlotId": {
                                "type": ["string", "null"]
                              },
                              "quantity": {
                                "type": "integer"
                              },
                              "allocationType": {
                                "type": "string",
                                "enum": ["unit", "pickup", "resource"]
                              },
                              "status": {
                                "type": "string",
                                "enum": [
                                  "held",
                                  "confirmed",
                                  "released",
                                  "expired",
                                  "cancelled",
                                  "fulfilled"
                                ]
                              },
                              "holdExpiresAt": {
                                "type": ["string", "null"]
                              },
                              "confirmedAt": {
                                "type": ["string", "null"]
                              },
                              "releasedAt": {
                                "type": ["string", "null"]
                              }
                            },
                            "required": [
                              "id",
                              "bookingItemId",
                              "productId",
                              "optionId",
                              "optionUnitId",
                              "pricingCategoryId",
                              "availabilitySlotId",
                              "quantity",
                              "allocationType",
                              "status",
                              "holdExpiresAt",
                              "confirmedAt",
                              "releasedAt"
                            ]
                          }
                        },
                        "checklist": {
                          "type": "object",
                          "properties": {
                            "hasTravelers": {
                              "type": "boolean"
                            },
                            "hasPrimaryTraveler": {
                              "type": "boolean"
                            },
                            "hasItems": {
                              "type": "boolean"
                            },
                            "hasAllocations": {
                              "type": "boolean"
                            },
                            "readyForConfirmation": {
                              "type": "boolean"
                            }
                          },
                          "required": [
                            "hasTravelers",
                            "hasPrimaryTraveler",
                            "hasItems",
                            "hasAllocations",
                            "readyForConfirmation"
                          ]
                        },
                        "state": {
                          "type": ["object", "null"],
                          "properties": {
                            "sessionId": {
                              "type": "string"
                            },
                            "stateKey": {
                              "type": "string",
                              "enum": ["wizard"]
                            },
                            "currentStep": {
                              "type": ["string", "null"]
                            },
                            "completedSteps": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "payload": {
                              "type": "object",
                              "additionalProperties": {}
                            },
                            "version": {
                              "type": "integer",
                              "exclusiveMinimum": 0
                            },
                            "createdAt": {
                              "type": "string"
                            },
                            "updatedAt": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "sessionId",
                            "stateKey",
                            "currentStep",
                            "completedSteps",
                            "payload",
                            "version",
                            "createdAt",
                            "updatedAt"
                          ]
                        },
                        "checkoutCapability": {
                          "type": "object",
                          "properties": {
                            "token": {
                              "type": "string",
                              "minLength": 1
                            },
                            "expiresAt": {
                              "type": "string"
                            },
                            "actions": {
                              "type": "array",
                              "items": {
                                "type": "string",
                                "enum": [
                                  "session:read",
                                  "session:update",
                                  "session:reprice",
                                  "session:finalize",
                                  "payment:read",
                                  "payment:start"
                                ]
                              }
                            }
                          },
                          "required": ["token", "expiresAt", "actions"]
                        }
                      },
                      "required": [
                        "sessionId",
                        "bookingNumber",
                        "status",
                        "externalBookingRef",
                        "communicationLanguage",
                        "sellCurrency",
                        "sellAmountCents",
                        "startDate",
                        "endDate",
                        "pax",
                        "holdExpiresAt",
                        "confirmedAt",
                        "expiredAt",
                        "cancelledAt",
                        "completedAt",
                        "travelers",
                        "items",
                        "allocations",
                        "checklist",
                        "state"
                      ]
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          },
          "404": {
            "description": "Booking session not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          }
        },
        "operationId": "getPublicBookingsSessionsBySessionId",
        "summary": "GET /v1/public/bookings/sessions/{sessionId}",
        "tags": ["bookings"],
        "x-voyant-module": "bookings",
        "x-voyant-surface": "storefront"
      },
      "patch": {
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "sessionId",
            "in": "path"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "externalBookingRef": {
                    "type": ["string", "null"]
                  },
                  "communicationLanguage": {
                    "type": ["string", "null"],
                    "maxLength": 35
                  },
                  "pax": {
                    "type": ["integer", "null"],
                    "exclusiveMinimum": 0
                  },
                  "holdMinutes": {
                    "type": "integer",
                    "exclusiveMinimum": 0,
                    "maximum": 1440
                  },
                  "holdExpiresAt": {
                    "type": ["string", "null"],
                    "format": "date-time"
                  },
                  "travelers": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "participantType": {
                          "type": "string",
                          "enum": ["traveler", "occupant"],
                          "default": "traveler"
                        },
                        "travelerCategory": {
                          "type": ["string", "null"],
                          "enum": ["adult", "child", "infant", "senior", "other", null]
                        },
                        "firstName": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "lastName": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 255
                        },
                        "email": {
                          "type": ["string", "null"],
                          "format": "email"
                        },
                        "phone": {
                          "type": ["string", "null"],
                          "maxLength": 50
                        },
                        "preferredLanguage": {
                          "type": ["string", "null"],
                          "maxLength": 35
                        },
                        "specialRequests": {
                          "type": ["string", "null"]
                        },
                        "isPrimary": {
                          "type": "boolean",
                          "default": false
                        },
                        "notes": {
                          "type": ["string", "null"]
                        }
                      },
                      "required": ["firstName", "lastName"]
                    }
                  },
                  "removedTravelerIds": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "default": []
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Updated booking session snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "sessionId": {
                          "type": "string"
                        },
                        "bookingNumber": {
                          "type": "string"
                        },
                        "status": {
                          "type": "string",
                          "enum": [
                            "draft",
                            "on_hold",
                            "awaiting_payment",
                            "confirmed",
                            "in_progress",
                            "completed",
                            "expired",
                            "cancelled"
                          ]
                        },
                        "externalBookingRef": {
                          "type": ["string", "null"]
                        },
                        "communicationLanguage": {
                          "type": ["string", "null"]
                        },
                        "sellCurrency": {
                          "type": "string"
                        },
                        "sellAmountCents": {
                          "type": ["integer", "null"]
                        },
                        "startDate": {
                          "type": ["string", "null"]
                        },
                        "endDate": {
                          "type": ["string", "null"]
                        },
                        "pax": {
                          "type": ["integer", "null"]
                        },
                        "holdExpiresAt": {
                          "type": ["string", "null"]
                        },
                        "confirmedAt": {
                          "type": ["string", "null"]
                        },
                        "expiredAt": {
                          "type": ["string", "null"]
                        },
                        "cancelledAt": {
                          "type": ["string", "null"]
                        },
                        "completedAt": {
                          "type": ["string", "null"]
                        },
                        "travelers": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "participantType": {
                                "type": "string",
                                "enum": ["traveler", "occupant", "other"]
                              },
                              "travelerCategory": {
                                "type": ["string", "null"],
                                "enum": ["adult", "child", "infant", "senior", "other", null]
                              },
                              "firstName": {
                                "type": "string"
                              },
                              "lastName": {
                                "type": "string"
                              },
                              "email": {
                                "type": ["string", "null"]
                              },
                              "phone": {
                                "type": ["string", "null"]
                              },
                              "preferredLanguage": {
                                "type": ["string", "null"]
                              },
                              "specialRequests": {
                                "type": ["string", "null"]
                              },
                              "isPrimary": {
                                "type": "boolean"
                              },
                              "notes": {
                                "type": ["string", "null"]
                              }
                            },
                            "required": [
                              "id",
                              "participantType",
                              "travelerCategory",
                              "firstName",
                              "lastName",
                              "email",
                              "phone",
                              "preferredLanguage",
                              "specialRequests",
                              "isPrimary",
                              "notes"
                            ]
                          }
                        },
                        "items": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "title": {
                                "type": "string"
                              },
                              "description": {
                                "type": ["string", "null"]
                              },
                              "itemType": {
                                "type": "string",
                                "enum": [
                                  "unit",
                                  "extra",
                                  "service",
                                  "fee",
                                  "tax",
                                  "discount",
                                  "adjustment",
                                  "accommodation",
                                  "transport",
                                  "other"
                                ]
                              },
                              "status": {
                                "type": "string",
                                "enum": [
                                  "draft",
                                  "on_hold",
                                  "confirmed",
                                  "cancelled",
                                  "expired",
                                  "fulfilled"
                                ]
                              },
                              "serviceDate": {
                                "type": ["string", "null"]
                              },
                              "startsAt": {
                                "type": ["string", "null"]
                              },
                              "endsAt": {
                                "type": ["string", "null"]
                              },
                              "quantity": {
                                "type": "integer"
                              },
                              "sellCurrency": {
                                "type": "string"
                              },
                              "unitSellAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "totalSellAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "costCurrency": {
                                "type": ["string", "null"]
                              },
                              "unitCostAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "totalCostAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "notes": {
                                "type": ["string", "null"]
                              },
                              "productId": {
                                "type": ["string", "null"]
                              },
                              "optionId": {
                                "type": ["string", "null"]
                              },
                              "optionUnitId": {
                                "type": ["string", "null"]
                              },
                              "pricingCategoryId": {
                                "type": ["string", "null"]
                              },
                              "travelerLinks": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "id": {
                                      "type": "string"
                                    },
                                    "travelerId": {
                                      "type": "string"
                                    },
                                    "role": {
                                      "type": "string",
                                      "enum": ["traveler", "occupant", "beneficiary", "other"]
                                    },
                                    "isPrimary": {
                                      "type": "boolean"
                                    }
                                  },
                                  "required": ["id", "travelerId", "role", "isPrimary"]
                                }
                              }
                            },
                            "required": [
                              "id",
                              "title",
                              "description",
                              "itemType",
                              "status",
                              "serviceDate",
                              "startsAt",
                              "endsAt",
                              "quantity",
                              "sellCurrency",
                              "unitSellAmountCents",
                              "totalSellAmountCents",
                              "costCurrency",
                              "unitCostAmountCents",
                              "totalCostAmountCents",
                              "notes",
                              "productId",
                              "optionId",
                              "optionUnitId",
                              "pricingCategoryId",
                              "travelerLinks"
                            ]
                          }
                        },
                        "allocations": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "bookingItemId": {
                                "type": ["string", "null"]
                              },
                              "productId": {
                                "type": ["string", "null"]
                              },
                              "optionId": {
                                "type": ["string", "null"]
                              },
                              "optionUnitId": {
                                "type": ["string", "null"]
                              },
                              "pricingCategoryId": {
                                "type": ["string", "null"]
                              },
                              "availabilitySlotId": {
                                "type": ["string", "null"]
                              },
                              "quantity": {
                                "type": "integer"
                              },
                              "allocationType": {
                                "type": "string",
                                "enum": ["unit", "pickup", "resource"]
                              },
                              "status": {
                                "type": "string",
                                "enum": [
                                  "held",
                                  "confirmed",
                                  "released",
                                  "expired",
                                  "cancelled",
                                  "fulfilled"
                                ]
                              },
                              "holdExpiresAt": {
                                "type": ["string", "null"]
                              },
                              "confirmedAt": {
                                "type": ["string", "null"]
                              },
                              "releasedAt": {
                                "type": ["string", "null"]
                              }
                            },
                            "required": [
                              "id",
                              "bookingItemId",
                              "productId",
                              "optionId",
                              "optionUnitId",
                              "pricingCategoryId",
                              "availabilitySlotId",
                              "quantity",
                              "allocationType",
                              "status",
                              "holdExpiresAt",
                              "confirmedAt",
                              "releasedAt"
                            ]
                          }
                        },
                        "checklist": {
                          "type": "object",
                          "properties": {
                            "hasTravelers": {
                              "type": "boolean"
                            },
                            "hasPrimaryTraveler": {
                              "type": "boolean"
                            },
                            "hasItems": {
                              "type": "boolean"
                            },
                            "hasAllocations": {
                              "type": "boolean"
                            },
                            "readyForConfirmation": {
                              "type": "boolean"
                            }
                          },
                          "required": [
                            "hasTravelers",
                            "hasPrimaryTraveler",
                            "hasItems",
                            "hasAllocations",
                            "readyForConfirmation"
                          ]
                        },
                        "state": {
                          "type": ["object", "null"],
                          "properties": {
                            "sessionId": {
                              "type": "string"
                            },
                            "stateKey": {
                              "type": "string",
                              "enum": ["wizard"]
                            },
                            "currentStep": {
                              "type": ["string", "null"]
                            },
                            "completedSteps": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "payload": {
                              "type": "object",
                              "additionalProperties": {}
                            },
                            "version": {
                              "type": "integer",
                              "exclusiveMinimum": 0
                            },
                            "createdAt": {
                              "type": "string"
                            },
                            "updatedAt": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "sessionId",
                            "stateKey",
                            "currentStep",
                            "completedSteps",
                            "payload",
                            "version",
                            "createdAt",
                            "updatedAt"
                          ]
                        },
                        "checkoutCapability": {
                          "type": "object",
                          "properties": {
                            "token": {
                              "type": "string",
                              "minLength": 1
                            },
                            "expiresAt": {
                              "type": "string"
                            },
                            "actions": {
                              "type": "array",
                              "items": {
                                "type": "string",
                                "enum": [
                                  "session:read",
                                  "session:update",
                                  "session:reprice",
                                  "session:finalize",
                                  "payment:read",
                                  "payment:start"
                                ]
                              }
                            }
                          },
                          "required": ["token", "expiresAt", "actions"]
                        }
                      },
                      "required": [
                        "sessionId",
                        "bookingNumber",
                        "status",
                        "externalBookingRef",
                        "communicationLanguage",
                        "sellCurrency",
                        "sellAmountCents",
                        "startDate",
                        "endDate",
                        "pax",
                        "holdExpiresAt",
                        "confirmedAt",
                        "expiredAt",
                        "cancelledAt",
                        "completedAt",
                        "travelers",
                        "items",
                        "allocations",
                        "checklist",
                        "state"
                      ]
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          },
          "404": {
            "description": "Booking session not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "409": {
            "description": "Booking session could not be updated",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          }
        },
        "operationId": "patchPublicBookingsSessionsBySessionId",
        "summary": "PATCH /v1/public/bookings/sessions/{sessionId}",
        "tags": ["bookings"],
        "x-voyant-module": "bookings",
        "x-voyant-surface": "storefront"
      }
    },
    "/v1/public/bookings/sessions/{sessionId}/state": {
      "get": {
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "sessionId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Booking session wizard state",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "sessionId": {
                          "type": "string"
                        },
                        "stateKey": {
                          "type": "string",
                          "enum": ["wizard"]
                        },
                        "currentStep": {
                          "type": ["string", "null"]
                        },
                        "completedSteps": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "payload": {
                          "type": "object",
                          "additionalProperties": {}
                        },
                        "version": {
                          "type": "integer",
                          "exclusiveMinimum": 0
                        },
                        "createdAt": {
                          "type": "string"
                        },
                        "updatedAt": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "sessionId",
                        "stateKey",
                        "currentStep",
                        "completedSteps",
                        "payload",
                        "version",
                        "createdAt",
                        "updatedAt"
                      ]
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          },
          "404": {
            "description": "Booking session not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          }
        },
        "operationId": "getPublicBookingsSessionsBySessionIdState",
        "summary": "GET /v1/public/bookings/sessions/{sessionId}/state",
        "tags": ["bookings"],
        "x-voyant-module": "bookings",
        "x-voyant-surface": "storefront"
      },
      "put": {
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "sessionId",
            "in": "path"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "currentStep": {
                    "type": ["string", "null"],
                    "maxLength": 255
                  },
                  "completedSteps": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 255
                    }
                  },
                  "payload": {
                    "type": "object",
                    "additionalProperties": {},
                    "default": {}
                  },
                  "replacePayload": {
                    "type": "boolean",
                    "default": false
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Updated booking session wizard state",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "sessionId": {
                          "type": "string"
                        },
                        "stateKey": {
                          "type": "string",
                          "enum": ["wizard"]
                        },
                        "currentStep": {
                          "type": ["string", "null"]
                        },
                        "completedSteps": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "payload": {
                          "type": "object",
                          "additionalProperties": {}
                        },
                        "version": {
                          "type": "integer",
                          "exclusiveMinimum": 0
                        },
                        "createdAt": {
                          "type": "string"
                        },
                        "updatedAt": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "sessionId",
                        "stateKey",
                        "currentStep",
                        "completedSteps",
                        "payload",
                        "version",
                        "createdAt",
                        "updatedAt"
                      ]
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          },
          "404": {
            "description": "Booking session not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          }
        },
        "operationId": "putPublicBookingsSessionsBySessionIdState",
        "summary": "PUT /v1/public/bookings/sessions/{sessionId}/state",
        "tags": ["bookings"],
        "x-voyant-module": "bookings",
        "x-voyant-surface": "storefront"
      }
    },
    "/v1/public/bookings/sessions/{sessionId}/reprice": {
      "post": {
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "sessionId",
            "in": "path"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "catalogId": {
                    "type": "string"
                  },
                  "applyToSession": {
                    "type": "boolean",
                    "default": false
                  },
                  "selections": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "itemId": {
                          "type": "string"
                        },
                        "optionId": {
                          "type": ["string", "null"]
                        },
                        "optionUnitId": {
                          "type": ["string", "null"]
                        },
                        "pricingCategoryId": {
                          "type": ["string", "null"]
                        },
                        "quantity": {
                          "type": "integer",
                          "exclusiveMinimum": 0
                        }
                      },
                      "required": ["itemId"]
                    },
                    "minItems": 1
                  }
                },
                "required": ["selections"]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Reprice result for the booking session selections",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "pricing": {
                          "type": "object",
                          "properties": {
                            "sessionId": {
                              "type": "string"
                            },
                            "catalogId": {
                              "type": ["string", "null"]
                            },
                            "currencyCode": {
                              "type": "string"
                            },
                            "totalSellAmountCents": {
                              "type": "integer"
                            },
                            "items": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "itemId": {
                                    "type": "string"
                                  },
                                  "title": {
                                    "type": "string"
                                  },
                                  "productId": {
                                    "type": ["string", "null"]
                                  },
                                  "optionId": {
                                    "type": ["string", "null"]
                                  },
                                  "optionUnitId": {
                                    "type": ["string", "null"]
                                  },
                                  "optionUnitName": {
                                    "type": ["string", "null"]
                                  },
                                  "optionUnitType": {
                                    "type": ["string", "null"]
                                  },
                                  "pricingCategoryId": {
                                    "type": ["string", "null"]
                                  },
                                  "quantity": {
                                    "type": "integer"
                                  },
                                  "pricingMode": {
                                    "type": "string"
                                  },
                                  "unitSellAmountCents": {
                                    "type": ["integer", "null"]
                                  },
                                  "totalSellAmountCents": {
                                    "type": ["integer", "null"]
                                  },
                                  "warnings": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    }
                                  }
                                },
                                "required": [
                                  "itemId",
                                  "title",
                                  "productId",
                                  "optionId",
                                  "optionUnitId",
                                  "optionUnitName",
                                  "optionUnitType",
                                  "pricingCategoryId",
                                  "quantity",
                                  "pricingMode",
                                  "unitSellAmountCents",
                                  "totalSellAmountCents",
                                  "warnings"
                                ]
                              }
                            },
                            "warnings": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "appliedToSession": {
                              "type": "boolean"
                            }
                          },
                          "required": [
                            "sessionId",
                            "catalogId",
                            "currencyCode",
                            "totalSellAmountCents",
                            "items",
                            "warnings",
                            "appliedToSession"
                          ]
                        },
                        "session": {
                          "type": ["object", "null"],
                          "properties": {
                            "sessionId": {
                              "type": "string"
                            },
                            "bookingNumber": {
                              "type": "string"
                            },
                            "revision": {
                              "type": "integer",
                              "exclusiveMinimum": 0
                            },
                            "status": {
                              "type": "string",
                              "enum": [
                                "draft",
                                "on_hold",
                                "awaiting_payment",
                                "confirmed",
                                "in_progress",
                                "completed",
                                "expired",
                                "cancelled"
                              ]
                            },
                            "externalBookingRef": {
                              "type": ["string", "null"]
                            },
                            "communicationLanguage": {
                              "type": ["string", "null"]
                            },
                            "sellCurrency": {
                              "type": "string"
                            },
                            "sellAmountCents": {
                              "type": ["integer", "null"]
                            },
                            "startDate": {
                              "type": ["string", "null"]
                            },
                            "endDate": {
                              "type": ["string", "null"]
                            },
                            "pax": {
                              "type": ["integer", "null"]
                            },
                            "holdExpiresAt": {
                              "type": ["string", "null"]
                            },
                            "confirmedAt": {
                              "type": ["string", "null"]
                            },
                            "expiredAt": {
                              "type": ["string", "null"]
                            },
                            "cancelledAt": {
                              "type": ["string", "null"]
                            },
                            "completedAt": {
                              "type": ["string", "null"]
                            },
                            "travelers": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "type": "string"
                                  },
                                  "participantType": {
                                    "type": "string",
                                    "enum": ["traveler", "occupant", "other"]
                                  },
                                  "travelerCategory": {
                                    "type": ["string", "null"],
                                    "enum": ["adult", "child", "infant", "senior", "other", null]
                                  },
                                  "firstName": {
                                    "type": "string"
                                  },
                                  "lastName": {
                                    "type": "string"
                                  },
                                  "email": {
                                    "type": ["string", "null"]
                                  },
                                  "phone": {
                                    "type": ["string", "null"]
                                  },
                                  "preferredLanguage": {
                                    "type": ["string", "null"]
                                  },
                                  "specialRequests": {
                                    "type": ["string", "null"]
                                  },
                                  "isPrimary": {
                                    "type": "boolean"
                                  },
                                  "notes": {
                                    "type": ["string", "null"]
                                  }
                                },
                                "required": [
                                  "id",
                                  "participantType",
                                  "travelerCategory",
                                  "firstName",
                                  "lastName",
                                  "email",
                                  "phone",
                                  "preferredLanguage",
                                  "specialRequests",
                                  "isPrimary",
                                  "notes"
                                ]
                              }
                            },
                            "items": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "type": "string"
                                  },
                                  "title": {
                                    "type": "string"
                                  },
                                  "description": {
                                    "type": ["string", "null"]
                                  },
                                  "itemType": {
                                    "type": "string",
                                    "enum": [
                                      "unit",
                                      "extra",
                                      "service",
                                      "fee",
                                      "tax",
                                      "discount",
                                      "adjustment",
                                      "accommodation",
                                      "transport",
                                      "other"
                                    ]
                                  },
                                  "status": {
                                    "type": "string",
                                    "enum": [
                                      "draft",
                                      "on_hold",
                                      "confirmed",
                                      "cancelled",
                                      "expired",
                                      "fulfilled"
                                    ]
                                  },
                                  "serviceDate": {
                                    "type": ["string", "null"]
                                  },
                                  "startsAt": {
                                    "type": ["string", "null"]
                                  },
                                  "endsAt": {
                                    "type": ["string", "null"]
                                  },
                                  "quantity": {
                                    "type": "integer"
                                  },
                                  "sellCurrency": {
                                    "type": "string"
                                  },
                                  "unitSellAmountCents": {
                                    "type": ["integer", "null"]
                                  },
                                  "totalSellAmountCents": {
                                    "type": ["integer", "null"]
                                  },
                                  "costCurrency": {
                                    "type": ["string", "null"]
                                  },
                                  "unitCostAmountCents": {
                                    "type": ["integer", "null"]
                                  },
                                  "totalCostAmountCents": {
                                    "type": ["integer", "null"]
                                  },
                                  "notes": {
                                    "type": ["string", "null"]
                                  },
                                  "productId": {
                                    "type": ["string", "null"]
                                  },
                                  "optionId": {
                                    "type": ["string", "null"]
                                  },
                                  "optionUnitId": {
                                    "type": ["string", "null"]
                                  },
                                  "pricingCategoryId": {
                                    "type": ["string", "null"]
                                  },
                                  "travelerLinks": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "id": {
                                          "type": "string"
                                        },
                                        "travelerId": {
                                          "type": "string"
                                        },
                                        "role": {
                                          "type": "string",
                                          "enum": ["traveler", "occupant", "beneficiary", "other"]
                                        },
                                        "isPrimary": {
                                          "type": "boolean"
                                        }
                                      },
                                      "required": ["id", "travelerId", "role", "isPrimary"]
                                    }
                                  }
                                },
                                "required": [
                                  "id",
                                  "title",
                                  "description",
                                  "itemType",
                                  "status",
                                  "serviceDate",
                                  "startsAt",
                                  "endsAt",
                                  "quantity",
                                  "sellCurrency",
                                  "unitSellAmountCents",
                                  "totalSellAmountCents",
                                  "costCurrency",
                                  "unitCostAmountCents",
                                  "totalCostAmountCents",
                                  "notes",
                                  "productId",
                                  "optionId",
                                  "optionUnitId",
                                  "pricingCategoryId",
                                  "travelerLinks"
                                ]
                              }
                            },
                            "allocations": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "type": "string"
                                  },
                                  "bookingItemId": {
                                    "type": ["string", "null"]
                                  },
                                  "productId": {
                                    "type": ["string", "null"]
                                  },
                                  "optionId": {
                                    "type": ["string", "null"]
                                  },
                                  "optionUnitId": {
                                    "type": ["string", "null"]
                                  },
                                  "pricingCategoryId": {
                                    "type": ["string", "null"]
                                  },
                                  "availabilitySlotId": {
                                    "type": ["string", "null"]
                                  },
                                  "quantity": {
                                    "type": "integer"
                                  },
                                  "allocationType": {
                                    "type": "string",
                                    "enum": ["unit", "pickup", "resource"]
                                  },
                                  "status": {
                                    "type": "string",
                                    "enum": [
                                      "held",
                                      "confirmed",
                                      "released",
                                      "expired",
                                      "cancelled",
                                      "fulfilled"
                                    ]
                                  },
                                  "holdExpiresAt": {
                                    "type": ["string", "null"]
                                  },
                                  "confirmedAt": {
                                    "type": ["string", "null"]
                                  },
                                  "releasedAt": {
                                    "type": ["string", "null"]
                                  }
                                },
                                "required": [
                                  "id",
                                  "bookingItemId",
                                  "productId",
                                  "optionId",
                                  "optionUnitId",
                                  "pricingCategoryId",
                                  "availabilitySlotId",
                                  "quantity",
                                  "allocationType",
                                  "status",
                                  "holdExpiresAt",
                                  "confirmedAt",
                                  "releasedAt"
                                ]
                              }
                            },
                            "checklist": {
                              "type": "object",
                              "properties": {
                                "hasTravelers": {
                                  "type": "boolean"
                                },
                                "hasPrimaryTraveler": {
                                  "type": "boolean"
                                },
                                "hasItems": {
                                  "type": "boolean"
                                },
                                "hasAllocations": {
                                  "type": "boolean"
                                },
                                "readyForConfirmation": {
                                  "type": "boolean"
                                }
                              },
                              "required": [
                                "hasTravelers",
                                "hasPrimaryTraveler",
                                "hasItems",
                                "hasAllocations",
                                "readyForConfirmation"
                              ]
                            },
                            "state": {
                              "type": ["object", "null"],
                              "properties": {
                                "sessionId": {
                                  "type": "string"
                                },
                                "stateKey": {
                                  "type": "string",
                                  "enum": ["wizard"]
                                },
                                "currentStep": {
                                  "type": ["string", "null"]
                                },
                                "completedSteps": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  }
                                },
                                "payload": {
                                  "type": "object",
                                  "additionalProperties": {}
                                },
                                "version": {
                                  "type": "integer",
                                  "exclusiveMinimum": 0
                                },
                                "createdAt": {
                                  "type": "string"
                                },
                                "updatedAt": {
                                  "type": "string"
                                }
                              },
                              "required": [
                                "sessionId",
                                "stateKey",
                                "currentStep",
                                "completedSteps",
                                "payload",
                                "version",
                                "createdAt",
                                "updatedAt"
                              ]
                            },
                            "checkoutCapability": {
                              "type": "object",
                              "properties": {
                                "token": {
                                  "type": "string",
                                  "minLength": 1
                                },
                                "expiresAt": {
                                  "type": "string"
                                },
                                "actions": {
                                  "type": "array",
                                  "items": {
                                    "type": "string",
                                    "enum": [
                                      "session:read",
                                      "session:update",
                                      "session:reprice",
                                      "session:finalize",
                                      "payment:read",
                                      "payment:start"
                                    ]
                                  }
                                }
                              },
                              "required": ["token", "expiresAt", "actions"]
                            }
                          },
                          "required": [
                            "sessionId",
                            "bookingNumber",
                            "status",
                            "externalBookingRef",
                            "communicationLanguage",
                            "sellCurrency",
                            "sellAmountCents",
                            "startDate",
                            "endDate",
                            "pax",
                            "holdExpiresAt",
                            "confirmedAt",
                            "expiredAt",
                            "cancelledAt",
                            "completedAt",
                            "travelers",
                            "items",
                            "allocations",
                            "checklist",
                            "state"
                          ]
                        }
                      },
                      "required": ["pricing", "session"]
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          },
          "400": {
            "description": "Booking session contains an invalid item selection",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "404": {
            "description": "Booking session not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "409": {
            "description": "Booking session could not be repriced",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          }
        },
        "operationId": "postPublicBookingsSessionsBySessionIdReprice",
        "summary": "POST /v1/public/bookings/sessions/{sessionId}/reprice",
        "tags": ["bookings"],
        "x-voyant-module": "bookings",
        "x-voyant-surface": "storefront"
      }
    },
    "/v1/public/bookings/sessions/{sessionId}/confirm": {
      "post": {
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "sessionId",
            "in": "path"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "note": {
                    "type": ["string", "null"]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Confirmed booking session snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "sessionId": {
                          "type": "string"
                        },
                        "bookingNumber": {
                          "type": "string"
                        },
                        "status": {
                          "type": "string",
                          "enum": [
                            "draft",
                            "on_hold",
                            "awaiting_payment",
                            "confirmed",
                            "in_progress",
                            "completed",
                            "expired",
                            "cancelled"
                          ]
                        },
                        "externalBookingRef": {
                          "type": ["string", "null"]
                        },
                        "communicationLanguage": {
                          "type": ["string", "null"]
                        },
                        "sellCurrency": {
                          "type": "string"
                        },
                        "sellAmountCents": {
                          "type": ["integer", "null"]
                        },
                        "startDate": {
                          "type": ["string", "null"]
                        },
                        "endDate": {
                          "type": ["string", "null"]
                        },
                        "pax": {
                          "type": ["integer", "null"]
                        },
                        "holdExpiresAt": {
                          "type": ["string", "null"]
                        },
                        "confirmedAt": {
                          "type": ["string", "null"]
                        },
                        "expiredAt": {
                          "type": ["string", "null"]
                        },
                        "cancelledAt": {
                          "type": ["string", "null"]
                        },
                        "completedAt": {
                          "type": ["string", "null"]
                        },
                        "travelers": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "participantType": {
                                "type": "string",
                                "enum": ["traveler", "occupant", "other"]
                              },
                              "travelerCategory": {
                                "type": ["string", "null"],
                                "enum": ["adult", "child", "infant", "senior", "other", null]
                              },
                              "firstName": {
                                "type": "string"
                              },
                              "lastName": {
                                "type": "string"
                              },
                              "email": {
                                "type": ["string", "null"]
                              },
                              "phone": {
                                "type": ["string", "null"]
                              },
                              "preferredLanguage": {
                                "type": ["string", "null"]
                              },
                              "specialRequests": {
                                "type": ["string", "null"]
                              },
                              "isPrimary": {
                                "type": "boolean"
                              },
                              "notes": {
                                "type": ["string", "null"]
                              }
                            },
                            "required": [
                              "id",
                              "participantType",
                              "travelerCategory",
                              "firstName",
                              "lastName",
                              "email",
                              "phone",
                              "preferredLanguage",
                              "specialRequests",
                              "isPrimary",
                              "notes"
                            ]
                          }
                        },
                        "items": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "title": {
                                "type": "string"
                              },
                              "description": {
                                "type": ["string", "null"]
                              },
                              "itemType": {
                                "type": "string",
                                "enum": [
                                  "unit",
                                  "extra",
                                  "service",
                                  "fee",
                                  "tax",
                                  "discount",
                                  "adjustment",
                                  "accommodation",
                                  "transport",
                                  "other"
                                ]
                              },
                              "status": {
                                "type": "string",
                                "enum": [
                                  "draft",
                                  "on_hold",
                                  "confirmed",
                                  "cancelled",
                                  "expired",
                                  "fulfilled"
                                ]
                              },
                              "serviceDate": {
                                "type": ["string", "null"]
                              },
                              "startsAt": {
                                "type": ["string", "null"]
                              },
                              "endsAt": {
                                "type": ["string", "null"]
                              },
                              "quantity": {
                                "type": "integer"
                              },
                              "sellCurrency": {
                                "type": "string"
                              },
                              "unitSellAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "totalSellAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "costCurrency": {
                                "type": ["string", "null"]
                              },
                              "unitCostAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "totalCostAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "notes": {
                                "type": ["string", "null"]
                              },
                              "productId": {
                                "type": ["string", "null"]
                              },
                              "optionId": {
                                "type": ["string", "null"]
                              },
                              "optionUnitId": {
                                "type": ["string", "null"]
                              },
                              "pricingCategoryId": {
                                "type": ["string", "null"]
                              },
                              "travelerLinks": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "id": {
                                      "type": "string"
                                    },
                                    "travelerId": {
                                      "type": "string"
                                    },
                                    "role": {
                                      "type": "string",
                                      "enum": ["traveler", "occupant", "beneficiary", "other"]
                                    },
                                    "isPrimary": {
                                      "type": "boolean"
                                    }
                                  },
                                  "required": ["id", "travelerId", "role", "isPrimary"]
                                }
                              }
                            },
                            "required": [
                              "id",
                              "title",
                              "description",
                              "itemType",
                              "status",
                              "serviceDate",
                              "startsAt",
                              "endsAt",
                              "quantity",
                              "sellCurrency",
                              "unitSellAmountCents",
                              "totalSellAmountCents",
                              "costCurrency",
                              "unitCostAmountCents",
                              "totalCostAmountCents",
                              "notes",
                              "productId",
                              "optionId",
                              "optionUnitId",
                              "pricingCategoryId",
                              "travelerLinks"
                            ]
                          }
                        },
                        "allocations": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "bookingItemId": {
                                "type": ["string", "null"]
                              },
                              "productId": {
                                "type": ["string", "null"]
                              },
                              "optionId": {
                                "type": ["string", "null"]
                              },
                              "optionUnitId": {
                                "type": ["string", "null"]
                              },
                              "pricingCategoryId": {
                                "type": ["string", "null"]
                              },
                              "availabilitySlotId": {
                                "type": ["string", "null"]
                              },
                              "quantity": {
                                "type": "integer"
                              },
                              "allocationType": {
                                "type": "string",
                                "enum": ["unit", "pickup", "resource"]
                              },
                              "status": {
                                "type": "string",
                                "enum": [
                                  "held",
                                  "confirmed",
                                  "released",
                                  "expired",
                                  "cancelled",
                                  "fulfilled"
                                ]
                              },
                              "holdExpiresAt": {
                                "type": ["string", "null"]
                              },
                              "confirmedAt": {
                                "type": ["string", "null"]
                              },
                              "releasedAt": {
                                "type": ["string", "null"]
                              }
                            },
                            "required": [
                              "id",
                              "bookingItemId",
                              "productId",
                              "optionId",
                              "optionUnitId",
                              "pricingCategoryId",
                              "availabilitySlotId",
                              "quantity",
                              "allocationType",
                              "status",
                              "holdExpiresAt",
                              "confirmedAt",
                              "releasedAt"
                            ]
                          }
                        },
                        "checklist": {
                          "type": "object",
                          "properties": {
                            "hasTravelers": {
                              "type": "boolean"
                            },
                            "hasPrimaryTraveler": {
                              "type": "boolean"
                            },
                            "hasItems": {
                              "type": "boolean"
                            },
                            "hasAllocations": {
                              "type": "boolean"
                            },
                            "readyForConfirmation": {
                              "type": "boolean"
                            }
                          },
                          "required": [
                            "hasTravelers",
                            "hasPrimaryTraveler",
                            "hasItems",
                            "hasAllocations",
                            "readyForConfirmation"
                          ]
                        },
                        "state": {
                          "type": ["object", "null"],
                          "properties": {
                            "sessionId": {
                              "type": "string"
                            },
                            "stateKey": {
                              "type": "string",
                              "enum": ["wizard"]
                            },
                            "currentStep": {
                              "type": ["string", "null"]
                            },
                            "completedSteps": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "payload": {
                              "type": "object",
                              "additionalProperties": {}
                            },
                            "version": {
                              "type": "integer",
                              "exclusiveMinimum": 0
                            },
                            "createdAt": {
                              "type": "string"
                            },
                            "updatedAt": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "sessionId",
                            "stateKey",
                            "currentStep",
                            "completedSteps",
                            "payload",
                            "version",
                            "createdAt",
                            "updatedAt"
                          ]
                        },
                        "checkoutCapability": {
                          "type": "object",
                          "properties": {
                            "token": {
                              "type": "string",
                              "minLength": 1
                            },
                            "expiresAt": {
                              "type": "string"
                            },
                            "actions": {
                              "type": "array",
                              "items": {
                                "type": "string",
                                "enum": [
                                  "session:read",
                                  "session:update",
                                  "session:reprice",
                                  "session:finalize",
                                  "payment:read",
                                  "payment:start"
                                ]
                              }
                            }
                          },
                          "required": ["token", "expiresAt", "actions"]
                        }
                      },
                      "required": [
                        "sessionId",
                        "bookingNumber",
                        "status",
                        "externalBookingRef",
                        "communicationLanguage",
                        "sellCurrency",
                        "sellAmountCents",
                        "startDate",
                        "endDate",
                        "pax",
                        "holdExpiresAt",
                        "confirmedAt",
                        "expiredAt",
                        "cancelledAt",
                        "completedAt",
                        "travelers",
                        "items",
                        "allocations",
                        "checklist",
                        "state"
                      ]
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          },
          "404": {
            "description": "Booking session not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "409": {
            "description": "Booking session could not be confirmed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          }
        },
        "operationId": "postPublicBookingsSessionsBySessionIdConfirm",
        "summary": "POST /v1/public/bookings/sessions/{sessionId}/confirm",
        "tags": ["bookings"],
        "x-voyant-module": "bookings",
        "x-voyant-surface": "storefront"
      }
    },
    "/v1/public/bookings/sessions/{sessionId}/expire": {
      "post": {
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "sessionId",
            "in": "path"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "note": {
                    "type": ["string", "null"]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Expired booking session snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "sessionId": {
                          "type": "string"
                        },
                        "bookingNumber": {
                          "type": "string"
                        },
                        "status": {
                          "type": "string",
                          "enum": [
                            "draft",
                            "on_hold",
                            "awaiting_payment",
                            "confirmed",
                            "in_progress",
                            "completed",
                            "expired",
                            "cancelled"
                          ]
                        },
                        "externalBookingRef": {
                          "type": ["string", "null"]
                        },
                        "communicationLanguage": {
                          "type": ["string", "null"]
                        },
                        "sellCurrency": {
                          "type": "string"
                        },
                        "sellAmountCents": {
                          "type": ["integer", "null"]
                        },
                        "startDate": {
                          "type": ["string", "null"]
                        },
                        "endDate": {
                          "type": ["string", "null"]
                        },
                        "pax": {
                          "type": ["integer", "null"]
                        },
                        "holdExpiresAt": {
                          "type": ["string", "null"]
                        },
                        "confirmedAt": {
                          "type": ["string", "null"]
                        },
                        "expiredAt": {
                          "type": ["string", "null"]
                        },
                        "cancelledAt": {
                          "type": ["string", "null"]
                        },
                        "completedAt": {
                          "type": ["string", "null"]
                        },
                        "travelers": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "participantType": {
                                "type": "string",
                                "enum": ["traveler", "occupant", "other"]
                              },
                              "travelerCategory": {
                                "type": ["string", "null"],
                                "enum": ["adult", "child", "infant", "senior", "other", null]
                              },
                              "firstName": {
                                "type": "string"
                              },
                              "lastName": {
                                "type": "string"
                              },
                              "email": {
                                "type": ["string", "null"]
                              },
                              "phone": {
                                "type": ["string", "null"]
                              },
                              "preferredLanguage": {
                                "type": ["string", "null"]
                              },
                              "specialRequests": {
                                "type": ["string", "null"]
                              },
                              "isPrimary": {
                                "type": "boolean"
                              },
                              "notes": {
                                "type": ["string", "null"]
                              }
                            },
                            "required": [
                              "id",
                              "participantType",
                              "travelerCategory",
                              "firstName",
                              "lastName",
                              "email",
                              "phone",
                              "preferredLanguage",
                              "specialRequests",
                              "isPrimary",
                              "notes"
                            ]
                          }
                        },
                        "items": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "title": {
                                "type": "string"
                              },
                              "description": {
                                "type": ["string", "null"]
                              },
                              "itemType": {
                                "type": "string",
                                "enum": [
                                  "unit",
                                  "extra",
                                  "service",
                                  "fee",
                                  "tax",
                                  "discount",
                                  "adjustment",
                                  "accommodation",
                                  "transport",
                                  "other"
                                ]
                              },
                              "status": {
                                "type": "string",
                                "enum": [
                                  "draft",
                                  "on_hold",
                                  "confirmed",
                                  "cancelled",
                                  "expired",
                                  "fulfilled"
                                ]
                              },
                              "serviceDate": {
                                "type": ["string", "null"]
                              },
                              "startsAt": {
                                "type": ["string", "null"]
                              },
                              "endsAt": {
                                "type": ["string", "null"]
                              },
                              "quantity": {
                                "type": "integer"
                              },
                              "sellCurrency": {
                                "type": "string"
                              },
                              "unitSellAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "totalSellAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "costCurrency": {
                                "type": ["string", "null"]
                              },
                              "unitCostAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "totalCostAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "notes": {
                                "type": ["string", "null"]
                              },
                              "productId": {
                                "type": ["string", "null"]
                              },
                              "optionId": {
                                "type": ["string", "null"]
                              },
                              "optionUnitId": {
                                "type": ["string", "null"]
                              },
                              "pricingCategoryId": {
                                "type": ["string", "null"]
                              },
                              "travelerLinks": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "id": {
                                      "type": "string"
                                    },
                                    "travelerId": {
                                      "type": "string"
                                    },
                                    "role": {
                                      "type": "string",
                                      "enum": ["traveler", "occupant", "beneficiary", "other"]
                                    },
                                    "isPrimary": {
                                      "type": "boolean"
                                    }
                                  },
                                  "required": ["id", "travelerId", "role", "isPrimary"]
                                }
                              }
                            },
                            "required": [
                              "id",
                              "title",
                              "description",
                              "itemType",
                              "status",
                              "serviceDate",
                              "startsAt",
                              "endsAt",
                              "quantity",
                              "sellCurrency",
                              "unitSellAmountCents",
                              "totalSellAmountCents",
                              "costCurrency",
                              "unitCostAmountCents",
                              "totalCostAmountCents",
                              "notes",
                              "productId",
                              "optionId",
                              "optionUnitId",
                              "pricingCategoryId",
                              "travelerLinks"
                            ]
                          }
                        },
                        "allocations": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "bookingItemId": {
                                "type": ["string", "null"]
                              },
                              "productId": {
                                "type": ["string", "null"]
                              },
                              "optionId": {
                                "type": ["string", "null"]
                              },
                              "optionUnitId": {
                                "type": ["string", "null"]
                              },
                              "pricingCategoryId": {
                                "type": ["string", "null"]
                              },
                              "availabilitySlotId": {
                                "type": ["string", "null"]
                              },
                              "quantity": {
                                "type": "integer"
                              },
                              "allocationType": {
                                "type": "string",
                                "enum": ["unit", "pickup", "resource"]
                              },
                              "status": {
                                "type": "string",
                                "enum": [
                                  "held",
                                  "confirmed",
                                  "released",
                                  "expired",
                                  "cancelled",
                                  "fulfilled"
                                ]
                              },
                              "holdExpiresAt": {
                                "type": ["string", "null"]
                              },
                              "confirmedAt": {
                                "type": ["string", "null"]
                              },
                              "releasedAt": {
                                "type": ["string", "null"]
                              }
                            },
                            "required": [
                              "id",
                              "bookingItemId",
                              "productId",
                              "optionId",
                              "optionUnitId",
                              "pricingCategoryId",
                              "availabilitySlotId",
                              "quantity",
                              "allocationType",
                              "status",
                              "holdExpiresAt",
                              "confirmedAt",
                              "releasedAt"
                            ]
                          }
                        },
                        "checklist": {
                          "type": "object",
                          "properties": {
                            "hasTravelers": {
                              "type": "boolean"
                            },
                            "hasPrimaryTraveler": {
                              "type": "boolean"
                            },
                            "hasItems": {
                              "type": "boolean"
                            },
                            "hasAllocations": {
                              "type": "boolean"
                            },
                            "readyForConfirmation": {
                              "type": "boolean"
                            }
                          },
                          "required": [
                            "hasTravelers",
                            "hasPrimaryTraveler",
                            "hasItems",
                            "hasAllocations",
                            "readyForConfirmation"
                          ]
                        },
                        "state": {
                          "type": ["object", "null"],
                          "properties": {
                            "sessionId": {
                              "type": "string"
                            },
                            "stateKey": {
                              "type": "string",
                              "enum": ["wizard"]
                            },
                            "currentStep": {
                              "type": ["string", "null"]
                            },
                            "completedSteps": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "payload": {
                              "type": "object",
                              "additionalProperties": {}
                            },
                            "version": {
                              "type": "integer",
                              "exclusiveMinimum": 0
                            },
                            "createdAt": {
                              "type": "string"
                            },
                            "updatedAt": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "sessionId",
                            "stateKey",
                            "currentStep",
                            "completedSteps",
                            "payload",
                            "version",
                            "createdAt",
                            "updatedAt"
                          ]
                        },
                        "checkoutCapability": {
                          "type": "object",
                          "properties": {
                            "token": {
                              "type": "string",
                              "minLength": 1
                            },
                            "expiresAt": {
                              "type": "string"
                            },
                            "actions": {
                              "type": "array",
                              "items": {
                                "type": "string",
                                "enum": [
                                  "session:read",
                                  "session:update",
                                  "session:reprice",
                                  "session:finalize",
                                  "payment:read",
                                  "payment:start"
                                ]
                              }
                            }
                          },
                          "required": ["token", "expiresAt", "actions"]
                        }
                      },
                      "required": [
                        "sessionId",
                        "bookingNumber",
                        "status",
                        "externalBookingRef",
                        "communicationLanguage",
                        "sellCurrency",
                        "sellAmountCents",
                        "startDate",
                        "endDate",
                        "pax",
                        "holdExpiresAt",
                        "confirmedAt",
                        "expiredAt",
                        "cancelledAt",
                        "completedAt",
                        "travelers",
                        "items",
                        "allocations",
                        "checklist",
                        "state"
                      ]
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          },
          "404": {
            "description": "Booking session not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "409": {
            "description": "Booking session could not be expired",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          }
        },
        "operationId": "postPublicBookingsSessionsBySessionIdExpire",
        "summary": "POST /v1/public/bookings/sessions/{sessionId}/expire",
        "tags": ["bookings"],
        "x-voyant-module": "bookings",
        "x-voyant-surface": "storefront"
      }
    },
    "/v1/public/bookings/overview": {
      "get": {
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 50
            },
            "required": false,
            "name": "bookingId",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 50
            },
            "required": false,
            "name": "bookingNumber",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 50
            },
            "required": false,
            "name": "bookingCode",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "format": "email"
            },
            "required": false,
            "name": "email",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Guest-facing booking overview",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "bookingId": {
                          "type": "string"
                        },
                        "bookingNumber": {
                          "type": "string"
                        },
                        "revision": {
                          "type": "integer",
                          "exclusiveMinimum": 0
                        },
                        "status": {
                          "type": "string",
                          "enum": [
                            "draft",
                            "on_hold",
                            "awaiting_payment",
                            "confirmed",
                            "in_progress",
                            "completed",
                            "expired",
                            "cancelled"
                          ]
                        },
                        "sellCurrency": {
                          "type": "string"
                        },
                        "sellAmountCents": {
                          "type": ["integer", "null"]
                        },
                        "startDate": {
                          "type": ["string", "null"]
                        },
                        "endDate": {
                          "type": ["string", "null"]
                        },
                        "pax": {
                          "type": ["integer", "null"]
                        },
                        "confirmedAt": {
                          "type": ["string", "null"]
                        },
                        "cancelledAt": {
                          "type": ["string", "null"]
                        },
                        "completedAt": {
                          "type": ["string", "null"]
                        },
                        "travelers": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "participantType": {
                                "type": "string",
                                "enum": ["traveler", "occupant", "other"]
                              },
                              "firstName": {
                                "type": "string"
                              },
                              "lastName": {
                                "type": "string"
                              },
                              "isPrimary": {
                                "type": "boolean"
                              }
                            },
                            "required": [
                              "id",
                              "participantType",
                              "firstName",
                              "lastName",
                              "isPrimary"
                            ]
                          }
                        },
                        "items": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "title": {
                                "type": "string"
                              },
                              "description": {
                                "type": ["string", "null"]
                              },
                              "itemType": {
                                "type": "string",
                                "enum": [
                                  "unit",
                                  "extra",
                                  "service",
                                  "fee",
                                  "tax",
                                  "discount",
                                  "adjustment",
                                  "accommodation",
                                  "transport",
                                  "other"
                                ]
                              },
                              "status": {
                                "type": "string",
                                "enum": [
                                  "draft",
                                  "on_hold",
                                  "confirmed",
                                  "cancelled",
                                  "expired",
                                  "fulfilled"
                                ]
                              },
                              "serviceDate": {
                                "type": ["string", "null"]
                              },
                              "startsAt": {
                                "type": ["string", "null"]
                              },
                              "endsAt": {
                                "type": ["string", "null"]
                              },
                              "quantity": {
                                "type": "integer"
                              },
                              "sellCurrency": {
                                "type": "string"
                              },
                              "unitSellAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "totalSellAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "costCurrency": {
                                "type": ["string", "null"]
                              },
                              "unitCostAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "totalCostAmountCents": {
                                "type": ["integer", "null"]
                              },
                              "notes": {
                                "type": ["string", "null"]
                              },
                              "productId": {
                                "type": ["string", "null"]
                              },
                              "optionId": {
                                "type": ["string", "null"]
                              },
                              "optionUnitId": {
                                "type": ["string", "null"]
                              },
                              "pricingCategoryId": {
                                "type": ["string", "null"]
                              },
                              "travelerLinks": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "id": {
                                      "type": "string"
                                    },
                                    "travelerId": {
                                      "type": "string"
                                    },
                                    "role": {
                                      "type": "string",
                                      "enum": ["traveler", "occupant", "beneficiary", "other"]
                                    },
                                    "isPrimary": {
                                      "type": "boolean"
                                    }
                                  },
                                  "required": ["id", "travelerId", "role", "isPrimary"]
                                }
                              },
                              "details": {}
                            },
                            "required": [
                              "id",
                              "title",
                              "description",
                              "itemType",
                              "status",
                              "serviceDate",
                              "startsAt",
                              "endsAt",
                              "quantity",
                              "sellCurrency",
                              "unitSellAmountCents",
                              "totalSellAmountCents",
                              "costCurrency",
                              "unitCostAmountCents",
                              "totalCostAmountCents",
                              "notes",
                              "productId",
                              "optionId",
                              "optionUnitId",
                              "pricingCategoryId",
                              "travelerLinks"
                            ]
                          }
                        },
                        "documents": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "travelerId": {
                                "type": ["string", "null"]
                              },
                              "type": {
                                "type": "string",
                                "enum": ["visa", "insurance", "health", "passport_copy", "other"]
                              },
                              "fileName": {
                                "type": "string"
                              },
                              "fileUrl": {
                                "type": "string"
                              }
                            },
                            "required": ["id", "travelerId", "type", "fileName", "fileUrl"]
                          }
                        },
                        "fulfillments": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "bookingItemId": {
                                "type": ["string", "null"]
                              },
                              "travelerId": {
                                "type": ["string", "null"]
                              },
                              "fulfillmentType": {
                                "type": "string",
                                "enum": [
                                  "service_voucher",
                                  "ticket",
                                  "pdf",
                                  "qr_code",
                                  "barcode",
                                  "mobile",
                                  "other"
                                ]
                              },
                              "deliveryChannel": {
                                "type": "string",
                                "enum": ["download", "email", "api", "wallet", "other"]
                              },
                              "status": {
                                "type": "string",
                                "enum": ["pending", "issued", "reissued", "revoked", "failed"]
                              },
                              "artifactUrl": {
                                "type": ["string", "null"]
                              }
                            },
                            "required": [
                              "id",
                              "bookingItemId",
                              "travelerId",
                              "fulfillmentType",
                              "deliveryChannel",
                              "status",
                              "artifactUrl"
                            ]
                          }
                        }
                      },
                      "required": [
                        "bookingId",
                        "bookingNumber",
                        "revision",
                        "status",
                        "sellCurrency",
                        "sellAmountCents",
                        "startDate",
                        "endDate",
                        "pax",
                        "confirmedAt",
                        "cancelledAt",
                        "completedAt",
                        "travelers",
                        "items",
                        "documents",
                        "fulfillments"
                      ]
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          },
          "401": {
            "description": "Missing guest booking access capability",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "404": {
            "description": "Booking overview not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "429": {
            "description": "Too many guest booking lookups",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          }
        },
        "operationId": "getPublicBookingsOverview",
        "summary": "GET /v1/public/bookings/overview",
        "tags": ["bookings"],
        "x-voyant-module": "bookings",
        "x-voyant-surface": "storefront"
      }
    },
    "/v1/public/bookings/guest-lookup": {
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "bookingCode": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50
                  },
                  "email": {
                    "type": "string",
                    "format": "email"
                  }
                },
                "required": ["bookingCode", "email"]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Booking overview with a guest booking access capability",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "overview": {
                          "type": "object",
                          "properties": {
                            "bookingId": {
                              "type": "string"
                            },
                            "bookingNumber": {
                              "type": "string"
                            },
                            "status": {
                              "type": "string",
                              "enum": [
                                "draft",
                                "on_hold",
                                "awaiting_payment",
                                "confirmed",
                                "in_progress",
                                "completed",
                                "expired",
                                "cancelled"
                              ]
                            },
                            "sellCurrency": {
                              "type": "string"
                            },
                            "sellAmountCents": {
                              "type": ["integer", "null"]
                            },
                            "startDate": {
                              "type": ["string", "null"]
                            },
                            "endDate": {
                              "type": ["string", "null"]
                            },
                            "pax": {
                              "type": ["integer", "null"]
                            },
                            "confirmedAt": {
                              "type": ["string", "null"]
                            },
                            "cancelledAt": {
                              "type": ["string", "null"]
                            },
                            "completedAt": {
                              "type": ["string", "null"]
                            },
                            "travelers": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "type": "string"
                                  },
                                  "participantType": {
                                    "type": "string",
                                    "enum": ["traveler", "occupant", "other"]
                                  },
                                  "firstName": {
                                    "type": "string"
                                  },
                                  "lastName": {
                                    "type": "string"
                                  },
                                  "isPrimary": {
                                    "type": "boolean"
                                  }
                                },
                                "required": [
                                  "id",
                                  "participantType",
                                  "firstName",
                                  "lastName",
                                  "isPrimary"
                                ]
                              }
                            },
                            "items": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "type": "string"
                                  },
                                  "title": {
                                    "type": "string"
                                  },
                                  "description": {
                                    "type": ["string", "null"]
                                  },
                                  "itemType": {
                                    "type": "string",
                                    "enum": [
                                      "unit",
                                      "extra",
                                      "service",
                                      "fee",
                                      "tax",
                                      "discount",
                                      "adjustment",
                                      "accommodation",
                                      "transport",
                                      "other"
                                    ]
                                  },
                                  "status": {
                                    "type": "string",
                                    "enum": [
                                      "draft",
                                      "on_hold",
                                      "confirmed",
                                      "cancelled",
                                      "expired",
                                      "fulfilled"
                                    ]
                                  },
                                  "serviceDate": {
                                    "type": ["string", "null"]
                                  },
                                  "startsAt": {
                                    "type": ["string", "null"]
                                  },
                                  "endsAt": {
                                    "type": ["string", "null"]
                                  },
                                  "quantity": {
                                    "type": "integer"
                                  },
                                  "sellCurrency": {
                                    "type": "string"
                                  },
                                  "unitSellAmountCents": {
                                    "type": ["integer", "null"]
                                  },
                                  "totalSellAmountCents": {
                                    "type": ["integer", "null"]
                                  },
                                  "costCurrency": {
                                    "type": ["string", "null"]
                                  },
                                  "unitCostAmountCents": {
                                    "type": ["integer", "null"]
                                  },
                                  "totalCostAmountCents": {
                                    "type": ["integer", "null"]
                                  },
                                  "notes": {
                                    "type": ["string", "null"]
                                  },
                                  "productId": {
                                    "type": ["string", "null"]
                                  },
                                  "optionId": {
                                    "type": ["string", "null"]
                                  },
                                  "optionUnitId": {
                                    "type": ["string", "null"]
                                  },
                                  "pricingCategoryId": {
                                    "type": ["string", "null"]
                                  },
                                  "travelerLinks": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "id": {
                                          "type": "string"
                                        },
                                        "travelerId": {
                                          "type": "string"
                                        },
                                        "role": {
                                          "type": "string",
                                          "enum": ["traveler", "occupant", "beneficiary", "other"]
                                        },
                                        "isPrimary": {
                                          "type": "boolean"
                                        }
                                      },
                                      "required": ["id", "travelerId", "role", "isPrimary"]
                                    }
                                  },
                                  "details": {}
                                },
                                "required": [
                                  "id",
                                  "title",
                                  "description",
                                  "itemType",
                                  "status",
                                  "serviceDate",
                                  "startsAt",
                                  "endsAt",
                                  "quantity",
                                  "sellCurrency",
                                  "unitSellAmountCents",
                                  "totalSellAmountCents",
                                  "costCurrency",
                                  "unitCostAmountCents",
                                  "totalCostAmountCents",
                                  "notes",
                                  "productId",
                                  "optionId",
                                  "optionUnitId",
                                  "pricingCategoryId",
                                  "travelerLinks"
                                ]
                              }
                            },
                            "documents": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "type": "string"
                                  },
                                  "travelerId": {
                                    "type": ["string", "null"]
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "visa",
                                      "insurance",
                                      "health",
                                      "passport_copy",
                                      "other"
                                    ]
                                  },
                                  "fileName": {
                                    "type": "string"
                                  },
                                  "fileUrl": {
                                    "type": "string"
                                  }
                                },
                                "required": ["id", "travelerId", "type", "fileName", "fileUrl"]
                              }
                            },
                            "fulfillments": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "type": "string"
                                  },
                                  "bookingItemId": {
                                    "type": ["string", "null"]
                                  },
                                  "travelerId": {
                                    "type": ["string", "null"]
                                  },
                                  "fulfillmentType": {
                                    "type": "string",
                                    "enum": [
                                      "service_voucher",
                                      "ticket",
                                      "pdf",
                                      "qr_code",
                                      "barcode",
                                      "mobile",
                                      "other"
                                    ]
                                  },
                                  "deliveryChannel": {
                                    "type": "string",
                                    "enum": ["download", "email", "api", "wallet", "other"]
                                  },
                                  "status": {
                                    "type": "string",
                                    "enum": ["pending", "issued", "reissued", "revoked", "failed"]
                                  },
                                  "artifactUrl": {
                                    "type": ["string", "null"]
                                  }
                                },
                                "required": [
                                  "id",
                                  "bookingItemId",
                                  "travelerId",
                                  "fulfillmentType",
                                  "deliveryChannel",
                                  "status",
                                  "artifactUrl"
                                ]
                              }
                            }
                          },
                          "required": [
                            "bookingId",
                            "bookingNumber",
                            "revision",
                            "status",
                            "sellCurrency",
                            "sellAmountCents",
                            "startDate",
                            "endDate",
                            "pax",
                            "confirmedAt",
                            "cancelledAt",
                            "completedAt",
                            "travelers",
                            "items",
                            "documents",
                            "fulfillments"
                          ]
                        },
                        "guestBookingAccess": {
                          "type": "object",
                          "properties": {
                            "token": {
                              "type": "string",
                              "minLength": 1
                            },
                            "expiresAt": {
                              "type": "string"
                            },
                            "actions": {
                              "type": "array",
                              "items": {
                                "type": "string",
                                "enum": [
                                  "overview:read",
                                  "payment:read",
                                  "payment:start",
                                  "amendment:read",
                                  "amendment:preview",
                                  "amendment:accept",
                                  "amendment:apply"
                                ]
                              }
                            }
                          },
                          "required": ["token", "expiresAt", "actions"]
                        }
                      },
                      "required": ["overview", "guestBookingAccess"]
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          },
          "404": {
            "description": "Booking overview not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "429": {
            "description": "Too many guest booking lookups",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          }
        },
        "operationId": "postPublicBookingsGuestLookup",
        "summary": "POST /v1/public/bookings/guest-lookup",
        "tags": ["bookings"],
        "x-voyant-module": "bookings",
        "x-voyant-surface": "storefront"
      }
    },
    "/v1/public/payment-policy/resolve": {
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "entityModule": {
                    "type": "string"
                  },
                  "entityId": {
                    "type": "string"
                  },
                  "sailingId": {
                    "type": "string"
                  },
                  "cabinCategoryId": {
                    "type": "string"
                  },
                  "ratePlanId": {
                    "type": "string"
                  }
                },
                "required": ["entityModule", "entityId"]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Resolved effective payment policy + cascade source for an entity",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "policy": {
                          "type": "object",
                          "properties": {
                            "deposit": {
                              "type": "object",
                              "properties": {
                                "kind": {
                                  "type": "string",
                                  "enum": ["none", "percent", "fixed_cents"]
                                },
                                "percent": {
                                  "type": "number",
                                  "minimum": 0,
                                  "maximum": 100
                                },
                                "amountCents": {
                                  "type": "integer",
                                  "minimum": 0
                                }
                              },
                              "required": ["kind"]
                            },
                            "minDaysBeforeDepartureForDeposit": {
                              "type": "integer",
                              "minimum": 0
                            },
                            "balanceDueDaysBeforeDeparture": {
                              "type": "integer",
                              "minimum": 0
                            },
                            "balanceDueMinDaysFromNow": {
                              "type": "integer",
                              "minimum": 0
                            }
                          },
                          "required": [
                            "deposit",
                            "minDaysBeforeDepartureForDeposit",
                            "balanceDueDaysBeforeDeparture",
                            "balanceDueMinDaysFromNow"
                          ]
                        },
                        "source": {
                          "type": "string",
                          "enum": ["booking", "listing", "category", "supplier", "operator_default"]
                        }
                      },
                      "required": ["policy", "source"]
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          }
        },
        "operationId": "postPublicPaymentPolicyResolve",
        "summary": "POST /v1/public/payment-policy/resolve",
        "tags": ["bookings"],
        "x-voyant-module": "bookings",
        "x-voyant-surface": "storefront"
      }
    },
    "/v1/public/bookings": {
      "post": {
        "summary": "Create a booking from a public draft and quote",
        "description": "Self-service booking creation for an authenticated customer or a verified guest. The caller supplies only identifiers; booking numbers, prices, tax lines, relationship ids, and status are derived server-side. Requires an Idempotency-Key header.",
        "parameters": [
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "draftId": {
                    "type": "string",
                    "minLength": 1
                  },
                  "quoteId": {
                    "type": "string",
                    "minLength": 1
                  },
                  "verificationChallengeId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Omitted for an authenticated customer."
                  }
                },
                "required": ["draftId", "quoteId"]
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Booking created, with the scoped checkout capability",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "bookingId": {
                          "type": "string"
                        },
                        "bookingNumber": {
                          "type": "string"
                        },
                        "status": {
                          "type": "string"
                        },
                        "checkoutCapability": {
                          "type": "object",
                          "properties": {
                            "token": {
                              "type": "string"
                            },
                            "expiresAt": {
                              "type": "string"
                            },
                            "actions": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            }
                          },
                          "required": ["token", "expiresAt", "actions"]
                        }
                      },
                      "required": ["bookingId", "bookingNumber", "status", "checkoutCapability"]
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          },
          "400": {
            "description": "Body failed validation or Idempotency-Key is missing",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "401": {
            "description": "Neither an authenticated customer nor a verified challenge",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "404": {
            "description": "Draft or quote not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "409": {
            "description": "Draft, quote, or hold is no longer spendable",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "422": {
            "description": "Draft cannot produce a booking for this caller",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "501": {
            "description": "This deployment has no self-service booking create provider",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          }
        }
      }
    },
    "/v1/public/bookings/{bookingId}/amendments/traveler-corrections/preview": {
      "post": {
        "x-voyant-api-id": "@voyant-travel/bookings#api.public",
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "bookingId",
            "in": "path"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "travelerId": {
                    "type": "string",
                    "minLength": 1
                  },
                  "expectedBookingRevision": {
                    "type": "integer",
                    "exclusiveMinimum": 0
                  },
                  "reason": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 2000
                  },
                  "patch": {
                    "type": "object",
                    "properties": {
                      "firstName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "lastName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "email": {
                        "type": ["string", "null"],
                        "format": "email"
                      },
                      "phone": {
                        "type": ["string", "null"],
                        "maxLength": 50
                      },
                      "preferredLanguage": {
                        "type": ["string", "null"],
                        "maxLength": 35
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "required": ["travelerId", "expectedBookingRevision", "reason", "patch"]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Idempotent or no-op preview",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "status": {
                              "type": "string",
                              "enum": ["ok"]
                            },
                            "amendment": {
                              "type": "object",
                              "properties": {
                                "id": {
                                  "type": "string"
                                },
                                "bookingId": {
                                  "type": "string"
                                },
                                "travelerId": {
                                  "type": "string"
                                },
                                "kind": {
                                  "type": "string",
                                  "enum": ["traveler_correction"]
                                },
                                "status": {
                                  "type": "string",
                                  "enum": ["proposed", "accepted", "applied", "rejected", "failed"]
                                },
                                "baseBookingRevision": {
                                  "type": "integer",
                                  "exclusiveMinimum": 0
                                },
                                "resultBookingRevision": {
                                  "type": "integer",
                                  "exclusiveMinimum": 0
                                },
                                "acceptanceRequired": {
                                  "type": "boolean"
                                },
                                "policyDecisions": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "code": {
                                        "type": "string"
                                      },
                                      "version": {
                                        "type": "string"
                                      },
                                      "decision": {
                                        "type": "string",
                                        "enum": ["allowed", "acceptance_required"]
                                      },
                                      "reason": {
                                        "type": "string"
                                      }
                                    },
                                    "required": ["code", "version", "decision", "reason"]
                                  }
                                },
                                "priceDelta": {
                                  "type": "object",
                                  "properties": {
                                    "amountCents": {
                                      "type": "number",
                                      "enum": [0]
                                    },
                                    "currency": {
                                      "type": "string"
                                    }
                                  },
                                  "required": ["amountCents", "currency"]
                                },
                                "effects": {
                                  "type": "object",
                                  "properties": {
                                    "finance": {
                                      "type": "string",
                                      "enum": ["not_required"]
                                    },
                                    "legal": {
                                      "type": "string",
                                      "enum": ["not_required"]
                                    },
                                    "documents": {
                                      "type": "string",
                                      "enum": ["not_required"]
                                    },
                                    "fulfillment": {
                                      "type": "string",
                                      "enum": ["not_required"]
                                    },
                                    "supplier": {
                                      "type": "string",
                                      "enum": ["not_required"]
                                    }
                                  },
                                  "required": [
                                    "finance",
                                    "legal",
                                    "documents",
                                    "fulfillment",
                                    "supplier"
                                  ]
                                },
                                "nextActions": {
                                  "type": "array",
                                  "items": {
                                    "type": "string",
                                    "enum": ["accept", "apply"]
                                  }
                                },
                                "requestedBy": {
                                  "type": ["string", "null"]
                                },
                                "requestedActor": {
                                  "type": "string",
                                  "enum": ["customer", "staff", "partner", "system"]
                                },
                                "reason": {
                                  "type": "string"
                                },
                                "acceptedAt": {
                                  "type": ["string", "null"]
                                },
                                "acceptedBy": {
                                  "type": ["string", "null"]
                                },
                                "acceptedActor": {
                                  "type": ["string", "null"],
                                  "enum": ["customer", "staff", "partner", "system", null]
                                },
                                "appliedAt": {
                                  "type": ["string", "null"]
                                },
                                "appliedBy": {
                                  "type": ["string", "null"]
                                },
                                "appliedActor": {
                                  "type": ["string", "null"],
                                  "enum": ["customer", "staff", "partner", "system", null]
                                },
                                "createdAt": {
                                  "type": "string"
                                },
                                "updatedAt": {
                                  "type": "string"
                                },
                                "revisions": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "id": {
                                        "type": "string"
                                      },
                                      "amendmentId": {
                                        "type": "string"
                                      },
                                      "bookingId": {
                                        "type": "string"
                                      },
                                      "bookingRevision": {
                                        "type": "integer",
                                        "exclusiveMinimum": 0
                                      },
                                      "role": {
                                        "type": "string",
                                        "enum": ["before", "proposed_after"]
                                      },
                                      "snapshot": {
                                        "type": "object",
                                        "properties": {
                                          "bookingId": {
                                            "type": "string"
                                          },
                                          "bookingNumber": {
                                            "type": "string"
                                          },
                                          "revision": {
                                            "type": "integer",
                                            "exclusiveMinimum": 0
                                          },
                                          "travelers": {
                                            "type": "array",
                                            "items": {
                                              "type": "object",
                                              "properties": {
                                                "id": {
                                                  "type": "string"
                                                },
                                                "personId": {
                                                  "type": ["string", "null"]
                                                },
                                                "participantType": {
                                                  "type": "string",
                                                  "enum": ["traveler", "occupant", "other"]
                                                },
                                                "travelerCategory": {
                                                  "type": ["string", "null"],
                                                  "enum": [
                                                    "adult",
                                                    "child",
                                                    "infant",
                                                    "senior",
                                                    "other",
                                                    null
                                                  ]
                                                },
                                                "firstName": {
                                                  "type": "string"
                                                },
                                                "lastName": {
                                                  "type": "string"
                                                },
                                                "email": {
                                                  "type": ["string", "null"]
                                                },
                                                "phone": {
                                                  "type": ["string", "null"]
                                                },
                                                "preferredLanguage": {
                                                  "type": ["string", "null"]
                                                },
                                                "isPrimary": {
                                                  "type": "boolean"
                                                }
                                              },
                                              "required": [
                                                "id",
                                                "personId",
                                                "participantType",
                                                "travelerCategory",
                                                "firstName",
                                                "lastName",
                                                "email",
                                                "phone",
                                                "preferredLanguage",
                                                "isPrimary"
                                              ]
                                            }
                                          }
                                        },
                                        "required": [
                                          "bookingId",
                                          "bookingNumber",
                                          "revision",
                                          "travelers"
                                        ]
                                      },
                                      "changedFields": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        }
                                      },
                                      "authorizedBy": {
                                        "type": ["string", "null"]
                                      },
                                      "reason": {
                                        "type": "string"
                                      },
                                      "createdAt": {
                                        "type": "string"
                                      }
                                    },
                                    "required": [
                                      "id",
                                      "amendmentId",
                                      "bookingId",
                                      "bookingRevision",
                                      "role",
                                      "snapshot",
                                      "changedFields",
                                      "authorizedBy",
                                      "reason",
                                      "createdAt"
                                    ]
                                  }
                                }
                              },
                              "required": [
                                "id",
                                "bookingId",
                                "travelerId",
                                "kind",
                                "status",
                                "baseBookingRevision",
                                "resultBookingRevision",
                                "acceptanceRequired",
                                "policyDecisions",
                                "priceDelta",
                                "effects",
                                "nextActions",
                                "requestedBy",
                                "requestedActor",
                                "reason",
                                "acceptedAt",
                                "acceptedBy",
                                "acceptedActor",
                                "appliedAt",
                                "appliedBy",
                                "appliedActor",
                                "createdAt",
                                "updatedAt"
                              ]
                            }
                          },
                          "required": ["status", "amendment"]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "status": {
                              "type": "string",
                              "enum": ["no_op"]
                            },
                            "bookingId": {
                              "type": "string"
                            },
                            "travelerId": {
                              "type": "string"
                            },
                            "bookingRevision": {
                              "type": "integer",
                              "exclusiveMinimum": 0
                            }
                          },
                          "required": ["status", "bookingId", "travelerId", "bookingRevision"]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "status": {
                              "type": "string",
                              "enum": ["not_found"]
                            }
                          },
                          "required": ["status"]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "status": {
                              "type": "string",
                              "enum": ["idempotency_conflict"]
                            }
                          },
                          "required": ["status"]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "status": {
                              "type": "string",
                              "enum": ["stale_revision"]
                            },
                            "currentBookingRevision": {
                              "type": "integer",
                              "exclusiveMinimum": 0
                            }
                          },
                          "required": ["status", "currentBookingRevision"]
                        }
                      ]
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          },
          "201": {
            "description": "Traveler correction preview",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "status": {
                              "type": "string",
                              "enum": ["ok"]
                            },
                            "amendment": {
                              "type": "object",
                              "properties": {
                                "id": {
                                  "type": "string"
                                },
                                "bookingId": {
                                  "type": "string"
                                },
                                "travelerId": {
                                  "type": "string"
                                },
                                "kind": {
                                  "type": "string",
                                  "enum": ["traveler_correction"]
                                },
                                "status": {
                                  "type": "string",
                                  "enum": ["proposed", "accepted", "applied", "rejected", "failed"]
                                },
                                "baseBookingRevision": {
                                  "type": "integer",
                                  "exclusiveMinimum": 0
                                },
                                "resultBookingRevision": {
                                  "type": "integer",
                                  "exclusiveMinimum": 0
                                },
                                "acceptanceRequired": {
                                  "type": "boolean"
                                },
                                "policyDecisions": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "code": {
                                        "type": "string"
                                      },
                                      "version": {
                                        "type": "string"
                                      },
                                      "decision": {
                                        "type": "string",
                                        "enum": ["allowed", "acceptance_required"]
                                      },
                                      "reason": {
                                        "type": "string"
                                      }
                                    },
                                    "required": ["code", "version", "decision", "reason"]
                                  }
                                },
                                "priceDelta": {
                                  "type": "object",
                                  "properties": {
                                    "amountCents": {
                                      "type": "number",
                                      "enum": [0]
                                    },
                                    "currency": {
                                      "type": "string"
                                    }
                                  },
                                  "required": ["amountCents", "currency"]
                                },
                                "effects": {
                                  "type": "object",
                                  "properties": {
                                    "finance": {
                                      "type": "string",
                                      "enum": ["not_required"]
                                    },
                                    "legal": {
                                      "type": "string",
                                      "enum": ["not_required"]
                                    },
                                    "documents": {
                                      "type": "string",
                                      "enum": ["not_required"]
                                    },
                                    "fulfillment": {
                                      "type": "string",
                                      "enum": ["not_required"]
                                    },
                                    "supplier": {
                                      "type": "string",
                                      "enum": ["not_required"]
                                    }
                                  },
                                  "required": [
                                    "finance",
                                    "legal",
                                    "documents",
                                    "fulfillment",
                                    "supplier"
                                  ]
                                },
                                "nextActions": {
                                  "type": "array",
                                  "items": {
                                    "type": "string",
                                    "enum": ["accept", "apply"]
                                  }
                                },
                                "requestedBy": {
                                  "type": ["string", "null"]
                                },
                                "requestedActor": {
                                  "type": "string",
                                  "enum": ["customer", "staff", "partner", "system"]
                                },
                                "reason": {
                                  "type": "string"
                                },
                                "acceptedAt": {
                                  "type": ["string", "null"]
                                },
                                "acceptedBy": {
                                  "type": ["string", "null"]
                                },
                                "acceptedActor": {
                                  "type": ["string", "null"],
                                  "enum": ["customer", "staff", "partner", "system", null]
                                },
                                "appliedAt": {
                                  "type": ["string", "null"]
                                },
                                "appliedBy": {
                                  "type": ["string", "null"]
                                },
                                "appliedActor": {
                                  "type": ["string", "null"],
                                  "enum": ["customer", "staff", "partner", "system", null]
                                },
                                "createdAt": {
                                  "type": "string"
                                },
                                "updatedAt": {
                                  "type": "string"
                                },
                                "revisions": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "id": {
                                        "type": "string"
                                      },
                                      "amendmentId": {
                                        "type": "string"
                                      },
                                      "bookingId": {
                                        "type": "string"
                                      },
                                      "bookingRevision": {
                                        "type": "integer",
                                        "exclusiveMinimum": 0
                                      },
                                      "role": {
                                        "type": "string",
                                        "enum": ["before", "proposed_after"]
                                      },
                                      "snapshot": {
                                        "type": "object",
                                        "properties": {
                                          "bookingId": {
                                            "type": "string"
                                          },
                                          "bookingNumber": {
                                            "type": "string"
                                          },
                                          "revision": {
                                            "type": "integer",
                                            "exclusiveMinimum": 0
                                          },
                                          "travelers": {
                                            "type": "array",
                                            "items": {
                                              "type": "object",
                                              "properties": {
                                                "id": {
                                                  "type": "string"
                                                },
                                                "personId": {
                                                  "type": ["string", "null"]
                                                },
                                                "participantType": {
                                                  "type": "string",
                                                  "enum": ["traveler", "occupant", "other"]
                                                },
                                                "travelerCategory": {
                                                  "type": ["string", "null"],
                                                  "enum": [
                                                    "adult",
                                                    "child",
                                                    "infant",
                                                    "senior",
                                                    "other",
                                                    null
                                                  ]
                                                },
                                                "firstName": {
                                                  "type": "string"
                                                },
                                                "lastName": {
                                                  "type": "string"
                                                },
                                                "email": {
                                                  "type": ["string", "null"]
                                                },
                                                "phone": {
                                                  "type": ["string", "null"]
                                                },
                                                "preferredLanguage": {
                                                  "type": ["string", "null"]
                                                },
                                                "isPrimary": {
                                                  "type": "boolean"
                                                }
                                              },
                                              "required": [
                                                "id",
                                                "personId",
                                                "participantType",
                                                "travelerCategory",
                                                "firstName",
                                                "lastName",
                                                "email",
                                                "phone",
                                                "preferredLanguage",
                                                "isPrimary"
                                              ]
                                            }
                                          }
                                        },
                                        "required": [
                                          "bookingId",
                                          "bookingNumber",
                                          "revision",
                                          "travelers"
                                        ]
                                      },
                                      "changedFields": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        }
                                      },
                                      "authorizedBy": {
                                        "type": ["string", "null"]
                                      },
                                      "reason": {
                                        "type": "string"
                                      },
                                      "createdAt": {
                                        "type": "string"
                                      }
                                    },
                                    "required": [
                                      "id",
                                      "amendmentId",
                                      "bookingId",
                                      "bookingRevision",
                                      "role",
                                      "snapshot",
                                      "changedFields",
                                      "authorizedBy",
                                      "reason",
                                      "createdAt"
                                    ]
                                  }
                                }
                              },
                              "required": [
                                "id",
                                "bookingId",
                                "travelerId",
                                "kind",
                                "status",
                                "baseBookingRevision",
                                "resultBookingRevision",
                                "acceptanceRequired",
                                "policyDecisions",
                                "priceDelta",
                                "effects",
                                "nextActions",
                                "requestedBy",
                                "requestedActor",
                                "reason",
                                "acceptedAt",
                                "acceptedBy",
                                "acceptedActor",
                                "appliedAt",
                                "appliedBy",
                                "appliedActor",
                                "createdAt",
                                "updatedAt"
                              ]
                            }
                          },
                          "required": ["status", "amendment"]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "status": {
                              "type": "string",
                              "enum": ["no_op"]
                            },
                            "bookingId": {
                              "type": "string"
                            },
                            "travelerId": {
                              "type": "string"
                            },
                            "bookingRevision": {
                              "type": "integer",
                              "exclusiveMinimum": 0
                            }
                          },
                          "required": ["status", "bookingId", "travelerId", "bookingRevision"]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "status": {
                              "type": "string",
                              "enum": ["not_found"]
                            }
                          },
                          "required": ["status"]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "status": {
                              "type": "string",
                              "enum": ["idempotency_conflict"]
                            }
                          },
                          "required": ["status"]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "status": {
                              "type": "string",
                              "enum": ["stale_revision"]
                            },
                            "currentBookingRevision": {
                              "type": "integer",
                              "exclusiveMinimum": 0
                            }
                          },
                          "required": ["status", "currentBookingRevision"]
                        }
                      ]
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          },
          "400": {
            "description": "Missing or invalid Idempotency-Key header",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "currentBookingRevision": {
                      "type": "integer",
                      "exclusiveMinimum": 0
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "403": {
            "description": "Missing or mismatched Booking access",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "currentBookingRevision": {
                      "type": "integer",
                      "exclusiveMinimum": 0
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "404": {
            "description": "Booking or traveler not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "currentBookingRevision": {
                      "type": "integer",
                      "exclusiveMinimum": 0
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "409": {
            "description": "Revision or idempotency conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "currentBookingRevision": {
                      "type": "integer",
                      "exclusiveMinimum": 0
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          }
        }
      }
    },
    "/v1/public/bookings/{bookingId}/amendments": {
      "get": {
        "x-voyant-api-id": "@voyant-travel/bookings#api.public",
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "bookingId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Booking Amendment history",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "bookingId": {
                            "type": "string"
                          },
                          "travelerId": {
                            "type": "string"
                          },
                          "kind": {
                            "type": "string",
                            "enum": ["traveler_correction"]
                          },
                          "status": {
                            "type": "string",
                            "enum": ["proposed", "accepted", "applied", "rejected", "failed"]
                          },
                          "baseBookingRevision": {
                            "type": "integer",
                            "exclusiveMinimum": 0
                          },
                          "resultBookingRevision": {
                            "type": "integer",
                            "exclusiveMinimum": 0
                          },
                          "acceptanceRequired": {
                            "type": "boolean"
                          },
                          "policyDecisions": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "code": {
                                  "type": "string"
                                },
                                "version": {
                                  "type": "string"
                                },
                                "decision": {
                                  "type": "string",
                                  "enum": ["allowed", "acceptance_required"]
                                },
                                "reason": {
                                  "type": "string"
                                }
                              },
                              "required": ["code", "version", "decision", "reason"]
                            }
                          },
                          "priceDelta": {
                            "type": "object",
                            "properties": {
                              "amountCents": {
                                "type": "number",
                                "enum": [0]
                              },
                              "currency": {
                                "type": "string"
                              }
                            },
                            "required": ["amountCents", "currency"]
                          },
                          "effects": {
                            "type": "object",
                            "properties": {
                              "finance": {
                                "type": "string",
                                "enum": ["not_required"]
                              },
                              "legal": {
                                "type": "string",
                                "enum": ["not_required"]
                              },
                              "documents": {
                                "type": "string",
                                "enum": ["not_required"]
                              },
                              "fulfillment": {
                                "type": "string",
                                "enum": ["not_required"]
                              },
                              "supplier": {
                                "type": "string",
                                "enum": ["not_required"]
                              }
                            },
                            "required": ["finance", "legal", "documents", "fulfillment", "supplier"]
                          },
                          "nextActions": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "enum": ["accept", "apply"]
                            }
                          },
                          "requestedBy": {
                            "type": ["string", "null"]
                          },
                          "requestedActor": {
                            "type": "string",
                            "enum": ["customer", "staff", "partner", "system"]
                          },
                          "reason": {
                            "type": "string"
                          },
                          "acceptedAt": {
                            "type": ["string", "null"]
                          },
                          "acceptedBy": {
                            "type": ["string", "null"]
                          },
                          "acceptedActor": {
                            "type": ["string", "null"],
                            "enum": ["customer", "staff", "partner", "system", null]
                          },
                          "appliedAt": {
                            "type": ["string", "null"]
                          },
                          "appliedBy": {
                            "type": ["string", "null"]
                          },
                          "appliedActor": {
                            "type": ["string", "null"],
                            "enum": ["customer", "staff", "partner", "system", null]
                          },
                          "createdAt": {
                            "type": "string"
                          },
                          "updatedAt": {
                            "type": "string"
                          },
                          "revisions": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "id": {
                                  "type": "string"
                                },
                                "amendmentId": {
                                  "type": "string"
                                },
                                "bookingId": {
                                  "type": "string"
                                },
                                "bookingRevision": {
                                  "type": "integer",
                                  "exclusiveMinimum": 0
                                },
                                "role": {
                                  "type": "string",
                                  "enum": ["before", "proposed_after"]
                                },
                                "snapshot": {
                                  "type": "object",
                                  "properties": {
                                    "bookingId": {
                                      "type": "string"
                                    },
                                    "bookingNumber": {
                                      "type": "string"
                                    },
                                    "revision": {
                                      "type": "integer",
                                      "exclusiveMinimum": 0
                                    },
                                    "travelers": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "id": {
                                            "type": "string"
                                          },
                                          "personId": {
                                            "type": ["string", "null"]
                                          },
                                          "participantType": {
                                            "type": "string",
                                            "enum": ["traveler", "occupant", "other"]
                                          },
                                          "travelerCategory": {
                                            "type": ["string", "null"],
                                            "enum": [
                                              "adult",
                                              "child",
                                              "infant",
                                              "senior",
                                              "other",
                                              null
                                            ]
                                          },
                                          "firstName": {
                                            "type": "string"
                                          },
                                          "lastName": {
                                            "type": "string"
                                          },
                                          "email": {
                                            "type": ["string", "null"]
                                          },
                                          "phone": {
                                            "type": ["string", "null"]
                                          },
                                          "preferredLanguage": {
                                            "type": ["string", "null"]
                                          },
                                          "isPrimary": {
                                            "type": "boolean"
                                          }
                                        },
                                        "required": [
                                          "id",
                                          "personId",
                                          "participantType",
                                          "travelerCategory",
                                          "firstName",
                                          "lastName",
                                          "email",
                                          "phone",
                                          "preferredLanguage",
                                          "isPrimary"
                                        ]
                                      }
                                    }
                                  },
                                  "required": [
                                    "bookingId",
                                    "bookingNumber",
                                    "revision",
                                    "travelers"
                                  ]
                                },
                                "changedFields": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  }
                                },
                                "authorizedBy": {
                                  "type": ["string", "null"]
                                },
                                "reason": {
                                  "type": "string"
                                },
                                "createdAt": {
                                  "type": "string"
                                }
                              },
                              "required": [
                                "id",
                                "amendmentId",
                                "bookingId",
                                "bookingRevision",
                                "role",
                                "snapshot",
                                "changedFields",
                                "authorizedBy",
                                "reason",
                                "createdAt"
                              ]
                            }
                          }
                        },
                        "required": [
                          "id",
                          "bookingId",
                          "travelerId",
                          "kind",
                          "status",
                          "baseBookingRevision",
                          "resultBookingRevision",
                          "acceptanceRequired",
                          "policyDecisions",
                          "priceDelta",
                          "effects",
                          "nextActions",
                          "requestedBy",
                          "requestedActor",
                          "reason",
                          "acceptedAt",
                          "acceptedBy",
                          "acceptedActor",
                          "appliedAt",
                          "appliedBy",
                          "appliedActor",
                          "createdAt",
                          "updatedAt"
                        ]
                      }
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          },
          "403": {
            "description": "Missing or mismatched Booking access",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "currentBookingRevision": {
                      "type": "integer",
                      "exclusiveMinimum": 0
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          }
        }
      }
    },
    "/v1/public/bookings/{bookingId}/amendments/{amendmentId}": {
      "get": {
        "x-voyant-api-id": "@voyant-travel/bookings#api.public",
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "bookingId",
            "in": "path"
          },
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "amendmentId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Booking Amendment",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "bookingId": {
                          "type": "string"
                        },
                        "travelerId": {
                          "type": "string"
                        },
                        "kind": {
                          "type": "string",
                          "enum": ["traveler_correction"]
                        },
                        "status": {
                          "type": "string",
                          "enum": ["proposed", "accepted", "applied", "rejected", "failed"]
                        },
                        "baseBookingRevision": {
                          "type": "integer",
                          "exclusiveMinimum": 0
                        },
                        "resultBookingRevision": {
                          "type": "integer",
                          "exclusiveMinimum": 0
                        },
                        "acceptanceRequired": {
                          "type": "boolean"
                        },
                        "policyDecisions": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "code": {
                                "type": "string"
                              },
                              "version": {
                                "type": "string"
                              },
                              "decision": {
                                "type": "string",
                                "enum": ["allowed", "acceptance_required"]
                              },
                              "reason": {
                                "type": "string"
                              }
                            },
                            "required": ["code", "version", "decision", "reason"]
                          }
                        },
                        "priceDelta": {
                          "type": "object",
                          "properties": {
                            "amountCents": {
                              "type": "number",
                              "enum": [0]
                            },
                            "currency": {
                              "type": "string"
                            }
                          },
                          "required": ["amountCents", "currency"]
                        },
                        "effects": {
                          "type": "object",
                          "properties": {
                            "finance": {
                              "type": "string",
                              "enum": ["not_required"]
                            },
                            "legal": {
                              "type": "string",
                              "enum": ["not_required"]
                            },
                            "documents": {
                              "type": "string",
                              "enum": ["not_required"]
                            },
                            "fulfillment": {
                              "type": "string",
                              "enum": ["not_required"]
                            },
                            "supplier": {
                              "type": "string",
                              "enum": ["not_required"]
                            }
                          },
                          "required": ["finance", "legal", "documents", "fulfillment", "supplier"]
                        },
                        "nextActions": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "enum": ["accept", "apply"]
                          }
                        },
                        "requestedBy": {
                          "type": ["string", "null"]
                        },
                        "requestedActor": {
                          "type": "string",
                          "enum": ["customer", "staff", "partner", "system"]
                        },
                        "reason": {
                          "type": "string"
                        },
                        "acceptedAt": {
                          "type": ["string", "null"]
                        },
                        "acceptedBy": {
                          "type": ["string", "null"]
                        },
                        "acceptedActor": {
                          "type": ["string", "null"],
                          "enum": ["customer", "staff", "partner", "system", null]
                        },
                        "appliedAt": {
                          "type": ["string", "null"]
                        },
                        "appliedBy": {
                          "type": ["string", "null"]
                        },
                        "appliedActor": {
                          "type": ["string", "null"],
                          "enum": ["customer", "staff", "partner", "system", null]
                        },
                        "createdAt": {
                          "type": "string"
                        },
                        "updatedAt": {
                          "type": "string"
                        },
                        "revisions": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "amendmentId": {
                                "type": "string"
                              },
                              "bookingId": {
                                "type": "string"
                              },
                              "bookingRevision": {
                                "type": "integer",
                                "exclusiveMinimum": 0
                              },
                              "role": {
                                "type": "string",
                                "enum": ["before", "proposed_after"]
                              },
                              "snapshot": {
                                "type": "object",
                                "properties": {
                                  "bookingId": {
                                    "type": "string"
                                  },
                                  "bookingNumber": {
                                    "type": "string"
                                  },
                                  "revision": {
                                    "type": "integer",
                                    "exclusiveMinimum": 0
                                  },
                                  "travelers": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "id": {
                                          "type": "string"
                                        },
                                        "personId": {
                                          "type": ["string", "null"]
                                        },
                                        "participantType": {
                                          "type": "string",
                                          "enum": ["traveler", "occupant", "other"]
                                        },
                                        "travelerCategory": {
                                          "type": ["string", "null"],
                                          "enum": [
                                            "adult",
                                            "child",
                                            "infant",
                                            "senior",
                                            "other",
                                            null
                                          ]
                                        },
                                        "firstName": {
                                          "type": "string"
                                        },
                                        "lastName": {
                                          "type": "string"
                                        },
                                        "email": {
                                          "type": ["string", "null"]
                                        },
                                        "phone": {
                                          "type": ["string", "null"]
                                        },
                                        "preferredLanguage": {
                                          "type": ["string", "null"]
                                        },
                                        "isPrimary": {
                                          "type": "boolean"
                                        }
                                      },
                                      "required": [
                                        "id",
                                        "personId",
                                        "participantType",
                                        "travelerCategory",
                                        "firstName",
                                        "lastName",
                                        "email",
                                        "phone",
                                        "preferredLanguage",
                                        "isPrimary"
                                      ]
                                    }
                                  }
                                },
                                "required": ["bookingId", "bookingNumber", "revision", "travelers"]
                              },
                              "changedFields": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              },
                              "authorizedBy": {
                                "type": ["string", "null"]
                              },
                              "reason": {
                                "type": "string"
                              },
                              "createdAt": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "id",
                              "amendmentId",
                              "bookingId",
                              "bookingRevision",
                              "role",
                              "snapshot",
                              "changedFields",
                              "authorizedBy",
                              "reason",
                              "createdAt"
                            ]
                          }
                        }
                      },
                      "required": [
                        "id",
                        "bookingId",
                        "travelerId",
                        "kind",
                        "status",
                        "baseBookingRevision",
                        "resultBookingRevision",
                        "acceptanceRequired",
                        "policyDecisions",
                        "priceDelta",
                        "effects",
                        "nextActions",
                        "requestedBy",
                        "requestedActor",
                        "reason",
                        "acceptedAt",
                        "acceptedBy",
                        "acceptedActor",
                        "appliedAt",
                        "appliedBy",
                        "appliedActor",
                        "createdAt",
                        "updatedAt"
                      ]
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          },
          "403": {
            "description": "Missing or mismatched Booking access",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "currentBookingRevision": {
                      "type": "integer",
                      "exclusiveMinimum": 0
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "404": {
            "description": "Booking Amendment not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "currentBookingRevision": {
                      "type": "integer",
                      "exclusiveMinimum": 0
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          }
        }
      }
    },
    "/v1/public/bookings/{bookingId}/amendments/{amendmentId}/accept": {
      "post": {
        "x-voyant-api-id": "@voyant-travel/bookings#api.public",
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "bookingId",
            "in": "path"
          },
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "amendmentId",
            "in": "path"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "proposedRevisionId": {
                    "type": "string",
                    "minLength": 1
                  }
                },
                "required": ["proposedRevisionId"]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Accepted Booking Amendment",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "bookingId": {
                          "type": "string"
                        },
                        "travelerId": {
                          "type": "string"
                        },
                        "kind": {
                          "type": "string",
                          "enum": ["traveler_correction"]
                        },
                        "status": {
                          "type": "string",
                          "enum": ["proposed", "accepted", "applied", "rejected", "failed"]
                        },
                        "baseBookingRevision": {
                          "type": "integer",
                          "exclusiveMinimum": 0
                        },
                        "resultBookingRevision": {
                          "type": "integer",
                          "exclusiveMinimum": 0
                        },
                        "acceptanceRequired": {
                          "type": "boolean"
                        },
                        "policyDecisions": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "code": {
                                "type": "string"
                              },
                              "version": {
                                "type": "string"
                              },
                              "decision": {
                                "type": "string",
                                "enum": ["allowed", "acceptance_required"]
                              },
                              "reason": {
                                "type": "string"
                              }
                            },
                            "required": ["code", "version", "decision", "reason"]
                          }
                        },
                        "priceDelta": {
                          "type": "object",
                          "properties": {
                            "amountCents": {
                              "type": "number",
                              "enum": [0]
                            },
                            "currency": {
                              "type": "string"
                            }
                          },
                          "required": ["amountCents", "currency"]
                        },
                        "effects": {
                          "type": "object",
                          "properties": {
                            "finance": {
                              "type": "string",
                              "enum": ["not_required"]
                            },
                            "legal": {
                              "type": "string",
                              "enum": ["not_required"]
                            },
                            "documents": {
                              "type": "string",
                              "enum": ["not_required"]
                            },
                            "fulfillment": {
                              "type": "string",
                              "enum": ["not_required"]
                            },
                            "supplier": {
                              "type": "string",
                              "enum": ["not_required"]
                            }
                          },
                          "required": ["finance", "legal", "documents", "fulfillment", "supplier"]
                        },
                        "nextActions": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "enum": ["accept", "apply"]
                          }
                        },
                        "requestedBy": {
                          "type": ["string", "null"]
                        },
                        "requestedActor": {
                          "type": "string",
                          "enum": ["customer", "staff", "partner", "system"]
                        },
                        "reason": {
                          "type": "string"
                        },
                        "acceptedAt": {
                          "type": ["string", "null"]
                        },
                        "acceptedBy": {
                          "type": ["string", "null"]
                        },
                        "acceptedActor": {
                          "type": ["string", "null"],
                          "enum": ["customer", "staff", "partner", "system", null]
                        },
                        "appliedAt": {
                          "type": ["string", "null"]
                        },
                        "appliedBy": {
                          "type": ["string", "null"]
                        },
                        "appliedActor": {
                          "type": ["string", "null"],
                          "enum": ["customer", "staff", "partner", "system", null]
                        },
                        "createdAt": {
                          "type": "string"
                        },
                        "updatedAt": {
                          "type": "string"
                        },
                        "revisions": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "amendmentId": {
                                "type": "string"
                              },
                              "bookingId": {
                                "type": "string"
                              },
                              "bookingRevision": {
                                "type": "integer",
                                "exclusiveMinimum": 0
                              },
                              "role": {
                                "type": "string",
                                "enum": ["before", "proposed_after"]
                              },
                              "snapshot": {
                                "type": "object",
                                "properties": {
                                  "bookingId": {
                                    "type": "string"
                                  },
                                  "bookingNumber": {
                                    "type": "string"
                                  },
                                  "revision": {
                                    "type": "integer",
                                    "exclusiveMinimum": 0
                                  },
                                  "travelers": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "id": {
                                          "type": "string"
                                        },
                                        "personId": {
                                          "type": ["string", "null"]
                                        },
                                        "participantType": {
                                          "type": "string",
                                          "enum": ["traveler", "occupant", "other"]
                                        },
                                        "travelerCategory": {
                                          "type": ["string", "null"],
                                          "enum": [
                                            "adult",
                                            "child",
                                            "infant",
                                            "senior",
                                            "other",
                                            null
                                          ]
                                        },
                                        "firstName": {
                                          "type": "string"
                                        },
                                        "lastName": {
                                          "type": "string"
                                        },
                                        "email": {
                                          "type": ["string", "null"]
                                        },
                                        "phone": {
                                          "type": ["string", "null"]
                                        },
                                        "preferredLanguage": {
                                          "type": ["string", "null"]
                                        },
                                        "isPrimary": {
                                          "type": "boolean"
                                        }
                                      },
                                      "required": [
                                        "id",
                                        "personId",
                                        "participantType",
                                        "travelerCategory",
                                        "firstName",
                                        "lastName",
                                        "email",
                                        "phone",
                                        "preferredLanguage",
                                        "isPrimary"
                                      ]
                                    }
                                  }
                                },
                                "required": ["bookingId", "bookingNumber", "revision", "travelers"]
                              },
                              "changedFields": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              },
                              "authorizedBy": {
                                "type": ["string", "null"]
                              },
                              "reason": {
                                "type": "string"
                              },
                              "createdAt": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "id",
                              "amendmentId",
                              "bookingId",
                              "bookingRevision",
                              "role",
                              "snapshot",
                              "changedFields",
                              "authorizedBy",
                              "reason",
                              "createdAt"
                            ]
                          }
                        }
                      },
                      "required": [
                        "id",
                        "bookingId",
                        "travelerId",
                        "kind",
                        "status",
                        "baseBookingRevision",
                        "resultBookingRevision",
                        "acceptanceRequired",
                        "policyDecisions",
                        "priceDelta",
                        "effects",
                        "nextActions",
                        "requestedBy",
                        "requestedActor",
                        "reason",
                        "acceptedAt",
                        "acceptedBy",
                        "acceptedActor",
                        "appliedAt",
                        "appliedBy",
                        "appliedActor",
                        "createdAt",
                        "updatedAt"
                      ]
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          },
          "400": {
            "description": "Missing or invalid Idempotency-Key header",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "currentBookingRevision": {
                      "type": "integer",
                      "exclusiveMinimum": 0
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "403": {
            "description": "Missing or mismatched Booking access",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "currentBookingRevision": {
                      "type": "integer",
                      "exclusiveMinimum": 0
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "404": {
            "description": "Booking Amendment not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "currentBookingRevision": {
                      "type": "integer",
                      "exclusiveMinimum": 0
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "409": {
            "description": "Acceptance conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "currentBookingRevision": {
                      "type": "integer",
                      "exclusiveMinimum": 0
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          }
        }
      }
    },
    "/v1/public/bookings/{bookingId}/amendments/{amendmentId}/apply": {
      "post": {
        "x-voyant-api-id": "@voyant-travel/bookings#api.public",
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "bookingId",
            "in": "path"
          },
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "amendmentId",
            "in": "path"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "expectedBookingRevision": {
                    "type": "integer",
                    "exclusiveMinimum": 0
                  },
                  "proposedRevisionId": {
                    "type": "string",
                    "minLength": 1
                  }
                },
                "required": ["expectedBookingRevision", "proposedRevisionId"]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Applied Booking Amendment",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "bookingId": {
                          "type": "string"
                        },
                        "travelerId": {
                          "type": "string"
                        },
                        "kind": {
                          "type": "string",
                          "enum": ["traveler_correction"]
                        },
                        "status": {
                          "type": "string",
                          "enum": ["proposed", "accepted", "applied", "rejected", "failed"]
                        },
                        "baseBookingRevision": {
                          "type": "integer",
                          "exclusiveMinimum": 0
                        },
                        "resultBookingRevision": {
                          "type": "integer",
                          "exclusiveMinimum": 0
                        },
                        "acceptanceRequired": {
                          "type": "boolean"
                        },
                        "policyDecisions": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "code": {
                                "type": "string"
                              },
                              "version": {
                                "type": "string"
                              },
                              "decision": {
                                "type": "string",
                                "enum": ["allowed", "acceptance_required"]
                              },
                              "reason": {
                                "type": "string"
                              }
                            },
                            "required": ["code", "version", "decision", "reason"]
                          }
                        },
                        "priceDelta": {
                          "type": "object",
                          "properties": {
                            "amountCents": {
                              "type": "number",
                              "enum": [0]
                            },
                            "currency": {
                              "type": "string"
                            }
                          },
                          "required": ["amountCents", "currency"]
                        },
                        "effects": {
                          "type": "object",
                          "properties": {
                            "finance": {
                              "type": "string",
                              "enum": ["not_required"]
                            },
                            "legal": {
                              "type": "string",
                              "enum": ["not_required"]
                            },
                            "documents": {
                              "type": "string",
                              "enum": ["not_required"]
                            },
                            "fulfillment": {
                              "type": "string",
                              "enum": ["not_required"]
                            },
                            "supplier": {
                              "type": "string",
                              "enum": ["not_required"]
                            }
                          },
                          "required": ["finance", "legal", "documents", "fulfillment", "supplier"]
                        },
                        "nextActions": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "enum": ["accept", "apply"]
                          }
                        },
                        "requestedBy": {
                          "type": ["string", "null"]
                        },
                        "requestedActor": {
                          "type": "string",
                          "enum": ["customer", "staff", "partner", "system"]
                        },
                        "reason": {
                          "type": "string"
                        },
                        "acceptedAt": {
                          "type": ["string", "null"]
                        },
                        "acceptedBy": {
                          "type": ["string", "null"]
                        },
                        "acceptedActor": {
                          "type": ["string", "null"],
                          "enum": ["customer", "staff", "partner", "system", null]
                        },
                        "appliedAt": {
                          "type": ["string", "null"]
                        },
                        "appliedBy": {
                          "type": ["string", "null"]
                        },
                        "appliedActor": {
                          "type": ["string", "null"],
                          "enum": ["customer", "staff", "partner", "system", null]
                        },
                        "createdAt": {
                          "type": "string"
                        },
                        "updatedAt": {
                          "type": "string"
                        },
                        "revisions": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "amendmentId": {
                                "type": "string"
                              },
                              "bookingId": {
                                "type": "string"
                              },
                              "bookingRevision": {
                                "type": "integer",
                                "exclusiveMinimum": 0
                              },
                              "role": {
                                "type": "string",
                                "enum": ["before", "proposed_after"]
                              },
                              "snapshot": {
                                "type": "object",
                                "properties": {
                                  "bookingId": {
                                    "type": "string"
                                  },
                                  "bookingNumber": {
                                    "type": "string"
                                  },
                                  "revision": {
                                    "type": "integer",
                                    "exclusiveMinimum": 0
                                  },
                                  "travelers": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "id": {
                                          "type": "string"
                                        },
                                        "personId": {
                                          "type": ["string", "null"]
                                        },
                                        "participantType": {
                                          "type": "string",
                                          "enum": ["traveler", "occupant", "other"]
                                        },
                                        "travelerCategory": {
                                          "type": ["string", "null"],
                                          "enum": [
                                            "adult",
                                            "child",
                                            "infant",
                                            "senior",
                                            "other",
                                            null
                                          ]
                                        },
                                        "firstName": {
                                          "type": "string"
                                        },
                                        "lastName": {
                                          "type": "string"
                                        },
                                        "email": {
                                          "type": ["string", "null"]
                                        },
                                        "phone": {
                                          "type": ["string", "null"]
                                        },
                                        "preferredLanguage": {
                                          "type": ["string", "null"]
                                        },
                                        "isPrimary": {
                                          "type": "boolean"
                                        }
                                      },
                                      "required": [
                                        "id",
                                        "personId",
                                        "participantType",
                                        "travelerCategory",
                                        "firstName",
                                        "lastName",
                                        "email",
                                        "phone",
                                        "preferredLanguage",
                                        "isPrimary"
                                      ]
                                    }
                                  }
                                },
                                "required": ["bookingId", "bookingNumber", "revision", "travelers"]
                              },
                              "changedFields": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              },
                              "authorizedBy": {
                                "type": ["string", "null"]
                              },
                              "reason": {
                                "type": "string"
                              },
                              "createdAt": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "id",
                              "amendmentId",
                              "bookingId",
                              "bookingRevision",
                              "role",
                              "snapshot",
                              "changedFields",
                              "authorizedBy",
                              "reason",
                              "createdAt"
                            ]
                          }
                        }
                      },
                      "required": [
                        "id",
                        "bookingId",
                        "travelerId",
                        "kind",
                        "status",
                        "baseBookingRevision",
                        "resultBookingRevision",
                        "acceptanceRequired",
                        "policyDecisions",
                        "priceDelta",
                        "effects",
                        "nextActions",
                        "requestedBy",
                        "requestedActor",
                        "reason",
                        "acceptedAt",
                        "acceptedBy",
                        "acceptedActor",
                        "appliedAt",
                        "appliedBy",
                        "appliedActor",
                        "createdAt",
                        "updatedAt"
                      ]
                    }
                  },
                  "required": ["data"]
                }
              }
            }
          },
          "400": {
            "description": "Missing or invalid Idempotency-Key header",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "currentBookingRevision": {
                      "type": "integer",
                      "exclusiveMinimum": 0
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "403": {
            "description": "Missing or mismatched Booking access",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "currentBookingRevision": {
                      "type": "integer",
                      "exclusiveMinimum": 0
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "404": {
            "description": "Booking Amendment not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "currentBookingRevision": {
                      "type": "integer",
                      "exclusiveMinimum": 0
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          },
          "409": {
            "description": "Apply conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "currentBookingRevision": {
                      "type": "integer",
                      "exclusiveMinimum": 0
                    }
                  },
                  "required": ["error"]
                }
              }
            }
          }
        }
      }
    }
  },
  "webhooks": {}
}
