Every API here is available over the APIs.io API and to AI agents over MCP.
openapi: 3.2.0
info:
title: NewSkies-Digital-Api Booking/history API
version: 4.8.6.23
description: Navitaire Digital Api
servers:
- url: https://prod.api.tui/flight/newskies/rest
description: TUI Prod
- url: https://playground.api.tui/flight/newskies/rest
description: TUI Playground
security:
- JWT: []
tags:
- name: booking/history
paths:
/api/nsk/v1/booking/history:
get:
tags:
- booking/history
summary: Gets the current booking history in state.
description: 'GraphQL endpoint: bookingHistory'
operationId: nsk_v1_booking_history_get
parameters:
- name: Event
in: query
description: "The event that triggered the history entry.\n \nEnumeration values: 0 = Unknown, 1 = ConvertedHistory, 2 = FlightTimeChange, 3 = FlightDesignatorChange, 4 = AssignedSeat, 5 = RemoveSeat, 6 = AddedFlight, 7 = DeletedFlight, 8 = DeletedPassenger, 9 = NameChange, 10 = GroupNameChange, 11 = CancelledTicketing, 12 = ScheduleChange, 13 = AddedPayment, 14 = ServiceFee, 15 = QueuedPnr, 16 = UnqueuedPnr, 17 = DeletedComment, 18 = Divided, 19 = CheckedIn, 20 = CheckedOut, 21 = FareOverride, 22 = AddedBaggage, 23 = ChangedBaggageWeight, 24 = CheckedBaggage, 25 = RemovedBaggage, 26 = BoardedPassenger, 27 = UnboardedPassenger, 28 = ManualAuthorization, 29 = ManualDecline, 30 = UndoCancel, 31 = ItinerarySent, 32 = ContactChange, 33 = SsrAdded, 34 = FlightMoved, 35 = VerifiedDocument, 36 = RemovedVerifiedDocument, 37 = Promotion, 38 = BookingComment, 39 = CancelledSchedule, 40 = CancelServiceFee, 41 = OverrideServiceFee, 42 = AddedRecordLocator, 43 = DeletedRecordLocator, 44 = UpgradeClassOfService, 45 = DowngradeClassOfService, 46 = StandbyPriorityChange, 47 = AssignedTicketNumber, 48 = DeletedTicketNumber, 49 = ConfirmSegmentStatusCodeChange, 50 = CodeshareFlightChanged, 51 = PdsCancel, 52 = PdsPending, 53 = PdsConfirm, 54 = PdsFinalized, 55 = PdsDeclined, 56 = PdsException, 57 = PdsCancelRefused, 58 = PdsCancelUnsuccessful, 59 = Apps, 60 = InhibitedOverride, 61 = PrintedBagTag, 62 = SelfPrintedBagTag, 63 = PrintedBoardingPass, 64 = AddCustomerId, 65 = DeleteCustomerId, 66 = HoldCreated, 67 = HoldRemoved, 68 = HoldChanged, 69 = OverrideCoupon, 70 = PdsSynchronized, 71 = PdsItemremoved, 72 = Reprice, 73 = ChannelOverride, 74 = EmdCreated, 75 = EmdRemoved, 76 = EmdChanged, 77 = ServiceBundle, 78 = PublishedFareOverride, 79 = FareClassRealignment, 80 = AddedDocument, 81 = ChangedDocument, 82 = DeletedPaymentProperties"
schema:
$ref: '#/components/schemas/BookingHistoryEvent'
x-position: 1
- name: LastPageKey
in: query
description: "The key of the last booking history item returned.\n "
schema:
type:
- string
- 'null'
x-position: 2
- name: PageSize
in: query
description: "The page size for the response.\n "
schema:
type:
- integer
- 'null'
maximum: 5000.0
minimum: 10.0
x-position: 3
responses:
'200':
description: OK. Request completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponseOfHistoryResponse'
examples:
Retrieve Booking History Response:
description: Example response for successfully retrieving the booking history.
value:
data:
histories:
- historyCategory: 30
details: AD P 1234
event: 2
pointOfSale:
isoCountryCode: null
sourceSystemCode: null
agentCode: CCAuserM
domainCode: DEF
locationCode: HDQ
organizationCode: SYSTEM
sourcePointOfSale:
isoCountryCode: null
sourceSystemCode: null
agentCode: CCAuserM
domainCode: DEF
locationCode: HDQ
organizationCode: SYSTEM
receivedBy: Dailey, Paltry
receivedByReference: 801-555-9965
createdDate: '2026-07-09T05:55:13.8587699+00:00'
pageKey: null
With Invalid Event Type:
description: Example response if event enum is invalid.
value:
messages:
- rawValue: The value '83' is invalid.
code: core:Validation:MalformedRequest
debugMode: The API is currently running in debug mode. In production the 'rawValue' node will not be returned. These are for troubleshooting development issues only.
type: Information
value: core:Validation:MalformedRequest
status: 0
details: null
data:
histories:
- historyCategory: 30
details: AD P 1234
event: 2
pointOfSale:
isoCountryCode: null
sourceSystemCode: null
agentCode: CCAuserM
domainCode: DEF
locationCode: HDQ
organizationCode: SYSTEM
sourcePointOfSale:
isoCountryCode: null
sourceSystemCode: null
agentCode: CCAuserM
domainCode: DEF
locationCode: HDQ
organizationCode: SYSTEM
receivedBy: Dailey, Paltry
receivedByReference: 801-555-9965
createdDate: '2026-07-09T05:55:13.8588008+00:00'
pageKey: null
'400':
description: There was a problem with the request and it could not be completed.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponse'
examples:
With No Committed Booking:
description: Example error response if there is no committed booking.
value:
errors:
- id: eb0e3db1-a704-6c9b-d89b-bfd4d662af74
code: nsk:Booking:CommittedStateRequired
message: nsk:Booking:CommittedStateRequired
type: Validation
details: null
rawMessage: Invalid state. The booking should be committed before this operation.
exception: null
debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only.
data: null
'401':
description: Authentication is required for this request.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponse'
'404':
description: The item was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponse'
/api/nsk/v1/booking/history/bagTagPrint:
get:
tags:
- booking/history
summary: Gets the current bag tag print history for the booking in state.
description: 'GraphQL endpoint: bookingBagTagPrintHistoryv2'
operationId: nsk_v1_booking_history_bagTagPrint_get
parameters:
- name: isBagTagSelfPrinted
in: query
description: Whether the bag tag is self printed.
schema:
type:
- boolean
- 'null'
x-position: 1
responses:
'200':
description: OK. Request completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponseOfIListOfBagTagPrintHistory'
'404':
description: The item was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponse'
post:
tags:
- booking/history
summary: Creates a bag tag print history for the booking in state.
description: 'Also updates bag''s status from Added to AddedPrinted if Self-Tagging Baggage is enabled.
In order to see the status of a bag, check bags on a passenger segment.
GraphQL endpoints: bookingBagTagPrintHistoryAdd, bookingBagTagPrintHistoryAddBatch'
operationId: nsk_v1_booking_history_bagTagPrint_post
requestBody:
x-name: request
description: The bag tag print history request.
content:
application/json:
schema:
$ref: '#/components/schemas/BagTagPrintHistoryRequest'
required: true
x-position: 1
responses:
'201':
description: The item was created successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponse'
/api/nsk/v1/booking/history/flightMove:
get:
tags:
- booking/history
summary: Gets the current flight move history in state.
description: 'GraphQL endpoint: bookingFlightMoveHistory'
operationId: nsk_v1_booking_history_flightMove_get
parameters:
- name: LastPageKey
in: query
description: "The key of the last booking history item returned.\n "
schema:
type:
- string
- 'null'
x-position: 1
- name: PageSize
in: query
description: "The page size for the response.\n "
schema:
type:
- integer
- 'null'
maximum: 5000.0
minimum: 10.0
x-position: 2
responses:
'200':
description: OK. Request completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponseOfFlightMoveHistoryResponse'
'404':
description: The item was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponse'
/api/nsk/v1/booking/history/holdDateChange:
get:
tags:
- booking/history
summary: Gets the current hold date change history for the booking in state.
description: 'GraphQL endpoint: bookingHoldDateChangeHistory'
operationId: nsk_v1_booking_history_holdDateChange_get
parameters:
- name: Event
in: query
description: "The event that triggered the hold date change history entry.\n \nEnumeration values: 66 = Created, 67 = Removed, 68 = Changed"
schema:
$ref: '#/components/schemas/HoldDateChangeEvent'
x-position: 1
- name: LastPageKey
in: query
description: "The key of the last booking history item returned.\n "
schema:
type:
- string
- 'null'
x-position: 2
- name: PageSize
in: query
description: "The page size for the response.\n "
schema:
type:
- integer
- 'null'
maximum: 5000.0
minimum: 10.0
x-position: 3
responses:
'200':
description: OK. Request completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponseOfHoldDateChangeHistoryResponse'
'404':
description: The item was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponse'
/api/nsk/v1/booking/history/itinerarySent:
get:
tags:
- booking/history
summary: Gets the current itinerary sent history for the booking in state.
description: 'GraphQL endpoint: bookingItinerarySentHistory'
operationId: nsk_v1_booking_history_itinerarySent_get
parameters:
- name: LastPageKey
in: query
description: "The key of the last booking history item returned.\n "
schema:
type:
- string
- 'null'
x-position: 1
- name: PageSize
in: query
description: "The page size for the response.\n "
schema:
type:
- integer
- 'null'
maximum: 5000.0
minimum: 10.0
x-position: 2
responses:
'200':
description: OK. Request completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponseOfItinerarySentHistoryResponse'
'404':
description: The item was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponse'
/api/nsk/v1/booking/history/message:
get:
tags:
- booking/history
summary: Gets the current message history in state.
description: 'GraphQL endpoint: bookingMessageHistory'
operationId: nsk_v1_booking_history_message_get
responses:
'200':
description: OK. Request completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponseOfIListOfBookingMessageHistory'
'404':
description: The item was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponse'
/api/nsk/v1/booking/history/notification:
get:
tags:
- booking/history
summary: Gets the current notification history in state.
description: 'GraphQL endpoint: bookingNotificationHistory'
operationId: nsk_v1_booking_history_notification_get
responses:
'200':
description: OK. Request completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponseOfIListOfBookingNotificationHistory'
'404':
description: The item was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponse'
/api/nsk/v1/booking/history/seatAssignment:
get:
tags:
- booking/history
summary: Gets the current seat assignment history in state.
description: 'GraphQL endpoint: bookingSeatAssignmentHistory'
operationId: nsk_v1_booking_history_seatAssignment_get
parameters:
- name: Event
in: query
description: "The event that triggered the seat assignment history entry.\n \nEnumeration values: 4 = AssignedSeat, 5 = RemoveSeat"
schema:
$ref: '#/components/schemas/SeatAssignmentEvent'
x-position: 1
- name: LastPageKey
in: query
description: "The key of the last booking history item returned.\n "
schema:
type:
- string
- 'null'
x-position: 2
- name: PageSize
in: query
description: "The page size for the response.\n "
schema:
type:
- integer
- 'null'
maximum: 5000.0
minimum: 10.0
x-position: 3
responses:
'200':
description: OK. Request completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponseOfSeatAssignmentHistoryResponse'
'404':
description: The item was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponse'
/api/nsk/v1/booking/history/segmentChange:
get:
tags:
- booking/history
summary: Gets the current segment change history in state.
description: 'GraphQL endpoint: bookingSegmentChangeHistory'
operationId: nsk_v1_booking_history_segmentChange_get
parameters:
- name: Event
in: query
description: "The event that triggered the seat assignment history entry.\n \nEnumeration values: 6 = AddedFlight, 7 = DeletedFlight"
schema:
$ref: '#/components/schemas/SegmentChangeEvent'
x-position: 1
- name: LastPageKey
in: query
description: "The key of the last booking history item returned.\n "
schema:
type:
- string
- 'null'
x-position: 2
- name: PageSize
in: query
description: "The page size for the response.\n "
schema:
type:
- integer
- 'null'
maximum: 5000.0
minimum: 10.0
x-position: 3
responses:
'200':
description: OK. Request completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponseOfSegmentChangeHistoryResponse'
'404':
description: The item was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/IJsonResponse'
components:
schemas:
TransportationIdentifier:
type: object
description: "Represents the transportation identifier model data.\n "
additionalProperties: false
required:
- identifier
- carrierCode
properties:
identifier:
type: string
description: "The unique transportation identifier.\n "
maxLength: 4
minLength: 0
carrierCode:
type: string
description: "The carrier code.\n "
maxLength: 3
minLength: 2
opSuffix:
type:
- string
- 'null'
description: "The op suffix.\nPlease note that this should be a char and not a string.\n "
maxLength: 1
WeightType:
type: integer
description: "Weight Type enumeration.\n \n\n0 = Default\n1 = Pounds\n2 = Kilograms"
x-enumNames:
- Default
- Pounds
- Kilograms
enum:
- 0
- 1
- 2
BookingNotificationHistory:
type: object
description: "Defines a booking notification history.\n "
additionalProperties: false
properties:
bookingNotificationHistoryKey:
type:
- string
- 'null'
description: "The booking notification history key.\n "
createdDate:
type: string
description: "Date and time the history was logged.\n "
format: date-time
eventTypeCode:
description: "Event type code of the notification.\n "
$ref: '#/components/schemas/SubscriptionEventType'
deliveryMethodCode:
type:
- string
- 'null'
description: "Delivery method code of the notification.\n "
destination:
type:
- string
- 'null'
description: "Destination address of the notification.\n "
cultureCode:
type:
- string
- 'null'
description: "Culture code of the notification.\n "
detail:
type:
- string
- 'null'
description: "Details of the booking notification history.\n "
minutesToEvent:
type: integer
description: "Reminder time for the notification.\n "
format: int32
ItinerarySentHistoryResponse:
type: object
description: "Defines an itinerary sent history response.\n "
additionalProperties: false
properties:
pageKey:
type:
- string
- 'null'
description: "The key of the last item in the history list.\n "
histories:
type:
- array
- 'null'
description: "The itinerary sent history list.\n "
items:
$ref: '#/components/schemas/ItinerarySentHistory'
SeatAssignmentEvent:
type: integer
description: "Represents the different events that trigger an\nentry into the seat assignment history.\n \n\n4 = AssignedSeat\n5 = RemoveSeat"
x-enumNames:
- AssignedSeat
- RemoveSeat
enum:
- 4
- 5
Exception:
type: object
additionalProperties: false
properties:
Message:
type: string
InnerException:
$ref: '#/components/schemas/Exception'
Source:
type:
- string
- 'null'
StackTrace:
type:
- string
- 'null'
FlightMoveHistory:
type: object
description: "Defines a flight move history log entry.\n "
additionalProperties: false
properties:
pointOfSale:
description: "The point of sale.\n "
$ref: '#/components/schemas/PointOfSale'
sourcePointOfSale:
description: "The source point of sale.\n "
$ref: '#/components/schemas/PointOfSale'
receivedBy:
type:
- string
- 'null'
description: "The received by name.\n "
maxLength: 64
minLength: 0
receivedByReference:
type:
- string
- 'null'
description: "The received by reference number.\n "
maxLength: 20
minLength: 0
createdDate:
type:
- string
- 'null'
description: "The the history entry was created.\n "
format: date-time
previousMarket:
description: "The previous market designator for the journey the passenger\nwas moved from.\n "
$ref: '#/components/schemas/MarketDesignator'
newMarket:
description: "The new market designator for the journey the passenger\nwas moved to.\n "
$ref: '#/components/schemas/MarketDesignator'
previousIdentifier:
type:
- string
- 'null'
description: "The previous transportation identifier for the journey the passenger\nwas moved from.\n "
newIdentifier:
type:
- string
- 'null'
description: "The new transportation identifier for the journey the passenger\nwas moved to.\n "
changeReason:
description: "The reason for the move operation.\n "
$ref: '#/components/schemas/ChangeReasonCodes'
SeatAssignmentHistory:
type: object
description: "Defines a seat assignment history log entry.\n "
additionalProperties: false
properties:
pointOfSale:
description: "The point of sale.\n "
$ref: '#/components/schemas/PointOfSale'
sourcePointOfSale:
description: "The source point of sale.\n "
$ref: '#/components/schemas/PointOfSale'
receivedBy:
type:
- string
- 'null'
description: "The received by name.\n "
maxLength: 64
minLength: 0
receivedByReference:
type:
- string
- 'null'
description: "The received by reference number.\n "
maxLength: 20
minLength: 0
createdDate:
type:
- string
- 'null'
description: "The the history entry was created.\n "
format: date-time
designator:
description: "The market designator.\n "
$ref: '#/components/schemas/MarketDesignator'
identifier:
type:
- string
- 'null'
description: "The unique transportation identifier.\n "
seatAssignment:
type:
- string
- 'null'
description: "The seat assignment.\n "
compartment:
type:
- string
- 'null'
description: "The compartment containing the seat.\n "
name:
description: "The passenger name.\n "
$ref: '#/components/schemas/Name'
IJsonResponseOfHistoryResponse:
type: object
description: "Defines the JSON response contract.\n "
additionalProperties: false
properties:
data:
description: "The payload data.\n "
$ref: '#/components/schemas/HistoryResponse'
errors:
type:
- array
- 'null'
description: "The collection of errors being thrown.\n "
items:
$ref: '#/components/schemas/ErrorResponse'
messages:
type:
- array
- 'null'
description: "The collection of informational messages.\n "
items:
$ref: '#/components/schemas/Message'
BagTagPrintHistoryRequest:
type: object
description: "Contains information needed to add bag tag print history for a specific passenger.\n "
additionalProperties: false
required:
- legKey
- bagTagInformation
properties:
legKey:
type: string
description: "Leg key where the bag is checked in.\n "
minLength: 1
receivedBy:
type:
- string
- 'null'
description: "Received by.\n "
passengerName:
description: "The name of the passenger.\n "
$ref: '#/components/schemas/Name'
isBagTagSelfPrinted:
type:
- boolean
- 'null'
description: "Whether to make the bag tag status self printed.\n "
bagTagInformation:
type: array
description: "List of bags to add to bag tag print history.\n "
items:
$ref: '#/components/schemas/BagTagInformation'
MessageStatus:
type: integer
description: "Defines the message status.\n \n\n0 = General\n1 = Warning\n2 = Critical"
x-enumNames:
- General
- Warning
- Critical
enum:
- 0
- 1
- 2
SegmentChangeHistoryResponse:
type: object
description: "Defines a segment change history response.\n "
additionalProperties: false
properties:
pageKey:
type:
- string
- 'null'
description: "The key of the last item in the history list.\n "
histories:
type:
- array
- 'null'
description: "The segment change history list.\n "
items:
$ref: '#/components/schemas/SegmentChangeHistory'
MarketDesignator:
type: object
description: "Model information about the date market which identifies a market and the departure date.\n "
additionalProperties: false
required:
- destination
- origin
- departureDate
properties:
destination:
type: string
description: "Gets or sets the leg arrival station.\n "
maxLength: 3
minLength: 0
origin:
type: string
description: "Gets or sets the leg departure station.\n "
maxLength: 3
minLength: 0
departureDate:
type: string
description: "The departure date.\n "
format: date-time
minLength: 1
HistoryCategory:
type: integer
description: "Represents the various history report types.\n \n\n0 = Unknown\n1 = Baggage\n2 = BagTagPrint\n3 = BoardingPassPrint\n4 = CheckIn\n5 = ClassOfServiceChange\n6 = Comment\n7 = ConfirmedSegment\n8 = ContactChange\n9 = Converted\n10 = CouponOverride\n11 = DividePnr\n12 = FareOverride\n13 = Fee\n14 = FlightMove\n15 = GroupNameChange\n16 = Hold\n17 = ItinerarySent\n18 = ManualPayment\n19 = MoveBackPnr\n20 = NameChange\n21 = NameRemove\n22 = Payment\n23 = Pds\n24 = Promotion\n25 = QueuePlaceRemove\n26 = RecordLocator\n27 = ScheduleCancelllation\n28 = ScheduleCodeShareChange\n29 = ScheduleFlightDesignatorChange\n30 = ScheduleTimeChange\n31 = SeatAssignment\n32 = SegmentChange\n33 = Reprice\n34 = SsrChange\n35 = StandByChange\n36 = TicketNumber\n37 = VerifiedTravelDocument\n38 = Apps\n39 = InhibitedOverride\n40 = CustomIdChange\n41 = HoldDateChange\n42 = AddedTravelDocument\n43 = ChangedTravelDocument\n44 = ChangedPayment"
x-enumNames:
- Unknown
- Baggage
- BagTagPrint
- BoardingPassPrint
- CheckIn
- ClassOfServiceChange
- Comment
- ConfirmedSegment
- ContactChange
- Converted
- CouponOverride
- DividePnr
- FareOverride
- Fee
- FlightMove
- GroupNameChange
- Hold
- ItinerarySent
- ManualPayment
- MoveBackPnr
- NameChange
- NameRemove
- Payment
- Pds
- Promotion
- QueuePlaceRemove
- RecordLocator
- ScheduleCancelllation
- ScheduleCodeShareChange
- ScheduleFlightDesignatorChange
- ScheduleTimeChange
- SeatAssignment
- SegmentChange
- Reprice
- SsrChange
- StandByChange
- TicketNumber
- VerifiedTravelDocument
- Apps
- InhibitedOverride
- CustomIdChange
- HoldDateChange
- AddedTravelDocument
- ChangedTravelDocument
- ChangedPayment
enum:
- 0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
SegmentChangeEvent:
type: integer
description: "Represents the different events that trigger an entry into the segment change history.\n \n\n6 = AddedFlight\n7 = DeletedFlight"
x-enumNames:
- AddedFlight
- DeletedFlight
enum:
- 6
- 7
BookingMessageHistory:
type: object
description: "Defines a booking message history log entry.\n "
additionalProperties: false
properties:
type:
description: "The message history type.\n "
$ref: '#/components/schemas/BookingMessageHistoryType'
message:
type:
- string
- 'null'
description: "The message.\n "
createdDate:
type: string
description: "The created date.\n "
format: date-time
IJsonResponseOfFlightMoveHistoryResponse:
type: object
description: "Defines the JSON response contract.\n "
additionalProperties: false
properties:
data:
description: "The payload data.\n "
$ref: '#/components/schemas/FlightMoveHistoryResponse'
errors:
type:
- array
- 'null'
description: "The collection of errors being thrown.\n "
items:
$ref: '#/components/schemas/ErrorResponse'
messages:
type:
- array
- 'null'
descrip
# --- truncated at 32 KB (63 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/tui-group/refs/heads/main/openapi/tui-group-booking-history-api-openapi.yml