Skip to content

Python/Django application demonstrating the Amadeus Self-Service flight booking APIs

License

Notifications You must be signed in to change notification settings

amadeus4dev/amadeus-flight-booking-django

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

74 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Flight booking engine

With the Amadeus Self-Service APIs you can integrate flight booking capabilities in your application. In this prototype we demonstrate the end-to-end booking process, which works in conjunction with three APIs:

We also return COVID-19 travel restrictions information with the Travel Restrictions API for the destination country.

The application is also hosted, so you can play directly with it.

How to run the project via Docker (recommended)

Build the image from the Dockerfile. The following command will

make

The container receives your API key/secret from the environment variables. Before running the container, make sure your have your credentials correctly set:

export AMADEUS_CLIENT_ID=YOUR_API_KEY
export AMADEUS_CLIENT_SECRET=YOUR_API_SECRET
export AMADEUS_HOSTNAME=test

Finally, start the container from the image:

make run

At this point you can open a browser and go to http://localhost:8000/.

Note that it is also possible to run in detached mode so your terminal is still usable:

make start

Stop the container with:

make stop

How to run the project locally

Clone the repository.

git clone https://github.com/amadeus4dev/amadeus-flight-booking-django.git
cd amadeus-flight-booking-django

Next create a virtual environment with virtualenv and install the dependencies.

virtualenv venv
source venv/bin/activate
pip install -r requirements.txt

For Windows run the command below to activate the virtual environment.

./venv/scripts/activate.bat

For authentication add your API key/secret to your environmental variables.

export AMADEUS_CLIENT_ID=YOUR_API_KEY
export AMADEUS_CLIENT_SECRET=YOUR_API_SECRET

You can easily switch between test and production environments by setting:

export AMADEUS_HOSTNAME="test" # an empty value will also set the environment to test

or

export AMADEUS_HOSTNAME="production"

Each environment has different API keys. Do not forget to update them!

Finally, run the Django server.

python amadeus_demo_api/manage.py runserver

Finally, open a browser and go to http://127.0.0.1:8000

License

This library is released under the MIT License.

Help

You can find us on StackOverflow or join our developer community on Discord.

About

Python/Django application demonstrating the Amadeus Self-Service flight booking APIs

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •