AutoPrice / Manual Fare API Reference
|
POST |
book/airoffer/reservationworkbench/{workbenchID}/offers/buildfromunpricedsegments For {workbenchID} send the workbench identifier returned in ReservationResponse/Identifer/value in the workbench create response. Base path: Pre-production https://api.pp.travelport.net/11/air/ Production https://api.travelport.net/11/air/ Travelport has updated all JSON API authentication and authorization endpoints. The previous production endpoints will be deprecated 30 Jan 2026. Pre-production endpoints were deprecated 5 Dec 2025. See Endpoint Migration for details.
|
Related Content: Booking Guide
Use the AutoPrice/Manual Fare API to price unpriced segments. Unpriced segments can be booked or added to an existing booking with the Unpriced Segment API. Unpriced segments are also created when the filed fare is removed from an offer with the Cancel Workbench Items API.
The AutoPrice/Manual Fare API can either:
-
auto-price one or more unpriced segments
-
manually build a fare for one or more unpriced segments using fare and pricing details from the airline or another source
Each scenario uses its own request payload.
See Unpriced Segments and AutoPrice/Manual Fares in the Booking Guide for workflow and support details on both options.
Request
As part of the request requirements, also see Authentication and Common Air Headers.
Query Parameters
None.
Request Body to Auto-price Unpriced Segment
Use the following payload to auto-price unpriced segments.
|
Object |
Description |
Required/Optional |
|---|---|---|
|
OfferQueryBuildFromUnpricedSegments |
Top level object. |
Required |
|
BuildfromUnpricedSegments |
Send with @type BuildFromUnpricedSegmentsAutoPrice. See the AirPrice Full Payload API for details on the following optional indicators:
|
Required |
|
UnpricedFlightSegmentCriteria |
Top level object. |
Required |
|
Sequence |
Number. Send the sequence of this segment in the itinerary. |
Required |
|
TravelerRefs |
Array. Send the traveler reference IDs for this segment. |
Required |
|
PricingModifiersAir |
Send currency details. |
Required |
|
Send the currency code of the currency for pricing. |
|
|
CustomReponseModifiersAir |
Send empty object with @type CustomResponseModifiersAir. |
Required |
|
PaymentCriteria |
Send empty object with @type PaymentCriteria. |
Required |
|
CabinPreference |
Send standard CabinPreference object. |
Optional |
|
String. The type of cabin preference. Supported values are (no default):
|
Required if CabinPreference sent |
|
String. A space-delimited list of cabins. Supported values are (no default):
|
Required if CabinPreference sent |
|
Number. The sequence number of the leg to which this preference applies. |
Required if CabinPreference sent |
Request Body to Build Manual Fare
Use the following payload to build a manual fare for unpriced segments. Data and objects included here vary depending on the fare built, but at a minimum must include all of the following:
-
fare basis code
-
currency and fare
-
IATA ROE
-
taxes
-
total price including base price and taxes
-
fare calculation line
Optional data can include the following:
-
ticket designator
-
not valid after/not valid before
-
equivalent fare
-
stopover
-
tax exempt
-
endorsement (note that returning endorsements in the Reservation Retrieve requires requesting the detailed view)
-
baggage allowance
|
Object |
Description |
Required/Optional |
|---|---|---|
|
OfferQueryBuildFromUnpricedSegments |
Top level object. |
Required |
|
BuildfromUnpricedSegments |
Top level object. Send with @type OfferQueryBuildFromUnpricedSegments. Includes UnpricedFlightSegmentCriteria and ManualPrice. |
Required |
|
UnpricedFlightSegmentCriteria |
|
Required |
|
UnpricedFlightSegmentRefs |
|
Required |
|
Sequence |
Number. Send sequence of the leg to which this fare applies. |
Required |
|
TravelerRefs |
Standard TravelerRefs object. Array. Send traveler ref ids for all travelers on this fare. |
Required |
|
ManualPrice |
Top level object to build the manual fare. |
Required |
|
String. Custom id for this manual fare. |
Required |
|
ContentSource |
String. Identifies content source. Send with value GDS. |
Required |
|
PassengerFlight |
Array. Send PTC and class/fare information. See the AirPrice Reference Payload API Reference response section for details, and refer to schema for full details. Data and objects included here vary depending on the fare built; see note above for required and optional data. |
Required |
|
PriceDetail |
Send price details for the manual fare in the standard Price object. See the AirPrice Reference Payload API Reference Price object table for details, and refer to schema for full details. Data and objects included here vary depending on the fare built; see note above for required and optional data. |
Required |
Response
|
Object |
Description |
|---|---|
|
OfferListResponse |
Top level object for response. |
|
Result |
Messages about the operation status. Key value pairs:
|
Example Request
{
"OfferQueryBuildFromUnpricedSegments": {
"@type": "OfferQueryBuildFromUnpricedSegments",
"BuildFromUnpricedSegments": [
{
"@type": "BuildFromUnpricedSegmentsAutoPrice",
"inhibitBrandContentInd": true,
"lowFareFinderInd": true,
"validateInventoryInd": true,
"lowFareFindAndRebookInd": true,
"UnpricedFlightSegmentCriteria": [
{
"@type": "UnpricedFlightSegmentCriteria",
"UnpricedFlightSegmentRefs": [
"unPricedFlightSegment_1"
],
"Sequence": 1,
"TravelerRefs": [
"travelerRefId_1"
]
}
],
"PricingModifiersAir": {
"@type": "PricingModifiersAir",
"currencyCode": "AUD"
},
"CustomResponseModifiersAir": {
"@type": "CustomResponseModifiersAir"
},
"PaymentCriteria": {
"@type": "PaymentCriteria"
},
"CabinPreference": [
{
"@type": "CabinPreference",
"preferenceType": "Preferred",
"cabins": [
"Business"
],
"legSequence": [
1
]
}
],
}
]
}
}
{
"OfferQueryBuildFromUnpricedSegments": {
"@type": "OfferQueryBuildFromUnpricedSegments",
"BuildFromUnpricedSegments": [
{
"@type": "BuildFromUnpricedSegmentsManualPrice",
"UnpricedFlightSegmentCriteria": [
{
"@type": "UnpricedFlightSegmentCriteria",
"UnpricedFlightSegmentRefs": [
"unPricedFlightSegment_1"
],
"Sequence": 1,
"TravelerRefs": [
"travelerRefId_1"
]
}
],
"ManualPrice": {
"@type": "ManualPrice",
"id": "manualoffer_1",
"ContentSource": "GDS",
"PassengerFlight": [
{
"@type": "PassengerFlight",
"passengerQuantity": 1,
"passengerTypeCode": "ADT",
"FlightProduct": [
{
"@type": "FlightProduct",
"segmentSequence": [
1
],
"classOfService": "Y",
"cabin": "Economy",
"fareBasisCode": "YEE1Y"
},
{
"@type": "FlightProduct",
"segmentSequence": [
2
],
"classOfService": "B",
"cabin": "Economy",
"fareBasisCode": "BEE1Y"
}
]
}
],
"PriceDetail": {
"@type": "PriceDetail",
"id": "price_1",
"CurrencyCode": {
"value": "AUD",
"decimalPlace": 2
},
"Base": 650,
"TotalTaxes": 70,
"TotalPrice": 720,
"PriceBreakdown": [
{
"@type": "PriceBreakdownAir",
"quantity": 1,
"requestedPassengerType": "ADT",
"Amount": {
"@type": "Amount",
"CurrencyCode": {
"value": "AUD",
"decimalPlace": 2
},
"Base": 250,
"Total": 280,
"Taxes": {
"@type": "TaxesDetail",
"TotalTaxes": 30,
"Tax": [
{
"value": 20,
"currencyCode": "AUD",
"taxCode": "GB"
}
]
}
},
"TravelerRefs": [
"travelerRefId_1"
],
"FareCalculation": "LON BA AMS R125.00YEE1Y BA LHR R125.00BEE1Y NUC250.00END ROE0.787855"
}
]
}
}
}
]
}
}
Example Response
{
"OfferListResponse": {
"Result": {
"@type": "Result",
"status": "Complete"
}
}
}