Fandango API Guide

This implementation guide will walk you through implementing Fandango's Showtimes and Ticketing APIs including theatre info, movie showtimes, and linked Fabric Origin IDs for gathering extended metadata such as posters, cast, etc.

Before You Begin

Prior to getting access to Fandango Showtimes and Ticketing, each developer account must be approved. To get access developers need:

  • A paid subscription to one of Fabric Origin's core solutions.

  • Agree to the Fandango Terms of Service by filling out the form below.

  • Must work with Fabric Origin Sales to acquire Fandango's approval prior to gaining access.

Please note, Fandango Showtimes and Ticketing data is not available on Free Trial subscriptions. For more information, contact Sales.

Fandango Access Request Form

Fandango Brand Guidelines

The Fandango Showtimes and Ticketing API requires adherence to Fandango's Brand Guidelines. Be sure to use the creative assets (logos and fonts) included below to adhere to the guidelines.

Creative Assets:

General Information

The Fandango API provides access to movie showtimes and ticketing through Fandango, the most expansive online ticketer in the U.S. Using the Fandango Showtime and Ticketing APIs is an easy way to help your users find theatres nearest them for the movie they want to see

The Fandango API contains the following specific endpoints that allow you to find data on theatres and the corresponding showtimes for titles showing at the theatres.

  • /Fandango/countries/{country}/states/{state}/cities/{city} - Allows you to find geo-location (latitude/longitude) for a city given a City and State.

  • /Fandango/countries/{country}/postalcodes/{postalcode} - Allows you to find geo-location (latitude/longitude) for a given postal code.

  • /Fandango/movies/ - Allows you to find movies available on Fandango InTheaters or ComingSoon for a given radius around a geo-location.

  • /Fandango/showtimes/ - Allows you to find showtimes available on Fandango in a given date range either for a given radius around a geo-location or for a particular theater.

  • /Fandango/theaters/ - Allows you to find theaters available on Fandango for a given radius around a geo-location.

  • /Fandango/movies/Id/ - Allows you to get metadata from Fandango for a particular movie. It is recommended to instead use IVA's extended metadata unless an IVA match is not available (see examples below).

  • /Fandango/showtimes/{ShowtimeId} - Allows you to get details about a particular showtime from Fandango.

  • /Fandango/theaters/{TheaterId} - Allows you to get details about a particular theater from Fandango.

  • /Fandango/movies/Id/display-dates - Allows you to find display dates from Fandango when a particular movie will be showing based on a given radius around a geo-location.

  • /Fandango/movies/Id/showtime-groupings - Allows you to find showtimes from Fandango grouped by date, theater, format, and amenities for a particular movie, based on a given radius around a geo-location.

  • /Fandango/theaters/{TheaterId}/display-dates - Allows you to find display dates from Fandango for all movies at a particular theater.

  • /Fandango/theaters/{TheaterId}/showtime-groupings - Allows you to find showtimes from Fandango grouped by date, movie, format, and amenities for a particular theater.

Open API/Swagger documentation can be found on the Fandango API page.

Implementation Examples and Best Practices

Fabric Origin can help get you showtimes and ticketing information from Fandango and provide all the data needed plus Fabric Origin's enhanced metadata, images and trailer content.

These APIs are not to be set up client-side. Developers will need to pre-cache some of this information and update accordingly. All ticketing information needs to be refreshed every 24 hours.

The APIs are limited to 1 call per second. It is important to keep this in mind when implementing - setting up a single process to update your cache and ensuring your live system only makes use of your cache and not the API is imperative to successful operation.

If you have any questions please reach out to our support team.

Best Practice for Implementing for Regional Coverage based on Theaters in your Region(s)

Review the examples below to see how to work with the Fandango API. These examples represent a common use-case of caching and updating showtimes and ticketing data for a particular region(s) based on theaters.

In order to keep a local cache of data synchronized with Fandango, we recommend the following steps:

  1. Select the region(s) for which you would like to cache coverage of theaters, movies, and showtimes.

  2. Use the /Fandango/theaters/ endpoint to cache the theater information on the theaters in your region(s) [see "Get All Movie Theaters Near A Geo-location" example below]. This cache would not require daily updates - set a schedule that is best for you but no more than weekly should be required.

  3. Make use of the TheaterIds from your theater cache with the /Fandango/theaters/{TheaterId}/showtime-groupings endpoint to cache the showtime-groupings at each theater in your region(s) [see "Get All Showtimes at a Particular Theater" example below]. This cache should be updated every 24 hours.

  4. For all movies from Fandango that are matched to Fabric Origin, a Fabric Origin ID will be included in the movieIds. Make use of these Fabric Origin Movie IDs with our Entertainment API to gather extended metadata for the movies.

NOTE: The cached theater data from step 2 contains detailed information on the theater and the cached data from step 3 contain basic metadata on the movies, showtimes for the movies, and ticketing links corresponding to the showtimes. Also included in the movieIds is the Fabric Origin Movie ID (for matched titles) to be used with your core solution for extended metadata.

Best Practice for Implementing for Regional Coverage based on Movies in your Region(s)

Review the examples below to see how to work with the Fandango API. These examples represent a common use-case of caching and updating showtimes and ticketing data for a particular region(s) based on movies.

In order to keep a local cache of data synchronized with Fandango, we recommend the following steps:

  1. Select the region(s) for which you would like to cache coverage of theaters, movies, and showtimes.

  2. Use the /Fandango/theaters/ endpoint to cache the theater information on the theaters in your region(s) [see "Get All Movie Theaters Near A Geo-location" example below]. This cache would not require daily updates - set a schedule that is best for you but no more than weekly should be required.

  3. Use the /Fandango/movies endpoint to cache the movie information on the movies playing in your region(s) [see "Get All Movies In Theaters or Coming Soon Near A Geo-location" example below]. This cache would require daily updates.

  4. Make use of the MovieIds from your movie cache with the /Fandango/movies/Id/showtime-groupings endpoint to cache the showtime-groupings for each movie in your region(s) [see "Get All Showtimes for a Particular Movie" example below]. This cache should be updated every 24 hours.

  5. For all movies from Fandango that are matched to Fabric Origin, a Fabric Origin ID will be included in the movieIds. Make use of these Fabric Origin Movie IDs with our Entertainment API to gather extended metadata for the movies.

NOTE: The cached theater data from step 2 contains detailed information on the theater and the cached data from steps 3 and 4 contain basic metadata on the movies, showtimes for the movies, and ticketing links corresponding to the showtimes. Also included in the movieIds is the Fabric Origin Movie ID (for matched titles) to be used with your core solution for extended metadata.

Get All Movie Theaters Near A Geo-location

Using Postal Code: Get all movie theaters within 50 miles of a zip code.

  • Select and use ZipCode instead of Latitude/Longitude

  • Set Radius=50

  • Paging: Offset=0, Limit=50

https://ee.iva-api.com/api/Fandango/theaters/?Offset=0 
&Limit=50
&ZipCode={YourZipCode}
&Radius=50
&subscription-Key={YourKey}

Using Latitude/Longitude: Get all movie theaters within 25 miles of a latitude and longitude.

  • Select and use Latitude/Longitude instead of ZipCode

  • Set Radius=25

  • Paging: Offset=0, Limit=50

https://ee.iva-api.com/api/Fandango/theaters/?Offset=0 
&Limit=50
&Latitude={YourLatitude}
&Longitude={YourLongitude}
&Radius=25
&subscription-Key={YourKey}

Get All Showtimes at a Particular Theater

Get all movie showtimes for a specific theater.

  • Can filter results based on StartDisplayDate and EndDisplayDate - if left empty, will return showtimes for same day

  • Set TheaterId={YourTheaterId}

  • Set IdProvider={IdProvider} - this is often fandangoApi if you're using the Id from your Fandango cache

https://ee.iva-api.com/api/Fandango/theaters/{TheaterId}/showtime-groupings?TheaterId={YourTheaterId} 
&IdProvider={IdProvider}
&subscription-Key={YourKey}

NOTE: The showtimes response includes links under movieVariants>amenityGroups>showtimes>links to provide direct links to Fandango to purchase tickets.

TIP: Fandango says that indicating which showings offer Reserved Seating is the most important piece of information for consumers when deciding whether to buy tickets in advance or not! Strongly consider including that info in your implementation.


Get All Movies In Theaters or Coming Soon Near A Geo-location

Using Postal Code and InTheaters: Get all movies playing within 50 miles of a zip code.

  • Filter results where Type=InTheaters

  • Select and use ZipCode instead of Latitude/Longitude

  • Set Radius=50

  • Paging: Offset=0, Limit=50

https://ee.iva-api.com/api/Fandango/movies/?Offset=0 
&Limit=50
&Type=InTheaters
&ZipCode={YourZipCode}
&Radius=50
&subscription-Key={YourKey}

Using Latitude/Longitude and ComingSoon: Get all movies coming soon within 25 miles of a latitude and longitude.

  • Filter results where Type=ComingSoon

  • Select and use Latitude/Longitude instead of ZipCode

  • Set Radius=25

  • Paging: Offset=0, Limit=50

https://ee.iva-api.com/api/Fandango/movies/?Offset=0 
&Limit=50
&Type=ComingSoon
&Latitude={YourLatitude}
&Longitude={YourLongitude}
&Radius=25
&subscription-Key={YourKey}

Get All Showtimes for a Particular Movie

Get all movie showtimes for a specific movie.

  • Can filter results based on StartDisplayDate and EndDisplayDate - if left empty, will return showtimes for same day

  • Set MovieId={YourTheaterId}

  • Set MovieIdProvider={IdProvider} - this could be fandangoApi if you're using the Id from your Fandango cache or you could also use Fabric Origin movie Ids.

  • Paging: Offset=0, Limit=50

https://ee.iva-api.com/api/Fandango/movies/Id/showtime-groupings?Offset=0 
&Limit=50
&MovieId={YourTheaterId}
&MovieIdProvider={IdProvider}
&subscription-Key={YourKey}

NOTE: The showtimes response includes links under movieVariants>amenityGroups>showtimes>links to provide direct links to Fandango to purchase tickets.

TIP: Fandango says that indicating which showings offer Reserved Seating is the most important piece of information for consumers when deciding whether to buy tickets in advance or not! Strongly consider including that info in your implementation.