API Reference
All Endpoints
Complete reference of all Ananas GDS API endpoints, organised by domain. Base URL: https://app.ananas-gds.com
Authentication
All endpoints prefixed /api/ require Authorization: Token <token> unless noted as public. The v1 partner API uses token-in-URL — see API Authentication.
Authentication
| Method | Path | Description | Auth |
|---|---|---|---|
POST | /api/auth/token/login/ | Log in, receive session token. | Public |
POST | /api/auth/token/logout/ | Log out, invalidate session. | Token |
GET | /api/auth/check-token/ | Validate the current token and return user data. | Token |
GET | /api/auth/session/ | Session startup — loads user, company, and preferences in one call. | Token |
PUT | /api/auth/profile/update | Update user profile (name, email, avatar). | Token |
GET | /api/auth/authorized-users/ | List sub-users for the account. | Token (manager) |
POST | /api/auth/authorized-users/create/ | Create a sub-user. | Token (manager) |
GET | /api/auth/authorized-users/{id}/ | Get sub-user details. | Token (manager) |
PUT | /api/auth/authorized-users/{id}/update/ | Update sub-user profile. | Token (manager) |
DELETE | /api/auth/authorized-users/{id}/delete/ | Remove a sub-user. | Token (manager) |
GET | /api/auth/authorized-users/{id}/permissions/ | Get sub-user permissions. | Token (manager) |
POST | /api/auth/permissions/create/ | Create permissions for a sub-user. | Token (manager) |
PUT | /api/auth/permissions/update/{id}/ | Update sub-user permissions. | Token (manager) |
Properties & Fact Sheets
| Method | Path | Description |
|---|---|---|
GET | /api/info/properties/ | List all properties for the account. |
GET | /api/info/properties/search/ | Search properties by name, country, or status. |
GET | /api/info/property/{id}/ | Get property detail with all fact categories. |
POST | /api/info/property/create/ | Create a new property. |
PUT | /api/info/property/update/{id}/ | Update property fields. |
DELETE | /api/info/property/delete/{id}/ | Delete a property and all associated data. |
GET/POST | /api/info/init-facts-info/{id}/ | Initialise all fact categories for a new property. |
GET | /api/info/property/{id}/gallery/ | Get photo gallery for a property. |
POST | /api/info/property/{id}/publish/create/ | Submit fact sheet for review/publication. |
GET | /api/info/property/{id}/publish/{type}/ | Get the published fact sheet in specified type. |
GET | /api/info/last-publish-date/ | Get last publication timestamp. |
GET | /api/info/publish/pending/ | List fact sheets awaiting admin review. |
GET | /api/info/publish/pending/{id}/preview/ | Preview a pending submission. |
POST | /api/info/publish/pending/{id}/approve/ | Approve a pending fact sheet. |
POST | /api/info/publish/pending/{id}/decline/ | Decline a pending fact sheet. |
GET | /api/info/published-partners/{token}/ | Partner-facing published facts (token auth). |
GET | /api/info/partners-photos/{token}/ | Partner-facing photo gallery (token auth). |
POST | /api/info/send-facts/{list_id}/sheet/{prop_id}/ | Email PDF fact sheet to a mailing list. |
GET | /api/info/download-facts/{id}/ | Download PDF fact sheet. |
POST | /api/info/send-photos/{list_id}/acc/{prop_id}/ | Email photo gallery to a mailing list. |
GET | /api/info/download-photos/{id}/ | Download compressed photo gallery. |
Stop Sale & Allotment
| Method | Path | Description |
|---|---|---|
GET | /api/stop-sale/calendar/{id}/ | Stop sale calendar for a property (month view). |
GET | /api/stop-sale/events/{id}/ | List stop sale events for a property. |
POST | /api/stop-sale/event/create/ | Create a stop sale event. |
PUT | /api/stop-sale/event/update/{id}/ | Update a stop sale event. |
DELETE | /api/stop-sale/event/delete/{id}/ | Delete a stop sale event. |
GET | /api/stop-sale/partner-availability/{token}/ | Partner-facing availability (legacy token URL). |
Partners & Contracts
| Method | Path | Description |
|---|---|---|
GET | /api/partners/contracts/ | List all contracts (incoming, current, outgoing). |
POST | /api/partners/contracts/create/ | Create a new contract / send partner invitation. |
GET | /api/partners/contracts/{id}/ | Get contract detail. |
PUT | /api/partners/contracts/{id}/update/ | Update contract terms. |
DELETE | /api/partners/contracts/{id}/delete/ | Cancel and delete a contract. |
POST | /api/partners/contracts/{id}/accept/ | Accept a contract or amendment. |
POST | /api/partners/contracts/{id}/reject/ | Reject a contract or amendment. |
GET | /api/partners/discover/ | Partner marketplace — discover new hotel or TO connections. |
GET | /api/partners/properties/{contract_id}/ | List properties accessible under a contract. |
GET | /api/partners/facts-access/{contract_id}/ | Check data access permissions for a contract. |
Invoicing
| Method | Path | Description |
|---|---|---|
GET | /api/invoicing/invoices/ | List invoices (sent, received, drafts). |
POST | /api/invoicing/invoices/create/ | Create a new invoice. |
GET | /api/invoicing/invoices/{id}/ | Get invoice detail with line items and activity log. |
PUT | /api/invoicing/invoices/{id}/update/ | Update a draft invoice. |
POST | /api/invoicing/invoices/{id}/send/ | Send invoice to recipient. |
POST | /api/invoicing/invoices/{id}/mark-paid/ | Mark invoice as paid. |
POST | /api/invoicing/invoices/{id}/dispute/ | Raise a dispute on a received invoice. |
POST | /api/invoicing/invoices/{id}/cancel/ | Cancel an invoice. |
POST | /api/invoicing/invoices/{id}/duplicate/ | Duplicate an invoice as a new draft. |
POST | /api/invoicing/invoices/{id}/send-reminder/ | Send a payment reminder email. |
GET | /api/invoicing/invoices/{id}/download/ | Download PDF of invoice. |
GET | /api/invoicing/stats/ | Invoice summary statistics for the dashboard. |
Payments & Subscriptions
| Method | Path | Description |
|---|---|---|
GET | /api/payments/plans/ | List subscription plans. |
GET | /api/payments/overview/ | Billing overview: subscription, cards, history. |
GET/PUT | /api/payments/billing-address/ | Billing address. |
POST | /api/payments/subscription/upgrade/ | Upgrade plan. |
POST | /api/payments/subscription/cancel/ | Cancel at period end. |
POST | /api/payments/subscription/resume/ | Resume cancelled subscription. |
POST | /api/payments/subscription/auto-renew/ | Toggle auto-renew. |
GET | /api/payments/cards/ | List payment cards. |
DELETE | /api/payments/cards/{id}/ | Delete card. |
POST | /api/payments/cards/set-primary/{id}/ | Set primary card. |
POST | /api/payments/stripe/setup-intent/ | Create Stripe SetupIntent. |
POST | /api/payments/stripe/attach-method/ | Attach Stripe payment method. |
POST | /api/payments/verify-payment/ | Confirm payment, activate plan. |
Notifications
| Method | Path | Description |
|---|---|---|
GET | /api/notification/notification/ | List notifications. |
GET | /api/notification/notification/count/ | Unread count. |
PATCH | /api/notification/notification/edit/ | Mark one as read. |
POST | /api/notification/notification/mark-all-read/ | Mark all as read. |
DELETE | /api/notification/notification/delete/ | Dismiss notifications. |
GET | /api/notification/announce-app/ | Platform announcements. |
Settings
| Method | Path | Description |
|---|---|---|
GET | /api/settings/account/settings | Personal settings (canonical). |
GET | /api/settings/company/settings | Company settings (canonical). |
GET/PUT | /api/settings/company/ | Company profile. |
GET | /api/settings/preferences/ | Personal preferences. |
PUT | /api/settings/preferences/edit/ | Update preferences. |
GET | /api/settings/mailing-lists/ | List mailing lists. |
POST | /api/settings/mailing-lists/create/ | Create mailing list. |
GET | /api/settings/contacts/ | List contacts. |
POST | /api/settings/contacts/create/ | Add contact. |
POST | /api/settings/contacts/import/csv/ | Import contacts from CSV. |
GET | /api/settings/api-keys/ | List API keys. |
POST | /api/settings/api-key/create/ | Create API key. |
DELETE | /api/settings/api-key/delete/{id}/ | Delete API key. |
GET | /api/settings/whitelists/ | List whitelisted domains. |
GET | /api/settings/widget/{property_id}/ | Get widget for a property. |
POST | /api/settings/widget/create/ | Create widget. |
GET | /api/settings/audit/ | Audit trail log. |
Public v1 API (Partner Access)
Token in URL
These endpoints use the API key token in the URL path. No Authorization header is needed.
| Method | Path | Description |
|---|---|---|
GET | /api/v1/facts/{token}/ | Published fact sheet data. Requires fact_sheet permission on the key. |
GET | /api/v1/photos/{token}/ | Published photo gallery. Requires hotel_photos permission. |
GET | /api/v1/stop-sale/{token}/ | Stop sale calendar. Requires stop_sale permission. |
Developer Tools — Integrations, Webhooks & Exports
| Method | Path | Description |
|---|---|---|
GET/POST | /api/dev/integrations/connections/ | List or create external connections. |
GET/PUT/DELETE | /api/dev/integrations/connections/{id}/ | Manage a connection. |
POST | /api/dev/integrations/connections/{id}/sync/ | Trigger manual sync. |
GET | /api/dev/integrations/connections/{id}/sync-logs/ | Sync log history. |
POST | /api/dev/integrations/inbound/{token}/ | Inbound webhook receiver (public, no auth header). |
GET/POST | /api/dev/integrations/webhooks/ | List or register webhook endpoints. |
GET/PUT/DELETE | /api/dev/integrations/webhooks/{id}/ | Manage a webhook endpoint. |
POST | /api/dev/integrations/webhooks/{id}/test/ | Send test ping. |
GET | /api/dev/integrations/webhooks/{id}/deliveries/ | List delivery attempts. |
POST | /api/dev/integrations/webhooks/deliveries/{id}/retry/ | Retry a failed delivery. |
GET | /api/dev/integrations/exports/ | List export requests. |
POST | /api/dev/integrations/exports/create/ | Queue a bulk export. |