Download OpenAPI specification:
The API is organized around REST. Our API has predictable resource-oriented URLs, accepts form-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.
All requests to the API must be authenticated using an API key. To authenticate, add a API-KEY header to your request that contains your API Key.
| Code | Summary | Description |
|---|---|---|
| 200 | OK | Everything worked as expected. |
| 400 | Bad Request | The request was unacceptable, often due to missing a required parameter. |
| 401 | Unauthorized | No valid API key provided. |
| 402 | Request Failed | The parameters were valid but the request failed. |
| 403 | Forbidden | The API key doesn't have permissions to perform the request. |
| 404 | Not Found | The requested resource doesn't exist. |
| 429 | Too Many Requests | Too many requests hit the API too quickly. We recommend an exponential backoff of your requests. |
| 500, 502, 503, 504 | Server Errors | Something went wrong on Server's end. (These are rare.) |
We use conventional HTTP response codes to indicate the success or failure of an API request. In general: Codes in the 2xx range indicate success. Codes in the 4xx range indicate an error that failed given the information provided (e.g., a required parameter was omitted, a wrong data type is provided to a json field). Codes in the 5xx range indicate an error with our servers (these are rare).
To filter the result you can use the filter query parameter. Format:
filter[field_name][operator] = value
filter[outer_field.inner_field]eq.You can sort the result by adding sort query params like sort=-type,name. - will act for descending
The API in general is using numbered pages except for Reports.
To paginate the result you can provide the following:
page[number] is the number of the page.page[size] is the size of the page. The API max limit is 100.In the response, meta.total_count shows the number of total objects and meta.total_page shows the number of total pages.
{
"meta": {
"total_count": 1000,
"total_page": 50
}
}
Example:
Go to the first page:
GET /api/v2/coffees?page[size]=100&page[number]=1
Go to the second page:
GET /api/v2/coffees?page[size]=100&page[number]=2
Manage the people who can access your organization in Integr8. Use these endpoints to invite and maintain admins, members, account managers, API-enabled users, and publisher or advertiser managers with scoped access to the partners they are allowed to manage.
List organization users using pagination and filtering.
{- "data": [
- {
- "advertiser_manager_access": "Global",
- "api_access_enabled": true,
- "city": "New York",
- "country": "US",
- "created_at": "2019-08-24T14:15:22Z",
- "email": "jane.doe@example.com",
- "first_name": "Jane",
- "id": "abc123",
- "is_advertiser_manager": false,
- "is_publisher_manager": false,
- "last_login_at": "2019-08-24T14:15:22Z",
- "last_name": "Doe",
- "phone": "+1-555-0100",
- "publisher_manager_access": "Global",
- "role": "accountManager",
- "status": "Active",
- "timezone": "America/New_York",
- "updated_at": "2019-08-24T14:15:22Z"
}
], - "meta": {
- "links": {
- "next": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}, - "prev": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}
}, - "total_count": 0,
- "total_page": 0
}
}Create a user within your organization.
Roles:
admin — Full administrative access to the organization.accountManager — Can be assigned to publishers and advertisers as their dedicated account manager.A JSON object containing the new user's details
| city | string |
| country | string |
| email required | string |
| first_name | string |
| last_name | string |
| password required | string |
| phone | string |
| role required | string Enum: "admin" "accountManager" |
| timezone | string |
{- "city": "New York",
- "country": "US",
- "email": "jane.doe@example.com",
- "first_name": "Jane",
- "last_name": "Doe",
- "password": "S3cur3P@ssw0rd!",
- "phone": "+1-555-0100",
- "role": "accountManager",
- "timezone": "America/New_York"
}{- "created_item_id": "string"
}Get an organization user by ID.
| userID required | string The User ID |
{- "data": {
- "advertiser_manager_access": "Global",
- "api_access_enabled": true,
- "city": "New York",
- "country": "US",
- "created_at": "2019-08-24T14:15:22Z",
- "email": "jane.doe@example.com",
- "first_name": "Jane",
- "id": "abc123",
- "is_advertiser_manager": false,
- "is_publisher_manager": false,
- "last_login_at": "2019-08-24T14:15:22Z",
- "last_name": "Doe",
- "phone": "+1-555-0100",
- "publisher_manager_access": "Global",
- "role": "accountManager",
- "status": "Active",
- "timezone": "America/New_York",
- "updated_at": "2019-08-24T14:15:22Z"
}
}Update an organization user by ID.
| userID required | string The User ID |
A JSON object containing the fields to update
| advertiser_manager_access | string Enum: "Global" "Limited" "Restricted" |
| api_access_enabled | boolean |
| city | string |
| country | string |
string | |
| first_name | string |
| is_advertiser_manager | boolean |
| is_publisher_manager | boolean |
| last_name | string |
| password | string |
| phone | string |
| publisher_manager_access | string Enum: "Global" "Limited" "Restricted" |
| role | string Enum: "admin" "accountManager" |
| status | string Enum: "Active" "Deactivated" |
| timezone | string |
{- "advertiser_manager_access": "Global",
- "api_access_enabled": true,
- "city": "New York",
- "country": "US",
- "email": "jane.doe@example.com",
- "first_name": "Jane",
- "is_advertiser_manager": false,
- "is_publisher_manager": false,
- "last_name": "Doe",
- "password": "S3cur3P@ssw0rd!",
- "phone": "+1-555-0100",
- "publisher_manager_access": "Global",
- "role": "accountManager",
- "status": "Active",
- "timezone": "America/New_York"
}{ }Manage the advertisers or brands that own offers in your network. Advertiser records store company/contact details, active and archived state, manager assignment, tags, and the incremental advertiser ID used when connecting offers and reports.
List multiple Advertisers with pagination and filtering.
{- "data": [
- {
- "active": true,
- "address": "string",
- "archived": true,
- "company_name": "string",
- "country": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "description": "string",
- "email": "string",
- "first_name": "string",
- "id": "abc123",
- "incremental_id": 1,
- "last_name": "string",
- "manager_email": "string",
- "manager_id": "string",
- "manager_name": "string",
- "messenger": "string",
- "name": "string",
- "name_with_id": "Acme Corp [1]",
- "phone": "string",
- "updated_at": "2019-08-24T14:15:22Z",
- "website": "string"
}
], - "meta": {
- "links": {
- "next": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}, - "prev": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}
}, - "total_count": 0,
- "total_page": 0
}
}Create a new Advertiser.
A JSON object containing advertiser information
| active | boolean |
| address | string |
| company_name | string |
| country | string |
| description | string |
string | |
| first_name | string |
| last_name | string |
| manager_id | string |
| messenger | string |
| name required | string |
| phone | string |
| website | string |
{- "active": true,
- "address": "456 Market St",
- "company_name": "Acme Corporation",
- "country": "US",
- "description": "E-commerce advertiser",
- "email": "john.smith@acmecorp.com",
- "first_name": "John",
- "last_name": "Smith",
- "manager_id": "mgr123",
- "messenger": "john_smith",
- "name": "Acme Corp",
- "phone": "+1-555-0200",
}{- "created_item_id": "string"
}Bulk update Advertisers status by providing an array of Advertiser IDs and the new status.
An array of advertiser IDs to update and the new status
| active | boolean |
| data | Array of strings |
{- "active": true,
- "data": [
- "[\"id1\"",
- "\"id2\"]"
]
}{ }Bulk delete Advertisers by providing an array of Advertiser IDs.
An array of advertiser IDs to delete
| data | Array of strings |
{- "data": [
- "[\"id1\"",
- "\"id2\"]"
]
}{ }Get an Advertiser information.
| advertiserID required | string The Advertiser ID |
{- "data": {
- "active": true,
- "address": "string",
- "archived": true,
- "company_name": "string",
- "country": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "description": "string",
- "email": "string",
- "first_name": "string",
- "id": "abc123",
- "incremental_id": 1,
- "last_name": "string",
- "manager_email": "string",
- "manager_id": "string",
- "manager_name": "string",
- "messenger": "string",
- "name": "string",
- "name_with_id": "Acme Corp [1]",
- "phone": "string",
- "updated_at": "2019-08-24T14:15:22Z",
- "website": "string"
}
}Update an Advertiser information.
| advertiserID required | string The Advertiser ID |
A JSON object containing advertiser information
| active | boolean |
| address | string |
| company_name | string |
| country | string |
| description | string |
string | |
| first_name | string |
| last_name | string |
| manager_id | string |
| messenger | string |
| name required | string |
| phone | string |
| website | string |
{- "active": true,
- "address": "456 Market St",
- "company_name": "Acme Corporation",
- "country": "US",
- "description": "E-commerce advertiser",
- "email": "john.smith@acmecorp.com",
- "first_name": "John",
- "last_name": "Smith",
- "manager_id": "mgr123",
- "messenger": "john_smith",
- "name": "Acme Corp",
- "phone": "+1-555-0200",
}{ }Manage tracking campaigns that publishers promote for advertisers. Offers define the advertiser relationship, visibility and publisher approval rules, landing pages, payout and revenue settings, targeting, fraud filter groups, capping, tracking domains, conversion behavior, and publisher-facing terms.
List multiple Offers using pagination and filtering.
| integrationID required | string The Integration ID |
{- "data": [
- {
- "active": true,
- "advertiser_id": 0,
- "allow_duplicate_conversions": true,
- "archived": true,
- "block_on_reject": true,
- "conversion_name": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "currency": "USD",
- "deep_link_enabled": true,
- "default_payout": {
- "payout": 10,
- "payout_percent": 0,
- "payout_type": "CPA",
- "revenue": 15,
- "revenue_percent": 0,
- "revenue_type": "RPA"
}, - "description": "string",
- "enable_js_tracking": true,
- "fallback_url": "string",
- "id": "abc123",
- "impression_forwarding_enabled": true,
- "impression_forwarding_url": "string",
- "incremental_id": 1,
- "manually_approve_conversions": true,
- "name": "string",
- "name_with_id": "Summer Campaign 2025 [1]",
- "offer_preview_enabled": true,
- "parallel_tracking_enabled": true,
- "parallel_tracking_url": "string",
- "primary_domain": "string",
- "restriction_note": "string",
- "targeting_group_id": "string",
- "targeting_simple_enabled": true,
- "terms_and_conditions": "string",
- "terms_and_conditions_enabled": true,
- "updated_at": "2019-08-24T14:15:22Z",
- "view_through_attribution_enabled": true,
- "visibility": "Public"
}
], - "meta": {
- "links": {
- "next": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}, - "prev": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}
}, - "total_count": 0,
- "total_page": 0
}
}Create a new Offer.
| integrationID required | string The Integration ID |
A JSON object containing offer information
| active | boolean |
| advertiser_id required | integer |
| allow_duplicate_conversions | boolean |
| block_on_reject | boolean |
| conversion_name | string |
| currency | string Enum: "USD" "EUR" |
| deep_link_enabled | boolean |
object (integr8docs.OfferPayoutConfig) | |
| description | string |
| enable_js_tracking | boolean |
| fallback_url | string |
| impression_forwarding_enabled | boolean |
| impression_forwarding_url | string |
| manually_approve_conversions | boolean |
| name required | string |
| offer_preview_enabled | boolean |
| parallel_tracking_enabled | boolean |
| parallel_tracking_url | string |
| primary_domain | string |
| restriction_note | string |
| targeting_group_id | string |
| targeting_simple_enabled | boolean |
| terms_and_conditions | string |
| terms_and_conditions_enabled | boolean |
| view_through_attribution_enabled | boolean |
| visibility | string Enum: "Public" "Private" "Requires_Approval" |
{- "active": true,
- "advertiser_id": 42,
- "allow_duplicate_conversions": false,
- "block_on_reject": false,
- "conversion_name": "Sale",
- "currency": "USD",
- "deep_link_enabled": false,
- "default_payout": {
- "payout": 10,
- "payout_percent": 0,
- "payout_type": "CPA",
- "revenue": 15,
- "revenue_percent": 0,
- "revenue_type": "RPA"
}, - "description": "Summer promotion offer",
- "enable_js_tracking": false,
- "impression_forwarding_enabled": false,
- "impression_forwarding_url": "string",
- "manually_approve_conversions": false,
- "name": "Summer Campaign 2025",
- "offer_preview_enabled": false,
- "parallel_tracking_enabled": false,
- "primary_domain": "example.com",
- "restriction_note": "string",
- "targeting_group_id": "string",
- "targeting_simple_enabled": false,
- "terms_and_conditions": "string",
- "terms_and_conditions_enabled": false,
- "view_through_attribution_enabled": false,
- "visibility": "Public"
}{- "created_item_id": "string"
}Bulk update Offers status by providing an array of Offer IDs and the new status.
| integrationID required | string The Integration ID |
An array of offer IDs to update and the new status
| active | boolean |
| data | Array of strings |
{- "active": true,
- "data": [
- "[\"id1\"",
- "\"id2\"]"
]
}{ }Bulk delete Offers by providing an array of Offer IDs.
| integrationID required | string The Integration ID |
An array of offer IDs to delete
| data | Array of strings |
{- "data": [
- "[\"id1\"",
- "\"id2\"]"
]
}{ }Get Offer information.
| integrationID required | string The Integration ID |
| offerID required | string The Offer ID |
{- "data": {
- "active": true,
- "advertiser_id": 0,
- "allow_duplicate_conversions": true,
- "archived": true,
- "block_on_reject": true,
- "conversion_name": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "currency": "USD",
- "deep_link_enabled": true,
- "default_payout": {
- "payout": 10,
- "payout_percent": 0,
- "payout_type": "CPA",
- "revenue": 15,
- "revenue_percent": 0,
- "revenue_type": "RPA"
}, - "description": "string",
- "enable_js_tracking": true,
- "fallback_url": "string",
- "id": "abc123",
- "impression_forwarding_enabled": true,
- "impression_forwarding_url": "string",
- "incremental_id": 1,
- "manually_approve_conversions": true,
- "name": "string",
- "name_with_id": "Summer Campaign 2025 [1]",
- "offer_preview_enabled": true,
- "parallel_tracking_enabled": true,
- "parallel_tracking_url": "string",
- "primary_domain": "string",
- "restriction_note": "string",
- "targeting_group_id": "string",
- "targeting_simple_enabled": true,
- "terms_and_conditions": "string",
- "terms_and_conditions_enabled": true,
- "updated_at": "2019-08-24T14:15:22Z",
- "view_through_attribution_enabled": true,
- "visibility": "Public"
}
}Update an Offer by providing the object ID.
| integrationID required | string The Integration ID |
| offerID required | string The Offer ID |
A JSON object containing offer information
| active | boolean |
| advertiser_id required | integer |
| allow_duplicate_conversions | boolean |
| block_on_reject | boolean |
| conversion_name | string |
| currency | string Enum: "USD" "EUR" |
| deep_link_enabled | boolean |
object (integr8docs.OfferPayoutConfig) | |
| description | string |
| enable_js_tracking | boolean |
| fallback_url | string |
| impression_forwarding_enabled | boolean |
| impression_forwarding_url | string |
| manually_approve_conversions | boolean |
| name required | string |
| offer_preview_enabled | boolean |
| parallel_tracking_enabled | boolean |
| parallel_tracking_url | string |
| primary_domain | string |
| restriction_note | string |
| targeting_group_id | string |
| targeting_simple_enabled | boolean |
| terms_and_conditions | string |
| terms_and_conditions_enabled | boolean |
| view_through_attribution_enabled | boolean |
| visibility | string Enum: "Public" "Private" "Requires_Approval" |
{- "active": true,
- "advertiser_id": 42,
- "allow_duplicate_conversions": false,
- "block_on_reject": false,
- "conversion_name": "Sale",
- "currency": "USD",
- "deep_link_enabled": false,
- "default_payout": {
- "payout": 10,
- "payout_percent": 0,
- "payout_type": "CPA",
- "revenue": 15,
- "revenue_percent": 0,
- "revenue_type": "RPA"
}, - "description": "Summer promotion offer",
- "enable_js_tracking": false,
- "impression_forwarding_enabled": false,
- "impression_forwarding_url": "string",
- "manually_approve_conversions": false,
- "name": "Summer Campaign 2025",
- "offer_preview_enabled": false,
- "parallel_tracking_enabled": false,
- "primary_domain": "example.com",
- "restriction_note": "string",
- "targeting_group_id": "string",
- "targeting_simple_enabled": false,
- "terms_and_conditions": "string",
- "terms_and_conditions_enabled": false,
- "view_through_attribution_enabled": false,
- "visibility": "Public"
}{ }Manage additional conversion events within an offer, such as upsells, registrations, purchases, or other post-conversion actions. Events have their own incremental IDs, payout and revenue configuration, approval behavior, active/archive state, and conversion fraud filter settings.
You can list all offer events within an offer.
| integrationID required | string The Integration ID |
| offerID required | string The Offer ID |
{- "data": [
- {
- "active": true,
- "allow_multiple_events": true,
- "archived": true,
- "currency": "USD",
- "description": "string",
- "id": "abc123",
- "manually_approve_events": true,
- "name": "Lead Signup",
- "payout": 0,
- "payout_percent": 0,
- "payout_type": "CPA",
- "revenue": 0,
- "revenue_percent": 0,
- "revenue_type": "RPA"
}
], - "meta": {
- "links": {
- "next": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}, - "prev": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}
}, - "total_count": 0,
- "total_page": 0
}
}You can create an offer event in an offer.
| integrationID required | string The Integration ID |
| offerID required | string The Offer ID |
A JSON object containing offer event information
| active | boolean |
| allow_multiple_events | boolean |
| description | string |
| manually_approve_events | boolean |
| name required | string |
| payout | number |
| payout_percent | number |
| payout_type | string Enum: "CPA" "CPS" "CPAxCPS" "CPC" "CPM" "PRV" |
| revenue | number |
| revenue_percent | number |
| revenue_type | string Enum: "RPA" "RPS" "RPAxRPS" "RPC" "RPM" |
{- "active": true,
- "allow_multiple_events": false,
- "description": "User submits lead form",
- "manually_approve_events": false,
- "name": "Lead Signup",
- "payout": 5,
- "payout_percent": 0,
- "payout_type": "CPA",
- "revenue": 10,
- "revenue_percent": 0,
- "revenue_type": "RPA"
}{- "created_item_id": "string"
}You can read an offer event in an offer.
| integrationID required | string The Integration ID |
| offerID required | string The Offer ID |
| offerEventID required | string The OfferEvent ID |
{- "data": {
- "active": true,
- "allow_multiple_events": true,
- "archived": true,
- "currency": "USD",
- "description": "string",
- "id": "abc123",
- "manually_approve_events": true,
- "name": "Lead Signup",
- "payout": 0,
- "payout_percent": 0,
- "payout_type": "CPA",
- "revenue": 0,
- "revenue_percent": 0,
- "revenue_type": "RPA"
}
}You can update an offer event in an offer.
| integrationID required | string The Integration ID |
| offerID required | string The Offer ID |
| offerEventID required | string The OfferEvent ID |
A JSON object containing offer event information
| active | boolean |
| allow_multiple_events | boolean |
| description | string |
| manually_approve_events | boolean |
| name required | string |
| payout | number |
| payout_percent | number |
| payout_type | string Enum: "CPA" "CPS" "CPAxCPS" "CPC" "CPM" "PRV" |
| revenue | number |
| revenue_percent | number |
| revenue_type | string Enum: "RPA" "RPS" "RPAxRPS" "RPC" "RPM" |
{- "active": true,
- "allow_multiple_events": false,
- "description": "User submits lead form",
- "manually_approve_events": false,
- "name": "Lead Signup",
- "payout": 5,
- "payout_percent": 0,
- "payout_type": "CPA",
- "revenue": 10,
- "revenue_percent": 0,
- "revenue_type": "RPA"
}{ }Manage the destination URLs attached to an offer. Landing pages define redirect and preview URLs, optional publisher-visible destinations, active/archive state, link-test behavior, and the incremental landing-page IDs publishers can reference in tracking links.
Returns paginated Integr8 link test logs scoped to the authenticated user's organization. Additional filtering by integration_id, advertiser_incremental_id, offer_incremental_id, or landing_page_incremental_id is available via query params.
| start_time | string Fetch data where timestamp is starting from this date time (format: 2006-01-02 15:04:05) |
| end_time | string Fetch data where timestamp is until this date time (format: 2006-01-02 15:04:05) |
| sort | string sort |
| page[number] | integer The page number |
| page[size] | integer How many items per page to return |
| timezone | string Optional IANA timezone, Defaults to UTC |
{- "data": [
- {
- "advertiser": "string",
- "advertiser_db_id": "string",
- "advertiser_incremental_id": 0,
- "allowed_domains": [
- "string"
], - "bytes_transferred": 0,
- "custom_user_agent": "string",
- "deeplink_path": "string",
- "device": "windows",
- "duration_ms": 0,
- "error_message": "string",
- "failed_reason": "string",
- "final_domain": "string",
- "final_url": "string",
- "integration_id": "string",
- "landing_page_incremental_id": 0,
- "max_redirects": 300,
- "offer": "string",
- "offer_db_id": "string",
- "offer_incremental_id": 0,
- "organization_id": "string",
- "proxy_country": "string",
- "proxy_error": "string",
- "proxy_failed": true,
- "proxy_used": true,
- "redirect_chains": [
- {
- "encoded_data_length": 0,
- "error": "string",
- "received_time": "string",
- "redirect_type": "string",
- "request_id": "string",
- "requested_time": "string",
- "response_time_ms": 0,
- "status_code": 0,
- "url": "string"
}
], - "redirect_count": 0,
- "request_id": "string",
- "retries": 0,
- "success": true,
- "test_url": "string",
- "test_url_domain": "string",
- "timestamp": "string",
- "transfer_limited": true,
- "transfer_preview": "string",
- "transfer_reason": "string",
- "user_agent": "string"
}
], - "meta": {
- "links": {
- "next": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}, - "prev": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}
}, - "total_count": 0,
- "total_page": 0
}
}Returns Integr8 link test failed-reason chart data scoped to the authenticated user's organization.
| start_time required | string Fetch data where timestamp is starting from this date time (format: 2006-01-02 15:04:05) |
| end_time required | string Fetch data where timestamp is until this date time (format: 2006-01-02 15:04:05) |
{- "data": {
- "legend": {
- "data": [
- "string"
], - "icon": "string",
- "itemHeight": 0,
- "itemWidth": 0,
- "show": true,
- "top": "string"
}, - "series": [
- {
- "color": "string",
- "data": null,
- "itemStyle": {
- "color": "string"
}, - "name": "string",
- "stack": "string",
- "symbol": "string",
- "type": 0
}
], - "title": {
- "left": "string",
- "show": true,
- "subtext": "string",
- "subtextStyle": {
- "color": "string",
- "fontSize": 0
}, - "text": "string",
- "textStyle": {
- "color": "string",
- "fontSize": 0
}, - "top": "string"
}, - "tooltip": {
- "axisPointer": {
- "type": "string"
}, - "order": "string",
- "show": true,
- "trigger": "string"
}, - "xAxis": {
- "axisLabel": {
- "formatter": "string",
- "show": true
}, - "axisLine": {
- "show": true
}, - "axisTick": {
- "show": true
}, - "data": [
- "string"
], - "show": true,
- "type": "string"
}, - "yAxis": {
- "axisLabel": {
- "formatter": "string",
- "show": true
}, - "axisLine": {
- "show": true
}, - "axisTick": {
- "show": true
}, - "data": [
- "string"
], - "minInterval": 0,
- "show": true,
- "splitLine": {
- "show": true
}, - "type": "string"
}
}
}Returns Integr8 link test status chart data scoped to the authenticated user's organization.
| start_time required | string Fetch data where timestamp is starting from this date time (format: 2006-01-02 15:04:05) |
| end_time required | string Fetch data where timestamp is until this date time (format: 2006-01-02 15:04:05) |
{- "data": {
- "legend": {
- "data": [
- "string"
], - "icon": "string",
- "itemHeight": 0,
- "itemWidth": 0,
- "show": true,
- "top": "string"
}, - "series": [
- {
- "color": "string",
- "data": null,
- "itemStyle": {
- "color": "string"
}, - "name": "string",
- "stack": "string",
- "symbol": "string",
- "type": 0
}
], - "title": {
- "left": "string",
- "show": true,
- "subtext": "string",
- "subtextStyle": {
- "color": "string",
- "fontSize": 0
}, - "text": "string",
- "textStyle": {
- "color": "string",
- "fontSize": 0
}, - "top": "string"
}, - "tooltip": {
- "axisPointer": {
- "type": "string"
}, - "order": "string",
- "show": true,
- "trigger": "string"
}, - "xAxis": {
- "axisLabel": {
- "formatter": "string",
- "show": true
}, - "axisLine": {
- "show": true
}, - "axisTick": {
- "show": true
}, - "data": [
- "string"
], - "show": true,
- "type": "string"
}, - "yAxis": {
- "axisLabel": {
- "formatter": "string",
- "show": true
}, - "axisLine": {
- "show": true
}, - "axisTick": {
- "show": true
}, - "data": [
- "string"
], - "minInterval": 0,
- "show": true,
- "splitLine": {
- "show": true
}, - "type": "string"
}
}
}Returns grouped Integr8 link test logs scoped to the authenticated user's organization.
| start_time required | string Fetch data where timestamp is starting from this date time (format: 2006-01-02 15:04:05) |
| end_time required | string Fetch data where timestamp is until this date time (format: 2006-01-02 15:04:05) |
| fields | string Fields to include: integration_id, advertiser, advertiser_incremental_id, offer, offer_incremental_id, landing_page_incremental_id, test_url_domain, final_domain, proxy_country, device |
| sort | string Sort the order of rows by this column |
| page[number] | integer The page number |
| page[size] | integer How many items per page to return |
| timezone | string Optional IANA timezone, Defaults to UTC |
{- "data": [
- {
- "advertiser": "string",
- "advertiser_db_id": "string",
- "advertiser_incremental_id": 0,
- "deep_link_failed_rate": 0,
- "deep_link_failed_total": 0,
- "device": "string",
- "error_total": 0,
- "failed_total": 0,
- "final_domain": "string",
- "final_domain_failed_rate": 0,
- "final_domain_failed_total": 0,
- "integration_id": "string",
- "landing_page_incremental_id": 0,
- "offer": "string",
- "offer_db_id": "string",
- "offer_incremental_id": 0,
- "organization_id": "string",
- "proxy_country": "string",
- "success_rate": 0,
- "success_total": 0,
- "test_url_domain": "string",
- "total": 0
}
], - "meta": {
- "links": {
- "next": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}, - "prev": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}
}, - "total_count": 0,
- "total_page": 0
}
}Returns Integr8 link test total cards scoped to the authenticated user's organization.
| time_period required | string Enum: "Yesterday" "Today" "Last7D" "Last30D" The time period to get the totals for |
| timezone | string Optional IANA timezone, Defaults to UTC |
| integration_id | string Filter by integration ID |
{- "data": {
- "error_total": 0,
- "failed_total": 0,
- "success_total": 0,
- "total": 0
}
}Returns a single Integr8 link test log by request ID, scoped to the authenticated user's organization.
| id required | string The Request ID |
{- "data": {
- "advertiser": "string",
- "advertiser_db_id": "string",
- "advertiser_incremental_id": 0,
- "allowed_domains": [
- "string"
], - "bytes_transferred": 0,
- "custom_user_agent": "string",
- "deeplink_path": "string",
- "device": "windows",
- "duration_ms": 0,
- "error_message": "string",
- "failed_reason": "string",
- "final_domain": "string",
- "final_url": "string",
- "integration_id": "string",
- "landing_page_incremental_id": 0,
- "max_redirects": 300,
- "offer": "string",
- "offer_db_id": "string",
- "offer_incremental_id": 0,
- "organization_id": "string",
- "proxy_country": "string",
- "proxy_error": "string",
- "proxy_failed": true,
- "proxy_used": true,
- "redirect_chains": [
- {
- "encoded_data_length": 0,
- "error": "string",
- "received_time": "string",
- "redirect_type": "string",
- "request_id": "string",
- "requested_time": "string",
- "response_time_ms": 0,
- "status_code": 0,
- "url": "string"
}
], - "redirect_count": 0,
- "request_id": "string",
- "retries": 0,
- "success": true,
- "test_url": "string",
- "test_url_domain": "string",
- "timestamp": "string",
- "transfer_limited": true,
- "transfer_preview": "string",
- "transfer_reason": "string",
- "user_agent": "string"
}
}You can list all offer landing pages within an offer.
| integrationID required | string The Integration ID |
| offerID required | string The Offer ID |
{- "data": [
- {
- "active": true,
- "archived": true,
- "hide_from_publishers": true,
- "id": "abc123",
- "name": "Homepage",
- "preview_url": "string",
- "redirect_url": "string"
}
], - "meta": {
- "links": {
- "next": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}, - "prev": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}
}, - "total_count": 0,
- "total_page": 0
}
}You can create an offer landing page in an offer.
| integrationID required | string The Integration ID |
| offerID required | string The Offer ID |
A JSON object containing offer landing page information
| active | boolean |
| hide_from_publishers | boolean |
| name required | string |
| preview_url | string |
| redirect_url required | string |
{- "active": true,
- "hide_from_publishers": false,
- "name": "Homepage",
}{- "created_item_id": "string"
}Runs a redirect link test against the offer default_offer_landing_page.redirect_url. The URL and test configuration are derived server-side from the offer and its targeting settings.
| integrationID required | string The Integration ID |
| offerID required | string The Offer ID |
{- "advertiser": "string",
- "advertiser_db_id": "string",
- "advertiser_incremental_id": 0,
- "allowed_domains": [
- "string"
], - "bytes_transferred": 0,
- "custom_user_agent": "string",
- "deeplink_path": "string",
- "device": "windows",
- "duration_ms": 0,
- "error_message": "string",
- "failed_reason": "string",
- "final_domain": "string",
- "final_url": "string",
- "integration_id": "string",
- "landing_page_incremental_id": 0,
- "max_redirects": 300,
- "offer": "string",
- "offer_db_id": "string",
- "offer_incremental_id": 0,
- "organization_id": "string",
- "proxy_country": "string",
- "proxy_error": "string",
- "proxy_failed": true,
- "proxy_used": true,
- "redirect_chains": [
- {
- "encoded_data_length": 0,
- "error": "string",
- "received_time": "string",
- "redirect_type": "string",
- "request_id": "string",
- "requested_time": "string",
- "response_time_ms": 0,
- "status_code": 0,
- "url": "string"
}
], - "redirect_count": 0,
- "request_id": "string",
- "retries": 0,
- "success": true,
- "test_url": "string",
- "test_url_domain": "string",
- "timestamp": "string",
- "transfer_limited": true,
- "transfer_preview": "string",
- "transfer_reason": "string",
- "user_agent": "string"
}You can read an offer landing page in an offer.
| integrationID required | string The Integration ID |
| offerID required | string The Offer ID |
| offerLandingPageID required | string The OfferLandingPage ID |
{- "data": {
- "active": true,
- "archived": true,
- "hide_from_publishers": true,
- "id": "abc123",
- "name": "Homepage",
- "preview_url": "string",
- "redirect_url": "string"
}
}You can update an offer landing page in an offer.
| integrationID required | string The Integration ID |
| offerID required | string The Offer ID |
| offerLandingPageID required | string The OfferLandingPage ID |
A JSON object containing offer landing page information
| active | boolean |
| hide_from_publishers | boolean |
| name required | string |
| preview_url | string |
| redirect_url required | string |
{- "active": true,
- "hide_from_publishers": false,
- "name": "Homepage",
}{ }Runs a redirect link test against the landing page redirect_url. The URL and test configuration are derived server-side from the offer landing page and its targeting settings.
| integrationID required | string The Integration ID |
| offerID required | string The Offer ID |
| offerLandingPageID required | string The OfferLandingPage ID |
{- "advertiser": "string",
- "advertiser_db_id": "string",
- "advertiser_incremental_id": 0,
- "allowed_domains": [
- "string"
], - "bytes_transferred": 0,
- "custom_user_agent": "string",
- "deeplink_path": "string",
- "device": "windows",
- "duration_ms": 0,
- "error_message": "string",
- "failed_reason": "string",
- "final_domain": "string",
- "final_url": "string",
- "integration_id": "string",
- "landing_page_incremental_id": 0,
- "max_redirects": 300,
- "offer": "string",
- "offer_db_id": "string",
- "offer_incremental_id": 0,
- "organization_id": "string",
- "proxy_country": "string",
- "proxy_error": "string",
- "proxy_failed": true,
- "proxy_used": true,
- "redirect_chains": [
- {
- "encoded_data_length": 0,
- "error": "string",
- "received_time": "string",
- "redirect_type": "string",
- "request_id": "string",
- "requested_time": "string",
- "response_time_ms": 0,
- "status_code": 0,
- "url": "string"
}
], - "redirect_count": 0,
- "request_id": "string",
- "retries": 0,
- "success": true,
- "test_url": "string",
- "test_url_domain": "string",
- "timestamp": "string",
- "transfer_limited": true,
- "transfer_preview": "string",
- "transfer_reason": "string",
- "user_agent": "string"
}Manage the partners that send traffic to your offers. Publisher records contain company profile and billing details, promotional methods, tracking domains, manager assignment, tags, fraud visibility settings, postback manager access, and default conversion throttling behavior.
List multiple Publishers using pagination and filtering.
{- "data": [
- {
- "active": true,
- "address": "string",
- "archived": true,
- "city": "string",
- "company_name": "string",
- "countries": [
- "string"
], - "country": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "description": "string",
- "email": "string",
- "fraud_visibility_enabled": true,
- "id": "abc123",
- "incremental_id": 1,
- "manager_email": "string",
- "manager_id": "string",
- "manager_name": "string",
- "messenger": "string",
- "name": "string",
- "name_with_id": "Acme Media [1]",
- "pending": true,
- "phone": "string",
- "postback_manager_enabled": true,
- "promotional_method": [
- "string"
], - "timezone": "string",
- "tracking_domain_ids": [
- "string"
], - "updated_at": "2019-08-24T14:15:22Z",
- "website": "string"
}
], - "meta": {
- "links": {
- "next": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}, - "prev": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}
}, - "total_count": 0,
- "total_page": 0
}
}Create a new Publisher.
A JSON object containing publisher information
| active | boolean |
| address | string |
| city | string |
| company_name | string |
| countries | Array of strings |
| country | string |
| description | string |
string | |
| fraud_visibility_enabled | boolean |
| manager_id | string |
| messenger | string |
| name required | string |
| phone | string |
| postback_manager_enabled | boolean |
| promotional_method | Array of strings Items Enum: "Content" "Email" "Search" "Social" "Display" "Native" "Push" "SMS" "Other" |
| timezone | string |
| tracking_domain_ids | Array of strings |
| website | string |
{- "active": true,
- "address": "123 Main St",
- "city": "New York",
- "company_name": "Acme Media Ltd",
- "countries": [
- "string"
], - "country": "US",
- "description": "Top-tier affiliate publisher",
- "email": "jane.doe@acmemedia.com",
- "fraud_visibility_enabled": true,
- "manager_id": "mgr123",
- "messenger": "jane_doe",
- "name": "Acme Media",
- "phone": "+1-555-0100",
- "postback_manager_enabled": true,
- "promotional_method": [
- "Content"
], - "timezone": "America/New_York",
- "tracking_domain_ids": [
- "string"
],
}{- "created_item_id": "string"
}Bulk update Publishers status by providing an array of Publisher IDs and the new status.
An array of publisher IDs to update and the new status
| active | boolean |
| data | Array of strings |
{- "active": true,
- "data": [
- "[\"id1\"",
- "\"id2\"]"
]
}{ }Bulk delete Publishers by providing an array of Publisher IDs.
An array of publisher IDs to delete
| data | Array of strings |
{- "data": [
- "[\"id1\"",
- "\"id2\"]"
]
}{ }Get a Publisher information.
| publisherID required | string The Publisher ID |
{- "data": {
- "active": true,
- "address": "string",
- "archived": true,
- "city": "string",
- "company_name": "string",
- "countries": [
- "string"
], - "country": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "description": "string",
- "email": "string",
- "fraud_visibility_enabled": true,
- "id": "abc123",
- "incremental_id": 1,
- "manager_email": "string",
- "manager_id": "string",
- "manager_name": "string",
- "messenger": "string",
- "name": "string",
- "name_with_id": "Acme Media [1]",
- "pending": true,
- "phone": "string",
- "postback_manager_enabled": true,
- "promotional_method": [
- "string"
], - "timezone": "string",
- "tracking_domain_ids": [
- "string"
], - "updated_at": "2019-08-24T14:15:22Z",
- "website": "string"
}
}Update a Publisher information.
| publisherID required | string The Publisher ID |
A JSON object containing publisher information
| active | boolean |
| address | string |
| city | string |
| company_name | string |
| countries | Array of strings |
| country | string |
| description | string |
string | |
| fraud_visibility_enabled | boolean |
| manager_id | string |
| messenger | string |
| name required | string |
| phone | string |
| postback_manager_enabled | boolean |
| promotional_method | Array of strings Items Enum: "Content" "Email" "Search" "Social" "Display" "Native" "Push" "SMS" "Other" |
| timezone | string |
| tracking_domain_ids | Array of strings |
| website | string |
{- "active": true,
- "address": "123 Main St",
- "city": "New York",
- "company_name": "Acme Media Ltd",
- "countries": [
- "string"
], - "country": "US",
- "description": "Top-tier affiliate publisher",
- "email": "jane.doe@acmemedia.com",
- "fraud_visibility_enabled": true,
- "manager_id": "mgr123",
- "messenger": "jane_doe",
- "name": "Acme Media",
- "phone": "+1-555-0100",
- "postback_manager_enabled": true,
- "promotional_method": [
- "Content"
], - "timezone": "America/New_York",
- "tracking_domain_ids": [
- "string"
],
}{ }Manage login and API access for users who belong to a publisher account. These endpoints maintain partner user profiles, account status, API access enablement, notes, signup metadata, and the publisher-level permissions inherited from the parent publisher.
List all publisher users for a publisher.
| publisherID required | string The Publisher ID |
{- "data": [
- {
- "created_at": "2019-08-24T14:15:22Z",
- "description": "Acme Publisher User",
- "email": "john.smith@acmecorp.com",
- "first_name": "John",
- "fraud_visibility_enabled": true,
- "id": "abc123",
- "last_name": "Smith",
- "postback_manager_enabled": true,
- "publisher_id": "def456",
- "publisher_incremental_id": 1,
- "status": "Active",
- "timezone": "UTC",
- "updated_at": "2019-08-24T14:15:22Z"
}
], - "meta": {
- "links": {
- "next": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}, - "prev": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}
}, - "total_count": 0,
- "total_page": 0
}
}Create a new publisher user for a publisher.
| publisherID required | string The Publisher ID |
Publisher User details
| created_at | string <date-time> |
| description | string |
string | |
| first_name | string |
| fraud_visibility_enabled | boolean |
| id | string |
| last_name | string |
| postback_manager_enabled | boolean |
| publisher_id | string |
| publisher_incremental_id | integer |
| status | string Enum: "Active" "Deactivated" "Suspended" |
| timezone | string |
| updated_at | string <date-time> |
{- "created_at": "2019-08-24T14:15:22Z",
- "description": "Acme Publisher User",
- "email": "john.smith@acmecorp.com",
- "first_name": "John",
- "fraud_visibility_enabled": true,
- "id": "abc123",
- "last_name": "Smith",
- "postback_manager_enabled": true,
- "publisher_id": "def456",
- "publisher_incremental_id": 1,
- "status": "Active",
- "timezone": "UTC",
- "updated_at": "2019-08-24T14:15:22Z"
}{- "created_item_id": "string"
}Get a publisher user by ID.
| publisherID required | string The Publisher ID |
| publisherUserID required | string The Publisher User ID |
{- "data": {
- "created_at": "2019-08-24T14:15:22Z",
- "description": "Acme Publisher User",
- "email": "john.smith@acmecorp.com",
- "first_name": "John",
- "fraud_visibility_enabled": true,
- "id": "abc123",
- "last_name": "Smith",
- "postback_manager_enabled": true,
- "publisher_id": "def456",
- "publisher_incremental_id": 1,
- "status": "Active",
- "timezone": "UTC",
- "updated_at": "2019-08-24T14:15:22Z"
}
}Update a publisher user's profile.
| publisherID required | string The Publisher ID |
| publisherUserID required | string The Publisher User ID |
Patch payload
string | |
| first_name | string |
| last_name | string |
| notes | string |
| timezone | string |
{- "email": "john.smith@acmecorp.com",
- "first_name": "John",
- "last_name": "Smith",
- "notes": "Acme Publisher User",
- "timezone": "UTC"
}{ }Manage known external sub_id values for a publisher. A managed Sub ID maps a URL-safe tracking value to a readable name, description, and optional external reference link so teams can identify publisher traffic sources consistently in tracking and reporting.
List sub IDs for the authenticated publisher.
| organizationID required | string The Organization ID |
{- "data": [
- {
- "created_at": "string",
- "description": "string",
- "external_id": "string",
- "external_link": "string",
- "id": "string",
- "integr8_integration_id": "string",
- "last_updated_by": "string",
- "name": "string",
- "name_with_id": "string",
- "organization": "string",
- "publisher_id": "string",
- "publisher_incremental_id": 0,
- "publisher_name_with_id": "string",
- "updated_at": "string"
}
], - "meta": {
- "links": {
- "next": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}, - "prev": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}
}, - "total_count": 0,
- "total_page": 0
}
}Get one sub ID for the authenticated publisher.
| organizationID required | string The Organization ID |
| publisherSubID required | string Publisher sub ID |
{- "data": {
- "created_at": "string",
- "description": "string",
- "external_id": "string",
- "external_link": "string",
- "id": "string",
- "integr8_integration_id": "string",
- "last_updated_by": "string",
- "name": "string",
- "name_with_id": "string",
- "organization": "string",
- "publisher_id": "string",
- "publisher_incremental_id": 0,
- "publisher_name_with_id": "string",
- "updated_at": "string"
}
}List sub IDs for a publisher.
| publisherID required | string Publisher ID |
{- "data": [
- {
- "created_at": "string",
- "description": "string",
- "external_id": "string",
- "external_link": "string",
- "id": "string",
- "integr8_integration_id": "string",
- "last_updated_by": "string",
- "name": "string",
- "name_with_id": "string",
- "organization": "string",
- "publisher_id": "string",
- "publisher_incremental_id": 0,
- "publisher_name_with_id": "string",
- "updated_at": "string"
}
], - "meta": {
- "links": {
- "next": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}, - "prev": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}
}, - "total_count": 0,
- "total_page": 0
}
}Create one sub ID for a publisher.
| publisherID required | string Publisher ID |
Publisher sub ID data
| description | string <= 2000 characters Optional notes describing what this external SubID represents or how it is used. |
| external_id required | string <= 50 characters This is your Sub ID (sub_id) value that will be seen in tracking and reporting.
It must have max 50 characters and must be URL compatible.
Allowed characters: |
| external_link | string <= 255 characters Optional URL linking this managed SubID to an external system or reference page. |
| name required | string <= 100 characters The name used to identify the external SubID in management views. |
{- "description": "string",
- "external_id": "string",
- "external_link": "string",
- "name": "string"
}{- "created_item_id": "string"
}Create multiple sub IDs for a publisher.
| publisherID required | string Publisher ID |
Publisher sub IDs
Array of objects (csapi.PublisherSubID) |
{- "data": [
- {
- "description": "string",
- "external_id": "string",
- "external_link": "string",
- "name": "string"
}
]
}{ }Delete multiple sub IDs from a publisher.
| publisherID required | string Publisher ID |
Publisher sub IDs
| data | Array of strings |
{- "data": [
- "string"
]
}{ }Get one sub ID from a publisher.
| publisherID required | string Publisher ID |
| publisherSubID required | string Publisher sub ID |
{- "data": {
- "created_at": "string",
- "description": "string",
- "external_id": "string",
- "external_link": "string",
- "id": "string",
- "integr8_integration_id": "string",
- "last_updated_by": "string",
- "name": "string",
- "name_with_id": "string",
- "organization": "string",
- "publisher_id": "string",
- "publisher_incremental_id": 0,
- "publisher_name_with_id": "string",
- "updated_at": "string"
}
}Update one sub ID for a publisher.
| publisherID required | string Publisher ID |
| publisherSubID required | string Publisher sub ID |
Publisher sub ID data
| description | string |
| external_id | string |
| external_link | string |
| name | string |
{- "description": "string",
- "external_id": "string",
- "external_link": "string",
- "name": "string"
}{ }Block specific publisher sub_id values for a given publisher and offer combination. Use these records to stop or reject traffic from problematic external traffic sources while keeping the block tied to the affected publisher, offer, and explanatory description.
You can list all blocked subids.
| filter[publisher_incremental_id][eq_n] | integer The Publisher's Incremental ID |
| filter[offer_incremental_id][eq_n] | integer The Offer's Incremental ID |
{- "data": [
- {
- "created_at": "string",
- "description": "string",
- "id": "string",
- "last_updated_by": "string",
- "offer_id": "string",
- "offer_incremental_id": 0,
- "offer_name": "string",
- "organization": "string",
- "publisher_id": "string",
- "publisher_incremental_id": 0,
- "publisher_name": "string",
- "sub_id": "string",
- "updated_at": "string"
}
], - "meta": {
- "links": {
- "next": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}, - "prev": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}
}, - "total_count": 0,
- "total_page": 0
}
}You can create a blocked subid.
A JSON object containing BlockedSubID information
| description | string <= 255 characters |
| offer_incremental_id required | integer |
| organization required | string |
| publisher_incremental_id required | integer |
| sub_id required | string <= 30 characters |
{- "description": "string",
- "offer_incremental_id": 0,
- "organization": "string",
- "publisher_incremental_id": 0,
- "sub_id": "string"
}{- "created_item_id": "string"
}A super admin can delete many Blocked SubIDs
array of BlockedSubID ids
| data | Array of strings |
{- "data": [
- "string"
]
}{ }You can read a blocked subid.
| blockedSubID_ID required | string The BlockedSubID ID |
{- "data": {
- "created_at": "string",
- "description": "string",
- "id": "string",
- "last_updated_by": "string",
- "offer_id": "string",
- "offer_incremental_id": 0,
- "offer_name": "string",
- "organization": "string",
- "publisher_id": "string",
- "publisher_incremental_id": 0,
- "publisher_name": "string",
- "sub_id": "string",
- "updated_at": "string"
}
}You can update a blocked subid.
| blockedSubID_ID required | string The BlockedSubID ID |
A JSON object containing BlockedSubID information
| description | string |
{- "description": "string"
}{ }Manage publisher-specific payout and revenue overrides for an offer or offer event. Custom payouts let you replace the default commercial terms for a selected publisher, offer, and optional event while preserving lookup details such as names, IDs, currency, and migration metadata.
You can list all custom payouts.
| filter[publisher_incremental_id][eq_n] | integer The Publisher's Incremental ID |
{- "data": [
- {
- "created_at": "string",
- "currency": "USD",
- "event_id": "string",
- "event_incremental_id": 0,
- "event_name": "string",
- "id": "string",
- "integration": "string",
- "last_updated_by": "string",
- "meta": {
- "property1": null,
- "property2": null
}, - "offer_id": "string",
- "offer_incremental_id": 0,
- "offer_name": "string",
- "organization": "string",
- "payout": 0,
- "payout_percent": 100,
- "payout_type": "Unknown",
- "platform": "Unknown",
- "publisher_id": "string",
- "publisher_incremental_id": 0,
- "publisher_name": "string",
- "revenue": 0,
- "revenue_percent": 100,
- "revenue_type": "Unknown",
- "updated_at": "string"
}
], - "meta": {
- "links": {
- "next": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}, - "prev": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}
}, - "total_count": 0,
- "total_page": 0
}
}You can create a custom payout.
A JSON object containing CustomPayout information
| event_incremental_id | integer |
object A key value pair useful for any useful migration related information | |
| offer_incremental_id required | integer |
| payout | number |
| payout_percent | number <= 100 |
| payout_type | string Enum: "Unknown" "CPA" "CPS" "CPAxCPS" "CPC" "CPM" "PRV" |
| platform | string Enum: "Unknown" "HasOffers" "Everflow" "Affise" The platform from which the data was migrated. |
| publisher_incremental_id required | integer |
| revenue | number |
| revenue_percent | number <= 100 |
| revenue_type | string Enum: "Unknown" "RPA" "RPS" "RPAxRPS" "RPC" "RPM" |
{- "event_incremental_id": 0,
- "meta": {
- "property1": null,
- "property2": null
}, - "offer_incremental_id": 0,
- "payout": 0,
- "payout_percent": 100,
- "payout_type": "Unknown",
- "platform": "Unknown",
- "publisher_incremental_id": 0,
- "revenue": 0,
- "revenue_percent": 100,
- "revenue_type": "Unknown"
}{- "created_item_id": "string"
}You can bulk delete custom payouts.
An array of custom payout IDs to delete
| data | Array of strings |
{- "data": [
- "string"
]
}{ }You can read a custom payout.
| customPayoutID required | string The CustomPayout ID |
{- "data": {
- "created_at": "string",
- "currency": "USD",
- "event_id": "string",
- "event_incremental_id": 0,
- "event_name": "string",
- "id": "string",
- "integration": "string",
- "last_updated_by": "string",
- "meta": {
- "property1": null,
- "property2": null
}, - "offer_id": "string",
- "offer_incremental_id": 0,
- "offer_name": "string",
- "organization": "string",
- "payout": 0,
- "payout_percent": 100,
- "payout_type": "Unknown",
- "platform": "Unknown",
- "publisher_id": "string",
- "publisher_incremental_id": 0,
- "publisher_name": "string",
- "revenue": 0,
- "revenue_percent": 100,
- "revenue_type": "Unknown",
- "updated_at": "string"
}
}You can update a custom payout.
| customPayoutID required | string The CustomPayout ID |
A JSON object containing CustomPayout information
| event_incremental_id | integer |
| offer_incremental_id | integer |
| payout | number |
| payout_percent | number |
| payout_type | string Enum: "Unknown" "CPA" "CPS" "CPAxCPS" "CPC" "CPM" "PRV" |
| revenue | number |
| revenue_percent | number |
| revenue_type | string Enum: "Unknown" "RPA" "RPS" "RPAxRPS" "RPC" "RPM" |
{- "event_incremental_id": 0,
- "offer_incremental_id": 0,
- "payout": 0,
- "payout_percent": 0,
- "payout_type": "Unknown",
- "revenue": 0,
- "revenue_percent": 0,
- "revenue_type": "Unknown"
}{ }Manage publisher-specific conversion throttling rules for an offer. Custom throttle records define whether throttling is active, the percentage chance to throttle, the resulting conversion status, and optional sub_id filters that narrow when the throttling rule applies.
You can list all custom throttles
| publisherID required | string The Publisher ID |
{- "data": [
- {
- "active": false,
- "additional_filters": {
- "sub_id": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_2": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_3": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_4": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_5": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_6": {
- "operator": "is any of",
- "values": [
- "string"
]
}
}, - "created_at": "string",
- "id": "string",
- "integration": "string",
- "last_updated_by": "string",
- "offer_id": "string",
- "offer_incremental_id": 0,
- "offer_name_with_id": "string",
- "organization": "string",
- "publisher_id": "string",
- "publisher_incremental_id": 0,
- "publisher_name_with_id": "string",
- "throttle_percentage": 100,
- "throttle_status": "Rejected",
- "updated_at": "string"
}
], - "meta": {
- "links": {
- "next": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}, - "prev": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}
}, - "total_count": 0,
- "total_page": 0
}
}You can add one or many custom throttles
| publisherID required | string The Publisher ID |
The custom throttle data
| active | boolean Default: false When custom throttle is active, either the offer, conversion, or event will be throttled according to throttle settings. |
object (csapi.AdditionalThrottleRateFilters) | |
| offer_incremental_id required | integer The offer that the custom throttle is assigned to. |
| publisher_incremental_id required | integer The publisher that created the custom throttle. |
| throttle_percentage required | integer <= 100 The chance that either the offer, conversion, or event will be throttled according to this percentage. |
| throttle_status | string Default: "Pending" Enum: "Rejected" "Pending" The status to be used when either the offer, conversion, or event is throttled. |
{- "active": false,
- "additional_filters": {
- "sub_id": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_2": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_3": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_4": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_5": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_6": {
- "operator": "is any of",
- "values": [
- "string"
]
}
}, - "offer_incremental_id": 0,
- "publisher_incremental_id": 0,
- "throttle_percentage": 100,
- "throttle_status": "Rejected"
}{- "created_item_id": "string"
}You can update many custom throttles active status
| publisherID required | string The Publisher ID |
The Array of Custom Throttle IDs and the status to update
| active | boolean |
| data | Array of strings |
{- "active": true,
- "data": [
- "string"
]
}{ }You can delete many custom throttles
| publisherID required | string The Publisher ID |
The Array of Custom Throttle IDs to delete
| data | Array of strings |
{- "data": [
- "string"
]
}{ }You can get a custom throttle's details
| publisherID required | string The Publisher ID |
| customThrottleID required | string The Custom Throttle ID |
{- "data": {
- "active": false,
- "additional_filters": {
- "sub_id": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_2": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_3": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_4": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_5": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_6": {
- "operator": "is any of",
- "values": [
- "string"
]
}
}, - "created_at": "string",
- "id": "string",
- "integration": "string",
- "last_updated_by": "string",
- "offer_id": "string",
- "offer_incremental_id": 0,
- "offer_name_with_id": "string",
- "organization": "string",
- "publisher_id": "string",
- "publisher_incremental_id": 0,
- "publisher_name_with_id": "string",
- "throttle_percentage": 100,
- "throttle_status": "Rejected",
- "updated_at": "string"
}
}You can update a custom throttle's fields
| publisherID required | string The Publisher ID |
| customThrottleID required | string The Custom Throttle ID |
The Custom Throttle payload
| active | boolean When custom throttle is active, either the offer, conversion, or event will be throttled according to throttle settings. |
object (csapi.AdditionalThrottleRateFilters) | |
| offer_incremental_id | integer |
| throttle_percentage | integer The chance that either the offer, conversion, or event will be throttled according to this percentage. |
| throttle_status | string Enum: "Rejected" "Pending" The status to be used when either the offer, conversion, or event is throttled. |
{- "active": true,
- "additional_filters": {
- "sub_id": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_2": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_3": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_4": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_5": {
- "operator": "is any of",
- "values": [
- "string"
]
}, - "sub_id_6": {
- "operator": "is any of",
- "values": [
- "string"
]
}
}, - "offer_incremental_id": 0,
- "throttle_percentage": 0,
- "throttle_status": "Rejected"
}{ }The Reports API page[size] limit is only 100. If you need to quickly and efficiently export a massive amount of data, we recommend to use the Download Center Export APIs.
Reports API methods use cursor-based pagination through the page[after] and page[before] parameters. Both parameters accept an existing value in transaction ID format which matches the objects real_tx_id field.
The values to use can be found under pageInfo.startCursor and pageInfo.endCursor from the response and return objects in reverse chronological order. The page[before] parameter returns objects listed before object.real_tx_id. The page[after] parameter returns objects listed after object.real_tx_id. These parameters are mutually exclusive. You can use either the page[after] or page[before] parameter, but not both simultaneously.
data.pageInfo.startCursor is the cursor of first object in the current page.data.pageInfo.endCursor is the cursor of the last object in the current page. data.pageInfo.hasNextPage shows you if there is a next page.data.pageInfo.hasPreviousPage shows you if there is a previous page.GET /api/v2/reports/v2/conversion-table?page[size]=25&integration_id={integrationID}&start_date=2025-02-01&end_date=2025-02-27
Example response:
{
"data": {
"data": [
{
"real_tx_id": "ABC"
},
{
"real_tx_id": "............"
},
{
"real_tx_id": "XYZ"
}
],
"pageInfo": {
"startCursor": "ABC",
"endCursor": "XYZ",
"hasPreviousPage": true,
"hasNextPage": true
}
}
}
Fetch the next page by adding &page[after]=XYZ in the request.
GET /api/v2/reports/v2/conversion-table?page[size]=25&integration_id={integrationID}&start_date=2025-02-01&end_date=2025-02-27&page[after]=XYZ'
Example response:
{
"data": {
"data": [
{
"real_tx_id": "{startCursor}"
},
{
"real_tx_id": "............"
},
{
"real_tx_id": "{endCursor}"
}
],
"pageInfo": {
"startCursor": "{startCursor}",
"endCursor": "{endCursor}",
"hasPreviousPage": true,
"hasNextPage": true
}
}
}
Use Get Download Center Export to check the Export object status. When the status is COMPLETED, you can use Get Download Center Export URL and use the link to download the CSV file. The other status to check for are PENDING and ERROR.
Request to Export Clicks. Get the exportID.
POST /api/v2/download-center/clicks-export/{integrationID}?start_date=2025-01-01&end_date=2025-01-02
{
"id": "{exportID}"
....
}
Check the export status using the exportID and get the artifactName:
GET /api/v2/downloadcenter-exports/{exportID}
{
"id": "{exportID}"
"status": "COMPLETED"
"artifact": {
"name": "{artifactName}
}
....
}
Get the signed URL by passing the artifactName:
GET /downloadcenter-artifact-url?artifact_name={artifactName}
{
"url": "{downloadLink}"
}
The file is in compressed zip format and inside is the CSV file.
Use Download Center to export Clicks to a CSV file. Use Reporting filters to narrow down the data.
| integrationID required | string The Integration ID |
| delimiter | string Delimiter to be used in CSV. Default is comma. |
| start_time required | string Fetch data where request_time is starting from this date time (format: 2006-01-02 15:04:05) |
| end_time required | string Fetch data where request_time is until this date time (format: 2006-01-02 15:04:05) |
| timezone | string Optional IANA timezone, Defaults to UTC |
| fields required | string The columns to include in the CSV |
| extra_parameters required | string The extra parameters data that will be converted as columns in the CSV |
{- "artifact": {
- "download_link": "string",
- "meta": {
- "id": "string",
- "organization": "string",
- "type": "string"
}, - "name": "string",
- "size": 0
}, - "created_at": "string",
- "email_config": {
- "recipient": "string",
- "referer": "string"
}, - "error": "string",
- "export_list_options": {
- "extra_parameters": [
- "string"
], - "fields": [
- "string"
], - "filters": {
- "booleans": {
- "property1": true,
- "property2": true
}, - "date_range": {
- "end": "string",
- "start": "string"
}, - "date_time_range": {
- "end": "string",
- "start": "string"
}, - "field_exists": {
- "property1": true,
- "property2": true
}, - "numbers": {
- "property1": {
- "property1": {
- "property1": [
- 0
], - "property2": [
- 0
]
}, - "property2": {
- "property1": [
- 0
], - "property2": [
- 0
]
}
}, - "property2": {
- "property1": {
- "property1": [
- 0
], - "property2": [
- 0
]
}, - "property2": {
- "property1": [
- 0
], - "property2": [
- 0
]
}
}
}, - "regex_query": {
- "field_value": "string",
- "searchable_fields": [
- "string"
]
}, - "strings": {
- "property1": {
- "property1": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "property2": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}
}, - "property2": {
- "property1": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "property2": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}
}
}, - "text_search": "string"
}
}, - "format": {
- "delimiter": "string"
}, - "guest_token": "string",
- "id": "string",
- "integration": "string",
- "last_updated_by": "string",
- "masking_config": {
- "advertiser_access": 0,
- "managed_advertisers": [
- "string"
], - "managed_publishers": [
- "string"
], - "publisher_access": 0
}, - "notify_by_email": true,
- "organization": "string",
- "platform": "24metrics",
- "reports_query_option": {
- "end_date": "string",
- "extra_parameters_as_new_fields": [
- "string"
], - "filters": {
- "property1": {
- "equal_values": [
- "string"
], - "greater_than_values": [
- 0
], - "less_than_values": [
- 0
], - "like_values": [
- "string"
], - "not_equal_values": [
- "string"
]
}, - "property2": {
- "equal_values": [
- "string"
], - "greater_than_values": [
- 0
], - "less_than_values": [
- 0
], - "like_values": [
- "string"
], - "not_equal_values": [
- "string"
]
}
}, - "include_fields": [
- "string"
], - "relative_date": "string",
- "sort_by": [
- {
- "is_descending": true,
- "name": "string"
}
], - "start_date": "string"
}, - "requested_by": "string",
- "results_meta": {
- "duration_seconds": 0,
- "range_truncated": true,
- "total": 0
}, - "status": "PENDING",
- "type": "string",
- "updated_at": "string"
}Use Download Center to export Conversions to a CSV file. Use Reporting filters to narrow down the data.
| integrationID required | string The Integration ID |
| delimiter | string Delimiter to be used in CSV. Default is comma. |
| start_time required | string Fetch data where conversion_time is starting from this date time (format: 2006-01-02 15:04:05) |
| end_time required | string Fetch data where conversion_time is until this date time (format: 2006-01-02 15:04:05) |
| timezone | string Optional IANA timezone, Defaults to UTC |
| fields required | string The columns to include in the CSV |
| extra_parameters required | string The extra parameters data that will be converted as columns in the CSV |
{- "artifact": {
- "download_link": "string",
- "meta": {
- "id": "string",
- "organization": "string",
- "type": "string"
}, - "name": "string",
- "size": 0
}, - "created_at": "string",
- "email_config": {
- "recipient": "string",
- "referer": "string"
}, - "error": "string",
- "export_list_options": {
- "extra_parameters": [
- "string"
], - "fields": [
- "string"
], - "filters": {
- "booleans": {
- "property1": true,
- "property2": true
}, - "date_range": {
- "end": "string",
- "start": "string"
}, - "date_time_range": {
- "end": "string",
- "start": "string"
}, - "field_exists": {
- "property1": true,
- "property2": true
}, - "numbers": {
- "property1": {
- "property1": {
- "property1": [
- 0
], - "property2": [
- 0
]
}, - "property2": {
- "property1": [
- 0
], - "property2": [
- 0
]
}
}, - "property2": {
- "property1": {
- "property1": [
- 0
], - "property2": [
- 0
]
}, - "property2": {
- "property1": [
- 0
], - "property2": [
- 0
]
}
}
}, - "regex_query": {
- "field_value": "string",
- "searchable_fields": [
- "string"
]
}, - "strings": {
- "property1": {
- "property1": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "property2": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}
}, - "property2": {
- "property1": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "property2": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}
}
}, - "text_search": "string"
}
}, - "format": {
- "delimiter": "string"
}, - "guest_token": "string",
- "id": "string",
- "integration": "string",
- "last_updated_by": "string",
- "masking_config": {
- "advertiser_access": 0,
- "managed_advertisers": [
- "string"
], - "managed_publishers": [
- "string"
], - "publisher_access": 0
}, - "notify_by_email": true,
- "organization": "string",
- "platform": "24metrics",
- "reports_query_option": {
- "end_date": "string",
- "extra_parameters_as_new_fields": [
- "string"
], - "filters": {
- "property1": {
- "equal_values": [
- "string"
], - "greater_than_values": [
- 0
], - "less_than_values": [
- 0
], - "like_values": [
- "string"
], - "not_equal_values": [
- "string"
]
}, - "property2": {
- "equal_values": [
- "string"
], - "greater_than_values": [
- 0
], - "less_than_values": [
- 0
], - "like_values": [
- "string"
], - "not_equal_values": [
- "string"
]
}
}, - "include_fields": [
- "string"
], - "relative_date": "string",
- "sort_by": [
- {
- "is_descending": true,
- "name": "string"
}
], - "start_date": "string"
}, - "requested_by": "string",
- "results_meta": {
- "duration_seconds": 0,
- "range_truncated": true,
- "total": 0
}, - "status": "PENDING",
- "type": "string",
- "updated_at": "string"
}Use Download Center to export Impressions to a CSV file. Use Reporting filters to narrow down the data.
| integrationID required | string The Integration ID |
| delimiter | string Delimiter to be used in CSV. Default is comma. |
| start_time required | string Fetch data where request_time is starting from this date time (format: 2006-01-02 15:04:05) |
| end_time required | string Fetch data where request_time is until this date time (format: 2006-01-02 15:04:05) |
| timezone | string Optional IANA timezone, Defaults to UTC |
| fields required | string The columns to include in the CSV |
| extra_parameters required | string The extra parameters data that will be converted as columns in the CSV |
{- "artifact": {
- "download_link": "string",
- "meta": {
- "id": "string",
- "organization": "string",
- "type": "string"
}, - "name": "string",
- "size": 0
}, - "created_at": "string",
- "email_config": {
- "recipient": "string",
- "referer": "string"
}, - "error": "string",
- "export_list_options": {
- "extra_parameters": [
- "string"
], - "fields": [
- "string"
], - "filters": {
- "booleans": {
- "property1": true,
- "property2": true
}, - "date_range": {
- "end": "string",
- "start": "string"
}, - "date_time_range": {
- "end": "string",
- "start": "string"
}, - "field_exists": {
- "property1": true,
- "property2": true
}, - "numbers": {
- "property1": {
- "property1": {
- "property1": [
- 0
], - "property2": [
- 0
]
}, - "property2": {
- "property1": [
- 0
], - "property2": [
- 0
]
}
}, - "property2": {
- "property1": {
- "property1": [
- 0
], - "property2": [
- 0
]
}, - "property2": {
- "property1": [
- 0
], - "property2": [
- 0
]
}
}
}, - "regex_query": {
- "field_value": "string",
- "searchable_fields": [
- "string"
]
}, - "strings": {
- "property1": {
- "property1": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "property2": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}
}, - "property2": {
- "property1": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "property2": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}
}
}, - "text_search": "string"
}
}, - "format": {
- "delimiter": "string"
}, - "guest_token": "string",
- "id": "string",
- "integration": "string",
- "last_updated_by": "string",
- "masking_config": {
- "advertiser_access": 0,
- "managed_advertisers": [
- "string"
], - "managed_publishers": [
- "string"
], - "publisher_access": 0
}, - "notify_by_email": true,
- "organization": "string",
- "platform": "24metrics",
- "reports_query_option": {
- "end_date": "string",
- "extra_parameters_as_new_fields": [
- "string"
], - "filters": {
- "property1": {
- "equal_values": [
- "string"
], - "greater_than_values": [
- 0
], - "less_than_values": [
- 0
], - "like_values": [
- "string"
], - "not_equal_values": [
- "string"
]
}, - "property2": {
- "equal_values": [
- "string"
], - "greater_than_values": [
- 0
], - "less_than_values": [
- 0
], - "like_values": [
- "string"
], - "not_equal_values": [
- "string"
]
}
}, - "include_fields": [
- "string"
], - "relative_date": "string",
- "sort_by": [
- {
- "is_descending": true,
- "name": "string"
}
], - "start_date": "string"
}, - "requested_by": "string",
- "results_meta": {
- "duration_seconds": 0,
- "range_truncated": true,
- "total": 0
}, - "status": "PENDING",
- "type": "string",
- "updated_at": "string"
}Use Download Center to export Postback Logs to a CSV file. Use Reporting filters to narrow down the data.
| integrationID required | string The Integration ID |
| delimiter | string Delimiter to be used in CSV. Default is comma. |
| start_time required | string The start time (format: 2006-01-02 15:04:05) |
| end_time required | string The end time (format: 2006-01-02 15:04:05) |
| timezone | string Optional IANA timezone, Defaults to UTC |
| fields required | string The columns to include in the CSV |
{- "artifact": {
- "download_link": "string",
- "meta": {
- "id": "string",
- "organization": "string",
- "type": "string"
}, - "name": "string",
- "size": 0
}, - "created_at": "string",
- "email_config": {
- "recipient": "string",
- "referer": "string"
}, - "error": "string",
- "export_list_options": {
- "extra_parameters": [
- "string"
], - "fields": [
- "string"
], - "filters": {
- "booleans": {
- "property1": true,
- "property2": true
}, - "date_range": {
- "end": "string",
- "start": "string"
}, - "date_time_range": {
- "end": "string",
- "start": "string"
}, - "field_exists": {
- "property1": true,
- "property2": true
}, - "numbers": {
- "property1": {
- "property1": {
- "property1": [
- 0
], - "property2": [
- 0
]
}, - "property2": {
- "property1": [
- 0
], - "property2": [
- 0
]
}
}, - "property2": {
- "property1": {
- "property1": [
- 0
], - "property2": [
- 0
]
}, - "property2": {
- "property1": [
- 0
], - "property2": [
- 0
]
}
}
}, - "regex_query": {
- "field_value": "string",
- "searchable_fields": [
- "string"
]
}, - "strings": {
- "property1": {
- "property1": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "property2": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}
}, - "property2": {
- "property1": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "property2": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}
}
}, - "text_search": "string"
}
}, - "format": {
- "delimiter": "string"
}, - "guest_token": "string",
- "id": "string",
- "integration": "string",
- "last_updated_by": "string",
- "masking_config": {
- "advertiser_access": 0,
- "managed_advertisers": [
- "string"
], - "managed_publishers": [
- "string"
], - "publisher_access": 0
}, - "notify_by_email": true,
- "organization": "string",
- "platform": "24metrics",
- "reports_query_option": {
- "end_date": "string",
- "extra_parameters_as_new_fields": [
- "string"
], - "filters": {
- "property1": {
- "equal_values": [
- "string"
], - "greater_than_values": [
- 0
], - "less_than_values": [
- 0
], - "like_values": [
- "string"
], - "not_equal_values": [
- "string"
]
}, - "property2": {
- "equal_values": [
- "string"
], - "greater_than_values": [
- 0
], - "less_than_values": [
- 0
], - "like_values": [
- "string"
], - "not_equal_values": [
- "string"
]
}
}, - "include_fields": [
- "string"
], - "relative_date": "string",
- "sort_by": [
- {
- "is_descending": true,
- "name": "string"
}
], - "start_date": "string"
}, - "requested_by": "string",
- "results_meta": {
- "duration_seconds": 0,
- "range_truncated": true,
- "total": 0
}, - "status": "PENDING",
- "type": "string",
- "updated_at": "string"
}Update one or more conversion records (approve, reject, or modify payout/revenue values).
Before using this endpoint, retrieve the conversion record from the Conversion Report API
to obtain the required tx_id, conversion_time, and hash values.
This API is for advanced users. Each of tx_id, conversion_time, and hash must match exactly
the values returned by the Conversion Report API — any mismatch will cause the update to be silently skipped.
A 200 OK response does not guarantee the conversion was updated. If the provided fields do not match
an existing conversion record, the request will succeed without making any changes. Always verify the
result by querying the Conversion Report API after calling this endpoint.
The update payload
| integration_id | string |
Array of objects (integr8docs.ConversionUpdateRequest) |
{- "integration_id": "string",
- "updates": [
- {
- "action": "Approve",
- "conversion_time": "string",
- "hash": "string",
- "new_rejected_advanced_reason": "string",
- "tx_id": "string",
- "update_params": {
- "payout": 0,
- "purchase_value": 0,
- "revenue": 0
}
}
]
}{- "success": true
}| integration_id required | string The Integration ID |
| start_time required | string Fetch data where request_time is starting from this date time (format: 2006-01-02 15:04:05) |
| end_time required | string Fetch data where request_time is until this date time (format: 2006-01-02 15:04:05) |
| timezone | string Optional IANA timezone, Defaults to UTC |
| page[size] required | integer The number of items to return |
| page[before] | string Fetch the previous data before this cursor |
| page[after] | string Fetch the next data after this cursor |
| filter[status] | string Enum: "Approved" "Rejected" The report's status |
| filter[offer_id] | string The report's offer id |
| filter[publisher] | string The report's publisher |
| filter[advertiser] | string The report's advertiser |
{- "data": {
- "count": 0,
- "data": [
- {
- "advertiser": "string",
- "advertiser_db_id": "string",
- "advertiser_id": "string",
- "asn": 0,
- "blocked": 0,
- "browser_language": [
- "string"
], - "browser_name": "string",
- "browser_timezone": "string",
- "browser_version": "string",
- "bundle_id": "string",
- "city": "string",
- "click_ip": "string",
- "country": "string",
- "coupon_code": "string",
- "device_id": "string",
- "device_type": "string",
- "external_transaction_id": "string",
- "extra_params.keys": [
- "string"
], - "extra_params.values": [
- "string"
], - "filter_group_id": "string",
- "final_offer": "string",
- "final_offer_id": "string",
- "fingerprint": "string",
- "integration_id": "string",
- "integration_type": "string",
- "invalid_sub_id": "string",
- "ip_network": "string",
- "is_bot": 0,
- "is_old_browser": 0,
- "is_old_os": 0,
- "isp": "string",
- "lat": 0,
- "long": 0,
- "manager_id": "string",
- "manager_name": "string",
- "monitoring_mode": 0,
- "offer": "string",
- "offer_db_id": "string",
- "offer_group_id": "string",
- "offer_id": "string",
- "organization_id": "string",
- "os_name": "string",
- "os_version": "string",
- "payout": 0,
- "postal_code": "string",
- "preview_url_enabled": 0,
- "proxy_type": "string",
- "publisher": "string",
- "publisher_db_id": "string",
- "real_advertiser": "string",
- "real_filter_group_id": "string",
- "real_offer_id": "string",
- "real_publisher": "string",
- "real_tx_id": "string",
- "referer": "string",
- "referer_categories": [
- "string"
], - "rejected_advanced_reason": "string",
- "rejected_internal_reason": "string",
- "rejected_language": "string",
- "rejected_primary_reason": "string",
- "rejected_simple_reason": "string",
- "rejection_type": "string",
- "rejections": [
- "string"
], - "request_date": "2019-08-24",
- "request_time": "2019-08-24T14:15:22Z",
- "revenue": 0,
- "risk": "string",
- "rtb_url_used": 0,
- "rtt": 0,
- "score": 0,
- "server_region": "string",
- "smart_link_id": "string",
- "smartlink_db_id": "string",
- "status": "Approved",
- "sub_id": "string",
- "sub_id_2": "string",
- "sub_id_3": "string",
- "sub_id_4": "string",
- "sub_id_5": "string",
- "sub_id_6": "string",
- "tags": [
- "string"
], - "targeting_group_id": "string",
- "tx_id": "string",
- "user_agent": "string",
- "user_email": "string",
- "uuid": "string"
}
], - "pageInfo": {
- "endCursor": "string",
- "hasNextPage": true,
- "hasPreviousPage": true,
- "startCursor": "string"
}
}
}| integration_id required | string The Integration ID |
| start_time required | string Fetch data where conversion_time is starting from this date time (format: 2006-01-02 15:04:05) |
| end_time required | string Fetch data where conversion_time is until this date time (format: 2006-01-02 15:04:05) |
| timezone | string Optional IANA timezone, Defaults to UTC |
| page[size] required | integer The number of items to return |
| page[before] | string Fetch the previous data before this cursor |
| page[after] | string Fetch the next data after this cursor |
| filter[status] | string Enum: "Approved" "Rejected" The report's status |
| filter[offer_id] | string The report's offer id |
| filter[publisher] | string The report's publisher |
| filter[advertiser] | string The report's advertiser |
{- "data": {
- "count": 0,
- "data": [
- {
- "advertiser": "string",
- "advertiser_db_id": "string",
- "advertiser_name": "string",
- "app_id": "string",
- "app_version": "string",
- "asn": 0,
- "begin_install_time": "2019-08-24T14:15:22Z",
- "browser_language": [
- "string"
], - "browser_name": "string",
- "browser_timezone": "string",
- "browser_version": "string",
- "city": "string",
- "click_ip": "string",
- "click_time": "2019-08-24T14:15:22Z",
- "click_tx_id": "string",
- "conversion_ip": "string",
- "conversion_time": "2019-08-24T14:15:22Z",
- "country": "string",
- "coupon_code": "string",
- "device_id": "string",
- "device_type": "string",
- "event_24metrics": "string",
- "event_db_id": "string",
- "event_id": 0,
- "event_name": "string",
- "event_status": 0,
- "external_transaction_id": "string",
- "extra_params.keys": [
- "string"
], - "extra_params.values": [
- "string"
], - "filter_group_id": "string",
- "fingerprint": "string",
- "finish_install_time": "2019-08-24T14:15:22Z",
- "hash": "string",
- "integration_id": "string",
- "integration_type": "string",
- "invalid_sub_id": "string",
- "ip_network": "string",
- "is_bot": 0,
- "is_click_spam": 0,
- "is_low_session_time": 0,
- "is_old_browser": 0,
- "is_old_os": 0,
- "isp": "string",
- "lat": 0,
- "long": 0,
- "manager_id": "string",
- "manager_name": "string",
- "network": "string",
- "offer": "string",
- "offer_db_id": "string",
- "offer_group_id": "string",
- "offer_id": "string",
- "offer_id_name": "string",
- "organization_id": "string",
- "os_name": "string",
- "os_version": "string",
- "payout": 0,
- "postal_code": "string",
- "postback_manager_ids": [
- "string"
], - "proxy_type": "string",
- "publisher": "string",
- "publisher_db_id": "string",
- "publisher_name": "string",
- "purchase_value": 0,
- "real_advertiser": "string",
- "real_filter_group_id": "string",
- "real_offer_id": "string",
- "real_publisher": "string",
- "real_rejected_advanced_reason": "string",
- "real_rejected_simple_reason": "string",
- "real_tx_id": "string",
- "referer": "string",
- "referer_categories": [
- "string"
], - "rejected": 0,
- "rejected_advanced_reason": "string",
- "rejected_internal_reason": "string",
- "rejected_language": "string",
- "rejected_simple_reason": "string",
- "rejection_type": "string",
- "rejections": [
- "string"
], - "request_time": "2019-08-24T14:15:22Z",
- "revenue": 0,
- "risk": "string",
- "rtt": 0,
- "score": 0,
- "server_ip": "string",
- "server_region": "string",
- "session_time": 0,
- "smart_link_id": "string",
- "smartlink_db_id": "string",
- "state": "string",
- "status": "Approved",
- "sub_id": "string",
- "sub_id_2": "string",
- "sub_id_3": "string",
- "sub_id_4": "string",
- "sub_id_5": "string",
- "sub_id_6": "string",
- "tags": [
- "string"
], - "targeting_group_id": "string",
- "third_party_rejection_reason": "string",
- "third_party_status": "string",
- "tx_id": "string",
- "user_agent": "string",
- "user_email": "string",
- "uuid": "string"
}
], - "pageInfo": {
- "endCursor": "string",
- "hasNextPage": true,
- "hasPreviousPage": true,
- "startCursor": "string"
}
}
}| integration_id required | string The Integration ID |
| start_time required | string Fetch data where request_time is starting from this date time (format: 2006-01-02 15:04:05) |
| end_time required | string Fetch data where request_time is until this date time (format: 2006-01-02 15:04:05) |
| timezone | string Optional IANA timezone, Defaults to UTC |
| page[size] required | integer The number of items to return |
| page[before] | string Fetch the previous data before this cursor |
| page[after] | string Fetch the next data after this cursor |
| filter[status] | string Enum: "Approved" "Rejected" The report's status |
| filter[offer_id] | string The report's offer id |
| filter[publisher] | string The report's publisher |
| filter[advertiser] | string The report's advertiser |
{- "data": {
- "count": 0,
- "data": [
- {
- "advertiser": "string",
- "advertiser_db_id": "string",
- "advertiser_id": "string",
- "asn": 0,
- "blocked": 0,
- "browser_language": [
- "string"
], - "browser_name": "string",
- "browser_timezone": "string",
- "browser_version": "string",
- "bundle_id": "string",
- "city": "string",
- "click_ip": "string",
- "country": "string",
- "device_id": "string",
- "device_type": "string",
- "extra_params.keys": [
- "string"
], - "extra_params.values": [
- "string"
], - "filter_group_id": "string",
- "fingerprint": "string",
- "integration_id": "string",
- "integration_type": "string",
- "invalid_sub_id": "string",
- "ip_network": "string",
- "is_bot": 0,
- "is_old_browser": 0,
- "is_old_os": 0,
- "isp": "string",
- "lat": 0,
- "long": 0,
- "manager_id": "string",
- "manager_name": "string",
- "monitoring_mode": 0,
- "offer_db_id": "string",
- "offer_id": "string",
- "organization_id": "string",
- "os_name": "string",
- "os_version": "string",
- "payout": 0,
- "postal_code": "string",
- "proxy_type": "string",
- "publisher": "string",
- "publisher_db_id": "string",
- "real_advertiser": "string",
- "real_filter_group_id": "string",
- "real_offer_id": "string",
- "real_publisher": "string",
- "real_tx_id": "string",
- "referer": "string",
- "referer_categories": [
- "string"
], - "rejected_advanced_reason": "string",
- "rejected_internal_reason": "string",
- "rejected_language": "string",
- "rejected_primary_reason": "string",
- "rejected_simple_reason": "string",
- "rejection_type": "string",
- "rejections": [
- "string"
], - "request_date": "2019-08-24",
- "request_time": "2019-08-24T14:15:22Z",
- "revenue": 0,
- "risk": "string",
- "rtt": 0,
- "score": 0,
- "server_region": "string",
- "site_url": "string",
- "site_url_categories": [
- "string"
], - "status": "string",
- "sub_id": "string",
- "sub_id_2": "string",
- "sub_id_3": "string",
- "sub_id_4": "string",
- "sub_id_5": "string",
- "sub_id_6": "string",
- "tags": [
- "string"
], - "targeting_group_id": "string",
- "tx_id": "string",
- "user_agent": "string",
- "user_email": "string",
- "uuid": "string"
}
], - "pageInfo": {
- "endCursor": "string",
- "hasNextPage": true,
- "hasPreviousPage": true,
- "startCursor": "string"
}
}
}Create, monitor, and retrieve asynchronous CSV exports for large report datasets such as clicks, conversions, impressions, postbacks, and link tester logs. Download Center exports track processing status, query options, result metadata, email notification settings, generated artifacts, and signed download URLs.
Get the signed url for a download center file. You need this URL in order to download the file.
| artifact_name required | string The Download Export object artifact name |
{- "url": "string"
}List all the Download Center exports.
| filter[reports_query_option.filters.offer_id.equalvalues] | Array of strings The offer IDs filter used in the exported data. |
| filter[reports_query_option.filters.publisher.equalvalues] | Array of strings The publishers filter used in the exported data. |
| filter[reports_query_option.filters.advertiser.equalvalues] | Array of strings The advertisers filter used in the exported data. |
| filter[reports_query_option.filters.integration_id.equalvalues] | Array of strings The integration ID filter used in the exported data. |
| filter[reports_query_option.start_date] | string <date> The start date filter used in the exported data. This is a string and date range logic does not apply. Use this if you know the exact start date filter used during the export. |
| filter[reports_query_option.end_date] | string <date> The end date filter used in the exported data. This is a string and date range logic does not apply. Use this if you know the exact end date filter used during the export. |
| filter[status] | string Enum: "UNKNOWN" "PENDING" "IN_PROGRESS" "ERROR" "CANCELED" The report export status |
| filter[type] | string Enum: "conversion_logs" "click_logs" The report type |
| filter[results_meta.total][gte] | integer Greater than or equals to the total number of rows of exported data. |
| filter[results_meta.total][lte] | integer Less than or equals to the total number of rows of exported data. |
| filter[results_meta.duration_seconds][gte] | integer Greater than or equals to the export completion time in seconds. |
| filter[results_meta.duration_seconds][lte] | integer Less than or equals to the export completion time in seconds. |
{- "data": [
- {
- "artifact": {
- "download_link": "string",
- "meta": {
- "id": "string",
- "organization": "string",
- "type": "string"
}, - "name": "string",
- "size": 0
}, - "created_at": "string",
- "email_config": {
- "recipient": "string",
- "referer": "string"
}, - "error": "string",
- "export_list_options": {
- "extra_parameters": [
- "string"
], - "fields": [
- "string"
], - "filters": {
- "booleans": {
- "property1": true,
- "property2": true
}, - "date_range": {
- "end": "string",
- "start": "string"
}, - "date_time_range": {
- "end": "string",
- "start": "string"
}, - "field_exists": {
- "property1": true,
- "property2": true
}, - "numbers": {
- "property1": {
- "property1": {
- "property1": [
- 0
], - "property2": [
- 0
]
}, - "property2": {
- "property1": [
- 0
], - "property2": [
- 0
]
}
}, - "property2": {
- "property1": {
- "property1": [
- 0
], - "property2": [
- 0
]
}, - "property2": {
- "property1": [
- 0
], - "property2": [
- 0
]
}
}
}, - "regex_query": {
- "field_value": "string",
- "searchable_fields": [
- "string"
]
}, - "strings": {
- "property1": {
- "property1": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "property2": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}
}, - "property2": {
- "property1": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "property2": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}
}
}, - "text_search": "string"
}
}, - "format": {
- "delimiter": "string"
}, - "guest_token": "string",
- "id": "string",
- "integration": "string",
- "last_updated_by": "string",
- "masking_config": {
- "advertiser_access": 0,
- "managed_advertisers": [
- "string"
], - "managed_publishers": [
- "string"
], - "publisher_access": 0
}, - "notify_by_email": true,
- "organization": "string",
- "platform": "24metrics",
- "reports_query_option": {
- "end_date": "string",
- "extra_parameters_as_new_fields": [
- "string"
], - "filters": {
- "property1": {
- "equal_values": [
- "string"
], - "greater_than_values": [
- 0
], - "less_than_values": [
- 0
], - "like_values": [
- "string"
], - "not_equal_values": [
- "string"
]
}, - "property2": {
- "equal_values": [
- "string"
], - "greater_than_values": [
- 0
], - "less_than_values": [
- 0
], - "like_values": [
- "string"
], - "not_equal_values": [
- "string"
]
}
}, - "include_fields": [
- "string"
], - "relative_date": "string",
- "sort_by": [
- {
- "is_descending": true,
- "name": "string"
}
], - "start_date": "string"
}, - "requested_by": "string",
- "results_meta": {
- "duration_seconds": 0,
- "range_truncated": true,
- "total": 0
}, - "status": "PENDING",
- "type": "string",
- "updated_at": "string"
}
], - "meta": {
- "links": {
- "next": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}, - "prev": {
- "page[after]": "string",
- "page[before]": "string",
- "page[number]": 0,
- "page[size]": 0
}
}, - "total_count": 0,
- "total_page": 0
}
}Get the Download Center export object.
| exportID required | string The Export ID |
{- "data": {
- "artifact": {
- "download_link": "string",
- "meta": {
- "id": "string",
- "organization": "string",
- "type": "string"
}, - "name": "string",
- "size": 0
}, - "created_at": "string",
- "email_config": {
- "recipient": "string",
- "referer": "string"
}, - "error": "string",
- "export_list_options": {
- "extra_parameters": [
- "string"
], - "fields": [
- "string"
], - "filters": {
- "booleans": {
- "property1": true,
- "property2": true
}, - "date_range": {
- "end": "string",
- "start": "string"
}, - "date_time_range": {
- "end": "string",
- "start": "string"
}, - "field_exists": {
- "property1": true,
- "property2": true
}, - "numbers": {
- "property1": {
- "property1": {
- "property1": [
- 0
], - "property2": [
- 0
]
}, - "property2": {
- "property1": [
- 0
], - "property2": [
- 0
]
}
}, - "property2": {
- "property1": {
- "property1": [
- 0
], - "property2": [
- 0
]
}, - "property2": {
- "property1": [
- 0
], - "property2": [
- 0
]
}
}
}, - "regex_query": {
- "field_value": "string",
- "searchable_fields": [
- "string"
]
}, - "strings": {
- "property1": {
- "property1": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "property2": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}
}, - "property2": {
- "property1": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "property2": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}
}
}, - "text_search": "string"
}
}, - "format": {
- "delimiter": "string"
}, - "guest_token": "string",
- "id": "string",
- "integration": "string",
- "last_updated_by": "string",
- "masking_config": {
- "advertiser_access": 0,
- "managed_advertisers": [
- "string"
], - "managed_publishers": [
- "string"
], - "publisher_access": 0
}, - "notify_by_email": true,
- "organization": "string",
- "platform": "24metrics",
- "reports_query_option": {
- "end_date": "string",
- "extra_parameters_as_new_fields": [
- "string"
], - "filters": {
- "property1": {
- "equal_values": [
- "string"
], - "greater_than_values": [
- 0
], - "less_than_values": [
- 0
], - "like_values": [
- "string"
], - "not_equal_values": [
- "string"
]
}, - "property2": {
- "equal_values": [
- "string"
], - "greater_than_values": [
- 0
], - "less_than_values": [
- 0
], - "like_values": [
- "string"
], - "not_equal_values": [
- "string"
]
}
}, - "include_fields": [
- "string"
], - "relative_date": "string",
- "sort_by": [
- {
- "is_descending": true,
- "name": "string"
}
], - "start_date": "string"
}, - "requested_by": "string",
- "results_meta": {
- "duration_seconds": 0,
- "range_truncated": true,
- "total": 0
}, - "status": "PENDING",
- "type": "string",
- "updated_at": "string"
}
}