DEVELOPER INTERFACE · V1

A small API. Useful offers.

All responses are JSON. Only explicitly selected categories and countries are accepted. Credentials for Impact stay on the server.

GET /api/v1/config

Availability, placement limits and refresh interval.

GET /api/v1/categories

Enabled category hierarchy, icons and display order.

POST /api/v1/offers/query

Query up to 20 offers with category, country and placement. Parent categories include their enabled descendants. Demonstration records are returned with isDemo: true and no tracking URL.

POST /api/v1/events/impression

Send impressionToken only after the card is visible. Retries are deduplicated.

GET /r/click/:offerId?t=…

Follow the clickUrl returned by a query. Expired or disabled offers do not redirect.

Example query

{
  "category": "travel.accommodation",
  "country": "NZ",
  "placement": "offers-panel",
  "extensionVersion": "1.40.15",
  "limit": 20
}

Admin endpoints under /admin/api/v1 require an approved signed-in account. Writes also require the same Origin and X-VisualMark: admin. Never include credentials in extension code.