openapi: 3.1.0 info: title: Sabre Bargain Finder Max Air Shopping Hotel Booking API description: Sabre Bargain Finder Max (BFM) API provides low-fare search capabilities for air shopping, returning optimal flight itineraries with pricing across Sabre's global airline content inventory. Supports one-way, round-trip, and multi-city searches with ATPCO, LCC, and NDC content. version: 4.0.0 contact: name: Sabre Developer Support url: https://developer.sabre.com/support license: name: Sabre Developer Agreement url: https://developer.sabre.com/ servers: - url: https://api.sabre.com description: Sabre Production API security: - BearerAuth: [] tags: - name: Hotel Booking description: Reservation management paths: /v2.0.0/hotels/reservations: post: operationId: createHotelReservation summary: Create a hotel reservation description: Books a hotel room and creates a reservation record in Sabre GDS. Returns a confirmation number and hotel-specific PNR locator. tags: - Hotel Booking requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/HotelReservationRequest' responses: '201': description: Reservation created successfully content: application/json: schema: $ref: '#/components/schemas/HotelReservationResponse' '400': description: Bad request or invalid room/rate combination content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /v2.0.0/hotels/reservations/{confirmationId}: get: operationId: getHotelReservation summary: Retrieve hotel reservation details description: Returns full details for an existing hotel reservation. tags: - Hotel Booking parameters: - name: confirmationId in: path required: true schema: type: string description: Hotel reservation confirmation number responses: '200': description: Hotel reservation details content: application/json: schema: $ref: '#/components/schemas/HotelReservationResponse' '404': description: Reservation not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' delete: operationId: cancelHotelReservation summary: Cancel a hotel reservation description: Cancels an existing hotel reservation subject to property cancellation policy. tags: - Hotel Booking parameters: - name: confirmationId in: path required: true schema: type: string responses: '200': description: Reservation cancelled content: application/json: schema: $ref: '#/components/schemas/CancellationResponse' '404': description: Reservation not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' components: schemas: GuestInfo: type: object required: - FirstName - LastName - Email properties: Title: type: string FirstName: type: string LastName: type: string Email: type: string format: email Phone: type: string LoyaltyProgramNumber: type: string Rate: type: object properties: Amount: type: number format: double CurrencyCode: type: string example: USD CancellationResponse: type: object properties: CancellationNumber: type: string Status: type: string enum: - CANCELLED CancellationFee: $ref: '#/components/schemas/Rate' HotelReservationRequest: type: object required: - HotelCode - RoomTypeCode - RatePlanCode - CheckIn - CheckOut - GuestInfo properties: HotelCode: type: string RoomTypeCode: type: string RatePlanCode: type: string CheckIn: type: string format: date CheckOut: type: string format: date GuestInfo: $ref: '#/components/schemas/GuestInfo' PaymentInfo: $ref: '#/components/schemas/PaymentInfo' SpecialRequests: type: string PaymentInfo: type: object properties: CardType: type: string enum: - VI - MC - AX - DS CardNumber: type: string ExpiryDate: type: string CardholderName: type: string ErrorResponse: type: object properties: status: type: integer errorCode: type: string message: type: string timeStamp: type: string format: date-time HotelReservationResponse: type: object properties: ConfirmationNumber: type: string HotelConfirmationNumber: type: string Status: type: string enum: - CONFIRMED - PENDING - CANCELLED HotelCode: type: string CheckIn: type: string format: date CheckOut: type: string format: date TotalCost: $ref: '#/components/schemas/Rate' GuestInfo: $ref: '#/components/schemas/GuestInfo' securitySchemes: BearerAuth: type: http scheme: bearer bearerFormat: JWT description: Bearer token obtained from /v2/auth/token