Amadeus API Integration: Practice Guide on Getting the GDS Content
What differentiates a travel professional from an occasional traveler? The latter thinks that the word Amadeus relates to Mozart’s music. The former would insist that Amadeus plays the first fiddle but in travel tech.
Amadeus, a Madrid-based travel giant, grows its business around two areas — the global distribution system (GDS) and IT solutions for automating travel processes. In this article, we’ll focus on the GDS part that serves as a mediator between travel providers and travel vendors.
AltexSoft has broad hands-on experience implementing GDS APIs. Previously, we shared our lessons learned from Sabre API integrations. Now, let’s switch to Sabre’s key rival and the peculiarities you’ll inevitably face when dealing with the Amadeus platform.
What is Amadeus GDS?
Amadeus GDS is a global distribution system with a market share above 40 percent. Created in 1987 by Air France, Iberia, Lufthansa, and SAS as a European alternative to the American Sabre GDS, it now services travel businesses in 190 countries.
Among Amadeus’s clients are online travel agencies (OTAs), travel management companies (TMCs), host travel agencies, air consolidators, and other digital travel sellers. They can search, compare, and book inventory via a set of application programming interfaces (APIs) — namely
- flight booking APIs that give access to deals from over 400 airlines including 130 low-cost carriers, ancillary services from 150 airlines, and fare families from more than 100 airlines;
- hotel booking APIs connecting to over a million properties from 150,000 providers;
- tours and activities APIs with information from 101 tour operators;
- car rental APIs linking with 75 mobility providers that cover around 1800 cities across the globe;
- rail booking APIs with content from 90 rail operators;
- travel insurance APIs for booking and shopping from 22 insurance companies; and
- other travel APIs.
Amadeus was the first GDS to allow their content to be reached via APIs back in 2000. Watch our video if you need information on what an API is and why this technology is so important.
API explained in 7 minutes.
Now, all Amadeus APIs for web and mobile applications fall into two large groups — Self-Service and Enterprise. The AltexSoft team worked with both types. Below, we’ll discuss their qualities and what it takes to integrate them into your project.
How Amadeus Self-Service APIs differ from Enterprise APIs.
Self-Service APIs: an easy way to launch a small travel project
The Amadeus Self-Service APIs rely on modern REST architectural style and JSON format for data exchange. They were introduced quite recently as an easy and inexpensive way for businesses without travel agency certifications to tap into GDS technologies and quickly launch travel startups.
The number of REST APIs by Amadeus is constantly growing, so now they can power flight, hotel, and tour booking engines and help you create apps for planning and buying trips. Watch our video to get a grip on how booking engines work.
What is a booking engine?
The Self-Service API catalog: content and functionality
As of 2022, the Self-Service suite consists of 37 APIs divided into five categories.
Air APIs allow you to automate the flight booking process, incorporate seat selection, find the cheapest flight destinations from a given city to inspire travelers, and more. Also, you can integrate advanced features — such as airport autocomplete search, insights into local travel habits (most booked destinations or the busiest traveling period), or flight price analysis based on Amadeus historical data.
Hotel APIs cover the hotel booking flow, enrich your search results with hotel ratings, and perform search autocomplete.
Destination content APIs return information about the best attractions, tours, and activities available in a given location. Also, you can get popularity scores for a particular latitude and longitude. Destinations are evaluated by four parameters: sightseeing, restaurants, nightlife, and shopping.
COVID and Travel Safety APIs let you fetch detailed safety data for 40,000 cities and COVID-19 travel restrictions for 200 countries. Recently, Trip.com, a fast-growing travel planning platform, implemented Amadeus safety content to provide their customers with critical information on airport entry policies, testing requirements, quarantines, and more.
How to build integrations with Self-Service APIs
Amadeus provides engineers with the test environment, code samples, and SDKs that simplify API embedding. Look through the official GitHub repository to find libraries that will help you implement APIs in Ruby, Python, Java, Node.js, .NET, Kotlin (Android development), and Swift (iOS development).
No matter the language, you can test and finetune your integrations on the limited data collection using a fixed number of free API calls that Amadeus grants you each month. The free quota ranges from 200 to 10,000 requests depending on the API, which are supposed to be sufficient for testing purposes. The system allows your app to perform one call per 100 milliseconds.
“The best thing about some Self-Service APIs is that, under the hood, they make several transactions to respond to a single request,” explains Ivan Mosiev, Solution Architect at AltexSoft who dealt with Amadeus APIs on many travel projects. “Amadeus hides this complexity from developers saving them time and making their work much easier. For example, you need to integrate only one endpoint instead of three or four to finalize the booking.”
Besides that, Amadeus provides convenient pre-built booking pipelines for flights and hotels. Each of them consists of three consequent calls
- Search (returns flight offers/list of available hotels);
- Price (confirms the availability and price of the selected flight/finds prices and conditions for hotels); and
- Book (creates a flight order/reservation in the hotel property management system).
Detailed API flow for flight booking. Source: Amadeus for Developers.
Within this flow, a developer deals with the same object (request) updating it with new details at each step. “You don’t need to change or shift any fields in the object,” says Ivan Mosiev. “You just receive the response from the first API, add a bit of information and send it to the next endpoint. This simplifies development since you don’t have to create each request from the ground up.”
How to move an app to production
Once your app is ready to go live, you can move it to the production environment where your project will take advantage of real data and unlimited calls.
This transition consists of two steps:
- Request for a production key. You’ll have to fill in a form with personal and billing information, select a preferred payment method, and sign the Term of Service agreement via DocuSign.
- Validation and personal environment creation. It takes the Amadeus team up to 72 hours to validate your first app and create a personal environment. For all the next apps, this process will take just a few hours. If everything goes well, you’ll receive a notification about granting you production access.
This flow is standard for all Self-Service products except for Flight Create Orders API which completes the air booking flow. To use it in production, you must accept Amadeus’s terms and conditions, comply with the local regulations, and ensure that the API is available in your region. But most importantly, you need to sign an agreement with an airline consolidator.
What an airline consolidator has to do with a flight booking app
You can’t issue flight tickets without accreditation from the Airline Reporting Corporation (ARC) in the US or the International Air Transport Association (IATA) in the rest of the world. Learn about the certification process in detail from our articles on ARC Accreditation Options and How to Get IATA Accreditation.
Long story short, small travel agencies and newcomers typically lack the resources to be licensed by IATA or ARC. The regular solution to this issue is striking a deal with a host agency or an airline consolidator who will do the ticketing for a commission. Amadeus helps find the middleman for those who don’t know where to start. If you already have an IATA/ARC-accredited partner, it must be approved by the GDS.
Where to get help
At the same time, the GDS doesn’t provide phone or live chat support for the Self-Service API catalog. If you need a helping hand, get in touch with their Developer Relations team via the contact form. But they don’t promise a quick answer.
You can also look for assistance from the Amadeus for Developers community on Discord and StackOverflow, which currently houses more than 300 technical questions about Amadeus API integrations (nearly half of them remain unanswered, though). Another opportunity is to ask your questions on our travel tech forum Techtalks.
With the Self-Service subscription, you develop your app for free. When going live, you preserve the same quota of free calls as in the test environment. But on exceeding this limit, the system will automatically charge a fee for each transaction (from 0.0008 to 0.025 euro/ $0.00078 to 0.024 depending on the API.)
Test and production terms of Amadeus Self-Service subscription compared.
The pay-as-you-go model works well for companies with a small number of clients. But as your business grows and attracts more travelers, the Self-Service price terms stop being advantageous. Besides that, you may want to augment your app with features unavailable via REST APIs. These factors induce companies to consider Enterprise APIs.
Enterprise APIs: a full-fledged service for large travel businesses
AltexSoft began working with Amadeus when the democratic Self-Service catalog didn’t exist yet. Only big travel players certified by ARC or IATA could access the GDS content via rather old SOAP APIs designed in 1998.
Today, Amadeus is gradually moving from SOAP to REST, yet, this process is far from over. So, to access the lion’s share of features, you still have to use SOAP and be large enough to afford the Enterprise subscription. Besides more extensive functionality, enterprise clients take advantage of customized pricing, 24/7 technical support, and a dedicated manager to solve their problems.
The Enterprise API catalog: content and functionality
The modern Enterprise catalog includes about 200 APIs, both SOAP and REST — the ones small agencies can integrate via the Self-Service proposition. Crucial capabilities provided by this subscription and unavailable through Self-Service are as follows.
Ticketing services at booking time. As we’ve explained before, the Self-Service tier caters to businesses without travel accreditations. They aren’t authorized to perform airline ticketing and have to partner with a consolidator to sell flights. In turn, the enterprise clients have the required credentials to issue and manage e-tickets and Amadeus provides them with technical means to automate all aspects of this process.
Booking management. This set of REST and SOAP APIs enables you to create flight and ancillary bookings and manage a Personal Name Record or PNR — search, retrieve, and display it; modify, add, and cancel PNR elements; and more. Watch our video to dive deeper into the meaning and purposes of a PNR.
Also, only the Enterprise subscription allows you to book flights operated by low-cost carriers and access New Distribution Capability (NDC) content. Just for reference, NDC is an XML-based communication format designed by IATA to let travel providers deliver detailed offers and information about ancillaries to their customers.
Currently, the GDS sources NDC content from more than 20 airlines including American Airlines, United Airlines, British Airways, Air France-KLM, Lufthansa, Singapore Airlines, and others. To learn more about NDC, watch our dedicated video.
How New Distribution Capability works.
How to build integrations with Enterprise APIs
Unlike the Self-Service subscription that allows you to access GDS APIs almost instantly without any preconditions, the Enterprise level requires you to meet certain standards (say, be IATA/ARC certified) and involves lengthy negotiations that can last for weeks or even months. Reach out to Amadeus experts via their contact form for more details.
After signing a contract, you’ll be allowed to build and test your integrations against test data in the Enterprise APIs sandbox. You can take advantage of developer-friendly REST APIs as far as they cover the functionality you want to implement. Then, switch to SOAP — Amadeus supports combinations of REST and SOAP products.
Typically, the Web Service Description Language is used to explain the technical details of SOAP APIs to a client app. You can generate implementation code from WSDL files and, this way, automate the integration process to some extent. Nevertheless, SOAP APIs remain difficult to work with since they are
- based on verbose XML message format instead of JSON;
- less flexible than REST;
- not orchestrated which means that you usually have to make several requests to complete a single operation; and
- poorly described — the API documentation for the Amadeus SOAP catalog leaves much to be desired.
“When building SOAP-based workflows, you need to create several requests within one session,” shares Ivan Mosiev his experience working with the Amadeus SOAP catalog. “This increases the likelihood of failure since something can go wrong between requests — say, an error on our side or the side of Amadeus, or a network outage. As a result, you have to write many more lines of code to consider all non-standard situations that can happen during the session.”
Interactions with SOAP APIs will be less painful if you hire the development team practiced at Amadeus Enterprise integrations. This will save you the trouble of doing time-consuming research and learning from common mistakes.
How to move an app to production
Before going live, your app must be certified by Amadeus. The GDS checks how well your technology works with their Enterprise APIs and thus protects them from incorrect usage. The certification process is inevitable even for those who acquired a ready solution. Unlike with the Self-Service subscription, it takes weeks rather than days.
For developers, the certification involves the following steps:
- make a sequence of requests to model several standard situations (for Flight APIs it will be a one-way trip from destination A to destination B for one person; a round trip for one person; the same trips for two adults and a family with a child and infant);
- sign each call with your unique ID;
- send the log with requests and responses to Amadeus;
- wait for feedback;
- consider comments, correct mistakes, send another log; and
- wait again.
Waiting is typically the longest part of the entire procedure. And, in the flight booking integration, the majority of issues and comments fall on the interval between booking and ticketing. In the Self-Service subscription, this part is covered by an authorized consolidator, so the validation period lasts much less time (no more than three days, according to the Amadeus official website.)
The good news for enterprise clients interested in flight booking is that once you’ve implemented the main workflow from search to ticketing, adding other features — like seat maps — will be relatively fast.
When, after multiple iterations, you eventually get certified, Amadeus switches integrations to the production environment and lets them work with real data.
“The GDS configures your account depending on your target region,” shares Andrii Chebotarov, Managing Director of Travel and Transportation Competency Consulting at AltexSoft. “Search requests for this region will return the most recent prices and actual information on availability while, for other territories, search results can be of lower quality.”
Where to get help
The enterprise subscription comes with a service level agreement or a contract between you and Amadeus that defines the volume of tech support you can expect.
As a rule, the GDS provides you with a dedicated account manager and support team to answer your questions, help you with configurations, change your account settings, and so on. In other words, you can reach out to Amadeus experts via email once something goes wrong — be it the development or production phase.
Enterprise clients pay a monthly fee negotiated in the contract for access to the system. This fee includes support services and a free request quota. Once you exceed it, you’ll pay for each subsequent call. However, Amadeus customizes pricing according to your needs.
“The essential point is that Amadeus charges a constant commission for using Enterprise APIs but your variable fees will be lower,” according to Andrii Chebotarov’s comparison of the two subscriptions. If your app handles thousands of transactions you’ll eventually pay less than with the Self-Service model for the same volumes.
The pricing terms can depend on your look-to-book ratio showing how many site visitors make actual purchases with you. If your customers just browse offerings and book nothing, the conditions for calling APIs can be changed to be less beneficial.
Questions to answer before integrating with Amadeus API
In addition to all the above, we’d like to clarify three questions that all travel businesses considering GDS integrations usually ask themselves and their tech partners.
How do offerings from GDSs differ?
Today, travel businesses can choose from three main GDSs — Amadeus, Sabre, and Travelport. All three were initially geared towards flights but now also distribute hotels, car rentals, and other travel products. By default, it’s supposed that Sabre is the best option for US companies, Amadeus caters to the European market, and Travelport is typically recommended for those working in African and Middle East regions.
Watch our video to compare Amadeus with its main rivals — Sabre and Travelport.
Three main GDSs: their similarities and differences.
In reality, the three major GDSs offer almost the same coverage, subscription models, and features. The difference lies in contractual relationships and terms you can negotiate for your target region. That’s why we have American OTAs using Amadeus and European or Middle-Eastern platforms that prefer to deal with Sabre.
Who needs a second GDS?
Suppose, you already use Sabre or Travelport. When and why can the need for the second GDS arise? You may want to integrate Amadeus as a backup GDS for reasons of system stability. But don’t expect that it will double your coverage or give you twice as much content. Using two GDSs in parallel will add, figuratively, five percent of the information to what you already have with one GDS.
At the same time, the largest OTAs often utilize all three GDSs to have the widest coverage possible and operational flexibility. Besides that, the multi-GDS strategy can be a powerful tool to negotiate better terms from your key content provider.
Will GDS APIs become easier to integrate in the future?
Definitely, yes. Slowly but surely, all GDSs move from SOAP to REST APIs. And, according to feedback from our developers, Amadeus REST APIs are perfectly documented and simple to work with.
But even if and when the complicated SOAP protocol becomes a thing of the past, the domain expertise and practice at GDS API integrations will still matter a lot when developing travel apps. Engineers familiar with GDS specifics and key travel concepts and processes will save you much time and money.