# DataFlair integration docs > Integration documentation for DataFlair.ai, Stats and the Publisher Marketplace. Each page says who calls whom. Everything you need to connect to DataFlair. ## Table of Contents ### Start here - [Introduction](https://docs.dataflair.ai/guide.md): What this documentation covers, who it is for, and where the shared conventions live. - [Getting started](https://docs.dataflair.ai/guide/getting-started.md): The shortest path to a first successful call to the DataFlair Toplist API. ### Reference - [Authentication](https://docs.dataflair.ai/guide/authentication.md): The two authentication modes for the Toplist API, the bearer header, scopes and IP allowlisting. - [Error handling](https://docs.dataflair.ai/guide/error-handling.md): The JSON error shapes and status codes used by the Toplist API. - [AI and MCP](https://docs.dataflair.ai/guide/ai-and-mcp.md): Connect the DataFlair docs to your AI assistant over MCP, copy a page as a prompt, or read llms.txt. Read only and public, with no account and no key. ### Start here - [Toplist API overview](https://docs.dataflair.ai/dataflair/toplist-api.md): Base URL, endpoints, scopes, rate limits and API versions for the DataFlair Toplist API. - [Toplist API authentication](https://docs.dataflair.ai/dataflair/toplist-api/authentication.md): Static token and HMAC key exchange for the Toplist API, with request and response examples. ### Implement - [Toplists endpoints](https://docs.dataflair.ai/dataflair/toplist-api/toplists-endpoint.md): List toplists by template or geo, fetch one toplist, and read the response shape. - [Brands endpoint](https://docs.dataflair.ai/dataflair/toplist-api/brands-endpoint.md): List every active brand in the tenant and see how the shape differs from a brand inside a toplist. - [Integration model](https://docs.dataflair.ai/dataflair/toplist-api/integration-model.md): Fetch toplists ahead of time and resolve the visitor geo locally at render time. - [Geo-targeting and compliance](https://docs.dataflair.ai/dataflair/toplist-api/geo-targeting.md): The geo object and the resolution algorithm your integration must implement before rendering. ### Verify - [Toplist API playground](https://docs.dataflair.ai/dataflair/toplist-api/playground.md): Send a real request to your own tenant from the browser, or copy the same request as curl, PHP, Node or Python. ### Reference - [Reference implementations](https://docs.dataflair.ai/dataflair/toplist-api/reference-implementations.md): How the DataFlair WordPress plugin consumes the Toplist API. - [WordPress plugin](https://docs.dataflair.ai/dataflair/wordpress-plugin.md): Install the DataFlair Toplists plugin, connect it to your tenant with a bearer token, sync toplists and brands, and place them with a block or a shortcode. ### Start here - [DataFlair.ai](https://docs.dataflair.ai/dataflair.md): Toplists and brands for your site. The Toplist API, the WordPress plugin, and the Jira and HubSpot integration guides. ### Toplist API ↘ - [Toplist API overview](https://docs.dataflair.ai/dataflair/toplist-api.md): Base URL, endpoints, scopes, rate limits and API versions for the DataFlair Toplist API. - [Toplist API authentication](https://docs.dataflair.ai/dataflair/toplist-api/authentication.md): Static token and HMAC key exchange for the Toplist API, with request and response examples. - [Toplists endpoints](https://docs.dataflair.ai/dataflair/toplist-api/toplists-endpoint.md): List toplists by template or geo, fetch one toplist, and read the response shape. - [Brands endpoint](https://docs.dataflair.ai/dataflair/toplist-api/brands-endpoint.md): List every active brand in the tenant and see how the shape differs from a brand inside a toplist. - [Integration model](https://docs.dataflair.ai/dataflair/toplist-api/integration-model.md): Fetch toplists ahead of time and resolve the visitor geo locally at render time. - [Geo-targeting and compliance](https://docs.dataflair.ai/dataflair/toplist-api/geo-targeting.md): The geo object and the resolution algorithm your integration must implement before rendering. - [Toplist API playground](https://docs.dataflair.ai/dataflair/toplist-api/playground.md): Send a real request to your own tenant from the browser, or copy the same request as curl, PHP, Node or Python. - [Reference implementations](https://docs.dataflair.ai/dataflair/toplist-api/reference-implementations.md): How the DataFlair WordPress plugin consumes the Toplist API. - [WordPress plugin](https://docs.dataflair.ai/dataflair/wordpress-plugin.md): Install the DataFlair Toplists plugin, connect it to your tenant with a bearer token, sync toplists and brands, and place them with a block or a shortcode. ### WordPress plugin ↘ - [WordPress plugin](https://docs.dataflair.ai/dataflair/wordpress-plugin.md): Install the DataFlair Toplists plugin, connect it to your tenant with a bearer token, sync toplists and brands, and place them with a block or a shortcode. ### Integrations - [Jira integration](https://docs.dataflair.ai/dataflair/integrations/jira.md): Connect Jira to DataFlair so approved deals create content tasks for your team. - [HubSpot integration](https://docs.dataflair.ai/dataflair/integrations/hubspot.md): Connect HubSpot to DataFlair to import Deals and Companies and keep linked records in sync. ### Start here - [Postback contract](https://docs.dataflair.ai/stats/postbacks/contract.md): Send one conversion to DataFlair Stats with a GET or POST. Endpoint, authentication, fields, responses, conversion types and rate limit. ### Implement - [Postback idempotency](https://docs.dataflair.ai/stats/postbacks/idempotency.md): How DataFlair treats a repeated postback_id, and how to retry a postback safely without double counting a conversion. - [Postback status values](https://docs.dataflair.ai/stats/postbacks/status-semantics.md): The five status values a postback can carry, what each one means in DataFlair reports, and the default. ### Verify - [Postback request builder](https://docs.dataflair.ai/stats/postbacks/request-builder.md): Build the curl command for a postback from its fields. The builder does not send it. - [Testing postbacks](https://docs.dataflair.ai/stats/postbacks/testing.md): Three tools in the Stats app to test a postback integration, and what each one records. A test event does not earn commission. ### Start here - [Operator Reporting API](https://docs.dataflair.ai/stats/operator-api/contract.md): The read-only daily aggregate endpoint you build so DataFlair Stats can pull registrations, first deposits and deposits for each affiliate. ### Implement - [Operator API metrics](https://docs.dataflair.ai/stats/operator-api/metrics.md): What each metric in a daily row means, how DataFlair reads it, and what an omitted value becomes. - [Timezone and backfill](https://docs.dataflair.ai/stats/operator-api/timezone-and-backfill.md): How DataFlair sets the date range of each pull, which timezone the dates are in, and how late data is corrected. ### Verify - [Operator API fixtures](https://docs.dataflair.ai/stats/operator-api/fixtures.md): The requests DataFlair Stats sends to your Operator Reporting API endpoint, each with an answer that passes. Download them, or replay them with the conformance check. - [Operator API conformance check](https://docs.dataflair.ai/stats/operator-api/conformance.md): Replay the DataFlair fixtures against your Operator Reporting API endpoint and see which rule a failing answer breaks. It runs on your machine and needs no DataFlair account. ### Start here - [Stats](https://docs.dataflair.ai/stats.md): Affiliate tracking, conversion attribution and reporting. Postbacks, the Operator Reporting API and tracking links. ### Tracking links ↘ - [Tracking links](https://docs.dataflair.ai/stats/tracking.md): How a DataFlair tracking link redirects a click to your landing page, which parameters it adds, and what to store to send a postback later. ### Postbacks ↘ - [Postback contract](https://docs.dataflair.ai/stats/postbacks/contract.md): Send one conversion to DataFlair Stats with a GET or POST. Endpoint, authentication, fields, responses, conversion types and rate limit. - [Postback idempotency](https://docs.dataflair.ai/stats/postbacks/idempotency.md): How DataFlair treats a repeated postback_id, and how to retry a postback safely without double counting a conversion. - [Postback status values](https://docs.dataflair.ai/stats/postbacks/status-semantics.md): The five status values a postback can carry, what each one means in DataFlair reports, and the default. - [Postback request builder](https://docs.dataflair.ai/stats/postbacks/request-builder.md): Build the curl command for a postback from its fields. The builder does not send it. - [Testing postbacks](https://docs.dataflair.ai/stats/postbacks/testing.md): Three tools in the Stats app to test a postback integration, and what each one records. A test event does not earn commission. ### Operator API ↗ - [Operator Reporting API](https://docs.dataflair.ai/stats/operator-api/contract.md): The read-only daily aggregate endpoint you build so DataFlair Stats can pull registrations, first deposits and deposits for each affiliate. - [Operator API metrics](https://docs.dataflair.ai/stats/operator-api/metrics.md): What each metric in a daily row means, how DataFlair reads it, and what an omitted value becomes. - [Timezone and backfill](https://docs.dataflair.ai/stats/operator-api/timezone-and-backfill.md): How DataFlair sets the date range of each pull, which timezone the dates are in, and how late data is corrected. - [Operator API fixtures](https://docs.dataflair.ai/stats/operator-api/fixtures.md): The requests DataFlair Stats sends to your Operator Reporting API endpoint, each with an answer that passes. Download them, or replay them with the conformance check. - [Operator API conformance check](https://docs.dataflair.ai/stats/operator-api/conformance.md): Replay the DataFlair fixtures against your Operator Reporting API endpoint and see which rule a failing answer breaks. It runs on your machine and needs no DataFlair account. ### Start here - [Ad Server API overview](https://docs.dataflair.ai/marketplace/ad-server-api/overview.md): The five endpoints your own ad server exposes so DataFlair can list inventory, forecast it, book drafts and pull delivery. - [Concepts and entity mapping](https://docs.dataflair.ai/marketplace/ad-server-api/concepts.md): The vocabulary DataFlair and your ad server share, and how DataFlair entities map onto your platform's objects. - [Authentication and connection](https://docs.dataflair.ai/marketplace/ad-server-api/authentication.md): The API key you issue to DataFlair, what DataFlair stores about your connection, and how the two systems first connect and verify. - [Inventory identity](https://docs.dataflair.ai/marketplace/ad-server-api/inventory.md): How a bookable ad slot on your platform is identified, and how DataFlair learns about your slots so an operator can map them to placements. ### Implement - [GET /health: Connect and verify](https://docs.dataflair.ai/marketplace/ad-server-api/operations/health.md): The read-only probe DataFlair runs to confirm your credential and read your account timezone, currency and capabilities. - [GET /inventory: List bookable ad slots](https://docs.dataflair.ai/marketplace/ad-server-api/operations/inventory.md): The cursor-paginated list of ad slots DataFlair maps placements to. Each slot has a stable inventory_id. - [POST /forecast: Availability and forecast](https://docs.dataflair.ai/marketplace/ad-server-api/operations/forecast.md): How many impressions a slot can deliver over a flight. DataFlair shows it to an advertiser before they book. - [POST /orders: Create draft order](https://docs.dataflair.ai/marketplace/ad-server-api/operations/orders.md): DataFlair pushes an approved reservation into your ad server as an order with draft line items. It does not activate anything. - [POST /reports: Delivery report](https://docs.dataflair.ai/marketplace/ad-server-api/operations/reports.md): Impressions and clicks per booked line over a date range. DataFlair uses them to reconcile and settle a campaign. ### Verify - [Testing your implementation](https://docs.dataflair.ai/marketplace/ad-server-api/testing.md): How to check your ad server API before you connect it, with the conformance check and the fixtures, and where the Verify button is in DataFlair. - [Fixtures](https://docs.dataflair.ai/marketplace/ad-server-api/fixtures.md): The requests DataFlair sends to your ad server, each with an answer that passes. Download them, or replay them with the conformance check. - [Conformance check](https://docs.dataflair.ai/marketplace/ad-server-api/conformance.md): Replay the DataFlair fixtures against your ad server and see which rule a failing answer breaks. It runs on your machine and needs no DataFlair account. - [Troubleshooting](https://docs.dataflair.ai/marketplace/ad-server-api/troubleshooting.md): Common failures when you connect your ad server to DataFlair, listed by what you see, with the cause and the fix. ### Go live - [Go live checklist](https://docs.dataflair.ai/marketplace/ad-server-api/go-live.md): A checklist to finish before you connect your ad server for real bookings. Each item names the problem it prevents. ### Reference - [Conventions](https://docs.dataflair.ai/marketplace/ad-server-api/conventions.md): Rules that apply to every endpoint of the Ad Server API. Transport, dates, currency, idempotency, pagination, rate limits and the error model. - [End-to-end example](https://docs.dataflair.ai/marketplace/ad-server-api/end-to-end.md): One booking followed from first connection to final reconciliation, with real request and response bodies and consistent ids. - [Errors](https://docs.dataflair.ai/marketplace/ad-server-api/errors.md): Every error code and HTTP status in the Ad Server API, what causes it, what DataFlair does, and how to fix it. - [Retries and idempotency](https://docs.dataflair.ai/marketplace/ad-server-api/retries-and-idempotency.md): What DataFlair does when your server is slow or returns an error, the real timeouts, where no retry exists, and how a repeated booking stays safe. - [API reference](https://docs.dataflair.ai/marketplace/ad-server-api/api-reference.md): The full OpenAPI contract for the Ad Server API. Browse and search every endpoint, request and response. ### Start here - [Marketplace](https://docs.dataflair.ai/marketplace.md): Sell ad inventory to advertisers. Ad tags, Google Ad Manager, Revive Adserver and the Custom Ad Server API. - [Choosing your ad server path](https://docs.dataflair.ai/marketplace/ad-server-paths.md): Four ways to serve Marketplace campaigns on your websites and apps. Ad tags only, Google Ad Manager, Revive Adserver or your own ad server. ### Serve campaigns - [Ad tags and tracking](https://docs.dataflair.ai/marketplace/ad-tags.md): The two ad tag formats, web page and ad server, and how impression and click tracking work inside the ad frame. - [Connect Google Ad Manager](https://docs.dataflair.ai/marketplace/google-ad-manager.md): Step-by-step setup for a Google Ad Manager admin. Turn on API access, add the service account, grant permissions, then connect and verify. - [Connect Revive Adserver](https://docs.dataflair.ai/marketplace/revive.md): Connect a self-hosted or managed Revive Adserver instance to DataFlair Marketplace with its base URL and a dedicated API user. ### Ad Server API ↗ - [Ad Server API overview](https://docs.dataflair.ai/marketplace/ad-server-api/overview.md): The five endpoints your own ad server exposes so DataFlair can list inventory, forecast it, book drafts and pull delivery. - [Concepts and entity mapping](https://docs.dataflair.ai/marketplace/ad-server-api/concepts.md): The vocabulary DataFlair and your ad server share, and how DataFlair entities map onto your platform's objects. - [Authentication and connection](https://docs.dataflair.ai/marketplace/ad-server-api/authentication.md): The API key you issue to DataFlair, what DataFlair stores about your connection, and how the two systems first connect and verify. - [Inventory identity](https://docs.dataflair.ai/marketplace/ad-server-api/inventory.md): How a bookable ad slot on your platform is identified, and how DataFlair learns about your slots so an operator can map them to placements. - [GET /health: Connect and verify](https://docs.dataflair.ai/marketplace/ad-server-api/operations/health.md): The read-only probe DataFlair runs to confirm your credential and read your account timezone, currency and capabilities. - [GET /inventory: List bookable ad slots](https://docs.dataflair.ai/marketplace/ad-server-api/operations/inventory.md): The cursor-paginated list of ad slots DataFlair maps placements to. Each slot has a stable inventory_id. - [POST /forecast: Availability and forecast](https://docs.dataflair.ai/marketplace/ad-server-api/operations/forecast.md): How many impressions a slot can deliver over a flight. DataFlair shows it to an advertiser before they book. - [POST /orders: Create draft order](https://docs.dataflair.ai/marketplace/ad-server-api/operations/orders.md): DataFlair pushes an approved reservation into your ad server as an order with draft line items. It does not activate anything. - [POST /reports: Delivery report](https://docs.dataflair.ai/marketplace/ad-server-api/operations/reports.md): Impressions and clicks per booked line over a date range. DataFlair uses them to reconcile and settle a campaign. - [Testing your implementation](https://docs.dataflair.ai/marketplace/ad-server-api/testing.md): How to check your ad server API before you connect it, with the conformance check and the fixtures, and where the Verify button is in DataFlair. - [Fixtures](https://docs.dataflair.ai/marketplace/ad-server-api/fixtures.md): The requests DataFlair sends to your ad server, each with an answer that passes. Download them, or replay them with the conformance check. - [Conformance check](https://docs.dataflair.ai/marketplace/ad-server-api/conformance.md): Replay the DataFlair fixtures against your ad server and see which rule a failing answer breaks. It runs on your machine and needs no DataFlair account. - [Troubleshooting](https://docs.dataflair.ai/marketplace/ad-server-api/troubleshooting.md): Common failures when you connect your ad server to DataFlair, listed by what you see, with the cause and the fix. - [Go live checklist](https://docs.dataflair.ai/marketplace/ad-server-api/go-live.md): A checklist to finish before you connect your ad server for real bookings. Each item names the problem it prevents. - [Conventions](https://docs.dataflair.ai/marketplace/ad-server-api/conventions.md): Rules that apply to every endpoint of the Ad Server API. Transport, dates, currency, idempotency, pagination, rate limits and the error model. - [End-to-end example](https://docs.dataflair.ai/marketplace/ad-server-api/end-to-end.md): One booking followed from first connection to final reconciliation, with real request and response bodies and consistent ids. - [Errors](https://docs.dataflair.ai/marketplace/ad-server-api/errors.md): Every error code and HTTP status in the Ad Server API, what causes it, what DataFlair does, and how to fix it. - [Retries and idempotency](https://docs.dataflair.ai/marketplace/ad-server-api/retries-and-idempotency.md): What DataFlair does when your server is slow or returns an error, the real timeouts, where no retry exists, and how a repeated booking stays safe. - [API reference](https://docs.dataflair.ai/marketplace/ad-server-api/api-reference.md): The full OpenAPI contract for the Ad Server API. Browse and search every endpoint, request and response.