Overview

The Ananas GDS v1 API provides read access to published fact sheets, stop sale calendars, and photo galleries for all properties your API key is authorised to access. The API is token-based — the token appears in the URL path, making it compatible with virtually any HTTP client.

Base URL & Token

Base URL pattern
https://app.ananas-gds.com/api/v1/{endpoint}/{your-api-token}/

Create and manage API keys in Developer Tools → API Keys. Each key has granular permissions for facts, stop sale, and photos.

Endpoints

EndpointDataPermission Flag
/api/v1/facts/{token}/Full fact sheet for all accessible properties.fact_sheet
/api/v1/stop-sale/{token}/Availability calendar with status codes and allotments.stop_sale
/api/v1/photos/{token}/Photo gallery URLs for all properties.hotel_photos

Response Format

All endpoints return JSON by default. The response is an array of property objects — one per property accessible to the token. Each object includes the property ID, hotel name, and the data specific to the endpoint.

Error Handling

CodeMeaning
403Token valid but missing permission for this endpoint.
404Token not found or revoked.
429Rate limit exceeded. Back off and retry.

Polling Recommendations

Ananas GDS is not a real-time booking system. Recommended polling frequencies: fact sheets — once per day; stop sale — every 15 minutes to 1 hour depending on plan; photos — once per week unless you detect a change notification via webhook.

Use webhooks for stop sale

Instead of polling stop sale, register a webhook for stopsale.created, stopsale.updated, and stopsale.cancelled events. This gives you real-time updates without unnecessary API calls.