# API Docs

# Campaign Management API

Encoding: **utf-8**; Content–type: **application/json**;

#### Authorization

All requests must be made with an authorization key, the GET parameter **api-key**, which you can find in your profile [https://dao.ad/en/profile](https://dao.ad/en/profile)

#### Errors

If an error occurs, the response will contain the parameter **status:“error”** and the error description **errorList**

`{"status":"error","errorList":["Error on find item: 123; campaignId: 234","Error on find item: 11111; campaignId: 234"]}`

#### Request\\Response Format

Requests that support the **POST** method can accept input parameters in **JSON format**. In this case, the **request header** Content–type: **application/json** must be specified. The request body must contain valid JSON encoded in utf-8. The **exception** is POST requests where a **file** must be passed, for example images for a creative.  
All responses are in JSON format

Example in Postman.

[![image.png](https://wiki.dao.ad/uploads/images/gallery/2026-03/scaled-1680-/image.png)](https://wiki.dao.ad/uploads/images/gallery/2026-03/image.png)

Example of a curl cli POST request in JSON format

```bash
curl 'http://daopush-api.info/api/campaign/create?adFormat=pops&api-key=••••••' \
--header 'Content-Type: application/json' \
--data '{
"name":"Api test campaign JSON",
"work_status":"paused",
"vertical_id" : 24,
"frequency_capping": 10,
"url":"https://google.com?format=json",
"limit_sum": 150.9,
"limit_click":500000,
"target":{
"category" : [9],
"quality": ["high"],
"country" : {
"UA" : 5.15,
"KZ" : 3.10,
"AZ" : 3.10
}
}
}'
```

### Campaigns

#### Campaign List

GET [http://daopush-api.info/api/campaign/list?api-key={xxxxx-key}](http://daopush-api.info/api/campaign/list?api-key=%7Bxxxxx-key%7D)

<table id="bkmrk-parameter-type-descr"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">status</td><td style="text-align: left;">string</td><td style="text-align: left;">moderation status (available values: approved, new, stopped, declined)</td><td style="text-align: left;">&amp;status=approved</td></tr><tr><td style="text-align: left;">work\_status</td><td style="text-align: left;">string</td><td style="text-align: left;">work status (paused, started, archived)</td><td style="text-align: left;">&amp;work\_status=started</td></tr><tr><td style="text-align: left;">ad\_format</td><td style="text-align: left;">string</td><td style="text-align: left;">ad format (pops, push, inpage, video)</td><td style="text-align: left;">&amp;ad\_format=pops</td></tr><tr><td style="text-align: left;">mode</td><td style="text-align: left;">string</td><td style="text-align: left;">buying model (cpm, cpc)</td><td style="text-align: left;">&amp;mode=cpm</td></tr><tr><td style="text-align: left;">name</td><td style="text-align: left;">string</td><td style="text-align: left;">filter by name. Substring match</td><td style="text-align: left;">&amp;name=test</td></tr><tr><td style="text-align: left;">url</td><td style="text-align: left;">string</td><td style="text-align: left;">filter by url. Substring match</td><td style="text-align: left;">&amp;name=test.com</td></tr></tbody></table>

Example

[http://daopush-api.info/api/campaign/list?api-key={xxxxx-key}&amp;status=approved&amp;work\_status=started](http://daopush-api.info/api/campaign/list?api-key=%7Bxxxxx-key%7D&status=approved&work_status=started&ad_format=pops)

List of active campaigns

```json
{"items":[
{
"id":358,                                // campaign id
"t_created":"2022-02-04T18:33:34+03:00", // time created campaign
"name":"Taptun Native",                  // campaign name
"status":"Approved",                     // moderate status: Approved|New|Stopped|Declined
"work_status":"Started",                 // working status: Paused|Started|Archived
"status_note":null,                      // note for moderate status
"url":"http://my.link.com?={click_id}",  // url for Popunder campaign (ad_format = Popunder)
"mode":"CPM",                            // campaign mode: CPM|CPC; CPM - pay per 1000 views; CPC - Pay per 1 click
"ad_format":"Popunder",                  // campaign ad_format: Popunder|Push|In-page Push|Video
"user_id":7,                             // owner user id
"frequency_capping":9,                   // campaign frequency capping: Views\Clicks count per user at 24 hours
"note":null,                             // campaign note
"vertical":"Mix"                         // vertical category; see list http://daopush-api.info/api/campaign/list-refs-data?api-key={xxxxx-key}&type=vertical
},
{
"id":389,                                // campaign id
"t_created":"2022-06-08T21:49:04+03:00", // time created campaign
"name":"Test campaign",                   // campaign name
"status":"Approved",                     // moderate status: Approved|New|Stopped|Declined
"work_status":"Started",                 // working status: Paused|Started|Archived
"status_note":"",                        // note for moderate status
"mode":"CPM",                            // campaign mode: CPM|CPC; CPM - pay per 1000 views; CPC - Pay per 1 click
"ad_format":"Video",                     // campaign ad_format: Popunder|Push|In-page Push|Video
"user_id":7,                             // owner user id
"vertical":"Mix",                        // vertical category; see list http://daopush-api.info/api/campaign/list-refs-data?api-key={xxxxx-key}&type=vertical
"frequency_capping":5,                   // campaign frequency capping: Views\Clicks count per user at 24 hours
"vast_tag":null,                         // VAST Tag url for Video campaign (only for campaign type tag url) (only for ad_format = Video)
"note":null                              // campaign note
}
]}
```

#### Campaign details 

GET [http://daopush-api.info/api/campaign/item?api-key={xxxxx-key}](http://daopush-api.info/api/campaign/item?api-key=%7Bxxxxx-key%7D)

<table id="bkmrk-parameter-type-descr-1" style="width: 100%;"><thead><tr><th style="text-align: left; width: 7.74732%;">parameter</th><th style="text-align: left; width: 7.86651%;">type</th><th style="text-align: left; width: 72.4685%;">description (available values)</th><th style="text-align: left; width: 11.9177%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 7.74732%;">id</td><td style="text-align: left; width: 7.86651%;">int</td><td style="text-align: left; width: 72.4685%;">campaign id</td><td style="text-align: left; width: 11.9177%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 7.74732%;">mode</td><td style="text-align: left; width: 7.86651%;">string</td><td style="text-align: left; width: 72.4685%;">data display mode (short - minimum data, count - show with black / white list counters, full - with full lists of targets and black / white lists); Default - short</td><td style="text-align: left; width: 11.9177%;">&amp;mode=full</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/item?api-key={xxxxx-key}&amp;id=123&amp;mode=full](http://daopush-api.info/api/campaign/item?api-key=%7Bxxxxx-key%7D&id=123&mode=full)

```json
{
"status": "ok",
"item": {
"id": 373,                                // campaign id
"t_created": "2022-03-18T16:31:17+03:00", // time created campaign
"status": "New",                          // moderate status: Approved|New|Stopped|Declined
"status_note": "",                        // note for moderate status
"work_status": "Paused",                  // working status: Paused|Started|Archived
"name": "Test 4",         // campaign name
"mode": "CPC",               // campaign mode: CPM|CPC; CPM - pay per 1000 views; CPC - Pay per 1 click
"ad_format": "Push",         // campaign ad_format: Popunder|Push|In-page Push|Video
"user_id": 7,                // owner user id
"frequency_capping": 3,      // campaign frequency capping: Views\Clicks count per user at 24 hours
"limit_day_sum": null,       // limit spending per day
"limit_day_show": null,      // limit views per day
"limit_day_sum_value": 0,    // limit spending per day progress
"limit_day_show_value": 0,   // limit views per day progress
"limit_sum": null,           // limit spending per campaign
"limit_show": null,          // limit views per campaign
"limit_sum_value": 0,        // limit spending per campaign progress
"limit_show_value": 0,       // limit views per campaign progress
"note": null,
"vertical": "Mix",           // vertical
"countrySet": [              // on mode=full
{
"price": 12,     // price
"l_d_sum": 0,    // limit spending per day for country set
"l_d_show": 0,   // limit views per day for country set (for Push, In-Page push, Video)
"l_d_click": 0,  // limit clicks per day for country set (for Push, In-Page push, Popunder)
"geo": {	        // country list on set (format [countryId: countryCode])
"102": "KZ",
"184": "UA",
"199": "RU"
}
}
],
"category": {       // category list (format [categoryId: categoryName]) on mode=full
"1": "Mainstream",
"2": "Adult"
},
"quality": [        // quality list on mode=full on mode=full
"regular",
"high",
"premium"
],
"blacklist": [], // campaign black list (format [sourceId, sourceId]) on mode=full, count itmes on mode=count
"whitelist": [], // campaign white list (format [sourceId, sourceId]) on mode=full, count itmes on mode=count
"subIdBlack": [],// campaign subId black list (format [335f313233]) on mode=full, count itmes on mode=count
"subIdWhite": [],// campaign subId white list (format [335f313233]) on mode=full, count itmes on mode=count
"whiteCidr": [], // cidr target list (format [10.10.10.10/30, 222.222.222.222]) on mode=full, count itmes on mode=count
"os": {          // os target list (format [osId: osName]) on mode=full, count itmes on mode=count
"1": "Desktop" //see http://daopush-api.info/api/campaign/list-refs-data?api-key={xxxxx-key}&type=os
},  
"browser": []    // browser target list (format [browserId: browserName]) on mode=full, count itmes on mode=count; see http://daopush-api.info/api/campaign/list-refs-data?api-key={xxxxx-key}&type=browser  
"blackDomain": [],        // black list by domain (only for video or pops ad format)  
"whiteDomain": [],        // white list by domain (only for video or pops ad format)  
"ispMobile": {            // isp mobile targeting  
    "2": "Vodafone",  
    "49": "Vodafone UK"  
 },  
"subsAge": [            // subs age targeting (only for push ad format)  
    1,  
    2  
],  
"city": [                // city targeting (only if city targeting is set) Except formats: Video  
    36856,  
    89054  
],  
"region": [              // city targeting (only if region targeting is set)   
    13,  
    21  
],  
"language": [            // city targeting (only if language targeting is set)  
    66,  
    115  
],  
"connectionType": [      // city targeting (only if connectionType targeting is set)  
    "wifi"  
]  
}
}
```

#### Create Campaign

GET/POST [http://daopush-api.info/api/campaign/create?api-key={xxxxx-key}&amp;adFormat={ad\_format}](http://daopush-api.info/api/campaign/create?api-key=%7Bxxxxx-key%7D&adFormat=%7Bad_format)

{ad\_format} - Ad format. Available values: push, pops, video, inpage

<table id="bkmrk-parameter-type-descr-2" style="width: 100%;"><thead><tr><th style="text-align: left; width: 17.5209%;">parameter</th><th style="text-align: left; width: 13.826%;">type</th><th style="text-align: left; width: 45.6472%;">description (available values)</th><th style="text-align: left; width: 23.006%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 17.5209%;">name</td><td style="text-align: left; width: 13.826%;">string (required)</td><td style="text-align: left; width: 45.6472%;">campaign name</td><td style="text-align: left; width: 23.006%;">name=Test</td></tr><tr><td style="text-align: left; width: 17.5209%;">work\_status</td><td style="text-align: left; width: 13.826%;">string</td><td style="text-align: left; width: 45.6472%;">Campaign work status. paused - paused; started - started; Default - paused</td><td style="text-align: left; width: 23.006%;">work\_status=paused</td></tr><tr><td style="text-align: left; width: 17.5209%;">vertical\_id</td><td style="text-align: left; width: 13.826%;">int (required)</td><td style="text-align: left; width: 45.6472%;">Vertical ID. List of verticals [here](#bkmrk-data-dictionaries-%7B%23) </td><td style="text-align: left; width: 23.006%;">vertical\_id=9</td></tr><tr><td style="text-align: left; width: 17.5209%;">frequency\_capping</td><td style="text-align: left; width: 13.826%;">int</td><td style="text-align: left; width: 45.6472%;">Frequency capping for user by 24 Hours; 0 - no apply capping By default: **Pops** - 0 **Push** - 1 **Video** - 5 **Inpage** - 1</td><td style="text-align: left; width: 23.006%;">frequency\_capping=3</td></tr><tr><td style="text-align: left; width: 17.5209%;">url</td><td style="text-align: left; width: 13.826%;">string</td><td style="text-align: left; width: 45.6472%;">Link for **pops** campaigns or tag url for **video**</td><td style="text-align: left; width: 23.006%;">url=https://google.com</td></tr><tr><td style="text-align: left; width: 17.5209%;">allow\_proxy</td><td style="text-align: left; width: 13.826%;">int</td><td style="text-align: left; width: 45.6472%;">Whether to buy proxy traffic. 1 - buy; 0 - do not buy. Default: 1</td><td style="text-align: left; width: 23.006%;">allow\_proxy=0</td></tr><tr><td style="text-align: left; width: 17.5209%;">web\_view</td><td style="text-align: left; width: 13.826%;">string</td><td style="text-align: left; width: 45.6472%;">Whether to buy WebView traffic. Available only for **pops and video**. yes - buy; no - do not buy. Default: no</td><td style="text-align: left; width: 23.006%;">web\_view=yes</td></tr><tr><td style="text-align: left; width: 17.5209%;">vpaid</td><td style="text-align: left; width: 13.826%;">string</td><td style="text-align: left; width: 45.6472%;">Set required source support VPAID creatives for VAST video. Available only for **video**. yes - VPAID support is required; no - not required. Default: no</td><td style="text-align: left; width: 23.006%;">vpaid=no</td></tr><tr><td style="text-align: left; width: 17.5209%;">placement</td><td style="text-align: left; width: 13.826%;">string</td><td style="text-align: left; width: 45.6472%;">Set target by video player placement type: **instream** - Pre-roll, mid-roll, and post-roll ads that are played before, during or after the streaming video content that the consumer has requested; **outstream** - Video ads that are played without streaming video content. This can be in placements like slideshows, native feeds, in-content or sticky/floating **all** - any placement. Available only for **video.** Default - all</td><td style="text-align: left; width: 23.006%;">placement=instream</td></tr><tr><td style="text-align: left; width: 17.5209%;">limit\_sum</td><td style="text-align: left; width: 13.826%;">float</td><td style="text-align: left; width: 45.6472%;">Campaign spending limit.</td><td style="text-align: left; width: 23.006%;">limit\_sum=300.5</td></tr><tr><td style="text-align: left; width: 17.5209%;">limit\_show</td><td style="text-align: left; width: 13.826%;">int</td><td style="text-align: left; width: 45.6472%;">Campaign impression limit. Only for formats **push, inpage, video**</td><td style="text-align: left; width: 23.006%;">limit\_show=1000000</td></tr><tr><td style="text-align: left; width: 17.5209%;">limit\_click</td><td style="text-align: left; width: 13.826%;">int</td><td style="text-align: left; width: 45.6472%;">Campaign click limit. Only for formats **push, inpage, pops**</td><td style="text-align: left; width: 23.006%;">limit\_click=50000</td></tr><tr><td style="text-align: left; width: 17.5209%;">limit\_sum\_day</td><td style="text-align: left; width: 13.826%;">float</td><td style="text-align: left; width: 45.6472%;">Daily campaign spending limit.</td><td style="text-align: left; width: 23.006%;">limit\_day\_sum=100.5</td></tr><tr><td style="text-align: left; width: 17.5209%;">limit\_show\_day</td><td style="text-align: left; width: 13.826%;">int</td><td style="text-align: left; width: 45.6472%;">Daily campaign impression limit. Only for formats **push, inpage, video**</td><td style="text-align: left; width: 23.006%;">limit\_day\_show=200000</td></tr><tr><td style="text-align: left; width: 17.5209%;">limit\_click\_day</td><td style="text-align: left; width: 13.826%;">int</td><td style="text-align: left; width: 45.6472%;">Daily campaign click limit. Only for formats **push, inpage, pops**</td><td style="text-align: left; width: 23.006%;">limit\_day\_click=10000</td></tr><tr><td style="text-align: left; width: 17.5209%;">note</td><td style="text-align: left; width: 13.826%;">string</td><td style="text-align: left; width: 45.6472%;">note</td><td style="text-align: left; width: 23.006%;">note=Note</td></tr><tr><td style="text-align: left; width: 17.5209%;">target</td><td style="text-align: left; width: 13.826%;">array (object)</td><td style="text-align: left; width: 45.6472%;">Add targeting settings to the campaign immediately. List of targetings: category, quality, country, os, browser. For all campaigns to start, **category, quality, country** targeting must be specified. They can each be specified separately using separate methods. (see the documentation for each targeting type)</td><td style="text-align: left; width: 23.006%;">target\[category\]\[\]=9 target\[quality\]\[\]=high target\[quality\]\[\]=premium target\[country\]\[ES\]=5.15 target\[country\]\[KZ\]=2.10 target\[country\]\[AZ\]=2.10</td></tr></tbody></table>

Example  
POST [http://daopush-api.info/api/campaign/create?api-key={xxxxx-key}&amp;adFormat=pops](http://daopush-api.info/api/campaign/create?api-key=%7Bxxxxx-key%7D&adFormat=pops)

[![image.png](https://wiki.dao.ad/uploads/images/gallery/2026-03/scaled-1680-/ozMimage.png)](https://wiki.dao.ad/uploads/images/gallery/2026-03/ozMimage.png)

```json
{
"status": "ok",
"item": {
"id": 442,
"t_created": "2026-02-19T12:23:09+03:00",
"status": "New",
"status_note": null,
"work_status": "Paused",
"name": "Api test campaign",
"mode": "CPM",
"ad_format": "Popunder",
"user_id": 1111,
"url": "https://google.com",
"frequency_capping": 10,
"limit_day_sum": null,
"limit_day_click": null,
"limit_sum": null,
"limit_click": null,
"note": null,
"allow_proxy": "Allow",
"web_view": "Enable",
"vertical": "Mix"
}
}
```

#### Update Campaign

GET/POST http://daopush-api.info/api/campaign/update?api-key={xxxxx-key}&amp;id=123

<table id="bkmrk-parameter-type-descr-3" style="width: 100%; height: 775.297px;"><thead><tr style="height: 29.7969px;"><th style="text-align: left; width: 17.1633%; height: 29.7969px;">parameter</th><th style="text-align: left; width: 9.77354%; height: 29.7969px;">type</th><th style="text-align: left; width: 54.1139%; height: 29.7969px;">description (available values)</th><th style="text-align: left; width: 18.9493%; height: 29.7969px;">example</th></tr></thead><tbody><tr style="height: 29.7969px;"><td style="text-align: left; width: 17.1633%; height: 29.7969px;">id</td><td style="text-align: left; width: 9.77354%; height: 29.7969px;">int</td><td style="text-align: left; width: 54.1139%; height: 29.7969px;">campaign id</td><td style="text-align: left; width: 18.9493%; height: 29.7969px;">&amp;id=123</td></tr><tr style="height: 63.3906px;"><td style="text-align: left; width: 17.1633%; height: 63.3906px;">name</td><td style="text-align: left; width: 9.77354%; height: 63.3906px;">string (required)</td><td style="text-align: left; width: 54.1139%; height: 63.3906px;">campaign name</td><td style="text-align: left; width: 18.9493%; height: 63.3906px;">name=Test</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 17.1633%; height: 46.5938px;">work\_status</td><td style="text-align: left; width: 9.77354%; height: 46.5938px;">string</td><td style="text-align: left; width: 54.1139%; height: 46.5938px;">Campaign work status. paused - paused; started - started; Default - paused</td><td style="text-align: left; width: 18.9493%; height: 46.5938px;">work\_status=paused</td></tr><tr style="height: 63.3906px;"><td style="text-align: left; width: 17.1633%; height: 63.3906px;">vertical\_id</td><td style="text-align: left; width: 9.77354%; height: 63.3906px;">int (required)</td><td style="text-align: left; width: 54.1139%; height: 63.3906px;">Vertical ID. List of verticals [here](#bkmrk-data-dictionaries-%7B%23)</td><td style="text-align: left; width: 18.9493%; height: 63.3906px;">vertical\_id=9</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 17.1633%; height: 46.5938px;">frequency\_capping</td><td style="text-align: left; width: 9.77354%; height: 46.5938px;">int</td><td style="text-align: left; width: 54.1139%; height: 46.5938px;">Frequency capping for user by 24 Hours; 0 - no apply capping</td><td style="text-align: left; width: 18.9493%; height: 46.5938px;">frequency\_capping=3</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 17.1633%; height: 46.5938px;">url</td><td style="text-align: left; width: 9.77354%; height: 46.5938px;">string</td><td style="text-align: left; width: 54.1139%; height: 46.5938px;">Link for **pops** campaigns or tag url for **video**</td><td style="text-align: left; width: 18.9493%; height: 46.5938px;">url=https://google.com</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 17.1633%; height: 46.5938px;">allow\_proxy</td><td style="text-align: left; width: 9.77354%; height: 46.5938px;">int</td><td style="text-align: left; width: 54.1139%; height: 46.5938px;">Whether to buy proxy traffic. 1 - buy; 0 - do not buy. Default: 1</td><td style="text-align: left; width: 18.9493%; height: 46.5938px;">allow\_proxy=0</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 17.1633%; height: 46.5938px;">web\_view</td><td style="text-align: left; width: 9.77354%; height: 46.5938px;">string</td><td style="text-align: left; width: 54.1139%; height: 46.5938px;">Whether to buy WebView traffic. Available only for **pops and video**. yes - buy; no - do not buy. Default: no</td><td style="text-align: left; width: 18.9493%; height: 46.5938px;">web\_view=yes</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 17.1633%; height: 46.5938px;">vpaid</td><td style="text-align: left; width: 9.77354%; height: 46.5938px;">string</td><td style="text-align: left; width: 54.1139%; height: 46.5938px;">Set required source support VPAID creatives for VAST video. Available only for **video**. yes - VPAID support is required; no - not required. Default: no</td><td style="text-align: left; width: 18.9493%; height: 46.5938px;">vpaid=no</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 17.1633%; height: 46.5938px;">limit\_sum</td><td style="text-align: left; width: 9.77354%; height: 46.5938px;">float</td><td style="text-align: left; width: 54.1139%; height: 46.5938px;">Campaign spending limit.</td><td style="text-align: left; width: 18.9493%; height: 46.5938px;">limit\_sum=300.5</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 17.1633%; height: 46.5938px;">limit\_show</td><td style="text-align: left; width: 9.77354%; height: 46.5938px;">int</td><td style="text-align: left; width: 54.1139%; height: 46.5938px;">Campaign impression limit. Only for formats **push, inpage, video**</td><td style="text-align: left; width: 18.9493%; height: 46.5938px;">limit\_show=1000000</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 17.1633%; height: 46.5938px;">limit\_click</td><td style="text-align: left; width: 9.77354%; height: 46.5938px;">int</td><td style="text-align: left; width: 54.1139%; height: 46.5938px;">Campaign click limit. Only for formats **push, inpage, pops**</td><td style="text-align: left; width: 18.9493%; height: 46.5938px;">limit\_click=50000</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 17.1633%; height: 46.5938px;">limit\_sum\_day</td><td style="text-align: left; width: 9.77354%; height: 46.5938px;">float</td><td style="text-align: left; width: 54.1139%; height: 46.5938px;">Daily campaign spending limit.</td><td style="text-align: left; width: 18.9493%; height: 46.5938px;">limit\_day\_sum=100.5</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 17.1633%; height: 46.5938px;">limit\_show\_day</td><td style="text-align: left; width: 9.77354%; height: 46.5938px;">int</td><td style="text-align: left; width: 54.1139%; height: 46.5938px;">Daily campaign impression limit. Only for formats **push, inpage, video**</td><td style="text-align: left; width: 18.9493%; height: 46.5938px;">limit\_day\_show=200000</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 17.1633%; height: 46.5938px;">limit\_click\_day</td><td style="text-align: left; width: 9.77354%; height: 46.5938px;">int</td><td style="text-align: left; width: 54.1139%; height: 46.5938px;">Daily campaign click limit. Only for formats **push, inpage, pops**</td><td style="text-align: left; width: 18.9493%; height: 46.5938px;">limit\_day\_click=10000</td></tr><tr style="height: 29.7969px;"><td style="text-align: left; width: 17.1633%; height: 29.7969px;">note</td><td style="text-align: left; width: 9.77354%; height: 29.7969px;">string</td><td style="text-align: left; width: 54.1139%; height: 29.7969px;">note</td><td style="text-align: left; width: 18.9493%; height: 29.7969px;">note=Note</td></tr></tbody></table>

Example  
POST http://daopush-api.info/api/campaign/update?api-key={xxxxx-key}&amp;id=428

[![image.png](https://wiki.dao.ad/uploads/images/gallery/2026-03/scaled-1680-/27jimage.png)](https://wiki.dao.ad/uploads/images/gallery/2026-03/27jimage.png)

```json
{
"status": "ok",
"item": {
"id": 428,
"t_created": "2026-02-11T17:34:48+03:00",
"status": "New",
"status_note": null,
"work_status": "Paused",
"name": "Api test  update campaign",
"mode": "CPM",
"ad_format": "Popunder",
"user_id": 7,
"url": "https://google.com?param=update",
"frequency_capping": 5,
"limit_day_sum": null,
"limit_day_click": null,
"limit_sum": null,
"limit_click": 500000,
"note": null,
"allow_proxy": "Allow",
"web_view": "Enable",
"vertical": "Mix"
}
}
```

### Campaign Operations

#### Start Campaign

GET [http://daopush-api.info/api/campaign/start?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/start?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-4"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/start?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/start?api-key=%7Bxxxxx-key%7D&id=111)  
`{`  
`"status": "ok"`  
`}`

#### Pause Campaign

GET [http://daopush-api.info/api/campaign/pause?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/pause?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-5"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/pause?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/pause?api-key=%7Bxxxxx-key%7D&id=111)  
`{`  
`"status": "ok"`  
`}`

#### Archive Campaign

GET [http://daopush-api.info/api/campaign/archive?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/archive?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-6"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/archive?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/archive?api-key=%7Bxxxxx-key%7D&id=111)  
`{`  
`"status": "ok"`  
`}`

#### Start Multiple Campaigns

GET [http://daopush-api.info/api/campaign/start-](http://daopush-api.info/api/campaign/start-batch?api-key=%7Bxxxxx-key%7D&id=111)[batch](http://daopush-api.info/api/campaign/pause?api-key=%7Bxxxxx-key%7D&id=111)[?api-key={xxxxx-key}&amp;campaignId\[\]=123&amp;campaignId\[\]=1111&amp;campaignId\[\]=212](http://daopush-api.info/api/campaign/start?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=123&campaignId%5B%5D=1111&campaignId%5B%5D=212)

<table id="bkmrk-parameter-type-descr-7"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">campaignId</td><td style="text-align: left;">array(int)</td><td style="text-align: left;">list of campaign ids</td><td style="text-align: left;">&amp;campaignId\[\]=123&amp;campaignId\[\]=1111&amp;campaignId\[\]=212</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/start-batch?api-key={xxxxx-key}&amp;campaignId\[\]=123&amp;campaignId\[\]=1111&amp;campaignId\[\]=212](http://daopush-api.info/api/campaign/start-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=123&campaignId%5B%5D=1111&campaignId%5B%5D=212)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"success": [123, 212],  // success updated campaign id
"failed": [
{"id": 1111, "errorList": ["Error on find campaign #372 in account"]} // item errors
]
}
}
```

#### Pause Multiple Campaigns

GET [http://daopush-api.info/api/campaign/pause-batch?api-key={xxxxx-key}&amp;campaignId\[\]=123&amp;campaignId\[\]=1111&amp;campaignId\[\]=212](http://daopush-api.info/api/campaign/pause-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=123&campaignId%5B%5D=1111&campaignId%5B%5D=212)

<table id="bkmrk-parameter-type-descr-8"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">campaignId</td><td style="text-align: left;">array(int)</td><td style="text-align: left;">list of campaign ids</td><td style="text-align: left;">&amp;campaignId\[\]=123&amp;campaignId\[\]=1111&amp;campaignId\[\]=212</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/pause-batch?api-key={xxxxx-key}&amp;campaignId\[\]=123&amp;campaignId\[\]=1111&amp;campaignId\[\]=212](http://daopush-api.info/api/campaign/pause-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=123&campaignId%5B%5D=1111&campaignId%5B%5D=212)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"success": [123, 212],  // success updated campaign id
"failed": [
{"id": 1111, "errorList": ["Error on find campaign #372 in account"]} // item errors
]
}
}
```

#### Archive Multiple Campaigns

GET [http://daopush-api.info/api/campaign/archive-](http://daopush-api.info/api/campaign/archive?api-key=%7Bxxxxx-key%7D&id=111)[batch](http://daopush-api.info/api/campaign/pause?api-key=%7Bxxxxx-key%7D&id=111)[?api-key={xxxxx-key}&amp;campaignId\[\]=123&amp;campaignId\[\]=1111&amp;campaignId\[\]=212](http://daopush-api.info/api/campaign/archive-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=123&campaignId%5B%5D=1111&campaignId%5B%5D=212)

<table id="bkmrk-parameter-type-descr-9"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">campaignId</td><td style="text-align: left;">array(int)</td><td style="text-align: left;">list of campaign ids</td><td style="text-align: left;">&amp;campaignId\[\]=123&amp;campaignId\[\]=1111&amp;campaignId\[\]=212</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/archive-batch?api-key={xxxxx-key}&amp;campaignId\[\]=123&amp;campaignId\[\]=1111&amp;campaignId\[\]=212](http://daopush-api.info/api/campaign/archive-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=123&campaignId%5B%5D=1111&campaignId%5B%5D=212)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"success": [123, 212], // success updated campaign id
"failed": [
{"id": 1111, "errorList": ["Error on find campaign #372 in account"]} // item errors
]
}
}
```

### Campaign Targeting

#### Add Campaign Category

GET/POST [http://daopush-api.info/api/campaign/add-category?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/add-category?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-10"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array(int)</td><td style="text-align: left;">list of category ids for the format. See [here](#bkmrk-data-dictionaries-%7B%23) </td><td style="text-align: left;">&amp;items\[\]=9&amp;items\[\]=10</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-category?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=9&amp;items\[\]=10](http://daopush-api.info/api/campaign/add-category?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=9&items%5B%5D=10)  
`{`  
`"status": "ok"`  
`}`

#### Remove Campaign Category

GET/POST [http://daopush-api.info/api/campaign/drop-category?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-category?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-11" style="width: 100%;"><thead><tr><th style="text-align: left; width: 10.2503%;">parameter</th><th style="text-align: left; width: 10.3695%;">type</th><th style="text-align: left; width: 56.6184%;">description (available values)</th><th style="text-align: left; width: 22.7618%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 10.2503%;">id</td><td style="text-align: left; width: 10.3695%;">int</td><td style="text-align: left; width: 56.6184%;">campaign id</td><td style="text-align: left; width: 22.7618%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 10.2503%;">checkExist</td><td style="text-align: left; width: 10.3695%;">string</td><td style="text-align: left; width: 56.6184%;">Determines whether to return an error if the record being removed does not exist. Values: required - check, skip - do not check; Default - required; Pass via GET method</td><td style="text-align: left; width: 22.7618%;">&amp;checkExist=skip</td></tr><tr><td style="text-align: left; width: 10.2503%;">items</td><td style="text-align: left; width: 10.3695%;">array(int)</td><td style="text-align: left; width: 56.6184%;">list of category ids for the format. See [here](#bkmrk-data-dictionaries-%7B%23) </td><td style="text-align: left; width: 22.7618%;">&amp;items\[\]=9&amp;items\[\]=10</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-category?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=9&amp;items\[\]=10](http://daopush-api.info/api/campaign/drop-category?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=9&items%5B%5D=10)  
`{`  
`"status": "ok"`  
`}`

#### Add Campaign Quality Targeting

GET/POST [http://daopush-api.info/api/campaign/add-quality?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/add-quality?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-12"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array (string)</td><td style="text-align: left;">traffic quality list; low, regular, high, premium</td><td style="text-align: left;">&amp;items\[\]=high&amp;items\[\]=premium</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-quality?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=high&amp;items\[\]=premium](http://daopush-api.info/api/campaign/add-quality?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=high&items%5B%5D=premium)  
`{`  
`"status": "ok"`  
`}`

#### Remove Campaign Quality Targeting

GET/POST [http://daopush-api.info/api/campaign/drop-quality?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-quality?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-13" style="width: 100%;"><thead><tr><th style="text-align: left; width: 11.6806%;">parameter</th><th style="text-align: left; width: 8.93921%;">type</th><th style="text-align: left; width: 52.8036%;">description (available values)</th><th style="text-align: left; width: 26.5766%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 11.6806%;">id</td><td style="text-align: left; width: 8.93921%;">int</td><td style="text-align: left; width: 52.8036%;">campaign id</td><td style="text-align: left; width: 26.5766%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 11.6806%;">checkExist</td><td style="text-align: left; width: 8.93921%;">string</td><td style="text-align: left; width: 52.8036%;">Determines whether to return an error if the record being removed does not exist. Values: required - check, skip - do not check; Default - required; Pass via GET method</td><td style="text-align: left; width: 26.5766%;">&amp;checkExist=skip</td></tr><tr><td style="text-align: left; width: 11.6806%;">items</td><td style="text-align: left; width: 8.93921%;">array (string)</td><td style="text-align: left; width: 52.8036%;">traffic quality list; low, regular, high, premium</td><td style="text-align: left; width: 26.5766%;">&amp;items\[\]=low&amp;items\[\]=regular</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-quality?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=low&amp;items\[\]=regular](http://daopush-api.info/api/campaign/drop-quality?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=low&items%5B%5D=regular)  
`{`  
`"status": "ok"`  
`}`

#### Add Country and Bid Targeting for a Campaign

GET/POST [http://daopush-api.info/api/campaign/add-country?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/add-country?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-14" style="width: 100%;"><thead><tr><th style="text-align: left; width: 7.86651%;">parameter</th><th style="text-align: left; width: 11.2018%;">type</th><th style="text-align: left; width: 49.3464%;">description (available values)</th><th style="text-align: left; width: 31.5852%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 7.86651%;">id</td><td style="text-align: left; width: 11.2018%;">int</td><td style="text-align: left; width: 49.3464%;">campaign id</td><td style="text-align: left; width: 31.5852%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 7.86651%;">items</td><td style="text-align: left; width: 11.2018%;">array(float)</td><td style="text-align: left; width: 49.3464%;">list of countries (country code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)) (key) and bid per 1000 impressions / clicks in USD (value)</td><td style="text-align: left; width: 31.5852%;">&amp;items\[ES\]=3.1&amp;items\[AG\]=2.05&amp;items\[US\]=5.08</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-country?api-key={xxxxx-key}&amp;id=123&amp;items\[ES\]=3.1&amp;items\[AG\]=2.05&amp;items\[US\]=5.08](http://daopush-api.info/api/campaign/add-country?api-key=%7Bxxxxx-key%7D&id=123&items%5BES%5D=3.1&items%5BAG%5D=2.05&items%5BUS%5D=5.08)  
`{`  
`"status": "ok"`  
`}`

#### Remove Country and Bid Targeting for a Campaign

GET/POST [http://daopush-api.info/api/campaign/drop-country?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-country?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-15" style="width: 100%;"><thead><tr><th style="text-align: left; width: 7.15137%;">parameter</th><th style="text-align: left; width: 11.9181%;">type</th><th style="text-align: left; width: 58.8805%;">description (available values)</th><th style="text-align: left; width: 22.0501%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 7.15137%;">id</td><td style="text-align: left; width: 11.9181%;">int</td><td style="text-align: left; width: 58.8805%;">campaign id</td><td style="text-align: left; width: 22.0501%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 7.15137%;">checkExist</td><td style="text-align: left; width: 11.9181%;">string</td><td style="text-align: left; width: 58.8805%;">Determines whether to return an error if the record being removed does not exist. Values: required - check, skip - do not check; Default - required; Pass via GET method</td><td style="text-align: left; width: 22.0501%;">&amp;checkExist=skip</td></tr><tr><td style="text-align: left; width: 7.15137%;">items</td><td style="text-align: left; width: 11.9181%;">array(string)</td><td style="text-align: left; width: 58.8805%;">list of countries (country code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes))</td><td style="text-align: left; width: 22.0501%;">&amp;items\[\]=BR&amp;items\[\]=AG</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-country?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=BR&amp;items\[\]=AG](http://daopush-api.info/api/campaign/drop-country?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=BR&items%5B%5D=AG)  
`{`  
`"status": "ok"`  
`}`

#### Add Connection Type Targeting

GET/POST [http://daopush-api.info/api/campaign/add-connection-type?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/add-connection-type?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-16"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array (string)</td><td style="text-align: left;">connection type list: wifi, carrier</td><td style="text-align: left;">&amp;items\[\]=carrier</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-connection-type?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=carrier](http://daopush-api.info/api/campaign/add-connection-type?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=carrier)  
`{`  
`"status": "ok"`  
`}`

#### Remove Connection Type Targeting

GET/POST [http://daopush-api.info/api/campaign/drop-connection-type?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-connection-type?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-17" style="width: 100%;"><thead><tr><th style="text-align: left; width: 7.27056%;">parameter</th><th style="text-align: left; width: 7.9857%;">type</th><th style="text-align: left; width: 67.7029%;">description (available values)</th><th style="text-align: left; width: 17.0408%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 7.27056%;">id</td><td style="text-align: left; width: 7.9857%;">int</td><td style="text-align: left; width: 67.7029%;">campaign id</td><td style="text-align: left; width: 17.0408%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 7.27056%;">checkExist</td><td style="text-align: left; width: 7.9857%;">string</td><td style="text-align: left; width: 67.7029%;">Determines whether to return an error if the record being removed does not exist. Values: required - check, skip - do not check; Default - required; Pass via GET method</td><td style="text-align: left; width: 17.0408%;">&amp;checkExist=skip</td></tr><tr><td style="text-align: left; width: 7.27056%;">items</td><td style="text-align: left; width: 7.9857%;">array (string)</td><td style="text-align: left; width: 67.7029%;">connection type list; wifi, carrier</td><td style="text-align: left; width: 17.0408%;">&amp;items\[\]=wifi</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-connection-type?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=wifi](http://daopush-api.info/api/campaign/drop-connection-type?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=wifi)  
`{`  
`"status": "ok"`  
`}`

#### Add User Language Targeting 

GET/POST [http://daopush-api.info/api/campaign/add-language?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/add-language?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-18"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array (string)</td><td style="text-align: left;">language list [ISO 639-1 (2 letter)](https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes)</td><td style="text-align: left;">&amp;items\[\]=en&amp;items\[\]=vi</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-language?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=en&amp;items\[\]=vi](http://daopush-api.info/api/campaign/add-language?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=en&items%5B%5D=vi)  
`{`  
`"status": "ok"`  
`}`

#### Remove User Language Targeting

GET/POST [http://daopush-api.info/api/campaign/drop-language?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-language?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-19" style="width: 100%;"><thead><tr><th style="text-align: left; width: 7.27056%;">parameter</th><th style="text-align: left; width: 7.9857%;">type</th><th style="text-align: left; width: 68.656%;">description (available values)</th><th style="text-align: left; width: 16.0877%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 7.27056%;">id</td><td style="text-align: left; width: 7.9857%;">int</td><td style="text-align: left; width: 68.656%;">campaign id</td><td style="text-align: left; width: 16.0877%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 7.27056%;">checkExist</td><td style="text-align: left; width: 7.9857%;">string</td><td style="text-align: left; width: 68.656%;">Determines whether to return an error if the record being removed does not exist. Values: required - check, skip - do not check; Default - required; Pass via GET method</td><td style="text-align: left; width: 16.0877%;">&amp;checkExist=skip</td></tr><tr><td style="text-align: left; width: 7.27056%;">items</td><td style="text-align: left; width: 7.9857%;">array (string)</td><td style="text-align: left; width: 68.656%;">language list [ISO 639-1 (2 letter)](https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes)</td><td style="text-align: left; width: 16.0877%;">&amp;items\[\]=uk</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-language?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=uk](http://daopush-api.info/api/campaign/drop-language?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=uk)  
`{`  
`"status": "ok"`  
`}`

#### Add User OS Targeting

GET/POST [http://daopush-api.info/api/campaign/add-os?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/add-os?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-20"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array(int)</td><td style="text-align: left;">list of OS ids. See [here](#bkmrk-data-dictionaries-%7B%23) </td><td style="text-align: left;">&amp;items\[\]=4&amp;items\[\]=9&amp;items\[\]=10</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-os?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=4&amp;items\[\]=5&amp;items\[\]=9](http://daopush-api.info/api/campaign/add-os?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=4&items%5B%5D=5&items%5B%5D=9)  
`{`  
`"status": "ok"`  
`}`

#### Remove User OS Targeting

GET/POST [http://daopush-api.info/api/campaign/drop-os?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-os?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-21" style="width: 100%;"><thead><tr><th style="text-align: left; width: 7.27056%;">parameter</th><th style="text-align: left; width: 10.3669%;">type</th><th style="text-align: left; width: 61.0276%;">description (available values)</th><th style="text-align: left; width: 21.3349%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 7.27056%;">id</td><td style="text-align: left; width: 10.3669%;">int</td><td style="text-align: left; width: 61.0276%;">campaign id</td><td style="text-align: left; width: 21.3349%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 7.27056%;">checkExist</td><td style="text-align: left; width: 10.3669%;">string</td><td style="text-align: left; width: 61.0276%;">Determines whether to return an error if the record being removed does not exist. Values: required - check, skip - do not check; Default - required; Pass via GET method</td><td style="text-align: left; width: 21.3349%;">&amp;checkExist=skip</td></tr><tr><td style="text-align: left; width: 7.27056%;">items</td><td style="text-align: left; width: 10.3669%;">array(int)</td><td style="text-align: left; width: 61.0276%;">list of OS ids. See [here](#bkmrk-data-dictionaries-%7B%23) </td><td style="text-align: left; width: 21.3349%;">&amp;items\[\]=14&amp;items\[\]=10</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-os?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=14&amp;items\[\]=10](http://daopush-api.info/api/campaign/drop-os?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=14&items%5B%5D=10)  
`{`  
`"status": "ok"`  
`}`

#### Add User Browser Targeting **(not available for format: tg-msg)**

GET/POST [http://daopush-api.info/api/campaign/add-browser?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/add-browser?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-22"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array(int)</td><td style="text-align: left;">list of browser ids. See [here](#bkmrk-data-dictionaries-%7B%23) </td><td style="text-align: left;">&amp;items\[\]=4&amp;items\[\]=9&amp;items\[\]=10</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-browser?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=5&amp;items\[\]=9](http://daopush-api.info/api/campaign/add-browser?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=5&items%5B%5D=9)  
`{`  
`"status": "ok"`  
`}`

#### Remove User Browser Targeting **(not available for format: tg-msg)**

GET/POST [http://daopush-api.info/api/campaign/drop-browser?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-browser?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-23" style="width: 100%;"><thead><tr><th style="text-align: left; width: 7.27056%;">parameter</th><th style="text-align: left; width: 10.963%;">type</th><th style="text-align: left; width: 59.7164%;">description (available values)</th><th style="text-align: left; width: 22.0501%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 7.27056%;">id</td><td style="text-align: left; width: 10.963%;">int</td><td style="text-align: left; width: 59.7164%;">campaign id</td><td style="text-align: left; width: 22.0501%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 7.27056%;">checkExist</td><td style="text-align: left; width: 10.963%;">string</td><td style="text-align: left; width: 59.7164%;">Determines whether to return an error if the record being removed does not exist. Values: required - check, skip - do not check; Default - required; Pass via GET method</td><td style="text-align: left; width: 22.0501%;">&amp;checkExist=skip</td></tr><tr><td style="text-align: left; width: 7.27056%;">items</td><td style="text-align: left; width: 10.963%;">array(int)</td><td style="text-align: left; width: 59.7164%;">list of browser ids. See [here](#bkmrk-data-dictionaries-%7B%23)</td><td style="text-align: left; width: 22.0501%;">&amp;items\[\]=14&amp;items\[\]=10</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-browser?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=14&amp;items\[\]=10](http://daopush-api.info/api/campaign/drop-browser?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=14&items%5B%5D=10)  
`{`  
`"status": "ok"`  
`}`

#### Add Subscription Age Targeting **(push format only)**

GET/POST h[ttp://daopush-api.info/api/campaign/add-subs-age?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/add-subs-age?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-24"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array(int)</td><td style="text-align: left;">list of subscription age group ids. See [here](#bkmrk-data-dictionaries-%7B%23)</td><td style="text-align: left;">&amp;items\[\]=1&amp;items\[\]=2</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-subs-age?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=1&amp;items\[\]=2](http://daopush-api.info/api/campaign/add-subs-age?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=1&items%5B%5D=2)  
`{`  
`"status": "ok"`  
`}`

#### Remove Subscription Age Targeting **(push format only)**

GET/POST [http://daopush-api.info/api/campaign/drop-subs-age?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-subs-age?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-25" style="width: 100%;"><thead><tr><th style="text-align: left; width: 7.27056%;">parameter</th><th style="text-align: left; width: 6.43623%;">type</th><th style="text-align: left; width: 66.6289%;">description (available values)</th><th style="text-align: left; width: 19.6643%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 7.27056%;">id</td><td style="text-align: left; width: 6.43623%;">int</td><td style="text-align: left; width: 66.6289%;">campaign id</td><td style="text-align: left; width: 19.6643%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 7.27056%;">checkExist</td><td style="text-align: left; width: 6.43623%;">string</td><td style="text-align: left; width: 66.6289%;">Determines whether to return an error if the record being removed does not exist. Values: required - check, skip - do not check; Default - required; Pass via GET method</td><td style="text-align: left; width: 19.6643%;">&amp;checkExist=skip</td></tr><tr><td style="text-align: left; width: 7.27056%;">items</td><td style="text-align: left; width: 6.43623%;">array(int)</td><td style="text-align: left; width: 66.6289%;">list of subscription age group ids. See [here](#bkmrk-data-dictionaries-%7B%23) </td><td style="text-align: left; width: 19.6643%;">&amp;items\[\]=1&amp;items\[\]=2</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-subs-age?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=2&amp;items\[\]=3](http://daopush-api.info/api/campaign/drop-subs-age?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=2&items%5B%5D=3)  
`{`  
`"status": "ok"`  
`}`

#### Add City Targeting **(formats only: push, pops, in-page, tg-msg)**

GET/POST [http://daopush-api.info/api/campaign/add-city?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/add-city?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-26"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array(int)</td><td style="text-align: left;">list of city ids. To get a city id, you need to perform its [search](#bkmrk-search-in-the-data-d)</td><td style="text-align: left;">&amp;items\[\]=4&amp;items\[\]=9&amp;items\[\]=10</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-city?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=5&amp;items\[\]=9](http://daopush-api.info/api/campaign/add-city?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=5&items%5B%5D=9)  
`{`  
`"status": "ok"`  
`}`

#### Remove City Targeting **(formats only: push, pops, in-page, tg-msg)**

GET/POST [http://daopush-api.info/api/campaign/drop-city?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-city?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-27" style="width: 100%;"><thead><tr><th style="text-align: left; width: 7.27056%;">parameter</th><th style="text-align: left; width: 10.2473%;">type</th><th style="text-align: left; width: 61.2664%;">description (available values)</th><th style="text-align: left; width: 21.2157%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 7.27056%;">id</td><td style="text-align: left; width: 10.2473%;">int</td><td style="text-align: left; width: 61.2664%;">campaign id</td><td style="text-align: left; width: 21.2157%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 7.27056%;">checkExist</td><td style="text-align: left; width: 10.2473%;">string</td><td style="text-align: left; width: 61.2664%;">Determines whether to return an error if the record being removed does not exist. Values: required - check, skip - do not check; Default - required; Pass via GET method</td><td style="text-align: left; width: 21.2157%;">&amp;checkExist=skip</td></tr><tr><td style="text-align: left; width: 7.27056%;">items</td><td style="text-align: left; width: 10.2473%;">array(int)</td><td style="text-align: left; width: 61.2664%;">list of city ids. To get a city id, you need to perform its [search](#bkmrk-search-in-the-data-d)</td><td style="text-align: left; width: 21.2157%;">&amp;items\[\]=14&amp;items\[\]=10</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-city?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=14&amp;items\[\]=10](http://daopush-api.info/api/campaign/drop-city?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=14&items%5B%5D=10)  
`{`  
`"status": "ok"`  
`}`

#### Add Region Targeting

GET/POST [http://daopush-api.info/api/region/add-region?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/region/add-region?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-28" style="width: 100%;"><thead><tr><th style="text-align: left; width: 10.1311%;">parameter</th><th style="text-align: left; width: 10.7263%;">type</th><th style="text-align: left; width: 50.7754%;">description (available values)</th><th style="text-align: left; width: 28.4863%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 10.1311%;">id</td><td style="text-align: left; width: 10.7263%;">int</td><td style="text-align: left; width: 50.7754%;">campaign id</td><td style="text-align: left; width: 28.4863%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 10.1311%;">items</td><td style="text-align: left; width: 10.7263%;">array(int)</td><td style="text-align: left; width: 50.7754%;">list of region ids. To get a region id, you need to perform its [search](#bkmrk-search-in-the-data-d)</td><td style="text-align: left; width: 28.4863%;">&amp;items\[\]=4&amp;items\[\]=9&amp;items\[\]=10</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-region?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=5&amp;items\[\]=9](http://daopush-api.info/api/campaign/add-region?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=5&items%5B%5D=9)  
`{`  
`"status": "ok"`  
`}`

#### Remove Region Targeting

GET/POST [http://daopush-api.info/api/campaign/drop-region?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-region?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-29" style="width: 100%;"><thead><tr><th style="text-align: left; width: 7.27056%;">parameter</th><th style="text-align: left; width: 9.89273%;">type</th><th style="text-align: left; width: 61.5029%;">description (available values)</th><th style="text-align: left; width: 21.3338%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 7.27056%;">id</td><td style="text-align: left; width: 9.89273%;">int</td><td style="text-align: left; width: 61.5029%;">campaign id</td><td style="text-align: left; width: 21.3338%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 7.27056%;">checkExist</td><td style="text-align: left; width: 9.89273%;">string</td><td style="text-align: left; width: 61.5029%;">Determines whether to return an error if the record being removed does not exist. Values: required - check, skip - do not check; Default - required; Pass via GET method</td><td style="text-align: left; width: 21.3338%;">&amp;checkExist=skip</td></tr><tr><td style="text-align: left; width: 7.27056%;">items</td><td style="text-align: left; width: 9.89273%;">array(int)</td><td style="text-align: left; width: 61.5029%;">list of region ids. To get a region id, you need to perform its [search](#bkmrk-search-in-the-data-d)</td><td style="text-align: left; width: 21.3338%;">&amp;items\[\]=14&amp;items\[\]=10</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-region?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=14&amp;items\[\]=10](http://daopush-api.info/api/campaign/drop-region?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=14&items%5B%5D=10)  
`{`  
`"status": "ok"`  
`}`

#### Add ISP Mobile Targeting

GET/POST [http://daopush-api.info/api/campaign/add-isp-mobile?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/add-isp-mobile?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-30" style="width: 100%;"><thead><tr><th style="text-align: left; width: 10.249%;">parameter</th><th style="text-align: left; width: 9.77482%;">type</th><th style="text-align: left; width: 50.7747%;">description (available values)</th><th style="text-align: left; width: 29.3206%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 10.249%;">id</td><td style="text-align: left; width: 9.77482%;">int</td><td style="text-align: left; width: 50.7747%;">campaign id</td><td style="text-align: left; width: 29.3206%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 10.249%;">items</td><td style="text-align: left; width: 9.77482%;">array(int)</td><td style="text-align: left; width: 50.7747%;">list of ISP mobile ids. To get a region id, you need to perform its [search](#bkmrk-search-in-the-data-d)</td><td style="text-align: left; width: 29.3206%;">&amp;items\[\]=4&amp;items\[\]=9&amp;items\[\]=10</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-isp-mobile?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=5&amp;items\[\]=9](http://daopush-api.info/api/campaign/add-isp-mobile?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=5&items%5B%5D=9)  
`{`  
`"status": "ok"`  
`}`

#### Remove ISP Mobile Targeting

GET/POST [http://daopush-api.info/api/campaign/drop-isp-mobile?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-isp-mobile?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-31" style="width: 100%;"><thead><tr><th style="text-align: left; width: 7.27056%;">parameter</th><th style="text-align: left; width: 10.1317%;">type</th><th style="text-align: left; width: 60.7861%;">description (available values)</th><th style="text-align: left; width: 21.8117%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 7.27056%;">id</td><td style="text-align: left; width: 10.1317%;">int</td><td style="text-align: left; width: 60.7861%;">campaign id</td><td style="text-align: left; width: 21.8117%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 7.27056%;">checkExist</td><td style="text-align: left; width: 10.1317%;">string</td><td style="text-align: left; width: 60.7861%;">Determines whether to return an error if the record being removed does not exist. Values: required - check, skip - do not check; Default - required; Pass via GET method</td><td style="text-align: left; width: 21.8117%;">&amp;checkExist=skip</td></tr><tr><td style="text-align: left; width: 7.27056%;">items</td><td style="text-align: left; width: 10.1317%;">array(int)</td><td style="text-align: left; width: 60.7861%;">list of ISP mobile ids. To get a region id, you need to perform its [search](#bkmrk-search-in-the-data-d)</td><td style="text-align: left; width: 21.8117%;">&amp;items\[\]=14&amp;items\[\]=10</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-isp-mobile?api-key={xxxxx-key}&amp;id=123&amp;items\[\]=14&amp;items\[\]=10](http://daopush-api.info/api/campaign/drop-isp-mobile?api-key=%7Bxxxxx-key%7D&id=123&items%5B%5D=14&items%5B%5D=10)  
`{`  
`"status": "ok"`  
`}`

#### Add IP Cidr Targeting (or range) **(formats only: push, in-page, video, pops)**

GET/POST [http://daopush-api.info/api/region/add-cidr?api-key={xxxxx-key}&amp;id=111&amp;type=black](http://daopush-api.info/api/region/add-cidr?api-key=%7Bxxxxx-key%7D&id=111&type=black)

<table id="bkmrk-parameter-type-descr-32" style="width: 100%;"><thead><tr><th style="text-align: left; width: 7.26971%;">parameter</th><th style="text-align: left; width: 10.7279%;">type</th><th style="text-align: left; width: 52.801%;">description (available values)</th><th style="text-align: left; width: 29.2014%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 7.26971%;">id</td><td style="text-align: left; width: 10.7279%;">int</td><td style="text-align: left; width: 52.801%;">campaign id</td><td style="text-align: left; width: 29.2014%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 7.26971%;">type</td><td style="text-align: left; width: 10.7279%;">string</td><td style="text-align: left; width: 52.801%;">record type: black - exclude cidr or IP for the campaign; white - include cidr or IP; Default - black</td><td style="text-align: left; width: 29.2014%;">&amp;type=black</td></tr><tr><td style="text-align: left; width: 7.26971%;">items</td><td style="text-align: left; width: 10.7279%;">array(string)</td><td style="text-align: left; width: 52.801%;">list of ip, cidr or ip ranges. You can pass: ip (12.22.123.111) cidr (12.22.123.1/24) ipv6 (2a0c:5a86:3703:9000:d86d:ab8b:86d2:78da) ipv6 cidr (2001:0db8:abcd:0012::/64) ip range (12.22.123.1-12.22.124.200)</td><td style="text-align: left; width: 29.2014%;">&amp;items\[\]=12.22.123.1/24&amp;items\[\]=12.22.120.1-12.22.122.200&amp;items\[\]=2001:0db8:abcd:0012::/64</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-cidr?api-key={xxxxx-key}&amp;id=123&amp;type=black](http://daopush-api.info/api/campaign/add-cidr?api-key=%7Bxxxxx-key%7D&id=123&type=black)  
[&amp;items\[\]=12.22.123.1/24&amp;items\[\]=12.22.120.1-12.22.122.200&amp;items\[\]=2001:0db8:abcd:0012::/64](http://daopush-api.info/api/campaign/add-cidr?api-key=%7Bxxxxx-key%7D&id=123&type=black)

`{`  
`"status": "ok"`  
`}`

#### Remove IP Cidr Targeting (or range) **(formats only: push, in-page, video, pops)**

GET/POST [http://daopush-api.info/api/campaign/drop-cidr?api-key={xxxxx-key}&amp;id=111&amp;type=black](http://daopush-api.info/api/campaign/drop-cidr?api-key=%7Bxxxxx-key%7D&id=111&type=black)

<table id="bkmrk-parameter-type-descr-33" style="width: 100%;"><thead><tr><th style="text-align: left; width: 6.79267%;">parameter</th><th style="text-align: left; width: 10.9666%;">type</th><th style="text-align: left; width: 54.2312%;">description (available values)</th><th style="text-align: left; width: 28.0095%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 6.79267%;">id</td><td style="text-align: left; width: 10.9666%;">int</td><td style="text-align: left; width: 54.2312%;">campaign id</td><td style="text-align: left; width: 28.0095%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 6.79267%;">type</td><td style="text-align: left; width: 10.9666%;">string</td><td style="text-align: left; width: 54.2312%;">record type: black - exclude cidr or IP for the campaign; white - include cidr or IP; Default - black</td><td style="text-align: left; width: 28.0095%;">&amp;type=black</td></tr><tr><td style="text-align: left; width: 6.79267%;">checkExist</td><td style="text-align: left; width: 10.9666%;">string</td><td style="text-align: left; width: 54.2312%;">Determines whether to return an error if the record being removed does not exist. Values: required - check, skip - do not check; Default - required; Pass via GET method</td><td style="text-align: left; width: 28.0095%;">&amp;checkExist=skip</td></tr><tr><td style="text-align: left; width: 6.79267%;">items</td><td style="text-align: left; width: 10.9666%;">array(string)</td><td style="text-align: left; width: 54.2312%;">list of ip, cidr or ip ranges. You can pass: ip (12.22.123.111) cidr (12.22.123.1/24) ipv6 (2a0c:5a86:3703:9000:d86d:ab8b:86d2:78da) ipv6 cidr (2001:0db8:abcd:0012::/64) ip range (12.22.123.1-12.22.124.200)</td><td style="text-align: left; width: 28.0095%;">&amp;items\[\]=12.22.123.1/24&amp;items\[\]=12.22.120.1-12.22.122.200&amp;items\[\]=2001:0db8:abcd:0012::/64</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-cidr?api-key={xxxxx-key}&amp;id=123&amp;type=black&amp;items\[\]=12.22.123.1/24&amp;items\[\]=12.22.123.111](http://daopush-api.info/api/campaign/drop-cidr?api-key=%7Bxxxxx-key%7D&id=123&type=black&items%5B%5D=12.22.123.1/24&items%5B%5D=12.22.123.111)  
`{`  
`"status": "ok"`  
`}`

#### Add Display Domain Targeting **(formats only: video, pops)**

GET/POST [http://daopush-api.info/api/campaign/add-domain?api-key={xxxxx-key}&amp;id=111&amp;type=black](http://daopush-api.info/api/campaign/add-domain?api-key=%7Bxxxxx-key%7D&id=111&type=black)

<table id="bkmrk-parameter-type-descr-34" style="width: 100%;"><thead><tr><th style="text-align: left; width: 8.34327%;">parameter</th><th style="text-align: left; width: 8.70197%;">type</th><th style="text-align: left; width: 55.7796%;">description (available values)</th><th style="text-align: left; width: 27.2944%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 8.34327%;">id</td><td style="text-align: left; width: 8.70197%;">int</td><td style="text-align: left; width: 55.7796%;">campaign id</td><td style="text-align: left; width: 27.2944%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 8.34327%;">type</td><td style="text-align: left; width: 8.70197%;">string</td><td style="text-align: left; width: 55.7796%;">record type: black - exclude domain for the campaign; white - include domain; Default - black</td><td style="text-align: left; width: 27.2944%;">&amp;type=black</td></tr><tr><td style="text-align: left; width: 8.34327%;">items</td><td style="text-align: left; width: 8.70197%;">array (string)</td><td style="text-align: left; width: 55.7796%;">list of domains</td><td style="text-align: left; width: 27.2944%;">&amp;items\[\]=google.com&amp;items\[\]=amazon.com</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-domain?api-key={xxxxx-key}&amp;id=123&amp;type=white&amp;items\[\]=google.com&amp;items\[\]=amazon.com](http://daopush-api.info/api/campaign/add-domain?api-key=%7Bxxxxx-key%7D&id=123&type=white&items%5B%5D=google.com&items%5B%5D=amazon.com)

`{`  
`"status": "ok"`  
`}`

#### Remove Display Domain Targeting **(formats only: video, pops)**

GET/POST [http://daopush-api.info/api/campaign/drop-domain?api-key={xxxxx-key}&amp;id=111&amp;type=black](http://daopush-api.info/api/campaign/drop-domain?api-key=%7Bxxxxx-key%7D&id=111&type=black)

<table id="bkmrk-parameter-type-descr-35" style="width: 100%;"><thead><tr><th style="text-align: left; width: 6.7938%;">parameter</th><th style="text-align: left; width: 9.29607%;">type</th><th style="text-align: left; width: 64.363%;">description (available values)</th><th style="text-align: left; width: 19.5471%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 6.7938%;">id</td><td style="text-align: left; width: 9.29607%;">int</td><td style="text-align: left; width: 64.363%;">campaign id</td><td style="text-align: left; width: 19.5471%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 6.7938%;">type</td><td style="text-align: left; width: 9.29607%;">string</td><td style="text-align: left; width: 64.363%;">record type: black - exclude domain for the campaign; white - include domain; Default - black</td><td style="text-align: left; width: 19.5471%;">&amp;type=black</td></tr><tr><td style="text-align: left; width: 6.7938%;">checkExist</td><td style="text-align: left; width: 9.29607%;">string</td><td style="text-align: left; width: 64.363%;">Determines whether to return an error if the record being removed does not exist. Values: required - check, skip - do not check; Default - required; Pass via GET method</td><td style="text-align: left; width: 19.5471%;">&amp;checkExist=skip</td></tr><tr><td style="text-align: left; width: 6.7938%;">items</td><td style="text-align: left; width: 9.29607%;">array (string)</td><td style="text-align: left; width: 64.363%;">list of domains</td><td style="text-align: left; width: 19.5471%;">&amp;items\[\]=google.com&amp;items\[\]=amazon.com</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-domain?api-key={xxxxx-key}&amp;id=123&amp;type=black&amp;items\[\]=google.com&amp;items\[\]=amazon.com](http://daopush-api.info/api/campaign/drop-domain?api-key=%7Bxxxxx-key%7D&id=123&type=black&items%5B%5D=google.com&items%5B%5D=amazon.com)  
`{`  
`"status": "ok"`  
`}`

### Campaign Source Black / White Lists

#### Campaign White-list

GET [http://daopush-api.info/api/campaign/white-list?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/white-list?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-36"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/white-list?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/white-list?api-key=%7Bxxxxx-key%7D&id=111)

```json
{
"status": "ok",
"items": [
"1111",
"1122"
]
}
```

#### Campaign Black-list

GET [http://daopush-api.info/api/campaign/black-list?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/black-list?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-37"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/black-list?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/black-list?api-key=%7Bxxxxx-key%7D&id=111)

```json
{
"status": "ok",
"items": [
"1111",
"1122"
]
}
```

#### Campaign SubId White-list

GET [http://daopush-api.info/api/campaign/sub-id-white?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/sub-id-white?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-38"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/sub-id-white?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/sub-id-white?api-key=%7Bxxxxx-key%7D&id=111)

```json
{
"status": "ok",
"items": [
"335f313233"
]
}
```

#### Campaign SubId Black-list

GET [http://daopush-api.info/api/campaign/sub-id-black?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/sub-id-black?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-39"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/sub-id-black?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/sub-id-black?api-key=%7Bxxxxx-key%7D&id=111)

```json
{
"status": "ok",
"items": [
"335f313233"
]
}
```

#### Add Sources to Campaign Black-list

GET/POST [http://daopush-api.info/api/campaign/add-black-list?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/add-black-list?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-40"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array(int)</td><td style="text-align: left;">list of source ids to add to the black-list</td><td style="text-align: left;">&amp;items\[\]=1234&amp;items\[\]=11111</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-black-list?api-key={xxxxx-key}&amp;id=111&amp;items\[\]=1234&amp;items\[\]=11111](http://daopush-api.info/api/campaign/add-black-list?api-key=%7Bxxxxx-key%7D&id=111&items%5B%5D=1234&items%5B%5D=11111)

`{ "status": "ok"}`

#### Remove Sources from Campaign Black-list

GET/POST [http://daopush-api.info/api/campaign/drop-black-list?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-black-list?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-41"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array(int)</td><td style="text-align: left;">list of source ids to remove from the black-list</td><td style="text-align: left;">&amp;items\[\]=1234&amp;items\[\]=11111</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-black-list?api-key={xxxxx-key}&amp;id=111&amp;items\[\]=1234&amp;items\[\]=11111](http://daopush-api.info/api/campaign/drop-black-list?api-key=%7Bxxxxx-key%7D&id=111&items%5B%5D=1234&items%5B%5D=11111)

`{ "status": "ok"}`

#### Add Sources to Campaign White-list

GET/POST [http://daopush-api.info/api/campaign/add-white-list?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/add-white-list?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-42"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array(int)</td><td style="text-align: left;">list of source ids to add to the white list</td><td style="text-align: left;">&amp;items\[\]=1234&amp;items\[\]=11111</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-white-list?api-key={xxxxx-key}&amp;id=111&amp;items\[\]=1234&amp;items\[\]=11111](http://daopush-api.info/api/campaign/add-white-list?api-key=%7Bxxxxx-key%7D&id=111&items%5B%5D=1234&items%5B%5D=11111)

`{ "status": "ok"}`

#### Remove Sources from Campaign White-list

GET/POST [http://daopush-api.info/api/campaign/drop-white-list?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-white-list?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-43"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array(int)</td><td style="text-align: left;">list of source ids to remove from the white list</td><td style="text-align: left;">&amp;items\[\]=1234&amp;items\[\]=11111</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-white-list?api-key={xxxxx-key}&amp;id=111&amp;items\[\]=1234&amp;items\[\]=11111](http://daopush-api.info/api/campaign/drop-white-list?api-key=%7Bxxxxx-key%7D&id=111&items%5B%5D=1234&items%5B%5D=11111)

`{ "status": "ok"}`

#### Add subId to Campaign subId Black-list

GET/POST [http://daopush-api.info/api/campaign/add-sub-id-black?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/add-sub-id-black?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-44"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array(string)</td><td style="text-align: left;">list of source ids to add to the black list subId</td><td style="text-align: left;">&amp;items\[\]=335f313233&amp;items\[\]=335f313234</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-sub-id-black?api-key={xxxxx-key}&amp;id=111&amp;items\[\]=1234&amp;items\[\]=11111](http://daopush-api.info/api/campaign/add-sub-id-black?api-key=%7Bxxxxx-key%7D&id=111&items%5B%5D=1234&items%5B%5D=11111)

`{ "status": "ok"}`

#### Remove subId from Campaign subId Black-list

GET/POST [http://daopush-api.info/api/campaign/drop-sub-id-black?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-sub-id-black?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-45"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array(string)</td><td style="text-align: left;">list of source ids to remove from the black list subId</td><td style="text-align: left;">&amp;items\[\]=335f313233&amp;items\[\]=335f313234</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-](http://daopush-api.info/api/campaign/drop-black-list?api-key=%7Bxxxxx-key%7D&id=111&items%5B%5D=1234&items%5B%5D=11111)[sub-id-](http://daopush-api.info/api/campaign/add-black-list?api-key=%7Bxxxxx-key%7D&id=111)[black?api-key={xxxxx-key}&amp;id=111&amp;items\[\]=1234&amp;items\[\]=11111](http://daopush-api.info/api/campaign/drop-sub-id-black?api-key=%7Bxxxxx-key%7D&id=111&items%5B%5D=1234&items%5B%5D=11111)

`{ "status": "ok"}`

#### Add subId to Campaign subId White-list

GET/POST [http://daopush-api.info/api/campaign/add-](http://daopush-api.info/api/campaign/add-white-list?api-key=%7Bxxxxx-key%7D&id=111)[sub-id-](http://daopush-api.info/api/campaign/add-black-list?api-key=%7Bxxxxx-key%7D&id=111)[white?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/add-sub-id-white?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-46"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array(string)</td><td style="text-align: left;">list of source ids to add to the white list subId</td><td style="text-align: left;">&amp;items\[\]=335f313233&amp;items\[\]=335f313234</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-](http://daopush-api.info/api/campaign/add-white-list?api-key=%7Bxxxxx-key%7D&id=111&items%5B%5D=1234&items%5B%5D=11111)[sub-id-](http://daopush-api.info/api/campaign/add-black-list?api-key=%7Bxxxxx-key%7D&id=111)[white?api-key={xxxxx-key}&amp;id=111&amp;items\[\]=1234&amp;items\[\]=11111](http://daopush-api.info/api/campaign/add-sub-id-white?api-key=%7Bxxxxx-key%7D&id=111&items%5B%5D=1234&items%5B%5D=11111)

`{ "status": "ok"}`

#### Remove subId from Campaign subId White-list

GET/POST [http://daopush-api.info/api/campaign/drop-](http://daopush-api.info/api/campaign/drop-white-list?api-key=%7Bxxxxx-key%7D&id=111)[sub-id-](http://daopush-api.info/api/campaign/add-black-list?api-key=%7Bxxxxx-key%7D&id=111)[white?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-sub-id-white?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-47"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array(string)</td><td style="text-align: left;">list of source ids to remove from the white list subId</td><td style="text-align: left;">&amp;items\[\]=335f313233&amp;items\[\]=335f313234</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-](http://daopush-api.info/api/campaign/drop-white-list?api-key=%7Bxxxxx-key%7D&id=111&items%5B%5D=1234&items%5B%5D=11111)[sub-id-](http://daopush-api.info/api/campaign/add-black-list?api-key=%7Bxxxxx-key%7D&id=111)[white?api-key={xxxxx-key}&amp;id=111&amp;items\[\]=1234&amp;items\[\]=11111](http://daopush-api.info/api/campaign/drop-sub-id-white?api-key=%7Bxxxxx-key%7D&id=111&items%5B%5D=1234&items%5B%5D=11111)

`{ "status": "ok"}`

### Campaign List Operations

#### Add Sources to Campaign List Black-list

GET/POST [http://daopush-api.info/api/campaign/add-black-list?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=415](http://daopush-api.info/api/campaign/add-black-list?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=415)

<table id="bkmrk-parameter-type-descr-48" style="width: 100%;"><thead><tr><th style="text-align: left; width: 10.9654%;">parameter</th><th style="text-align: left; width: 10.487%;">type</th><th style="text-align: left; width: 30.6334%;">description (available values)</th><th style="text-align: left; width: 47.9142%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 10.9654%;">campaignId</td><td style="text-align: left; width: 10.487%;">array(int)</td><td style="text-align: left; width: 30.6334%;">list of campaign ids</td><td style="text-align: left; width: 47.9142%;">&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372</td></tr><tr><td style="text-align: left; width: 10.9654%;">items</td><td style="text-align: left; width: 10.487%;">array(int)</td><td style="text-align: left; width: 30.6334%;">list of source ids to add to the black list</td><td style="text-align: left; width: 47.9142%;">&amp;items\[\]=1234&amp;items\[\]=11111</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-black-list?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372&amp;items\[\]=1234&amp;items\[\]=1111](http://daopush-api.info/api/campaign/add-black-list?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&campaignId%5B%5D=372&items%5B%5D=1234&items%5B%5D=1111)1

```json
{
"status": "ok",
"mode": "batch",
"result": {
"failed": [ // failed campaign id list
{
"id": 414,
“errorList": {
"0": "Error on save item 1234; CampaignId: 414; Item has already been taken",
"1": "Error on save item 11111; CampaignId: 414; Item has already been taken",
}
},
{
"id": 372,"errorList": ["Campaign not found #372"]
}
],
"success": [402] // success processed campaign id list
}
}
```

#### Remove Sources from Campaign List Black-list

GET/POST [http://daopush-api.info/api/campaign/drop-black-list?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402](http://daopush-api.info/api/campaign/drop-black-list?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402)

<table id="bkmrk-parameter-type-descr-49" style="width: 100%;"><thead><tr><th style="text-align: left; width: 11.203%;">parameter</th><th style="text-align: left; width: 9.29763%;">type</th><th style="text-align: left; width: 30.9893%;">description (available values)</th><th style="text-align: left; width: 48.5101%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 11.203%;">campaignId</td><td style="text-align: left; width: 9.29763%;">array(int)</td><td style="text-align: left; width: 30.9893%;">list of campaign ids</td><td style="text-align: left; width: 48.5101%;">&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372</td></tr><tr><td style="text-align: left; width: 11.203%;">items</td><td style="text-align: left; width: 9.29763%;">array(int)</td><td style="text-align: left; width: 30.9893%;">list of source ids to remove from the black list</td><td style="text-align: left; width: 48.5101%;">&amp;items\[\]=1234&amp;items\[\]=11111</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-black-list?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;items\[\]=1234&amp;items\[\]=11111](http://daopush-api.info/api/campaign/drop-black-list?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&items%5B%5D=1234&items%5B%5D=11111)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"failed": [ // failed campaign id list
{
"id": 414,
“errorList": {
"0": "Error on drop item 1234; CampaignId: 414; Item not exists",
"1": "Error on drop item 11111; CampaignId: 414; Item not exists",
}
},
{
"id": 372,"errorList": ["Campaign not found #372"]
}
],
"success": [402] // success processed campaign id list
}
}
```

#### Add Sources to Campaign List White-list

GET/POST [http://daopush-api.info/api/campaign/add-white-list?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402](http://daopush-api.info/api/campaign/add-white-list?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402)

<table id="bkmrk-parameter-type-descr-50" style="width: 100%;"><thead><tr><th style="text-align: left; width: 11.4422%;">parameter</th><th style="text-align: left; width: 9.17759%;">type</th><th style="text-align: left; width: 30.7517%;">description (available values)</th><th style="text-align: left; width: 48.6285%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 11.4422%;">campaignId</td><td style="text-align: left; width: 9.17759%;">array(int)</td><td style="text-align: left; width: 30.7517%;">list of campaign ids</td><td style="text-align: left; width: 48.6285%;">&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372</td></tr><tr><td style="text-align: left; width: 11.4422%;">items</td><td style="text-align: left; width: 9.17759%;">array(int)</td><td style="text-align: left; width: 30.7517%;">list of source ids to add to the white list</td><td style="text-align: left; width: 48.6285%;">&amp;items\[\]=1234&amp;items\[\]=11111</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-white-list?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;items\[\]=1234&amp;items\[\]=11111](http://daopush-api.info/api/campaign/add-white-list?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&items%5B%5D=1234&items%5B%5D=11111)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"failed": [ // failed campaign id list
{
"id": 414,
“errorList": {
"0": "Error on save item 1234; CampaignId: 414; Item has already been taken",
"1": "Error on save item 11111; CampaignId: 414; Item has already been taken",
}
},
{
"id": 372,"errorList": ["Campaign not found #372"]
}
],
"success": [402] // success processed campaign id list
}
}
```

#### Remove Sources from Campaign List White-list

GET/POST [http://daopush-api.info/api/campaign/drop-white-list?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402](http://daopush-api.info/api/campaign/drop-white-list?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402)

<table id="bkmrk-parameter-type-descr-51" style="width: 100%;"><thead><tr><th style="text-align: left; width: 11.6806%;">parameter</th><th style="text-align: left; width: 9.65336%;">type</th><th style="text-align: left; width: 29.7984%;">description (available values)</th><th style="text-align: left; width: 48.8677%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 11.6806%;">campaignId</td><td style="text-align: left; width: 9.65336%;">array(int)</td><td style="text-align: left; width: 29.7984%;">list of campaign ids</td><td style="text-align: left; width: 48.8677%;">&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372</td></tr><tr><td style="text-align: left; width: 11.6806%;">items</td><td style="text-align: left; width: 9.65336%;">array(int)</td><td style="text-align: left; width: 29.7984%;">list of source ids to remove from the white list</td><td style="text-align: left; width: 48.8677%;">&amp;items\[\]=1234&amp;items\[\]=11111</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-white-list?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;items\[\]=1234&amp;items\[\]=11111](http://daopush-api.info/api/campaign/drop-white-list?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&items%5B%5D=1234&items%5B%5D=11111)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"failed": [ // failed campaign id list
{
"id": 414,
“errorList": {
"0": "Error on drop item 1234; CampaignId: 414; Item not exists",
"1": "Error on drop item 11111; CampaignId: 414; Item not exists",
}
},
{
"id": 372,"errorList": ["Campaign not found #372"]
}
],
"success": [402] // success processed campaign id list
}
}
```

#### Add subId to Campaign List subId Black-list

GET/POST [http://daopush-api.info/api/campaign/add-sub-id-black-batch?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;items\[\]=335f313233&amp;items\[\]=335f313234](http://daopush-api.info/api/campaign/add-sub-id-black-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&items%5B%5D=335f313233&items%5B%5D=335f313234)

<table id="bkmrk-parameter-type-descr-52" style="width: 100%;"><thead><tr><th style="text-align: left; width: 11.323%;">parameter</th><th style="text-align: left; width: 9.65364%;">type</th><th style="text-align: left; width: 30.6324%;">description (available values)</th><th style="text-align: left; width: 48.3909%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 11.323%;">campaignId</td><td style="text-align: left; width: 9.65364%;">array(int)</td><td style="text-align: left; width: 30.6324%;">list of campaign ids</td><td style="text-align: left; width: 48.3909%;">&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372</td></tr><tr><td style="text-align: left; width: 11.323%;">items</td><td style="text-align: left; width: 9.65364%;">array(int)</td><td style="text-align: left; width: 30.6324%;">list of subId values to add to the black list</td><td style="text-align: left; width: 48.3909%;">&amp;items\[\]=335f313233&amp;items\[\]=335f313234</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-sub-id-black-batch?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372&amp;items\[\]=335f313233&amp;items\[\]=335f313234](http://daopush-api.info/api/campaign/add-sub-id-black-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&campaignId%5B%5D=372&items%5B%5D=335f313233&items%5B%5D=335f313234)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"failed": [ // failed campaign id list
{
"id": 414,
"errorList": {
"0": "Error on save item 335f313233; CampaignId: 414; Item has already been taken",
"1": "Error on save item 335f313234; CampaignId: 414; Item has already been taken",
}
},
{
"id": 372,"errorList": ["Campaign not found #372"]
}
],
"success": [402] // success processed campaign id list
}
}
```

#### Remove subId from Campaign List subId Black-list

GET/POST [http://daopush-api.info/api/campaign/drop-sub-id-black-batch?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372&amp;items\[\]=335f313233&amp;items\[\]=335f313234](http://daopush-api.info/api/campaign/drop-sub-id-black-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&campaignId%5B%5D=372&items%5B%5D=335f313233&items%5B%5D=335f313234)

<table id="bkmrk-parameter-type-descr-53" style="width: 100%;"><thead><tr><th style="text-align: left; width: 11.323%;">parameter</th><th style="text-align: left; width: 9.65364%;">type</th><th style="text-align: left; width: 34.2081%;">description (available values)</th><th style="text-align: left; width: 44.8153%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 11.323%;">campaignId</td><td style="text-align: left; width: 9.65364%;">array(int)</td><td style="text-align: left; width: 34.2081%;">list of campaign ids</td><td style="text-align: left; width: 44.8153%;">&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372</td></tr><tr><td style="text-align: left; width: 11.323%;">items</td><td style="text-align: left; width: 9.65364%;">array(int)</td><td style="text-align: left; width: 34.2081%;">list of subId values to remove from the black list</td><td style="text-align: left; width: 44.8153%;">&amp;items\[\]=335f313233&amp;items\[\]=335f313234</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-sub-id-black-batch?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372&amp;items\[\]=335f313233&amp;items\[\]=335f313234](http://daopush-api.info/api/campaign/drop-sub-id-black-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&campaignId%5B%5D=372&items%5B%5D=335f313233&items%5B%5D=335f313234)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"failed": [ // failed campaign id list
{
"id": 414,
"errorList": {
"0": "Error on drop item 335f313233; CampaignId: 414; Item not exists",
"1": "Error on drop item 335f313234; CampaignId: 414; Item not exists",
}
},
{
"id": 372,"errorList": ["Campaign not found #372"]
}
],
"success": [402] // success processed campaign id list
}
}
```

#### Add subId to Campaign List subId White-list

GET/POST [http://daopush-api.info/api/campaign/add-sub-id-white-batch?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372&amp;items\[\]=335f313233&amp;items\[\]=335f313234](http://daopush-api.info/api/campaign/add-sub-id-white-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&campaignId%5B%5D=372&items%5B%5D=335f313233&items%5B%5D=335f313234)

<table id="bkmrk-parameter-type-descr-54" style="width: 100%;"><thead><tr><th style="text-align: left; width: 11.0843%;">parameter</th><th style="text-align: left; width: 9.41626%;">type</th><th style="text-align: left; width: 32.5387%;">description (available values)</th><th style="text-align: left; width: 47.0799%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 11.0843%;">campaignId</td><td style="text-align: left; width: 9.41626%;">array(int)</td><td style="text-align: left; width: 32.5387%;">list of campaign ids</td><td style="text-align: left; width: 47.0799%;">&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372</td></tr><tr><td style="text-align: left; width: 11.0843%;">items</td><td style="text-align: left; width: 9.41626%;">array(int)</td><td style="text-align: left; width: 32.5387%;">list of subId values to add to the white list</td><td style="text-align: left; width: 47.0799%;">&amp;items\[\]=335f313233&amp;items\[\]=335f313234</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-sub-id-white-batch?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372&amp;items\[\]=335f313233&amp;items\[\]=335f313234](http://daopush-api.info/api/campaign/add-sub-id-white-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&campaignId%5B%5D=372&items%5B%5D=335f313233&items%5B%5D=335f313234)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"failed": [ // failed campaign id list
{
"id": 414,
"errorList": {
"0": "Error on save item 335f313233; CampaignId: 414; Item has already been taken",
"1": "Error on save item 335f313234; CampaignId: 414; Item has already been taken",
}
},
{
"id": 372,"errorList": ["Campaign not found #372"]
}
],
"success": [402] // success processed campaign id list
}
}
```

#### Remove subId from Campaign List subId White-list

GET/POST [http://daopush-api.info/api/campaign/drop-sub-id-white-batch?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372&amp;items\[\]=335f313233&amp;items\[\]=335f313234](http://daopush-api.info/api/campaign/drop-sub-id-white-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&campaignId%5B%5D=372&items%5B%5D=335f313233&items%5B%5D=335f313234)

<table id="bkmrk-parameter-type-descr-55" style="width: 100%;"><thead><tr><th style="text-align: left; width: 11.323%;">parameter</th><th style="text-align: left; width: 9.29735%;">type</th><th style="text-align: left; width: 34.5644%;">description (available values)</th><th style="text-align: left; width: 44.8153%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 11.323%;">campaignId</td><td style="text-align: left; width: 9.29735%;">array(int)</td><td style="text-align: left; width: 34.5644%;">list of campaign ids</td><td style="text-align: left; width: 44.8153%;">&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372</td></tr><tr><td style="text-align: left; width: 11.323%;">items</td><td style="text-align: left; width: 9.29735%;">array(int)</td><td style="text-align: left; width: 34.5644%;">list of subId values to remove from the white list</td><td style="text-align: left; width: 44.8153%;">&amp;items\[\]=335f313233&amp;items\[\]=335f313234</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-sub-id-white-batch?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372&amp;items\[\]=335f313233&amp;items\[\]=335f313234](http://daopush-api.info/api/campaign/drop-sub-id-white-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&campaignId%5B%5D=372&items%5B%5D=335f313233&items%5B%5D=335f313234)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"failed": [ // failed campaign id list
{
"id": 414,
"errorList": {
"0": "Error on drop item 335f313233; CampaignId: 414; Item not exists",
"1": "Error on drop item 335f313234; CampaignId: 414; Item not exists",
}
},
{
"id": 372,"errorList": ["Campaign not found #372"]
}
],
"success": [402] // success processed campaign id list
}
}
```

#### Add / Remove Other Targets for a Campaign List

GET/POST [http://daopush-api.info/api/campaign/**{mode}**-**{target-type}**-batch?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372&amp;*type={type}*](http://daopush-api.info/api/campaign/%7Bmode%7D-%7Btarget-type%7D-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&campaignId%5B%5D=372&type=%7Btype)

**{mode}** - operation mode:

- **add** - add targeting;
- **drop** - remove targeting;

**{target-type}** - targeting type

<table id="bkmrk-target-type-descript"><thead><tr><th style="text-align: left;">target-type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">connection-type</td><td style="text-align: left;">User connection type (connectionType)</td><td style="text-align: left;">/campaign/add-**connection-type**-batch</td></tr><tr><td style="text-align: left;">os</td><td style="text-align: left;">User OS</td><td style="text-align: left;">/campaign/add-**os**-batch</td></tr><tr><td style="text-align: left;">browser</td><td style="text-align: left;">User browser</td><td style="text-align: left;">/campaign/add-**browser**-batch</td></tr><tr><td style="text-align: left;">region</td><td style="text-align: left;">Region</td><td style="text-align: left;">/campaign/add-**region**-batch</td></tr><tr><td style="text-align: left;">isp-mobile</td><td style="text-align: left;">User mobile provider (ispMobile)</td><td style="text-align: left;">/campaign/add-**isp-mobile**-batch</td></tr><tr><td style="text-align: left;">subs-age</td><td style="text-align: left;">Subscription age groups</td><td style="text-align: left;">/campaign/add-**subs-age**-batch</td></tr><tr><td style="text-align: left;">country</td><td style="text-align: left;">User country</td><td style="text-align: left;">/campaign/add-**country**-batch</td></tr><tr><td style="text-align: left;">quality</td><td style="text-align: left;">Traffic quality</td><td style="text-align: left;">/campaign/add-**quality**-batch</td></tr><tr><td style="text-align: left;">category</td><td style="text-align: left;">Category</td><td style="text-align: left;">/campaign/add-**category**-batch</td></tr><tr><td style="text-align: left;">cidr</td><td style="text-align: left;">CIDR or user IP range</td><td style="text-align: left;">/campaign/add-**cidr**-batch</td></tr><tr><td style="text-align: left;">domain</td><td style="text-align: left;">Ad display domain</td><td style="text-align: left;">/campaign/add-**domain**-batch</td></tr></tbody></table>

{[*type*](http://daopush-api.info/api/campaign/%7Bmode%7D-%7Btarget-type%7D-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&campaignId%5B%5D=372&type=%7Btype)} - record type **black/white** **(formats only: pops, video)** (see details in the description of the specific targeting type)

<table id="bkmrk-parameter-type-descr-56" style="width: 100%;"><thead><tr><th style="text-align: left; width: 11.2038%;">parameter</th><th style="text-align: left; width: 9.41682%;">type</th><th style="text-align: left; width: 50.1779%;">description (available values)</th><th style="text-align: left; width: 29.2014%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 11.2038%;">campaignId</td><td style="text-align: left; width: 9.41682%;">array(int)</td><td style="text-align: left; width: 50.1779%;">list of campaign ids</td><td style="text-align: left; width: 29.2014%;">&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372</td></tr><tr><td style="text-align: left; width: 11.2038%;">items</td><td style="text-align: left; width: 9.41682%;">array(int)</td><td style="text-align: left; width: 50.1779%;">list of targeting ids or values that will be added / removed. See [here](#bkmrk-data-dictionaries-%7B%23) and the description of the specific targeting type with which the operation will be performed</td><td style="text-align: left; width: 29.2014%;">&amp;items\[\]=9&amp;items\[\]=10 or &amp;items\[\]=low&amp;items\[\]=high</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/**add**-**domain**-batch?api-key={xxxxx-key}&amp;campaignId\[\]=428&amp;campaignId\[\]=426&amp;campaignId\[\]=427\*&amp;type=black\*&amp;items\[\]=test.com&amp;items\[\]=google.com](http://daopush-api.info/api/campaign/add-domain-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=428&campaignId%5B%5D=426&campaignId%5B%5D=427&type=black&items%5B%5D=test.com&items%5B%5D=google.com)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"failed": [// failed campaign id list
{
"id": 428,
"errorList": {
"0": "Error on save domain item test.com; CampaignId: 428; Item has already been taken",
}
},
],
"success": [426, 427]  // success processed campaign id list
}
}
```

#### Add Quality Targeting for a Campaign List

GET/POST [http://daopush-api.info/api/campaign/add-quality-batch?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372](http://daopush-api.info/api/campaign/add-quality-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&campaignId%5B%5D=372)

<table id="bkmrk-parameter-type-descr-57" style="width: 100%;"><thead><tr><th style="text-align: left; width: 11.4422%;">parameter</th><th style="text-align: left; width: 9.53601%;">type</th><th style="text-align: left; width: 34.5641%;">description (available values)</th><th style="text-align: left; width: 44.4577%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 11.4422%;">campaignId</td><td style="text-align: left; width: 9.53601%;">array(int)</td><td style="text-align: left; width: 34.5641%;">list of campaign ids</td><td style="text-align: left; width: 44.4577%;">&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372</td></tr><tr><td style="text-align: left; width: 11.4422%;">items</td><td style="text-align: left; width: 9.53601%;">array (string)</td><td style="text-align: left; width: 34.5641%;">traffic quality list; low, regular, high, premium</td><td style="text-align: left; width: 44.4577%;">&amp;items\[\]=high&amp;items\[\]=premium</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-quality-batch?api-key={xxxxx-key}&amp;campaignId\[\]=428&amp;campaignId\[\]=426&amp;campaignId\[\]=427&amp;items\[\]=premium&amp;items\[\]=high&amp;items\[\]=low](http://daopush-api.info/api/campaign/add-quality-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=428&campaignId%5B%5D=426&campaignId%5B%5D=427&items%5B%5D=premium&items%5B%5D=high&items%5B%5D=low)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"failed": [// failed campaign id list
{
"id": 428,
"errorList": {
"0": "Error on save quality item high; CampaignId: 428; Item has already been taken",
"1": "Error on save quality item premium; CampaignId: 428; Item has already been taken"
}
},
],
"success": [426, 427 ]  // success processed campaign id list
}
}
```

#### Remove Quality Targeting for a Campaign List

GET/POST [http://daopush-api.info/api/campaign/drop-quality-batch?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372](http://daopush-api.info/api/campaign/drop-quality-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&campaignId%5B%5D=372)

<table id="bkmrk-parameter-type-descr-58" style="width: 100%;"><thead><tr><th style="text-align: left; width: 11.2028%;">parameter</th><th style="text-align: left; width: 10.4897%;">type</th><th style="text-align: left; width: 33.8498%;">description (available values)</th><th style="text-align: left; width: 44.4577%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 11.2028%;">campaignId</td><td style="text-align: left; width: 10.4897%;">array(int)</td><td style="text-align: left; width: 33.8498%;">list of campaign ids</td><td style="text-align: left; width: 44.4577%;">&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372</td></tr><tr><td style="text-align: left; width: 11.2028%;">items</td><td style="text-align: left; width: 10.4897%;">array (string)</td><td style="text-align: left; width: 33.8498%;">traffic quality list; low, regular, high, premium</td><td style="text-align: left; width: 44.4577%;">&amp;items\[\]=low&amp;items\[\]=regular</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-quality-batch?api-key={xxxxx-key}&amp;campaignId\[\]=428&amp;campaignId\[\]=426&amp;campaignId\[\]=427&amp;items\[\]=low](http://daopush-api.info/api/campaign/drop-quality-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=428&campaignId%5B%5D=426&campaignId%5B%5D=427&items%5B%5D=low)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"failed": [// failed campaign id list
{
"id": 428,
"errorList": {
"0": "Error on find quality item: low; CampaignId: 428"
}
}
],
"success": [426, 427 ]  // success processed campaign id list
}
}
```

#### Add Category for a Campaign List

GET/POST [http://daopush-api.info/api/campaign/add-category-batch?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372](http://daopush-api.info/api/campaign/add-category-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&campaignId%5B%5D=372)

<table id="bkmrk-parameter-type-descr-59" style="width: 100%;"><thead><tr><th style="text-align: left; width: 11.2032%;">parameter</th><th style="text-align: left; width: 9.17816%;">type</th><th style="text-align: left; width: 33.3731%;">description (available values)</th><th style="text-align: left; width: 46.2455%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 11.2032%;">campaignId</td><td style="text-align: left; width: 9.17816%;">array(int)</td><td style="text-align: left; width: 33.3731%;">list of campaign ids</td><td style="text-align: left; width: 46.2455%;">&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372</td></tr><tr><td style="text-align: left; width: 11.2032%;">items</td><td style="text-align: left; width: 9.17816%;">array(int)</td><td style="text-align: left; width: 33.3731%;">list of category ids for the format. See [here](#bkmrk-data-dictionaries-%7B%23) </td><td style="text-align: left; width: 46.2455%;">&amp;items\[\]=9&amp;items\[\]=10</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-category-batch?api-key={xxxxx-key}&amp;campaignId\[\]=428&amp;campaignId\[\]=426&amp;campaignId\[\]=427&amp;items\[\]=9&amp;items\[\]=10](http://daopush-api.info/api/campaign/add-category-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=428&campaignId%5B%5D=426&campaignId%5B%5D=427&items%5B%5D=9&items%5B%5D=10)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"failed": [// failed campaign id list
{
"id": 428,
"errorList": {
"0": "Error on save category item #9 Mainstream; CampaignId: 428; Item has already been taken",
"1": "Error on save category item #10 Adult; CampaignId: 428; Item has already been taken"
}
},
],
"success": [426, 427]  // success processed campaign id list
}
}
```

#### Remove Category for a Campaign List

GET/POST [http://daopush-api.info/api/campaign/drop-category-batch?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372](http://daopush-api.info/api/campaign/drop-category-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&campaignId%5B%5D=372)

<table id="bkmrk-parameter-type-descr-60" style="width: 100%;"><thead><tr><th style="text-align: left; width: 11.0842%;">parameter</th><th style="text-align: left; width: 9.53559%;">type</th><th style="text-align: left; width: 33.1347%;">description (available values)</th><th style="text-align: left; width: 46.2455%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 11.0842%;">campaignId</td><td style="text-align: left; width: 9.53559%;">array(int)</td><td style="text-align: left; width: 33.1347%;">list of campaign ids</td><td style="text-align: left; width: 46.2455%;">&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372</td></tr><tr><td style="text-align: left; width: 11.0842%;">items</td><td style="text-align: left; width: 9.53559%;">array(int)</td><td style="text-align: left; width: 33.1347%;">list of category ids for the format. See [here](#bkmrk-data-dictionaries-%7B%23) </td><td style="text-align: left; width: 46.2455%;">&amp;items\[\]=9&amp;items\[\]=10</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-category-batch?api-key={xxxxx-key}&amp;campaignId\[\]=428&amp;campaignId\[\]=426&amp;campaignId\[\]=427&amp;items\[\]=9](http://daopush-api.info/api/campaign/drop-category-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=428&campaignId%5B%5D=426&campaignId%5B%5D=427&items%5B%5D=9)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"failed": [// failed campaign id list
{
"id": 428,
"errorList": {
"0": "Error on find category item: 9; CampaignId: 428"
}
}
],
"success": [426, 427 ]  // success processed campaign id list
}
}
```

#### Add Country and Bid Targeting for a Campaign List

GET/POST [http://daopush-api.info/api/campaign/add-country-batch?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372](http://daopush-api.info/api/campaign/add-country-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&campaignId%5B%5D=372)

<table id="bkmrk-parameter-type-descr-61" style="width: 100%;"><thead><tr><th style="text-align: left; width: 11.0846%;">parameter</th><th style="text-align: left; width: 11.322%;">type</th><th style="text-align: left; width: 46.9617%;">description (available values)</th><th style="text-align: left; width: 30.6317%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 11.0846%;">campaignId</td><td style="text-align: left; width: 11.322%;">array(int)</td><td style="text-align: left; width: 46.9617%;">list of campaign ids</td><td style="text-align: left; width: 30.6317%;">&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372</td></tr><tr><td style="text-align: left; width: 11.0846%;">items</td><td style="text-align: left; width: 11.322%;">array(float)</td><td style="text-align: left; width: 46.9617%;">list of countries (country code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)) (key) and bid per 1000 impressions / clicks in USD (value)</td><td style="text-align: left; width: 30.6317%;">&amp;items\[ES\]=3.1&amp;items\[AG\]=2.05&amp;items\[US\]=5.08</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-country-batch?api-key={xxxxx-key}&amp;campaignId\[\]=428&amp;campaignId\[\]=426&amp;campaignId\[\]=427&amp;items\[AZ\]=3.1&amp;items\[KZ\]=2.05&amp;items\[US\]=5.08](http://daopush-api.info/api/campaign/add-country-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=428&campaignId%5B%5D=426&campaignId%5B%5D=427&items%5BAZ%5D=3.1&items%5BKZ%5D=2.05&items%5BUS%5D=5.08)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"failed": [// failed campaign id list
{
"id": 428,
"errorList": {
"0": "Error on save country item #AZ; CampaignId: 428; Item has already been taken",
"1": "Error on save country item #KZ; CampaignId: 428; Item has already been taken"
}
},
],
"success": [426, 427]  // success processed campaign id list
}
}
```

#### Remove Country Targeting for a Campaign List

GET/POST [http://daopush-api.info/api/campaign/drop-country-batch?api-key={xxxxx-key}&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372](http://daopush-api.info/api/campaign/drop-country-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=414&campaignId%5B%5D=402&campaignId%5B%5D=372)

<table id="bkmrk-parameter-type-descr-62" style="width: 100%; height: 128.586px;"><thead><tr style="height: 29.7969px;"><th style="text-align: left; width: 11.5614%; height: 29.7969px;">parameter</th><th style="text-align: left; width: 11.0819%; height: 29.7969px;">type</th><th style="text-align: left; width: 46.725%; height: 29.7969px;">description (available values)</th><th style="text-align: left; width: 30.6317%; height: 29.7969px;">example</th></tr></thead><tbody><tr style="height: 46.5938px;"><td style="text-align: left; width: 11.5614%; height: 46.5938px;">campaignId</td><td style="text-align: left; width: 11.0819%; height: 46.5938px;">array(int)</td><td style="text-align: left; width: 46.725%; height: 46.5938px;">list of campaign ids</td><td style="text-align: left; width: 30.6317%; height: 46.5938px;">&amp;campaignId\[\]=414&amp;campaignId\[\]=402&amp;campaignId\[\]=372</td></tr><tr style="height: 52.1953px;"><td style="text-align: left; width: 11.5614%; height: 52.1953px;">items</td><td style="text-align: left; width: 11.0819%; height: 52.1953px;">array(float)</td><td style="text-align: left; width: 46.725%; height: 52.1953px;">list of countries (country code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)) (key) and bid per 1000 impressions / clicks in USD (value)</td><td style="text-align: left; width: 30.6317%; height: 52.1953px;">&amp;items\[\]=AZ&amp;items\[\]=KZ</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-country-batch?api-key={xxxxx-key}&amp;campaignId\[\]=428&amp;campaignId\[\]=426&amp;campaignId\[\]=427&amp;items\[\]=AZ&amp;items\[\]=KZ](http://daopush-api.info/api/campaign/drop-country-batch?api-key=%7Bxxxxx-key%7D&campaignId%5B%5D=428&campaignId%5B%5D=426&campaignId%5B%5D=427&items%5B%5D=AZ&items%5B%5D=KZ)

```json
{
"status": "ok",
"mode": "batch",
"result": {
"failed": [// failed campaign id list
{
"id": 428,
"errorList": {
"0": "Error on find country item: KZ; CampaignId: 428"
}
}
],
"success": [426, 427 ]  // success processed campaign id list
}
}
```

### Micro-bidding for Campaigns

#### Campaign Bid Rules

GET [http://daopush-api.info/api/campaign/bid-rules?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/bid-rules?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-63"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/bid-rules?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/bid-rules?api-key=%7Bxxxxx-key%7D&id=111)

```json
{
"status": "ok",
"rules": [
{
"items": [
"1234", // source id
"3830353732383237355f3435393537", // subId
"3733393431383738355f3532373139"  // subId
],
"bid": 1.1 // bid for these subsIds and sources
},
{
"items": [
"3831383634383731375f3532393033" // subId
],
"bid": 1.4 // bid for these subsIds and sources
}
]
}
```

#### Add Campaign Bid Rule

GET/POST [http://daopush-api.info/api/campaign/add-bid-rule?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/add-bid-rule?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-64" style="width: 80.5952%;"><thead><tr><th style="text-align: left; width: 13.1658%;">parameter</th><th style="text-align: left; width: 15.0874%;">type</th><th style="text-align: left; width: 31.9546%;">description (available values)</th><th style="text-align: left; width: 39.7934%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 13.1658%;">id</td><td style="text-align: left; width: 15.0874%;">int</td><td style="text-align: left; width: 31.9546%;">campaign id</td><td style="text-align: left; width: 39.7934%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 13.1658%;">items</td><td style="text-align: left; width: 15.0874%;">array(string)</td><td style="text-align: left; width: 31.9546%;">list of source IDs or subIds to add to bid rules</td><td style="text-align: left; width: 39.7934%;">&amp;items\[\]=335f313233&amp;items\[\]=335f313234

</td></tr><tr><td style="text-align: left; width: 13.1658%;">bid</td><td style="text-align: left; width: 15.0874%;">float</td><td style="text-align: left; width: 31.9546%;">Bid in USD</td><td style="text-align: left; width: 39.7934%;">&amp;bid=1.2</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/add-bid-rule?api-key={xxxxx-key}&amp;id=111&amp;&amp;items\[\]=1234&amp;items\[\]=335f313233&amp;items\[\]=335f313234&amp;bid=1.2](http://daopush-api.info/api/campaign/add-bid-rule?api-key=%7Bxxxxx-key%7D&id=111&&items%5B%5D=1234&items%5B%5D=335f313233&items%5B%5D=335f313234&bid=1.2)

`{ "status": "ok"}`

#### Remove Campaign Bid Rule

GET/POST [http://daopush-api.info/api/campaign/drop-bid-rlue?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-bid-rue?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-65" style="width: 100%;"><thead><tr><th style="text-align: left; width: 7.9857%;">parameter</th><th style="text-align: left; width: 12.1573%;">type</th><th style="text-align: left; width: 36.4728%;">description (available values)</th><th style="text-align: left; width: 43.3841%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 7.9857%;">id</td><td style="text-align: left; width: 12.1573%;">int</td><td style="text-align: left; width: 36.4728%;">campaign id</td><td style="text-align: left; width: 43.3841%;">&amp;id=111</td></tr><tr><td style="text-align: left; width: 7.9857%;">items</td><td style="text-align: left; width: 12.1573%;">array(string)</td><td style="text-align: left; width: 36.4728%;">list of source IDs or subIds to remove from bid rules</td><td style="text-align: left; width: 43.3841%;">&amp;items\[\]=335f313233&amp;items\[\]=335f313234&amp;items\[\]=1234

</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-bid-rule?api-key={xxxxx-key}&amp;id=111&amp;items\[\]=1234&amp;items\[\]=335f313233&amp;items\[\]=335f313234](http://daopush-api.info/api/campaign/drop-bid-rule?api-key=%7Bxxxxx-key%7D&id=111&items%5B%5D=1234&items%5B%5D=335f313233&items%5B%5D=335f313234)

`{ "status": "ok"}`

### Auto-rules for a Campaign

#### Campaign CPA Rules

GET http://daopush-api.info/api/campaign/cpa-rules?api-key={xxxxx-key}&amp;id=111

<table id="bkmrk-parameter-type-descr-66"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=123</td></tr></tbody></table>

Example  
http://daopush-api.info/api/campaign/bid-rules?api-key={xxxxx-key}&amp;id=111

```json
{
"status": "ok",
"rules": [
{
"id": 16,
"campaign_id": 111,
"type": "click",
"cond": "greater",
"amount": 1.08,
"lead_type": "lead",
"lead_cond": "less",
"lead_amount": 1
},
{
"id": 17,
"campaign_id": 111,
"type": "click",
"cond": "greater",
"amount": 1.08,
"lead_type": "lead",
"lead_cond": "less",
"lead_amount": 100
},
]
}
```

#### Add Campaign CPA Rule

GET/POST [http://daopush-api.info/api/campaign/add-cpa-rule?api-key={xxxxx-key}&amp;id=111&amp;mode={mode}](http://daopush-api.info/api/campaign/add-cpa-rule?api-key=%7Bxxxxx-key%7D&id=111&mode=%7Bmode)

<table id="bkmrk-parameter-type-descr-67" style="width: 100%;"><thead><tr><th style="text-align: left; width: 10.2499%;">parameter</th><th style="text-align: left; width: 6.91342%;">type</th><th style="text-align: left; width: 55.8999%;">description (available values)</th><th style="text-align: left; width: 26.9368%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 10.2499%;">id</td><td style="text-align: left; width: 6.91342%;">int</td><td style="text-align: left; width: 55.8999%;">campaign id</td><td style="text-align: left; width: 26.9368%;">&amp;id=123</td></tr><tr><td style="text-align: left; width: 10.2499%;">mode</td><td style="text-align: left; width: 6.91342%;">string</td><td style="text-align: left; width: 55.8999%;">Add mode (add - add rule, edit - edit rule). When mode=edit is used, the id of the rule that needs to be changed must be specified in each rule</td><td style="text-align: left; width: 26.9368%;">mode=edit</td></tr><tr><td style="text-align: left; width: 10.2499%;">items</td><td style="text-align: left; width: 6.91342%;">array</td><td style="text-align: left; width: 55.8999%;">list of rules. A rule contains the following fields: **type**: *(precondition type)* sum - amount spent on the subId; show - number of impressions on the subId **(except pops)**; click - number of clicks on the subId. **cond**: (value comparison type) greater - greater than; less - less than. **amount**: (condition value). **lead\_type**: (trigger condition for each subId) click - clicks received; lead - leads received; sum - revenue from the subId; cpa - cost per lead; roi - [ROI](https://en.wikipedia.org/wiki/Return_on_investment) from the subId; cpa\_main - cost of the primary lead (type=main); lead\_main - number of primary leads (type=main); starts - video impression starts **for video** (video only). **lead\_cond**: (lead comparison condition type) greater - greater than; less - less than. **lead\_amount**: (lead condition value)</td><td style="text-align: left; width: 26.9368%;">&amp;items\[16\]\[type\]="click" &amp;items\[16\]\[cond\]="greater" &amp;items\[16\]\[amount\]="0.5" &amp;items\[16\]\[lead\_type\]="lead" &amp;items\[16\]\[lead\_cond\]="less" &amp;items\[16\]\[lead\_amount\]="1"</td></tr></tbody></table>

Example: Adding a CPA rule. **The key in items must be the same for one rule** (16 - the key of the same rule. When mode=edit, it is used as the id if it is not specified in the record itself; when mode=add, it can be any value)  
[http://daopush-api.info/api/campaign/add-cpa-rule?api-key={xxxxx-key}&amp;id=111&amp;mode=add&amp;items\[16\]\[type\]=click&amp;items\[16\]\[cond\]=greater&amp;items\[16\]\[amount\]=0.5&amp;items\[16\]\[lead\_type\]=lead&amp;items\[16\]\[lead\_cond\]=less&amp;items\[16\]\[lead\_amount\]=1](http://daopush-api.info/api/campaign/add-cpa-rule?api-key=%7Bxxxxx-key%7D&id=111&mode=add&items%5B16%5D%5Btype%5D=click&items%5B16%5D%5Bcond%5D=greater&items%5B16%5D%5Bamount%5D=0.5&items%5B16%5D%5Blead_type%5D=lead&items%5B16%5D%5Blead_cond%5D=less&items%5B16%5D%5Blead_amount%5D=1)

`{ "status": "ok"}`

Example:  
POST [http://daopush-api.info/api/campaign/add-cpa-rule?api-key={xxxxx-key}&amp;id=111&amp;mode=add](http://daopush-api.info/api/campaign/add-cpa-rule?api-key=%7Bxxxxx-key%7D&id=111&mode=add)  
*Content-type: application/json*  
Body:

```json
{
"items" : [
{
"type" : "click",
"cond" : "greater",
"amount" : 50,
"lead_type" : "lead",
"lead_cond" : "less",
"lead_amount" : 4
},
{
"type" : "sum",
"cond" : "greater",
"amount" : 2.5,
"lead_type" : "lead",
"lead_cond" : "less",
"lead_amount" : 2
}
]
}

{ "status": "ok"}
```

Example: edit a rule (specify the rule id and only the fields that are being changed)  
POST [http://daopush-api.info/api/campaign/add-cpa-rule?api-key={xxxxx-key}&amp;id=111&amp;mode=edit](http://daopush-api.info/api/campaign/add-cpa-rule?api-key=%7Bxxxxx-key%7D&id=111&mode=edit)  
*Content-type: application/json*  
Body:

```json
{
"items" : [
{
"id" : 4444,
"amount" : 60,
"lead_amount" : 4
},
{
"id" : 4445,
"lead_type" : "click",
"lead_cond" : "less",
"lead_amount" : 100
}
]
}

{ "status": "ok"}
```

#### Remove Campaign CPA Rule

GET/POST [http://daopush-api.info/api/campaign/drop-cpa-rlue?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/drop-cpa-rlue?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-68"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">campaign id</td><td style="text-align: left;">&amp;id=111</td></tr><tr><td style="text-align: left;">items</td><td style="text-align: left;">array(string)</td><td style="text-align: left;">list of rule IDs to remove from CPA rules</td><td style="text-align: left;">&amp;items\[\]=4444&amp;items\[\]=4445

</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/campaign/drop-cpa-rule?api-key={xxxxx-key}&amp;id=111&amp;items\[\]=4444&amp;items\[\]=4445](http://daopush-api.info/api/campaign/drop-cpa-rule?api-key=%7Bxxxxx-key%7D&id=111&items%5B%5D=4444&items%5B%5D=4445)

`{ "status": "ok"}`

### Creatives

#### Creative List

GET [http://daopush-api.info/api/creative/list?api-key={xxxxx-key}&amp;campaignId=111](http://daopush-api.info/api/creative/list?api-key=%7Bxxxxx-key%7D&campaignId=111)

<table id="bkmrk-parameter-type-descr-69" style="width: 100%;"><thead><tr><th style="text-align: left; width: 12.2765%;">parameter</th><th style="text-align: left; width: 6.43623%;">type</th><th style="text-align: left; width: 61.3834%;">description (available values)</th><th style="text-align: left; width: 19.9038%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 12.2765%;">campaignId</td><td style="text-align: left; width: 6.43623%;">int</td><td style="text-align: left; width: 61.3834%;">campaign id</td><td style="text-align: left; width: 19.9038%;">&amp;campaignId=111</td></tr><tr><td style="text-align: left; width: 12.2765%;">status</td><td style="text-align: left; width: 6.43623%;">string</td><td style="text-align: left; width: 61.3834%;">moderation status (available values: approved, new, declined)</td><td style="text-align: left; width: 19.9038%;">&amp;status=approved</td></tr><tr><td style="text-align: left; width: 12.2765%;">work\_status</td><td style="text-align: left; width: 6.43623%;">string</td><td style="text-align: left; width: 61.3834%;">work status (paused, started, archived)</td><td style="text-align: left; width: 19.9038%;">&amp;work\_status=started</td></tr><tr><td style="text-align: left; width: 12.2765%;">title</td><td style="text-align: left; width: 6.43623%;">string</td><td style="text-align: left; width: 61.3834%;">filter by title. Substring match</td><td style="text-align: left; width: 19.9038%;">&amp;title=test</td></tr><tr><td style="text-align: left; width: 12.2765%;">text</td><td style="text-align: left; width: 6.43623%;">string</td><td style="text-align: left; width: 61.3834%;">filter by text. Substring match</td><td style="text-align: left; width: 19.9038%;">&amp;text=test</td></tr><tr><td style="text-align: left; width: 12.2765%;">url</td><td style="text-align: left; width: 6.43623%;">string</td><td style="text-align: left; width: 61.3834%;">filter by url. Substring match. (for filtering by youtube\_url in a YouTube creative, the url field is also used)</td><td style="text-align: left; width: 19.9038%;">&amp;url=google.com</td></tr></tbody></table>

Example

[http://daopush-api.info/api/creative/list?api-key={xxxxx-key}&amp;campaignId=111&amp;status=approved&amp;work\_status=started](http://daopush-api.info/api/creative/list?api-key=%7Bxxxxx-key%7D&campaignId=111&status=approved&work_status=started)

```json
{
"items": [
{
"id": 473,
"t_created": "2020-12-04T17:52:02+02:00",
"campaign_id": 373,
"title": "New creative",
"status": "New",
"work_status": "Started",
"url": "http://url.net",
"icon_url": "http://media.com/473.jpg",
"image_url": "http://media.com/473.jpg",
"text": null,
"ctr": 0.5034
},
{
"id": 474,
"t_created": "2020-12-04T17:52:27+02:00",
"campaign_id": 373,
"title": "New creative",
"status": "New",
"work_status": "Started",
"url": "http://url.net",
"icon_url": "http://media.com/474.jpg",
"image_url": "http://media.com/474.jpg",
"text": null,
"ctr": 0.5034
},
]
}
```

#### Creative

GET [http://daopush-api.info/api/creative/item?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/creative/item?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-70"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">creative id</td><td style="text-align: left;">&amp;id=123</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/creative/item?api-key={xxxxx-key}&amp;id=123](http://daopush-api.info/api/creative/item?api-key=%7Bxxxxx-key%7D&id=123)

```json
{
"status": "ok",
"item": {
"id": 352,                                   // creative id
"t_created": "2021-03-02T18:03:35+02:00",    // time create creative
"status": "New",                             // creative moderation status (New, Approved, Declined)
"status_note": null,                         // note for moderate status
"work_status": "Started",                    // working status: Paused|Started|Archived
"campaign_id": 239,                          // campaign id
"type": "video",                             // creative type for video ad format: youtube|video
"title": "New ajax copy",                  // creative title
"convert": "wait",                           // convert status for video: wait|processing|success|fail
"duration": 18,                              // video duration in seconds (only for video)
"icon_url": "http://media.com/352.jpg",      // icon url
"image_url": "http://media.com/352.jpg",     // image url (only for push, in-page)
"video_url": "http://media.com/352.mp4",     // video url (only for video)
"files": [	                                // converting video files (only for video)
{
"t_event": "2021-05-21 14:27:08",    // create video file
"type": "video",                     // type file: video
"mime": "video/mp4",                 // file mime-type
"codec": "avc1",                     // video codec
"codec_name": "h264",                // video codec name
"bit_rate": 17003355,
"duration": 18,                      // duration on seconds
"width": 1920,
"height": 1080,
"url": "http:///media.com/352.mp4"   // video file url
}
]
}
}
```

#### Add Creative

POST [http://daopush-api.info/api/creative/create?api-key={xxxxx-key}&amp;campaignId={campaignId}](http://daopush-api.info/api/creative/create?api-key=%7Bxxxxx-key%7D&campaignId=%7BcampaignId)

{campaignId} - ID of the campaign to which the creative will be added

<table id="bkmrk-parameter-type-descr-71" style="width: 100%; height: 533.125px;"><thead><tr style="height: 29.7969px;"><th style="text-align: left; width: 12.2765%; height: 29.7969px;">parameter</th><th style="text-align: left; width: 10.7251%; height: 29.7969px;">type</th><th style="text-align: left; width: 45.4132%; height: 29.7969px;">description (available values)</th><th style="text-align: left; width: 31.5852%; height: 29.7969px;">example</th></tr></thead><tbody><tr style="height: 96.9844px;"><td style="text-align: left; width: 12.2765%; height: 96.9844px;">name</td><td style="text-align: left; width: 10.7251%; height: 96.9844px;">string (required)</td><td style="text-align: left; width: 45.4132%; height: 96.9844px;">Creative name</td><td style="text-align: left; width: 31.5852%; height: 96.9844px;">name=Test</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 12.2765%; height: 46.5938px;">work\_status</td><td style="text-align: left; width: 10.7251%; height: 46.5938px;">string</td><td style="text-align: left; width: 45.4132%; height: 46.5938px;">Work status. Values: paused - paused; started - started; archived - archived. Default - paused</td><td style="text-align: left; width: 31.5852%; height: 46.5938px;">work\_status=paused</td></tr><tr style="height: 96.9844px;"><td style="text-align: left; width: 12.2765%; height: 96.9844px;">title</td><td style="text-align: left; width: 10.7251%; height: 96.9844px;">string (required)</td><td style="text-align: left; width: 45.4132%; height: 96.9844px;">Creative title (max. 65 characters)</td><td style="text-align: left; width: 31.5852%; height: 96.9844px;">title=My offer title</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 12.2765%; height: 46.5938px;">text</td><td style="text-align: left; width: 10.7251%; height: 46.5938px;">string</td><td style="text-align: left; width: 45.4132%; height: 46.5938px;">Creative text (max. 160 characters)</td><td style="text-align: left; width: 31.5852%; height: 46.5938px;">text=My super offer description</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 12.2765%; height: 46.5938px;">url</td><td style="text-align: left; width: 10.7251%; height: 46.5938px;">string</td><td style="text-align: left; width: 45.4132%; height: 46.5938px;">Click-through url for the creative. Required for all creatives except Youtube creatives for video format</td><td style="text-align: left; width: 31.5852%; height: 46.5938px;">url=https://google.com?new=1</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 12.2765%; height: 46.5938px;">youtubeUrl</td><td style="text-align: left; width: 10.7251%; height: 46.5938px;">string</td><td style="text-align: left; width: 45.4132%; height: 46.5938px;">Link to a Youtube video. For Youtube creatives for video format</td><td style="text-align: left; width: 31.5852%; height: 46.5938px;">youtubeUrl=https://www.youtube.com/watch?v=O76EUqrhpfg</td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 12.2765%; height: 46.5938px;">iconFile</td><td style="text-align: left; width: 10.7251%; height: 46.5938px;">file</td><td style="text-align: left; width: 45.4132%; height: 46.5938px;">Icon file for the creative. Required for formats push, inpage, tg-msg</td><td style="text-align: left; width: 31.5852%; height: 46.5938px;"> </td></tr><tr style="height: 29.7969px;"><td style="text-align: left; width: 12.2765%; height: 29.7969px;">imageFile</td><td style="text-align: left; width: 10.7251%; height: 29.7969px;">file</td><td style="text-align: left; width: 45.4132%; height: 29.7969px;">Large image file for the creative.</td><td style="text-align: left; width: 31.5852%; height: 29.7969px;"> </td></tr><tr style="height: 46.5938px;"><td style="text-align: left; width: 12.2765%; height: 46.5938px;">videoFile</td><td style="text-align: left; width: 10.7251%; height: 46.5938px;">file</td><td style="text-align: left; width: 45.4132%; height: 46.5938px;">Video file for a video creative. Required for video format if youtubeUrl is not specified</td><td style="text-align: left; width: 31.5852%; height: 46.5938px;"> </td></tr></tbody></table>

Example  
POST [http://daopush-api.info/api/creative/create?api-key={xxxxx-key}&amp;campaignId=123](http://daopush-api.info/api/creative/create?api-key=%7Bxxxxx-key%7D&campaignId=123)

[![image.png](https://wiki.dao.ad/uploads/images/gallery/2026-03/scaled-1680-/5pSimage.png)](https://wiki.dao.ad/uploads/images/gallery/2026-03/5pSimage.png)

```json
{
"status": "ok",
"item": {
"id": 352,                                   // creative id
"t_created": "2021-03-02T18:03:35+02:00",    // time create creative
"status": "New",                             // creative moderation status (New, Approved, Declined)
"status_note": null,                         // note for moderate status
"work_status": "Paused",                     // working status: Paused|Started|Archived
"campaign_id": 239,                          // campaign id
"title": "test title",                       // creative title
"text": "some long text",                    // creative text
"url":  "https://qwe.com?new=yes",           // creative url
"icon_url": "http://media.com/352.jpg",      // icon url
"image_url": "http://media.com/352.jpg",     // image url (only for push, in-page)
"ctr": 1.3,                                  // creative ctr in percent
}
}
```

#### Edit Creative

POST http://daopush-api.info/api/creative/update?api-key={xxxxx-key}&amp;id=222

<table id="bkmrk-parameter-type-descr-72" style="width: 100%;"><thead><tr><th style="text-align: left; width: 11.7998%;">parameter</th><th style="text-align: left; width: 9.76971%;">type</th><th style="text-align: left; width: 46.8453%;">description (available values)</th><th style="text-align: left; width: 31.5852%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 11.7998%;">name</td><td style="text-align: left; width: 9.76971%;">string (required)</td><td style="text-align: left; width: 46.8453%;">Creative name</td><td style="text-align: left; width: 31.5852%;">name=Test</td></tr><tr><td style="text-align: left; width: 11.7998%;">work\_status</td><td style="text-align: left; width: 9.76971%;">string</td><td style="text-align: left; width: 46.8453%;">Work status. Values: paused - paused; started - started; archived - archived. Default - paused</td><td style="text-align: left; width: 31.5852%;">work\_status=paused</td></tr><tr><td style="text-align: left; width: 11.7998%;">title</td><td style="text-align: left; width: 9.76971%;">string (required)</td><td style="text-align: left; width: 46.8453%;">Creative title (max. 65 characters)</td><td style="text-align: left; width: 31.5852%;">title=My offer title</td></tr><tr><td style="text-align: left; width: 11.7998%;">text</td><td style="text-align: left; width: 9.76971%;">string</td><td style="text-align: left; width: 46.8453%;">Creative text (max. 160 characters)</td><td style="text-align: left; width: 31.5852%;">title=My super offer description</td></tr><tr><td style="text-align: left; width: 11.7998%;">url</td><td style="text-align: left; width: 9.76971%;">string</td><td style="text-align: left; width: 46.8453%;">Click-through url for the creative. Required for all creatives except Youtube creatives for video format</td><td style="text-align: left; width: 31.5852%;">url=https://google.com?new=1</td></tr><tr><td style="text-align: left; width: 11.7998%;">youtubeUrl</td><td style="text-align: left; width: 9.76971%;">string</td><td style="text-align: left; width: 46.8453%;">Link to a Youtube video. For Youtube creatives for video format</td><td style="text-align: left; width: 31.5852%;">youtubeUrl=https://www.youtube.com/watch?v=O76EUqrhpfg</td></tr><tr><td style="text-align: left; width: 11.7998%;">iconFile</td><td style="text-align: left; width: 9.76971%;">file</td><td style="text-align: left; width: 46.8453%;">Icon file for the creative. Required for formats push, inpage, tg-msg</td><td style="text-align: left; width: 31.5852%;"> </td></tr><tr><td style="text-align: left; width: 11.7998%;">imageFile</td><td style="text-align: left; width: 9.76971%;">file</td><td style="text-align: left; width: 46.8453%;">Large image file for the creative.</td><td style="text-align: left; width: 31.5852%;"> </td></tr><tr><td style="text-align: left; width: 11.7998%;">videoFile</td><td style="text-align: left; width: 9.76971%;">file</td><td style="text-align: left; width: 46.8453%;">Video file for a video creative. Required for video format if youtubeUrl is not specified</td><td style="text-align: left; width: 31.5852%;"> </td></tr></tbody></table>

Example  
POST http://daopush-api.info/api/creative/create?api-key={xxxxx-key}

[![image.png](https://wiki.dao.ad/uploads/images/gallery/2026-03/scaled-1680-/0CTimage.png)](https://wiki.dao.ad/uploads/images/gallery/2026-03/0CTimage.png)

```json
{
"status": "ok",
"item": {
"id": 579,                                   // creative id
"t_created": "2021-03-02T18:03:35+02:00",    // time create creative
"status": "New",                             // creative moderation status (New, Approved, Declined)
"status_note": null,                         // note for moderate status
"work_status": "Paused",                     // working status: Paused|Started|Archived
"campaign_id": 239,                          // campaign id
"title": "test title 4",                       // creative title
"text": "some long text",                    // creative text
"url":  "https://google.com",                // creative url
"icon_url": "http://media.com/352.jpg",      // icon url
"image_url": "http://media.com/352.jpg",     // image url (only for push, in-page)
"ctr": 1.3,                                  // creative ctr in percent
}
}
```

#### Start Creative

GET [http://daopush-api.info/api/creative/start?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/creative/start?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-73"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">creative id</td><td style="text-align: left;">&amp;id=123</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/creative/start?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/creative/start?api-key=%7Bxxxxx-key%7D&id=111)  
`{`  
`"status": "ok"`  
`}`

#### Pause Creative

GET [http://daopush-api.info/api/creative/pause?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/creative/pause?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-74"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">creative id</td><td style="text-align: left;">&amp;id=123</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/creative/pause?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/creative/pause?api-key=%7Bxxxxx-key%7D&id=111)  
`{`  
`"status": "ok"`  
`}`

#### Archive Creative

GET [http://daopush-api.info/api/creative/archive?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/creative/archive?api-key=%7Bxxxxx-key%7D&id=111)

<table id="bkmrk-parameter-type-descr-75"><thead><tr><th style="text-align: left;">parameter</th><th style="text-align: left;">type</th><th style="text-align: left;">description (available values)</th><th style="text-align: left;">example</th></tr></thead><tbody><tr><td style="text-align: left;">id</td><td style="text-align: left;">int</td><td style="text-align: left;">creative id</td><td style="text-align: left;">&amp;id=123</td></tr></tbody></table>

Example  
[http://daopush-api.info/api/creative/archive?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/creative/archive?api-key=%7Bxxxxx-key%7D&id=111)  
`{`  
`"status": "ok"`  
`}`

### Other Operations

#### Balance

GET [http://daopush-api.info/api/campaign/balance?api-key={xxxxx-key}](http://daopush-api.info/api/campaign/balance?api-key=%7Bxxxxx-key%7D)

Example  
[http://daopush-api.info/api/campaign/archive?api-key={xxxxx-key}&amp;id=111](http://daopush-api.info/api/campaign/archive?api-key=%7Bxxxxx-key%7D&id=111)

```json
{"user_id":7,"currency":"USD","balance":98.52546}
```

#### Data Dictionaries

GET [http://daopush-api.info/api/campaign/list-refs-data?api-key={xxxxx-key}](http://daopush-api.info/api/campaign/list-refs-data?api-key=%7Bxxxxx-key)

<table id="bkmrk-parameter-type-descr-76" style="width: 100%;"><thead><tr><th style="text-align: left; width: 9.89273%;">parameter</th><th style="text-align: left; width: 7.27056%;">type</th><th style="text-align: left; width: 67.7011%;">description (available values)</th><th style="text-align: left; width: 15.1356%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 9.89273%;">type</td><td style="text-align: left; width: 7.27056%;">string</td><td style="text-align: left; width: 67.7011%;">Dictionary type: country, os, browser, category, vertical, language, language\_code, subs\_age</td><td style="text-align: left; width: 15.1356%;">&amp;type=category</td></tr></tbody></table>

Example: category dictionary (grouped by format)  
[http://daopush-api.info/api/campaign/list-refs-data?api-key={xxxxx-key}&amp;type=category](http://daopush-api.info/api/campaign/list-refs-data?api-key=%7Bxxxxx-key%7D&type=category)

```json
{
"status": "ok",
"category": {
"push": {
"2": "Adult",
"1": "Mainstream"
},
"pops": {
"10": "Adult",
"9": "Mainstream"
},
"video": {
"14": "Adult",
"13": "Mainstream"
}
}
}
```

Example: country dictionary  
[http://daopush-api.info/api/campaign/list-refs-data?api-key={xxxxx-key}&amp;type=country](http://daopush-api.info/api/campaign/list-refs-data?api-key=%7Bxxxxx-key%7D&type=country)

```json
{
"status": "ok",
"country": {
"1": "Andorra (AD)",
"8": "Angola (AO)",
"5": "Anguilla (AI)",
"9": "Argentina (AR)",
"13": "Aruba (AW)",
"12": "Australia (AU)",
"11": "Austria (AT)",
"14": "Azerbaijan (AZ)",
"26": "Bahamas (BS)",
"16": "Bangladesh (BD)",
"17": "Belgium (BE)",
...
}
}
```

Example: all dictionaries at once  
http://daopush-api.info/api/campaign/list-refs-data?api-key={xxxxx-key}

```json
{
"status": "ok",
"country": {
"12": "Australia (AU)",
"11": "Austria (AT)",
"14": "Azerbaijan (AZ)",
"16": "Bangladesh (BD)",
"17": "Belgium (BE)",
...
},
"os": {
"1": "Desktop",
"2": "Mobile",
"5": "Windows 8",
"6": "Windows 7",
"3": "Windows 10",
"8": "Windows XP",
...
},
"browser": {
"3": "Android Chrome",
"2": "Mozilla firefox",
"6": "Desktop",
"5": "Opera",
"1": "Google Chrome",
...
},
"vertical": {
"32": "Mix",
"33": "Crypto",
"34": "Dating",
"35": "Finance",
"36": "Betting",
"37": "Gambling",
...
},
"language": {
"159": "Abkhazian (ab)",
"1": "Afar (aa)",
"46": "Afrikaans (af)",
"126": "Akan (ak)",
...
},
"subs_age": {
"1": "1 - 3 days",
"2": "4 - 7 days",
"3": "8 - 15 days",
"4": "16+ days"
}
"language_code": {
"ab": "Abkhazian (ab)",
"aa": "Afar (aa)",
"af": "Afrikaans (af)",
"ak": "Akan (ak)",
...
},
"category": {
"push": {
"2": "Adult",
"1": "Mainstream"
},
"pops": {
"10": "Adult",
"9": "Mainstream"
},
"video": {
"14": "Adult",
"13": "Mainstream"
}
}
}
```

#### Search in the Data Dictionary (city, region, ISP mobile)

GET http://daopush-api.info/api/campaign/search?api-key={xxxxx-key}

<table id="bkmrk-parameter-type-descr-77" style="width: 100%;"><thead><tr><th style="text-align: left; width: 9.65435%;">parameter</th><th style="text-align: left; width: 13.7068%;">type</th><th style="text-align: left; width: 60.9074%;">description (available values)</th><th style="text-align: left; width: 15.6123%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 9.65435%;">type</td><td style="text-align: left; width: 13.7068%;">string (required)</td><td style="text-align: left; width: 60.9074%;">Dictionary type: city, region, isp-mobile</td><td style="text-align: left; width: 15.6123%;">&amp;type=city</td></tr><tr><td style="text-align: left; width: 9.65435%;">search</td><td style="text-align: left; width: 13.7068%;">string (required)</td><td style="text-align: left; width: 60.9074%;">Search string. Minimum 3 characters.</td><td style="text-align: left; width: 15.6123%;">&amp;search=London</td></tr><tr><td style="text-align: left; width: 9.65435%;">country</td><td style="text-align: left; width: 13.7068%;">array (string)</td><td style="text-align: left; width: 60.9074%;">List of countries for additional filtering of cities / regions. **Only for type: city, region**</td><td style="text-align: left; width: 15.6123%;">&amp;country\[\]=US</td></tr><tr><td style="text-align: left; width: 9.65435%;">limit</td><td style="text-align: left; width: 13.7068%;">int</td><td style="text-align: left; width: 60.9074%;">Limit of records in the response. Default 10. Max. 100;</td><td style="text-align: left; width: 15.6123%;">&amp;limit=5</td></tr></tbody></table>

Example: Dictionary search for ISP mobile by substring “voda”  
[http://daopush-api.info/api/campaign/search?api-key={xxxxx-key}&amp;type=isp-mobile&amp;search=voda&amp;limit=10](http://daopush-api.info/api/campaign/search?api-key=%7Bxxxxx-key%7D&type=isp-mobile&search=voda&limit=10)

```json
{
"2": "Vodafone",
"49": "Vodafone UK"
}
```

Example: City search for country USA (country\_code: US) by substring “new york”  
[http://daopush-api.info/api/campaign/search?api-key={xxxx-key}&amp;type=city&amp;search=new%20york&amp;limit=10&amp;country\[\]=US](http://daopush-api.info/api/campaign/search?api-key=%7Bxxxx-key%7D&type=city&search=new%20york&limit=10&country%5B%5D=US)

```json
{
"36856": "East New York (US - New York)",
"144734": "New York City (US - New York)",
"89054": "New York Mills (US - New York)",
"139781": "West New York (US - New Jersey)",
"89050": "New York (US)",
"89053": "New York Mills (US - Minnesota)",
"73290": "Little York (US - New York)",
"143166": "York (US - New York)",
"143181": "Yorkshire (US - New York)",
"143188": "Yorktown Heights (US - New York)"
}
```

Example: Search for a region by substring “new”  
[http://daopush-api.info/api/campaign/search?api-key={xxxx-key}&amp;type=region&amp;search=new&amp;limit=10](http://daopush-api.info/api/campaign/search?api-key=%7Bxxxx-key%7D&type=region&search=new&limit=10)

```json
{
"13": "New York (US)",
"21": "New Jersey (US)",
"116": "New South Wales (AU)",
"223": "New Hampshire (US)"
}
```

#### Get Minimal and Recommended Bid for a Campaign

GET/POST [http://daopush-api.info/api/campaign/price?api-key={xxxxx-key}&amp;adFormat={ad\_format}](http://daopush-api.info/api/campaign/price?api-key=%7Bxxxxx-key%7D&adFormat=%7Bad_format)

{ad\_format} - Ad format. Available values: push, pops, video, inpage

<table id="bkmrk-parameter-type-descr-78" style="width: 100%;"><thead><tr><th style="text-align: left; width: 10.4887%;">parameter</th><th style="text-align: left; width: 10.8462%;">type</th><th style="text-align: left; width: 47.6792%;">description (available values)</th><th style="text-align: left; width: 30.9859%;">example</th></tr></thead><tbody><tr><td style="text-align: left; width: 10.4887%;">language</td><td style="text-align: left; width: 10.8462%;">array (string)</td><td style="text-align: left; width: 47.6792%;">List of languages [ISO 639-1 (2 letter)](https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes)</td><td style="text-align: left; width: 30.9859%;">&amp;language\[\]=en&amp;language\[\]=vi</td></tr><tr><td style="text-align: left; width: 10.4887%;">country</td><td style="text-align: left; width: 10.8462%;">array (string)</td><td style="text-align: left; width: 47.6792%;">List of countries (country code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes))</td><td style="text-align: left; width: 30.9859%;">&amp;country\[\]=BR&amp;country\[\]=AG</td></tr><tr><td style="text-align: left; width: 10.4887%;">quality</td><td style="text-align: left; width: 10.8462%;">array (string)</td><td style="text-align: left; width: 47.6792%;">List of quality values: low, regular, high, premium</td><td style="text-align: left; width: 30.9859%;">&amp;quality\[\]=high&amp;quality\[\]=low</td></tr><tr><td style="text-align: left; width: 10.4887%;">category</td><td style="text-align: left; width: 10.8462%;">array (int)</td><td style="text-align: left; width: 47.6792%;">List of category IDs for the format. See [here](#bkmrk-data-dictionaries-%7B%23) </td><td style="text-align: left; width: 30.9859%;">&amp;category\[\]=9&amp;category\[\]=10</td></tr><tr><td style="text-align: left; width: 10.4887%;">os</td><td style="text-align: left; width: 10.8462%;">array (int)</td><td style="text-align: left; width: 47.6792%;">List of OS IDs. See [here](#bkmrk-data-dictionaries-%7B%23) </td><td style="text-align: left; width: 30.9859%;">&amp;os\[\]=14&amp;os\[\]=10</td></tr><tr><td style="text-align: left; width: 10.4887%;">browser</td><td style="text-align: left; width: 10.8462%;">array (int)</td><td style="text-align: left; width: 47.6792%;">List of browser IDs. See [here](#bkmrk-data-dictionaries-%7B%23) </td><td style="text-align: left; width: 30.9859%;">&amp;browser\[\]=14&amp;browser\[\]=10</td></tr><tr><td style="text-align: left; width: 10.4887%;">subsAge</td><td style="text-align: left; width: 10.8462%;">array (int)</td><td style="text-align: left; width: 47.6792%;">List of subscription age group IDs. See [here](#bkmrk-data-dictionaries-%7B%23) **Push format only**</td><td style="text-align: left; width: 30.9859%;">&amp;subsAge\[\]=1&amp;subsAge\[\]=2</td></tr><tr><td style="text-align: left; width: 10.4887%;">region</td><td style="text-align: left; width: 10.8462%;">array (int)</td><td style="text-align: left; width: 47.6792%;">list of region ids. To get a region id, you need to perform its [search](#bkmrk-search-in-the-data-d)</td><td style="text-align: left; width: 30.9859%;">&amp;region\[\]=4&amp;region\[\]=9&amp;region\[\]=10</td></tr><tr><td style="text-align: left; width: 10.4887%;">city</td><td style="text-align: left; width: 10.8462%;">array (int)</td><td style="text-align: left; width: 47.6792%;">list of city ids. To get a city id, you need to perform its [search](#bkmrk-search-in-the-data-d)</td><td style="text-align: left; width: 30.9859%;">&amp;city\[\]=14&amp;city\[\]=10</td></tr><tr><td style="text-align: left; width: 10.4887%;">ispMobile</td><td style="text-align: left; width: 10.8462%;">array (int)</td><td style="text-align: left; width: 47.6792%;">list of ISP mobile ids. To get a region id, you need to perform its [search](#bkmrk-search-in-the-data-d)</td><td style="text-align: left; width: 30.9859%;">&amp;ispMobile\[\]=4&amp;ispMobile\[\]=9</td></tr></tbody></table>

Example: getting the minimum and recommended price  
POST [http://daopush-api.info/api/campaign/price?api-key={xxxxx-key}&amp;adFormat=push](http://daopush-api.info/api/campaign/price?api-key=%7Bxxxxx-key%7D&adFormat=push)

[![image.png](https://wiki.dao.ad/uploads/images/gallery/2026-03/scaled-1680-/nl1image.png)](https://wiki.dao.ad/uploads/images/gallery/2026-03/nl1image.png)

Response (in USD):

```json
{
"status": "ok",
"price": {
"minimum": {
"price": 0.04,
"estimated_traffic": 70732
},
"recommend": {
"price": 2.1,
"estimated_traffic": 139402
}
}
}
```

Example: requesting pricing via Postman using a JSON request format  
POST [http://daopush-api.info/api/campaign/price?api-key={xxxxx-key}&amp;adFormat=pops](http://daopush-api.info/api/campaign/price?api-key=%7Bxxxxx-key%7D&adFormat=pops)

[![image.png](https://wiki.dao.ad/uploads/images/gallery/2026-03/scaled-1680-/Glrimage.png)](https://wiki.dao.ad/uploads/images/gallery/2026-03/Glrimage.png)

Response (in USD):

```json
{
"status": "ok",
"price": {
"minimum": {
"price": 0.13,
"estimated_traffic": 40073
},
"recommend": {
"price": 0.45,
"estimated_traffic": 159402
}
}
}
```

# Statistics API

## General Information

Basic API url [https://daopush-api.info/api/](https://daopush-api.info/api/)  
Authorization by api-key for example ?api-key=xxxxxxxxxxx (it can be taken from [dao.ad](https://dao.ad/en/profile) profile)

You can get information about **filter** values ​​by following this link:  
[https://daopush-api.info/api/statistic/list-refs-data?api-key=xxxxxxxxxxx](https://daopush-api.info/api/statistic/list-refs-data?api-key=xxxxxxxxxxx)

##### Basic filter types:  


- country
- osGroup
- browserGroup

### Statistics for advertisers

Push notifications: **statistic/adv**   
Popunder: **statistic/pops-adv**   
Inpage Push: **statistic/in-page-adv**   
Video: **statistic/video-adv**   
Telegram: **statistic/tg-msg-adv**

#### Basic groupings groupBy=

- hours
- days
- months
- country
- geo\_set
- creative (except popunder)
- campaigns
- browser (with details by version)
- browser\_family (w/o with details by version)
- os
- sources
- sub\_id

subGroupBy= - the same list as in groupBy (only you can't use the same groupings and time groupings at the same time - hours, days, months)

#### Basic filters

- startDate=dd-mm-yyyy (\*required)
- endDate=dd-mm-yyyy (\*required)
- campaignId\[\]=
- creativeId\[\]=
- countryId\[\]=
- osGroupId\[\]=
- browserId\[\]=
- osType\[\]=  
    0 - desktop  
    1 - mobile

##### Additional filters for **push notifications**:

selectColumns\[\]=clicked&amp;selectColumns\[\]=sum

- showed
- clicked
- sum

#####    
Additional filters for **video**:

selectColumns\[\]=impression&amp;selectColumns\[\]=start&amp;selectColumns\[\]=complete&amp;selectColumns\[\]=sum&amp;selectColumns\[\]=leads&amp;selectColumns\[\]=leads\_sum

- win\_bids
- impression
- start
- midpoint
- complete
- skip
- close
- click
- sum
- leads
- leads\_main
- leads\_sum

### Statistics for webmasters

Push notifications: **statistic/web**   
Popunder: **statistic/pops-web**   
Inpage Push: **statistic/in-page-web**   
Video: **statistic/video-web**   
Telegram: **statistic/tg-msg-web**

#### Basic groupings groupBy=

- hours
- days
- months
- sources
- country
- geo\_set
- landing (only for push notifications)
- campaigns
- browser (with details by version)
- browser\_family (w/o with details by version)
- os
- utm\_sources
- utm\_medium (except pops, video)
- utm\_campaign (except pops, video)
- utm\_term (except pops, video)
- utm\_content (except pops, video)
- d\_subs (only for push notifications)

subGroupBy= - the same list as in groupBy (only you can't use the same groupings and time groupings at the same time - hours, days, months)

#### Basic filters

- startDate=dd-mm-yyyy (\*required)
- endDate=dd-mm-yyyy (\*required)
- subsDateFrom=dd-mm-yyyy (only for push notifications)
- subsDateTo=dd-mm-yyyy (only for push notifications)
- sourceId\[\]=
- countryId\[\]=
- osGroupId\[\]=
- browserId\[\]=
- landingId\[\]= (only for push notifications)
- osType\[\]=  
    0 - desktop  
    1 - mobile
- utmSource=
- utmMedium=
- utmCampaign=
- utmTerm=
- utmContent=

##### Additional filters for **push notifications**:

<div id="bkmrk-selectcolumns%5B%5D%3Dclic-1">selectColumns[]=clicked&amp;selectColumns[]=pay</div><div id="bkmrk-uniqs-hits-subs_coun">- uniqs
- hits
- subs\_count
- subs\_unique
- showed
- clicked
- pay

</div>##### Additional filters for **inpage push**:

<div id="bkmrk-selectcolumns%5B%5D%3Dclic-2">selectColumns[]=clicked&amp;selectColumns[]=pay</div><div id="bkmrk-uniqs-hits-showed-cl">- uniqs
- hits
- showed
- clicked
- pay

</div>##### Additional filters for **telegram ads**:

<div id="bkmrk-selectcolumns%5B%5D%3Dclic-3">selectColumns[]=clicked&amp;selectColumns[]=pay</div><div id="bkmrk-uniqs-hits-showed-cl-1">- uniqs
- hits
- showed
- clicked
- pay

</div>##### Additional filters for **video**:

<div id="bkmrk-selectcolumns%5B%5D%3Dimpr-1">selectColumns[]=impression&amp;selectColumns[]=click&amp;selectColumns[]=pay</div><div id="bkmrk-uniqs-hits-impressio">- uniqs
- hits
- impression
- imp\_decline
- start
- complete
- click
- pay

</div>