Skip to content

Latest commit

 

History

History
146 lines (117 loc) · 4.12 KB

ndc.rst

File metadata and controls

146 lines (117 loc) · 4.12 KB

Samples for NDC methods (Travel_*)

use Amadeus\Client\RequestOptions\Travel as RequestOptions;
use Amadeus\Client\RequestOptions\TravelOfferPriceOptions;

$opt = new TravelOfferPriceOptions([
    'dataLists' => [
        new RequestOptions\DataList([
            'paxList' => new RequestOptions\PaxList([
                'pax' => [
                    new RequestOptions\Pax([
                        'paxId' => 'T1',
                        'ptc' => 'ADT',
                    ])
                ],
            ]),
        ]),
    ],
    'pricedOffer' => new RequestOptions\PricedOffer([
        'selectedOffer' => new RequestOptions\SelectedOffer([
            'offerRefID' => 'OfferRef1',
            'ownerCode' => 'AA',
            'shoppingResponseRefID' => 'ShopRef1',
            'selectedOfferItems' => [
                new RequestOptions\SelectedOfferItem([
                    'offerItemRefId' => 'ItemRef1',
                    'paxRefId' => [
                        'T1',
                    ],
                ]),
            ],
        ]),
    ]),
]);

$response = $client->travelOfferPrice($opt);

Very similar to Travel_OfferPrice but with small differences:

use Amadeus\Client\RequestOptions\Travel as RequestOptions;
use Amadeus\Client\RequestOptions\TravelOfferPriceOptions;

$opt = new TravelOrderCreateOptions([
    'dataLists' => [
        new RequestOptions\DataList([
            'paxList' => new RequestOptions\PaxList([
                'pax' => [
                  new RequestOptions\Pax([
                      'paxId' => 'T1',
                      'ptc' => 'ADT',
                      'dob' => new \DateTime('1990-01-01'),
                      'genderCode' => 'M',
                      'firstName' => 'John',
                      'lastName' => 'Doe',
                      'phoneNumber' => '5552225555',
                      'email' => '[email protected]',
                      'passengerContactRefused' => true,
                  ])
                ],
            ]),
        ]),
    ],
    'pricedOffer' => new RequestOptions\PricedOffer([
        'selectedOffer' => new RequestOptions\SelectedOffer([
            'offerRefID' => 'OfferRef1',
            'ownerCode' => 'AA',
            'shoppingResponseRefID' => 'ShopRef1',
            'selectedOfferItems' => [
                new RequestOptions\SelectedOfferItem([
                    'offerItemRefId' => 'ItemRef1',
                    'paxRefId' => [
                        'T1',
                    ],
                ]),
            ],
        ]),
    ]),
]);

$response = $client->travelOrderCreate($opt);
use Amadeus\Client\RequestOptions\TravelOrderRetrieveOptions;

$opt = new TravelOrderRetrieveOptions([
    'orderId' => 'AA12345',
    'ownerCode' => 'AA',
]);

$response = $client->travelOrderRetrieve($opt);
use Amadeus\Client\RequestOptions\TravelOrderPayOptions;

$opt = new TravelOrderPayOptions([
    'orderId' => 'AA12345',
    'ownerCode' => 'AA',
    'amount' => 249.45,
    'currencyCode' => 'USD',
    'type' => TravelOrderPayOptions::PAYMENT_TYPE_CASH,
]);

$response = $client->travelOrderPay($opt);
use Amadeus\Client\RequestOptions\TravelOrderCancelOptions;

$opt = new TravelOrderCancelOptions([
    'orderId' => 'AA12345',
    'ownerCode' => 'AA',
]);

$response = $client->travelOrderCancel($opt);