Integrate your tracker, pull live stats, manage campaigns, and automate reporting with the FluxOffer RESTful API.
The FluxOffer API provides programmatic access to your affiliate account data, offer inventory, and real-time conversion tracking. All API access is via HTTPS and responses are returned in JSON format.
Base URL: https://api.fluxoffer.com/v1
All API requests must include your API key in the request header. You can generate and manage API keys from your FluxOffer dashboard under Account → API Access.
GET /v1/offers HTTP/1.1
Host: api.fluxoffer.com
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
⚠️ Never expose your API key in client-side code. Keep it server-side and rotate it periodically. Contact your affiliate manager if you believe your key has been compromised.
The API enforces rate limits to ensure fair use and platform stability. Limits are applied per API key.
When a rate limit is exceeded, the API returns a 429 Too Many Requests status. The response header X-RateLimit-Reset contains a Unix timestamp indicating when the limit resets. To request a higher rate limit, contact support@fluxoffer.com.
FluxOffer uses conventional HTTP response codes to indicate success or failure. Errors return a JSON body with a code and human-readable message.
{
"error": {
"code": "INVALID_API_KEY",
"message": "The provided API key is invalid or has been revoked.",
"status": 401
}
}
200 OK — Request succeeded400 Bad Request — Missing or invalid parameters401 Unauthorized — Invalid or missing API key403 Forbidden — Key lacks required scope404 Not Found — Resource does not exist429 Too Many Requests — Rate limit exceeded500 Internal Server Error — Server-side error; retry with exponential backoffRetrieve available offers, filter by GEO, payout type, and vertical. Use this endpoint to populate your tracker's offer list automatically.
Returns a paginated list of all offers available to your account. Supports filtering and sorting.
| Parameter | Type | Description |
|---|---|---|
| geooptional | string | ISO 3166-1 alpha-2 country code to filter offers (e.g. US, DE) |
| payout_typeoptional | string | Filter by payout model: cpa, cpl, revshare |
| statusoptional | string | Filter by status: active (default), paused, all |
| pageoptional | integer | Page number for pagination. Default: 1 |
| per_pageoptional | integer | Results per page. Max 100. Default: 25 |
// Example Response
{
"data": [
{
"id": "offer_8821",
"name": "LoveMate Pro US",
"vertical": "dating",
"payout": 8.50,
"payout_type": "cpa",
"geo": ["US"],
"status": "active",
"preview_url": "https://track.fluxoffer.com/click/8821",
"creatives_count": 14,
"epc_avg": 8.42
}
],
"meta": {
"total": 154,
"page": 1,
"per_page": 25
}
}
Returns full details of a single offer including all GEOs, creatives, tracking parameters, and payout tiers.
| Parameter | Type | Description |
|---|---|---|
| offer_idrequired | string | Unique offer identifier from the list endpoint |
Pull granular performance data across your campaigns. All stats are refreshed every 60 seconds. Breakdowns are available by GEO, sub-ID, device, and offer.
Retrieve campaign statistics for a given date range. Aggregated or broken down by multiple dimensions.
| Parameter | Type | Description |
|---|---|---|
| date_fromrequired | string | Start date in YYYY-MM-DD format |
| date_torequired | string | End date in YYYY-MM-DD format |
| group_byoptional | string | Comma-separated dimensions: date, offer, geo, sub1–sub5, device, os |
| offer_idoptional | string | Filter stats to a specific offer ID |
// Example Response
{
"data": [
{
"date": "2025-06-18",
"offer_id": "offer_8821",
"geo": "US",
"clicks": 4820,
"conversions": 63,
"cvr": 1.31,
"revenue": 535.50,
"epc": 8.42
}
]
}
Access your raw conversion log for verification, reconciliation, and advanced analysis. Each record contains full tracking metadata.
Returns a paginated list of conversion events in descending chronological order.
| Parameter | Type | Description |
|---|---|---|
| date_fromrequired | string | Start date in YYYY-MM-DD format |
| date_torequired | string | End date in YYYY-MM-DD format |
| statusoptional | string | approved, pending, rejected, or all |
| offer_idoptional | string | Filter by specific offer |
Configure server-to-server postback URLs via API to automate your tracking setup across multiple campaigns. Supported trackers include Voluum, Binom, RedTrack, Bemob, and Keitaro.
Register a global or offer-specific postback URL that FluxOffer will fire upon a confirmed conversion.
| Parameter | Type | Description |
|---|---|---|
| urlrequired | string | Your postback endpoint URL. Supports macros: {click_id}, {payout}, {offer_id}, {geo}, {sub1}–{sub5} |
| offer_idoptional | string | Scope postback to a specific offer. Omit for global postback. |
| eventoptional | string | Trigger event: conversion (default), approved, rejected |
// Example Request Body
{
"url": "https://mytracker.com/postback?cid={click_id}&payout={payout}&geo={geo}",
"offer_id": "offer_8821",
"event": "approved"
}
// Example Response
{
"postback_id": "pb_44120",
"status": "active",
"created_at": "2025-06-18T14:32:00Z"
}
Need help setting up postbacks? Contact your dedicated manager on Telegram @fluxoffer or email support@fluxoffer.com — we typically respond within 30 minutes.