omnistay / amadeus
Omnistay's Amadeus, under any PHP host: hotels through Amadeus' hotel APIs - a city's or a point's hotels (Hotel List), their offers for a stay priced night by night with taxes and cancellation policy (Hotel Search), an offer re-priced before booking, a booking guaranteed by a card (Hotel Booking) -
Requires
- php: >=8.2
- omnisense/omnistay: ^1.0@dev
- symfony/http-client: ^6.4|^7.0|^8.0
Requires (Dev)
- phpstan/phpstan: ^2.1
- phpunit/phpunit: ^11.0
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is not auto-updated.
Last update: 2026-11-10 01:39:36 UTC
README
Omnistay's provider for hotels through Amadeus' hotel APIs, under any PHP host:
- Hotel List - a city's hotels (
cityCode) or a point's (latitude,longitude), with up to three amenities as a filter; a hotel's name, point, chain and city code (ContentInterface); - Hotel Search - the offers of up to twenty hotels for a stay, priced night by night with their
taxes, board, payment terms and cancellation policy (
SearchInterface,AvailabilityInterface), and an offer re-priced just before booking (offer()); - Hotel Booking - a booking guaranteed or paid by a card (
BookInterface).
$registry = new Omnistay\Registry([new Omnistay\Amadeus\AmadeusFactory($http)], [ 'hotels' => ['factory' => 'amadeus', 'options' => [ 'client_id' => getenv('AMADEUS_CLIENT_ID'), 'client_secret' => getenv('AMADEUS_CLIENT_SECRET'), // 'environment' => 'production', // the test environment by default: nothing booked is real ]], ]); $registry->search('hotels')->search(new StayQuery(Stay::of('2026-12-18', '2026-12-21'), new Guests(2), cityCode: 'NCE'));
Not offered by those APIs: a search by text, a property's calendar, cancelling or reading an
order again (booking() answers null). Amadeus closed its Self-Service portal on 2026-07-17; the
same APIs are offered under its Enterprise contracts (host option). See
docs/index.md. License: MIT.