微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 amadeus flight create orders API 生成 PNR 问题

如何解决使用 amadeus flight create orders API 生成 PNR 问题

我想使用 amadeus 航班预订 API 创建预订并生成 PNR。 我已按照 3 个步骤创建预订并生成 PNR

  1. 使用 bellow API 的航班优惠搜索 API

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

  1. 使用波纹管 API 的航班优惠价格 API

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

  1. 使用 bellow API 的 Flight Create Orders API

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

当我用一种方式搜索城市并选择特定的报价并输入乘客详细信息时 创建预订并生成 PNR。然后 PNR 将成功生成 我正在使用波纹管 API 来生成 PNR

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

这是我的请求json

  "data": {
    "type": "flight-order","flightOffers": [
      {
        "type": "flight-offer","id": "5","source": "GDS","instantTicketingrequired": false,"nonHomogeneous": false,"paymentCardrequired": false,"lastTicketingDate": "2021-07-23","itineraries": [
          {
            "segments": [
              {
                "departure": {
                  "iataCode": "JFK","terminal": "5","at": "2021-07-30T09:20:00"
                },"arrival": {
                  "iataCode": "FLL","terminal": "3","at": "2021-07-30T12:30:00"
                },"carrierCode": "B6","number": "201","aircraft": {
                  "code": "320"
                },"operating": {
                  "carrierCode": "B6"
                },"duration": "PT3H10M","id": "91","numberOfStops": 0,"co2Emissions": [
                  {
                    "weight": 155,"weightUnit": "KG","cabin": "ECONOMY"
                  }
                ]
              },{
                "departure": {
                  "iataCode": "FLL","at": "2021-07-30T16:25:00"
                },"arrival": {
                  "iataCode": "LAX","at": "2021-07-30T18:49:00"
                },"number": "1301","aircraft": {
                  "code": "32S"
                },"duration": "PT5H24M","id": "92","co2Emissions": [
                  {
                    "weight": 253,"cabin": "ECONOMY"
                  }
                ]
              }
            ],"duration": "PT12H29M"
          }
        ],"price": {
          "currency": "USD","total": "276.20","base": "235.35","fees": [
            {
              "amount": "0.00","type": "supplier"
            },{
              "amount": "0.00","type": "TICKETING"
            },"type": "FORM_OF_PAYMENT"
            }
          ],"grandTotal": "276.20","billingCurrency": "USD"
        },"pricingOptions": {
          "fareType": [
            "PUBLISHED"
          ],"includedCheckedBagsOnly": false
        },"validatingAirlineCodes": [
          "B6"
        ],"travelerPricings": [
          {
            "travelerId": "1","fareOption": "STANDARD","travelerType": "ADULT","price": {
              "currency": "USD","taxes": [
                {
                  "amount": "8.60","code": "ZP"
                },{
                  "amount": "5.60","code": "AY"
                },{
                  "amount": "17.65","code": "US"
                },{
                  "amount": "9.00","code": "XF"
                }
              ],"refundableTaxes": "40.85"
            },"fareDetailsBySegment": [
              {
                "segmentId": "91","cabin": "ECONOMY","fareBasis": "OL7AUEL1","brandedfare": "DN","class": "L","includedCheckedBags": {
                  "quantity": 0
                }
              },{
                "segmentId": "92","fareBasis": "ZI3PUEL1","includedCheckedBags": {
                  "quantity": 0
                }
              }
            ]
          }
        ]
      }
    ],"travelers": [
      {
        "id": 1,"dateOfBirth": "**********","name": {
          "firstName": "**********","lastName": "**********"
        },"gender": "**********"
      }
    ],"contacts": [
      {
        "addresseeName": {
          "firstName": "**********","purpose": "STANDARD","emailAddress": "**********","phones": [
          {
            "deviceType": "MOBILE","countryCallingCode": "**","number": "**********"
          }
        ],"address": {
          "lines": [
            "**********"
          ],"postalCode": "**********","cityName": "**********","countryCode": "**********"
        }
      }
    ],"remarks": {
      "general": [
        {
          "subType": "GENERAL_MISCELLANEOUS","text": "ONLINE BOOKING FROM INCREIBLE VIAJES"
        }
      ]
    },"ticketingAgreement": {
      "option": "DELAY_TO_CANCEL","delay": "6D"
    }
  }
}

这是我的 API 响应。 PNR 生成成功/

stdClass Object
(
    [warnings] => Array
        (
            [0] => stdClass Object
                (
                    [status] => 200
                    [code] => 0
                    [title] => ContactInfoSsrNotAddedToBookingWarning
                    [detail] => Unable to create some contact information SSR. Email and mobile phone number required.
                )

        )

    [data] => stdClass Object
        (
            [type] => flight-order
            [id] => eJzTd9f3cg228PcBAAskAls%3D
            [associatedRecords] => Array
                (
                    [0] => stdClass Object
                        (
                            [reference] => JES8OL
                            [creationDate] => 2021-07-23T10:28:00.000
                            [originSystemCode] => GDS
                            [flightOfferId] => 5
                        )

                )

            [flightOffers] => Array
                (
                    [0] => stdClass Object
                        (
                            [type] => flight-offer
                            [id] => 5
                            [source] => GDS
                            [nonHomogeneous] => 
                            [lastTicketingDate] => 2021-07-23
                            [itineraries] => Array
                        

但是当我搜索不同的城市并遵循相同的步骤时。 这是我的请求 json

 data": {
    "type": "flight-order","id": "3","lastTicketingDate": "2021-07-28","itineraries": [
          {
            "segments": [
              {
                "departure": {
                  "iataCode": "DEL","at": "2021-08-05T05:35:00"
                },"arrival": {
                  "iataCode": "BLR","at": "2021-08-05T08:20:00"
                },"carrierCode": "AI","number": "803","aircraft": {
                  "code": "32B"
                },"operating": {
                  "carrierCode": "AI"
                },"duration": "PT2H45M","id": "17","co2Emissions": [
                  {
                    "weight": 145,"duration": "PT2H45M"
          },{
            "segments": [
              {
                "departure": {
                  "iataCode": "BLR","at": "2021-08-10T17:10:00"
                },"arrival": {
                  "iataCode": "DEL","at": "2021-08-10T19:55:00"
                },"number": "501","id": "42","duration": "PT2H45M"
          }
        ],"total": "88.59","base": "68.00","grandTotal": "88.59","includedCheckedBagsOnly": true
        },"validatingAirlineCodes": [
          "AI"
        ],"taxes": [
                {
                  "amount": "6.34","code": "P2"
                },{
                  "amount": "3.78","code": "IN"
                },{
                  "amount": "3.63","code": "K3"
                },{
                  "amount": "2.28","code": "WO"
                },{
                  "amount": "4.56","code": "YR"
                }
              ],"refundableTaxes": "17.19"
            },"fareDetailsBySegment": [
              {
                "segmentId": "17","fareBasis": "SAP8","class": "S","includedCheckedBags": {
                  "weight": 25,"weightUnit": "KG"
                }
              },{
                "segmentId": "42","weightUnit": "KG"
                }
              }
            ]
          }
        ]
      }
    ],"phones": [
          {
            "deviceType": "**********","delay": "6D"
    }
  }

这是我的 API 响应。

stdClass Object
(
    [errors] => Array
        (
            [0] => stdClass Object
                (
                    [status] => 400
                    [code] => 34651
                    [title] => SEGMENT SELL FAILURE
                    [detail] => Could not sell segment 2
                    [source] => stdClass Object
                        (
                            [pointer] => /data/flightOffers[0]/itineraries[1]/segments[0]
                        )

                )

        )

)

你能指导我是什么问题吗。我正在使用 amadeus 测试 API 凭证。同时指导我如何解决问题 谢谢

解决方法

当您尝试预订不再可用的座位时,通常会出现此错误。您正在使用测试环境,这意味着在测试中使用 Amadeus for Developers 的其他所有人都可以尝试预订相同的座位。

尝试其他航班,不要忘记在预订前执行航班优惠价格。

PS:我在上面的例子中看到了一些个人数据,你应该编辑你的帖子来删除它。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。