API reference
REST endpoints for the AffilFinder platform — geo decisions, click logging, offer catalogue, and reporting. Same data your dashboard sees.
REST · JSON · OAuth2 · API key
Auth
Server-to-server requests authenticate with an API key from your dashboard:
Authorization: Bearer aff_live_…OAuth2 (authorization-code with PKCE) is also supported for partner integrations — request from sales.
Endpoints
Base URL: https://api.affilfinder.com
- GET
/v1/decisionGeo decision for a visitor
Returns whether the current visitor IP should be served the overlay or pass through, plus the resolved country and the chosen offer (if any).
Response
{ "decision": "serve_overlay", "country": "DE", "region": "BY", "offer": { "id": "offer_5fA…", "vertical": "iGaming", "brand": "GGL casino", "url": "https://t.affilfinder.com/c/abc123" } } - POST
/v1/eventsLog an event
Stream a `served`, `impression`, or `click` event for a website. The dashboard reads from the same store.
Request body
{ "type": "click", "websiteKey": "ws_…", "offerId": "offer_5fA…", "country": "DE", "ts": "2026-04-23T10:14:00Z" }Response
{ "id": "evt_8w7…", "accepted": true } - GET
/v1/offersList offers available to a website
Returns the offer catalogue your publisher allowlist permits, filtered to the visitor's country.
Response
{ "items": [ { "id": "offer_5fA…", "vertical": "iGaming", "brand": "GGL casino", "geoCoverage": ["DE", "AT"], "payoutModel": "CPC" } ], "page": 1, "total": 24 } - GET
/v1/reports/aggregateAggregate report
Daily aggregates by website, country, vertical, and event type. Same source the dashboard renders charts from.
Response
{ "items": [ { "date": "2026-04-22", "websiteKey": "ws_…", "country": "DE", "vertical": "iGaming", "blocked": 12044, "served": 11800, "impressions": 11210, "clicks": 154 } ] }
SDKs (planned)
We're shipping official SDKs for Node, Python, and PHP. In the meantime, the REST endpoints below work from any HTTP client, and an OpenAPI 3.1 schema is available on request.