> For the complete documentation index, see [llms.txt](https://docs.exads.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.exads.com/rtb/advertisers/exads-rtb/exads-rtb-advertisers.md).

# EXADS RTB for Advertisers

This documentation explains how advertisers can integrate their platforms with EXADS.

## Bid Request/Response Specifications <a href="#bid-requestresponse-specifications" id="bid-requestresponse-specifications"></a>

* [EXADS RTB Bid Request Specifications](/rtb/advertisers/exads-rtb/exads-rtb-advertisers-request.md)
* [EXADS RTB Bid Response Specifications](/rtb/advertisers/exads-rtb/exads-rtb-advertisers-response.md)

## Requirements <a href="#requirements" id="requirements"></a>

* EXADS allows one bid per request only.
* Supported pricing models:
  * Banner, Popunder Ads: CPM.
  * Push Notification Ads: CPM or CPC.\*
* The currency of the bid price is the currency of your EXADS account (EUR or USD).
* The advertiser must provide a valid RTB URL, this can have any GET params that might be needed by the endpoint and must be able to receive the bid either through GET or POST.

\* Pricing model to be defined in bid response.

## Supported Ad Types <a href="#supported-a-d-types" id="supported-a-d-types"></a>

* Banner: Image
* Direct Link
* Email Clicks
* Popunder
* Push Notifications: 720 x 480 and 192 x 192

## Integrating Advertising Demand from an EXADS-Powered Network <a href="#integrating-a-dvertising-demand-from-an-exads-powered-network" id="integrating-a-dvertising-demand-from-an-exads-powered-network"></a>

This step-by-step guide covers how to integrate advertising demand with a partner from another network that is powered by EXADS.

### Step 1: Setting up an account <a href="#step-1-setting-up-an-account" id="step-1-setting-up-an-account"></a>

Create an Advertiser account on your network, and share the login credentials with your partner. Enable RTB for this new account (in the Admin configuration).

### Step 2: Sharing the sites <a href="#step-2-sharing-the-sites" id="step-2-sharing-the-sites"></a>

Share each of the sites and ad placements you have available with your partner, and they provide you an endpoint for each of the campaigns.

Depending on how many sites there are, it might be easiest to share a spreadsheet with them listing all domains and endpoints. For example:

<figure><img src="https://2029801744-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGFXhoKJt1LGTXho4owe8%2Fuploads%2FVf776dyf1N6gJoKJqs8Q%2Fintegration-spreadsheet-example.png?alt=media&amp;token=3b3235f7-88b9-407e-9a93-9345b61d444d" alt=""><figcaption></figcaption></figure>

After sharing the sites, create one campaign for each of the endpoints.

### Step 3: Creating campaigns <a href="#step-3-creating-campaigns" id="step-3-creating-campaigns"></a>

Set up separate campaigns for each ad zone, by clicking on **Create Campaign** in the Admin Panel and proceeding through the five tabs for each one.

### General <a href="#general" id="general"></a>

In this tab add the general details for the campaign:

* **Name**: Give the campaign a name that will be easy to identify later, such as **Site name-Ad Zone name**.
* **Ad Group**: None. Or if you wish, you can create an ad group for each site, depending on the volume of sites you manage.
* **Categories**: Select **All**, unless you have agreed otherwise with your partner.
* **Ad Format**: Select the format that corresponds to the ad zone.
* **Campaign Type**: Exchange.

![dashboard](https://docs-advanced.exads.com/docs/assets/hires/integrate-step1.png)

* **Select a Partner**:
  * [OpenRTB v2.4](/rtb/advertisers/open-rtb/open-rtb-advertisers.md): For clients that support OpenRTB integration.
  * [EXADS RTB](/rtb/advertisers/exads-rtb/exads-rtb-advertisers.md): For clients that support EXADS RTB integration.
  * The specific Ad Exchange Partner name if it has been configured on your network.
* **Throttle**: Set this to 100, unless you have agreed otherwise with your partner or you are in a test phase.
* **RTB Automatic Throttle**: Set this to **ON** to [save resources and costs](/advertisers/campaigns/creating-a-campaign/step-1-general.md#exchange).
* **RTB Floor CPM**: Use the **Floor CPM** only if you have agreed to with your partner.
* **RTB Bid adjustment**: Set to 0%. Use this only as a last resort if you have agreed with your partner that it's necessary. This might happen if there are extremely high discrepancies, which will probably not happen.

### Ads <a href="#a-ds" id="a-ds"></a>

In this tab add the endpoint provided by your partner (there is no need to add any parameters).

![dashboard](https://docs-advanced.exads.com/docs/assets/hires/integrate-step2.png)

### Targeting <a href="#targeting" id="targeting"></a>

In this tab, select all countries and leave all other targeting options as selected by default, unless you have agreed otherwise with your partner.

![dashboard](https://docs-advanced.exads.com/docs/assets/hires/integrate-step3.png)

### Pricing & Limits <a href="#pricing--limits" id="pricing--limits"></a>

In this tab, leave the default settings, unless you have agreed otherwise with your partner.

![dashboard](https://docs-advanced.exads.com/docs/assets/hires/integrate-step4.png)

### Zones <a href="#zones" id="zones"></a>

In this tab, select only the zone that matches with the URL for the endpoint that your partner provided. If you agreed on a RON campaign, you can either select all the available zones or choose the ones you want to add/remove from the list.

![dashboard](https://docs-advanced.exads.com/docs/assets/hires/integrate-step5.png)

## Step 4: Activating campaigns <a href="#step-4-activating-campaigns" id="step-4-activating-campaigns"></a>

Once you have created a campaign, you need to activate it: First, open the traffic with a low amount of QPS (Queries per second), so you can test if everything works well (this should be managed using the campaign throttle).

## Step 5: Checking your campaign <a href="#step-5-checking-your-campaign" id="step-5-checking-your-campaign"></a>

![dashboard](https://docs-advanced.exads.com/docs/assets/hires/exads-integration-stats.png)

Once you activate the campaign, you should see the following data appearing in the **Statistics** tab. Check it to make sure that everything is working fine:

* **Queries and Success queries**: If you see **Queries** but don't see **Success** queries, then you need to focus on the **Errors** and **Error Ratio** columns. If errors appear, you should compare and confirm that your partner's integration is aligned with yours, and test/debug it using Postman. The **Avg Time** can also give some further information.
* **Response Ratio/No Bid Ratio**: This shows whether bids occur or not.
* **Win Ratio**: This data is linked to the nUrl parameter. If wins don’t appear, you should check if this nUrl is provided and returned correctly.
* **Impressions/Clicks**: If the integration is successful, there will be no errors here and there should be bids and wins happening. If there are, you will see impressions here. This is what you will bill and be billed for. Depending on the format you may see **Clicks** as well.
* **CPM/CPC**: Depending on the format and the payment model, you will see CPM and/or CPC.

## Step 6: Adding more campaigns <a href="#step-6-adding-more-campaigns" id="step-6-adding-more-campaigns"></a>

Once you have checked the campaign, keep adding campaigns and use the spreadsheet to coordinate the endpoints with your partner.

## Best Practices <a href="#best-practices" id="best-practices"></a>

* One of the simplest and most effective ways of improving connection performance is to enable HTTP Persistent Connections, also known as 'Keep-Alive'. This has a profound impact on overall performance by reducing connection management overhead as well as CPU utilization on both sides of the interface.
* The EXADS RTB specifications do not cover security other than recommending plain HTTP for performance reasons. If you need to authorize EXADS JSON/XML requests, you may whitelist [IP Networks](/rtb/ip-networks.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.exads.com/rtb/advertisers/exads-rtb/exads-rtb-advertisers.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
