Home > Net >  Amadeus flights API error: carrier code is a 2 or 3 alphanum except YY and YYY
Amadeus flights API error: carrier code is a 2 or 3 alphanum except YY and YYY

Time:05-31

I am using the following SDK to search for and purchase flights via Amadeus:

https://github.com/autotune/amadeus/pull/1/files

This was a previously abandoned project I have decided to take on and make work. As part of that project I am trying to purchase a ticket in the sandbox environment and getting the following error:

{
  "errors": [
    {
      "code": 477,
      "title": "INVALID FORMAT",
      "detail": "carrier code is a 2 or 3 alphanum except YY and YYY",
      "source": {
        "pointer": "/data/flightOffers[0]/itineraries[1]/segments[0]/operating/carrierCode",
        "example": "AF"
      },
      "status": 400
    }
  ]
}

Here is the json data being sent:

{
  "type": "flight-order",
  "travelers": [
    {
      "id": "1",
      "dateOfBirth": "1990-02-15",
      "name": {
        "firstName": "Foo",
        "lastName": "Bar"
      },
      "gender": "MALE",
      "contact": {
        "emailAddress": "[email protected]",
        "phones": [
          {
            "deviceType": "MOBILE",
            "countryCallingCode": "33",
            "number": "5555555555"
          }
        ]
      }
    }
  ],
  "ticketingAgreement": {
    "option": "DELAY_TO_CANCEL",
    "delay": "6D"
  },
  "remarks": {},
  "operating": {
    "carrierCode": "UA"
  }
}

Any help appreciated!

CodePudding user response:

The error suggests that the sent payload is invalid. I'd advice you use a tool like Curl or Postman to verify you're using the right API documentation, before debugging actual code.

CodePudding user response:

After further reading your PR and checking the API reference at :

https://developers.amadeus.com/self-service/category/air/api-doc/flight-create-orders/api-reference

I think you need to confirm that the Carrier code being passed is available in the segments under:

flightOffers > itineraries > segments

Although the API reference doesn't have operating > carrierCode like you used in the data sent, my guess after seeing the API error response you shared is that they are performing a check against the flight offers passed.

I suggest you check the results gotten when you call the flightOffers and also add it to the payload sent to the sandbox.

  • Related