filmfreeway.com APIfilmfreeway.com ↗
Access FilmFreeway festival data via API: search festivals, get deadlines, submission categories, fees, rules, organizers, and photos across thousands of listings.
curl -X GET 'https://api.parse.bot/scraper/24cb03f5-ea57-4eba-8e6b-43bc74bc264a/search_festivals?page=1&query=documentary' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for festivals with optional keyword and pagination. Returns up to 50 festivals per page.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination. |
| query | string | Search keyword (e.g. 'grant', 'documentary'). Omitting returns all festivals. |
{
"type": "object",
"fields": {
"page": "integer current page number",
"has_more": "boolean indicating if more pages are available",
"festivals": "array of festival summary objects with name, slug, url, location, and description_snippet"
},
"sample": {
"data": {
"page": 1,
"has_more": true,
"festivals": [
{
"url": "https://filmfreeway.com/NewWaveCollective",
"name": "New Wave Collective (Feature Film Grant)",
"slug": "NewWaveCollective",
"location": "Chilliwack, BC, Canada\n\n\n First Year",
"description_snippet": "Next Deadline: June 28, 2026"
}
]
},
"status": "success"
}
}About the filmfreeway.com API
The FilmFreeway API provides 6 endpoints for searching and retrieving structured data from FilmFreeway's film festival and grant directory. Using search_festivals, developers can query across thousands of listings by keyword or browse all festivals with pagination. Detailed responses include submission deadlines with ISO dates, per-category fees, rules text, organizer names, physical addresses, and photo galleries — covering the full profile data visible on a festival's FilmFreeway page.
What the API Covers
The API surfaces data from FilmFreeway's public festival directory across six endpoints. search_festivals accepts an optional query string (e.g. 'documentary', 'grant') and a page integer, returning up to 50 festival summaries per page — each with name, slug, url, location, and description_snippet. The has_more boolean makes it straightforward to walk through paginated results. search_festivals_by_category filters results by submission type using a comma-separated categories parameter; accepted values include animation, documentary, experimental, feature, and music video.
Festival Detail Endpoints
get_festival_details takes a slug (obtainable from any search result) and returns the full festival profile: description, rules, awards, address, an organizers array listing names and roles, a deadlines array with type, date, and iso_date fields, and a categories array where each entry includes its own fees breakdown by deadline tier. If you only need part of that data, get_festival_rules returns just the rules text for a given slug, and get_festival_categories_and_fees returns only the categories array with per-deadline fee objects — useful for fee comparison tooling without fetching the full profile.
Photos and Slugs
get_festival_photos returns an array of photo objects for a festival, each with id, href, caption, width, height, and order fields. The endpoint returns an empty array for festivals with no uploaded photos rather than an error. All detail and photo endpoints require a slug as input; slugs are returned in every search response, so a typical workflow starts with a search call and fans out to detail calls using the slugs in the results.
Data Notes
Fields like rules, awards, address, and description are returned as null when the festival organizer has not published that information on FilmFreeway. Deadline dates are provided in both human-readable date and machine-readable iso_date formats. The API does not require you to manage session state between calls — each endpoint is independently addressable by slug or search parameters.
- Build a film festival deadline tracker using
deadlines[].iso_datefields across multiple festivals - Compare submission fees across categories by querying
get_festival_categories_and_feesfor a list of festivals - Filter documentary-focused festivals using
search_festivals_by_categorywithcategories=documentary - Aggregate grant opportunities by searching
search_festivalswithquery='grant'and paginating results - Populate a festival discovery app with location, description snippets, and URLs from
search_festivalsresults - Display organizer contact and address data from
get_festival_detailsfor festival submission research tools - Pull festival photo galleries via
get_festival_photosto enrich editorial or directory listings
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does FilmFreeway have an official public developer API?+
What does `get_festival_details` return that `search_festivals` does not?+
search_festivals returns summary fields: name, slug, url, location, and description_snippet. get_festival_details adds the full description, rules, awards, address, a structured deadlines array with iso_date values, a categories array with per-deadline fees, and an organizers array listing names and roles. The summary endpoints are suited for browsing; the detail endpoint is needed for submission research.What category values does `search_festivals_by_category` accept?+
categories parameter accepts a comma-separated list from five values: animation, documentary, experimental, feature, and music video. Passing multiple values returns festivals that accept submissions in any of those categories. Filtering by other dimensions — country, deadline range, or fee cap — is not currently supported by this parameter. You can fork the API on Parse and revise it to add additional filter endpoints.Does the API expose submission or project data for filmmaker accounts?+
How should I handle null fields in festival detail responses?+
rules, awards, address, and description return null when the festival organizer has not published that information. The photos array from get_festival_photos returns an empty array rather than null when no photos exist. Your client should treat null and empty-array responses as valid states, not errors.