# https://developer.sabre.com/docs/rest_apis/air/utility/city_pairs_lookup --- swagger: '2.0' info: title: City Pairs Lookup version: v1 description: The City Pairs Lookup API returns a list of the city pairs supported by REST Air Shopping APIs. City pairs are combinations of origin and destination airport codes. contact: name: Contact Us url: 'https://developer.sabre.com/support' host: api.cert.platform.sabre.com basePath: / schemes: - https consumes: - application/json produces: - application/json paths: /v1/lists/supported/shop/flights/origins-destinations: get: operationId: shopFlightsByOriginsDestinations description: All other air shopping REST APIs city pairs. parameters: - name: pointofsalecountry type: string in: query required: false default: US description: | 2-letter ISO 3166 country code. Retrieves data specific to a given point of sale country. Only one value is accepted. - name: origincountry type: string in: query required: false default: US description: | 2-letter ISO 3166 country code. Retrieves supported city pairs with origins located in this specified country. Only one value is accepted. - name: destinationcountry type: string in: query required: false x-example: MX description: | 2-letter ISO 3166 country code. Retrieves supported city pairs with destinations located in this specified country. Only one value is accepted. Default: All destination countries. - name: originregion type: string in: query required: false description: | Retrieves city pairs with origins based in this region. Only one value is accepted. enum: - Africa - Asia Pacific - Europe - Latin America - Middle East - North America - name: destinationregion type: string in: query required: false description: | Retrieves city pairs with destinations based in this region. Only one value is accepted. enum: - Africa - Asia Pacific - Europe - Latin America - Middle East - North America - name: triptype type: string in: query required: false default: Return enum: - OneWay - Return description: | Type of trip. By default, the 'Return' value is assumed. Only one value is accepted. responses: '200': schema: $ref: '#/definitions/ShopCityPairLookupResponse' description: Success '400': description: | Bad Request - Parameter 'origincountry' must be country code. - Parameter 'destinationcountry' must be country code. - Parameter 'destinationregion' must be one of '{Africa,Asia Pacific,Europe,Latin America,Middle East,North America}'. - Parameter 'originregion' must be one of '{Africa,Asia Pacific,Europe,Latin America,Middle East,North America}'. - Parameter 'pointofsalecountry' has an unsupported value. - Parameter 'triptype' must be of type 'triptype'. '404': description: | Not Found The service cannot find data to fulfill the request using the filters that you applied. '413': description: | Full Head - The API returns this error when a request URI is too long. - For example, the HTTP request's query string exceeds the server limit. The response will be empty as a result. - Please consider reducing the number of request parameters in the URI or separating parameters into multiple HTTP requests. /v1/lists/supported/historical/flights/origins-destinations: get: operationId: historicalFlightsByOriginsDestinations description: Fare Range API supported city pairs. parameters: - name: origincountry type: string in: query required: false default: US description: | 2-letter ISO 3166 country code. Retrieves supported city pairs with origins located in this specified country. Only one value is accepted. - name: destinationcountry type: string in: query required: false x-example: MX description: | 2-letter ISO 3166 country code. Retrieves supported city pairs with destinations located in this specified country. Only one value is accepted. - name: originregion type: string in: query required: false description: | Retrieves city pairs with origins based in this region. Only one value is accepted. enum: - Africa - Asia Pacific - Europe - Latin America - Middle East - North America - name: destinationregion type: string in: query required: false description: | Retrieves city pairs with destinations based in this region. Only one value is accepted. enum: - Africa - Asia Pacific - Europe - Latin America - Middle East - North America responses: '200': schema: $ref: '#/definitions/HistoricalCityPairLookupResponse' description: Success '400': description: | Bad Request - Parameter 'origincountry' must be country code. - Parameter 'destinationcountry' must be country code. - Parameter 'destinationregion' must be one of '{Africa,Asia Pacific,Europe,Latin America,Middle East,North America}'. - Parameter 'originregion' must be one of '{Africa,Asia Pacific,Europe,Latin America,Middle East,North America}'. '404': description: | Not Found The service cannot find data to fulfill the request using the filters that you applied. '413': description: | Full Head - The API returns this error when a request URI is too long. - For example, the HTTP request's query string exceeds the server limit. The response will be empty as a result. - Please consider reducing the number of request parameters in the URI or separating parameters into multiple HTTP requests. /v1/lists/supported/forecast/flights/origins-destinations: get: operationId: forecastFlightsByOriginsDestinations description: Low Fare Forecast API supported city pairs. parameters: - name: origincountry type: string in: query required: false default: US description: | 2-letter ISO 3166 country code. Retrieves supported city pairs with origins located in this specified country. Only one value is accepted. - name: destinationcountry type: string in: query required: false x-example: MX description: | 2-letter ISO 3166 country code. Retrieves supported city pairs with destinations located in this specified country. Only one value is accepted. - name: originregion type: string in: query required: false description: | Retrieves city pairs with origins based in this region. Only one value is accepted. enum: - Africa - Asia Pacific - Europe - Latin America - Middle East - North America - name: destinationregion type: string in: query description: | Retrieves city pairs with destinations based in this region. Only one value is accepted. enum: - Africa - Asia Pacific - Europe - Latin America - Middle East - North America responses: '200': schema: $ref: '#/definitions/ForecastCityPairLookupResponse' description: Success '400': description: | Bad Request - Parameter 'origincountry' must be country code. - Parameter 'destinationcountry' must be country code. - Parameter 'destinationregion' must be one of '{Africa,Asia Pacific,Europe,Latin America,Middle East,North America}'. - Parameter 'originregion' must be one of '{Africa,Asia Pacific,Europe,Latin America,Middle East,North America}'. '404': description: | Not Found - The service cannot find data to fulfill the request using the filters that you applied. '413': description: | Full Head - The API returns this error when a request URI is too long. - For example, the HTTP request's query string exceeds the server limit. The response will be empty as a result. - Please consider reducing the number of request parameters in the URI or separating parameters into multiple HTTP requests. definitions: ShopCityPairLookupResponse: allOf: - $ref: '#/definitions/CityPairLookupWithTripTypeResponse' properties: Links: items: properties: rel: enum: - self - linkTemplate href: example: 'https://api.cert.platform.sabre.com/v1/lists/supported/shop/flights/origins-destinations?destinationcountry=AR&triptype=Return' HistoricalCityPairLookupResponse: allOf: - $ref: '#/definitions/CityPairLookupResponse' properties: Links: items: properties: rel: enum: - self - linkTemplate href: example: 'https://api.cert.platform.sabre.com/v1/lists/supported/historical/flights/origins-destinations?destinationcountry=AR' ForecastCityPairLookupResponse: allOf: - $ref: '#/definitions/CityPairLookupResponse' properties: Links: items: properties: rel: enum: - self - linkTemplate href: example: 'https://api.cert.platform.sabre.com/v1/lists/supported/forecast/flights/origins-destinations?destinationcountry=AR' CityPairLookupWithTripTypeResponse: discriminator: type type: object description: Contains trip type information within the response. properties: OriginDestinationLocations: type: array items: $ref: '#/definitions/OriginDestinationLocationWithTripType' Links: allOf: - $ref: '#/definitions/CommonLinks' CityPairLookupResponse: discriminator: type type: object properties: OriginDestinationLocations: type: array items: $ref: '#/definitions/OriginDestinationLocation' Links: allOf: - $ref: '#/definitions/CommonLinks' OriginDestinationLocation: type: object description: Contains location information regarding the origin and destination airports. properties: OriginDestinationLocations: type: string example: JFK-EZE description: Contains the 3-letter IATA airport code of both the origin airport and destination airport, separated by a dash. OriginLocation: type: object description: Contains location information regarding the origin airport. properties: AirportCode: type: string example: JFK description: 3-letter IATA airport code. AirportName: type: string example: John F. Kennedy International Airport description: The name of the airport that corresponds to the airport code. CityName: type: string example: New York description: The city name that corresponds to the 3-letter IATA airport code in `AirportCode`. CountryCode: type: string example: US description: The 2-letter ISO 3166 country code that corresponds to the airport code. CountryName: type: string example: United States description: The name of the country that corresponds to `CountryCode`. RegionName: type: string example: North America description: The name of the region that is assigned to the country. DestinationLocation: type: object description: Contains location information regarding the destination airport. properties: AirportCode: type: string example: EZE description: 3-letter IATA airport code. AirportName: type: string example: Ministro Pistarini description: The name of the airport that corresponds to the airport code. CityName: type: string example: Buenos Aires description: The city name that corresponds to the 3-letter IATA airport code in `AirportCode`. CountryCode: type: string example: AR description: The 2-letter ISO 3166 country code that corresponds to the airport code. CountryName: type: string example: Argentina description: The name of the country that corresponds to `CountryCode`. RegionName: type: string example: Latin America description: The name of the region that is assigned to the country. OriginDestinationLocationWithTripType: allOf: - $ref: '#/definitions/OriginDestinationLocation' - type: object required: - TripType properties: TripType: type: string enum: - Return - OneWay description: Type of trip. CommonLinks: discriminator: type type: array description: 'Array of links for different types of relations, e.g. self, linkTemplate, shop' items: type: object properties: rel: type: string enum: - self - shop - forecast - airportsInCity - airlineInfo - destinations - view - nextResults - prevResults - linkTemplate - shopTemplate - tagLookupLinkTemplate - paginatedRequestLinkTemplate example: self description: Describes relationship between href and current request. href: type: string example: 'https://api.cert.platform.sabre.com/v1/lists/utilities/airlines?airlinecode=AI' description: Link to related API request. securityDefinitions: oauth2_authentication: type: oauth2 tokenUrl: 'https://api.cert.platform.sabre.com/v2/auth/token' flow: application x-base64-encode-client-credentials: true security: - oauth2_authentication: []