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
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.
Example of a curl cli POST request in JSON format
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}
| parameter | type | description (available values) | example |
|---|---|---|---|
| status | string | moderation status (available values: approved, new, stopped, declined) | &status=approved |
| work_status | string | work status (paused, started, archived) | &work_status=started |
| ad_format | string | ad format (pops, push, inpage, video) | &ad_format=pops |
| mode | string | buying model (cpm, cpc) | &mode=cpm |
| name | string | filter by name. Substring match | &name=test |
| url | string | filter by url. Substring match | &name=test.com |
Example
http://daopush-api.info/api/campaign/list?api-key={xxxxx-key}&status=approved&work_status=started
List of active campaigns
{"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}
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| mode | string | 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 | &mode=full |
Example
http://daopush-api.info/api/campaign/item?api-key={xxxxx-key}&id=123&mode=full
{
"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}&adFormat={ad_format}
{ad_format} - Ad format. Available values: push, pops, video, inpage
| parameter | type | description (available values) | example |
|---|---|---|---|
| name | string (required) | campaign name | name=Test |
| work_status | string | Campaign work status. paused - paused; started - started; Default - paused | work_status=paused |
| vertical_id | int (required) | Vertical ID. List of verticals here | vertical_id=9 |
| frequency_capping | int | Frequency capping for user by 24 Hours; 0 - no apply capping By default: Pops - 0 Push - 1 Video - 5 Inpage - 1 | frequency_capping=3 |
| url | string | Link for pops campaigns or tag url for video | url=https://google.com |
| allow_proxy | int | Whether to buy proxy traffic. 1 - buy; 0 - do not buy. Default: 1 | allow_proxy=0 |
| web_view | string | Whether to buy WebView traffic. Available only for pops and video. yes - buy; no - do not buy. Default: no | web_view=yes |
| vpaid | string | Set required source support VPAID creatives for VAST video. Available only for video. yes - VPAID support is required; no - not required. Default: no | vpaid=no |
| placement | string | 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 | placement=instream |
| limit_sum | float | Campaign spending limit. | limit_sum=300.5 |
| limit_show | int | Campaign impression limit. Only for formats push, inpage, video | limit_show=1000000 |
| limit_click | int | Campaign click limit. Only for formats push, inpage, pops | limit_click=50000 |
| limit_sum_day | float | Daily campaign spending limit. | limit_day_sum=100.5 |
| limit_show_day | int | Daily campaign impression limit. Only for formats push, inpage, video | limit_day_show=200000 |
| limit_click_day | int | Daily campaign click limit. Only for formats push, inpage, pops | limit_day_click=10000 |
| note | string | note | note=Note |
| target | array (object) | 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) | target[category][]=9 target[quality][]=high target[quality][]=premium target[country][ES]=5.15 target[country][KZ]=2.10 target[country][AZ]=2.10 |
Example
POST http://daopush-api.info/api/campaign/create?api-key={xxxxx-key}&adFormat=pops
{
"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/create?api-key={xxxxx-key}&id=123
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| name | string (required) | campaign name | name=Test |
| work_status | string | Campaign work status. paused - paused; started - started; Default - paused | work_status=paused |
| vertical_id | int (required) | Vertical ID. List of verticals here | vertical_id=9 |
| frequency_capping | int | Frequency capping for user by 24 Hours; 0 - no apply capping | frequency_capping=3 |
| url | string | Link for pops campaigns or tag url for video | url=https://google.com |
| allow_proxy | int | Whether to buy proxy traffic. 1 - buy; 0 - do not buy. Default: 1 | allow_proxy=0 |
| web_view | string | Whether to buy WebView traffic. Available only for pops and video. yes - buy; no - do not buy. Default: no | web_view=yes |
| vpaid | string | Set required source support VPAID creatives for VAST video. Available only for video. yes - VPAID support is required; no - not required. Default: no | vpaid=no |
| limit_sum | float | Campaign spending limit. | limit_sum=300.5 |
| limit_show | int | Campaign impression limit. Only for formats push, inpage, video | limit_show=1000000 |
| limit_click | int | Campaign click limit. Only for formats push, inpage, pops | limit_click=50000 |
| limit_sum_day | float | Daily campaign spending limit. | limit_day_sum=100.5 |
| limit_show_day | int | Daily campaign impression limit. Only for formats push, inpage, video | limit_day_show=200000 |
| limit_click_day | int | Daily campaign click limit. Only for formats push, inpage, pops | limit_day_click=10000 |
| note | string | note | note=Note |
Example
POST http://daopush-api.info/api/campaign/update?api-key={xxxxx-key}&id=428
{
"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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
Example
http://daopush-api.info/api/campaign/start?api-key={xxxxx-key}&id=111{"status": "ok"}
Pause Campaign
GET http://daopush-api.info/api/campaign/pause?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
Example
http://daopush-api.info/api/campaign/pause?api-key={xxxxx-key}&id=111{"status": "ok"}
Archive Campaign
GET http://daopush-api.info/api/campaign/archive?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
Example
http://daopush-api.info/api/campaign/archive?api-key={xxxxx-key}&id=111{"status": "ok"}
Start Multiple Campaigns
GET http://daopush-api.info/api/campaign/start-batch?api-key={xxxxx-key}&campaignId[]=123&campaignId[]=1111&campaignId[]=212
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=123&campaignId[]=1111&campaignId[]=212 |
{
"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
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=123&campaignId[]=1111&campaignId[]=212 |
{
"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-batch?api-key={xxxxx-key}&campaignId[]=123&campaignId[]=1111&campaignId[]=212
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=123&campaignId[]=1111&campaignId[]=212 |
{
"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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(int) | list of category ids for the format. See here | &items[]=9&items[]=10 |
Example
http://daopush-api.info/api/campaign/add-category?api-key={xxxxx-key}&id=123&items[]=9&items[]=10{"status": "ok"}
Remove Campaign Category
GET/POST http://daopush-api.info/api/campaign/drop-category?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| checkExist | string | 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 | &checkExist=skip |
| items | array(int) | list of category ids for the format. See here | &items[]=9&items[]=10 |
Example
http://daopush-api.info/api/campaign/drop-category?api-key={xxxxx-key}&id=123&items[]=9&items[]=10{"status": "ok"}
Add Campaign Quality Targeting
GET/POST http://daopush-api.info/api/campaign/add-quality?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array (string) | traffic quality list; low, regular, high, premium | &items[]=high&items[]=premium |
Example
http://daopush-api.info/api/campaign/add-quality?api-key={xxxxx-key}&id=123&items[]=high&items[]=premium{"status": "ok"}
Remove Campaign Quality Targeting
GET/POST http://daopush-api.info/api/campaign/drop-quality?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| checkExist | string | 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 | &checkExist=skip |
| items | array (string) | traffic quality list; low, regular, high, premium | &items[]=low&items[]=regular |
Example
http://daopush-api.info/api/campaign/drop-quality?api-key={xxxxx-key}&id=123&items[]=low&items[]=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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(float) | list of countries (country code ISO 3166-1 alpha-2) (key) and bid per 1000 impressions / clicks in USD (value) | &items[ES]=3.1&items[AG]=2.05&items[US]=5.08 |
Example
http://daopush-api.info/api/campaign/add-country?api-key={xxxxx-key}&id=123&items[ES]=3.1&items[AG]=2.05&items[US]=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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| checkExist | string | 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 | &checkExist=skip |
| items | array(string) | list of countries (country code ISO 3166-1 alpha-2) | &items[]=BR&items[]=AG |
Example
http://daopush-api.info/api/campaign/drop-country?api-key={xxxxx-key}&id=123&items[]=BR&items[]=AG{"status": "ok"}
Add Connection Type Targeting
GET/POST http://daopush-api.info/api/campaign/add-connection-type?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array (string) | connection type list: wifi, carrier | &items[]=carrier |
Example
http://daopush-api.info/api/campaign/add-connection-type?api-key={xxxxx-key}&id=123&items[]=carrier{"status": "ok"}
Remove Connection Type Targeting
GET/POST http://daopush-api.info/api/campaign/drop-connection-type?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| checkExist | string | 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 | &checkExist=skip |
| items | array (string) | connection type list; wifi, carrier | &items[]=wifi |
Example
http://daopush-api.info/api/campaign/drop-connection-type?api-key={xxxxx-key}&id=123&items[]=wifi{"status": "ok"}
Add User Language Targeting
GET/POST http://daopush-api.info/api/campaign/add-language?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array (string) | language list ISO 639-1 (2 letter) | &items[]=en&items[]=vi |
Example
http://daopush-api.info/api/campaign/add-language?api-key={xxxxx-key}&id=123&items[]=en&items[]=vi{"status": "ok"}
Remove User Language Targeting
GET/POST http://daopush-api.info/api/campaign/drop-language?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| checkExist | string | 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 | &checkExist=skip |
| items | array (string) | language list ISO 639-1 (2 letter) | &items[]=uk |
Example
http://daopush-api.info/api/campaign/drop-language?api-key={xxxxx-key}&id=123&items[]=uk{"status": "ok"}
Add User OS Targeting
GET/POST http://daopush-api.info/api/campaign/add-os?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(int) | list of OS ids. See here | &items[]=4&items[]=9&items[]=10 |
Example
http://daopush-api.info/api/campaign/add-os?api-key={xxxxx-key}&id=123&items[]=4&items[]=5&items[]=9{"status": "ok"}
Remove User OS Targeting
GET/POST http://daopush-api.info/api/campaign/drop-os?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| checkExist | string | 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 | &checkExist=skip |
| items | array(int) | list of OS ids. See here | &items[]=14&items[]=10 |
Example
http://daopush-api.info/api/campaign/drop-os?api-key={xxxxx-key}&id=123&items[]=14&items[]=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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(int) | list of browser ids. See here | &items[]=4&items[]=9&items[]=10 |
Example
http://daopush-api.info/api/campaign/add-browser?api-key={xxxxx-key}&id=123&items[]=5&items[]=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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| checkExist | string | 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 | &checkExist=skip |
| items | array(int) | list of browser ids. See here | &items[]=14&items[]=10 |
Example
http://daopush-api.info/api/campaign/drop-browser?api-key={xxxxx-key}&id=123&items[]=14&items[]=10{"status": "ok"}
Add Subscription Age Targeting (push format only)
GET/POST http://daopush-api.info/api/campaign/add-subs-age?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(int) | list of subscription age group ids. See here | &items[]=1&items[]=2 |
Example
http://daopush-api.info/api/campaign/add-subs-age?api-key={xxxxx-key}&id=123&items[]=1&items[]=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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| checkExist | string | 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 | &checkExist=skip |
| items | array(int) | list of subscription age group ids. See here | &items[]=1&items[]=2 |
Example
http://daopush-api.info/api/campaign/drop-subs-age?api-key={xxxxx-key}&id=123&items[]=2&items[]=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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(int) | list of city ids. To get a city id, you need to perform its search | &items[]=4&items[]=9&items[]=10 |
Example
http://daopush-api.info/api/campaign/add-city?api-key={xxxxx-key}&id=123&items[]=5&items[]=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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| checkExist | string | 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 | &checkExist=skip |
| items | array(int) | list of city ids. To get a city id, you need to perform its search | &items[]=14&items[]=10 |
Example
http://daopush-api.info/api/campaign/drop-city?api-key={xxxxx-key}&id=123&items[]=14&items[]=10{"status": "ok"}
Add Region Targeting
GET/POST http://daopush-api.info/api/region/add-region?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(int) | list of region ids. To get a region id, you need to perform its search | &items[]=4&items[]=9&items[]=10 |
Example
http://daopush-api.info/api/campaign/add-region?api-key={xxxxx-key}&id=123&items[]=5&items[]=9{"status": "ok"}
Remove Region Targeting
GET/POST http://daopush-api.info/api/campaign/drop-region?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| checkExist | string | 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 | &checkExist=skip |
| items | array(int) | list of region ids. To get a region id, you need to perform its search | &items[]=14&items[]=10 |
Example
http://daopush-api.info/api/campaign/drop-region?api-key={xxxxx-key}&id=123&items[]=14&items[]=10{"status": "ok"}
Add ISP Mobile Targeting
GET/POST http://daopush-api.info/api/campaign/add-isp-mobile?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(int) | list of ISP mobile ids. To get a region id, you need to perform its search | &items[]=4&items[]=9&items[]=10 |
Example
http://daopush-api.info/api/campaign/add-isp-mobile?api-key={xxxxx-key}&id=123&items[]=5&items[]=9{"status": "ok"}
Remove ISP Mobile Targeting
GET/POST http://daopush-api.info/api/campaign/drop-isp-mobile?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| checkExist | string | 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 | &checkExist=skip |
| items | array(int) | list of ISP mobile ids. To get a region id, you need to perform its search | &items[]=14&items[]=10 |
Example
http://daopush-api.info/api/campaign/drop-isp-mobile?api-key={xxxxx-key}&id=123&items[]=14&items[]=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}&id=111&type=black
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| type | string | record type: black - exclude cidr or IP for the campaign; white - include cidr or IP; Default - black | &type=black |
| items | array(string) | 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) | &items[]=12.22.123.1/24&items[]=12.22.120.1-12.22.122.200&items[]=2001:0db8:abcd:0012::/64 |
Example
http://daopush-api.info/api/campaign/add-cidr?api-key={xxxxx-key}&id=123&type=black
&items[]=12.22.123.1/24&items[]=12.22.120.1-12.22.122.200&items[]=2001:0db8:abcd:0012::/64
{"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}&id=111&type=black
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| type | string | record type: black - exclude cidr or IP for the campaign; white - include cidr or IP; Default - black | &type=black |
| checkExist | string | 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 | &checkExist=skip |
| items | array(string) | 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) | &items[]=12.22.123.1/24&items[]=12.22.120.1-12.22.122.200&items[]=2001:0db8:abcd:0012::/64 |
Example
http://daopush-api.info/api/campaign/drop-cidr?api-key={xxxxx-key}&id=123&type=black&items[]=12.22.123.1/24&items[]=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}&id=111&type=black
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| type | string | record type: black - exclude domain for the campaign; white - include domain; Default - black | &type=black |
| items | array (string) | list of domains | &items[]=google.com&items[]=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}&id=111&type=black
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| type | string | record type: black - exclude domain for the campaign; white - include domain; Default - black | &type=black |
| checkExist | string | 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 | &checkExist=skip |
| items | array (string) | list of domains | &items[]=google.com&items[]=amazon.com |
Example
http://daopush-api.info/api/campaign/drop-domain?api-key={xxxxx-key}&id=123&type=black&items[]=google.com&items[]=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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
Example
http://daopush-api.info/api/campaign/white-list?api-key={xxxxx-key}&id=111
{
"status": "ok",
"items": [
"1111",
"1122"
]
}
Campaign Black-list
GET http://daopush-api.info/api/campaign/black-list?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
Example
http://daopush-api.info/api/campaign/black-list?api-key={xxxxx-key}&id=111
{
"status": "ok",
"items": [
"1111",
"1122"
]
}
Campaign SubId White-list
GET http://daopush-api.info/api/campaign/sub-id-white?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
Example
http://daopush-api.info/api/campaign/sub-id-white?api-key={xxxxx-key}&id=111
{
"status": "ok",
"items": [
"335f313233"
]
}
Campaign SubId Black-list
GET http://daopush-api.info/api/campaign/sub-id-black?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
Example
http://daopush-api.info/api/campaign/sub-id-black?api-key={xxxxx-key}&id=111
{
"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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(int) | list of source ids to add to the black-list | &items[]=1234&items[]=11111 |
{ "status": "ok"}
Remove Sources from Campaign Black-list
GET/POST http://daopush-api.info/api/campaign/drop-black-list?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(int) | list of source ids to remove from the black-list | &items[]=1234&items[]=11111 |
{ "status": "ok"}
Add Sources to Campaign White-list
GET/POST http://daopush-api.info/api/campaign/add-white-list?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(int) | list of source ids to add to the white list | &items[]=1234&items[]=11111 |
{ "status": "ok"}
Remove Sources from Campaign White-list
GET/POST http://daopush-api.info/api/campaign/drop-white-list?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(int) | list of source ids to remove from the white list | &items[]=1234&items[]=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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(string) | list of source ids to add to the black list subId | &items[]=335f313233&items[]=335f313234 |
{ "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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(string) | list of source ids to remove from the black list subId | &items[]=335f313233&items[]=335f313234 |
Example
http://daopush-api.info/api/campaign/drop-sub-id-black?api-key={xxxxx-key}&id=111&items[]=1234&items[]=11111
{ "status": "ok"}
Add subId to Campaign subId White-list
GET/POST http://daopush-api.info/api/campaign/add-sub-id-white?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(string) | list of source ids to add to the white list subId | &items[]=335f313233&items[]=335f313234 |
Example
http://daopush-api.info/api/campaign/add-sub-id-white?api-key={xxxxx-key}&id=111&items[]=1234&items[]=11111
{ "status": "ok"}
Remove subId from Campaign subId White-list
GET/POST http://daopush-api.info/api/campaign/drop-sub-id-white?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(string) | list of source ids to remove from the white list subId | &items[]=335f313233&items[]=335f313234 |
Example
http://daopush-api.info/api/campaign/drop-sub-id-white?api-key={xxxxx-key}&id=111&items[]=1234&items[]=11111
{ "status": "ok"}
Campaign List Operations
Add Sources to Campaign List Black-list
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=414&campaignId[]=402&campaignId[]=372 |
| items | array(int) | list of source ids to add to the black list | &items[]=1234&items[]=11111 |
{
"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
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=414&campaignId[]=402&campaignId[]=372 |
| items | array(int) | list of source ids to remove from the black list | &items[]=1234&items[]=11111 |
{
"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
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=414&campaignId[]=402&campaignId[]=372 |
| items | array(int) | list of source ids to add to the white list | &items[]=1234&items[]=11111 |
{
"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
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=414&campaignId[]=402&campaignId[]=372 |
| items | array(int) | list of source ids to remove from the white list | &items[]=1234&items[]=11111 |
{
"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
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=414&campaignId[]=402&campaignId[]=372 |
| items | array(int) | list of subId values to add to the black list | &items[]=335f313233&items[]=335f313234 |
{
"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
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=414&campaignId[]=402&campaignId[]=372 |
| items | array(int) | list of subId values to remove from the black list | &items[]=335f313233&items[]=335f313234 |
{
"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
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=414&campaignId[]=402&campaignId[]=372 |
| items | array(int) | list of subId values to add to the white list | &items[]=335f313233&items[]=335f313234 |
{
"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
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=414&campaignId[]=402&campaignId[]=372 |
| items | array(int) | list of subId values to remove from the white list | &items[]=335f313233&items[]=335f313234 |
{
"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
{mode} - operation mode:
- add - add targeting;
- drop - remove targeting;
{target-type} - targeting type
| target-type | description (available values) | example |
|---|---|---|
| connection-type | User connection type (connectionType) | /campaign/add-connection-type-batch |
| os | User OS | /campaign/add-os-batch |
| browser | User browser | /campaign/add-browser-batch |
| region | Region | /campaign/add-region-batch |
| isp-mobile | User mobile provider (ispMobile) | /campaign/add-isp-mobile-batch |
| subs-age | Subscription age groups | /campaign/add-subs-age-batch |
| country | User country | /campaign/add-country-batch |
| quality | Traffic quality | /campaign/add-quality-batch |
| category | Category | /campaign/add-category-batch |
| cidr | CIDR or user IP range | /campaign/add-cidr-batch |
| domain | Ad display domain | /campaign/add-domain-batch |
{type} - record type black/white (formats only: pops, video) (see details in the description of the specific targeting type)
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=414&campaignId[]=402&campaignId[]=372 |
| items | array(int) | list of targeting ids or values that will be added / removed. See here and the description of the specific targeting type with which the operation will be performed | &items[]=9&items[]=10 or &items[]=low&items[]=high |
{
"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
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=414&campaignId[]=402&campaignId[]=372 |
| items | array (string) | traffic quality list; low, regular, high, premium | &items[]=high&items[]=premium |
{
"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
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=414&campaignId[]=402&campaignId[]=372 |
| items | array (string) | traffic quality list; low, regular, high, premium | &items[]=low&items[]=regular |
{
"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
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=414&campaignId[]=402&campaignId[]=372 |
| items | array(int) | list of category ids for the format. See here | &items[]=9&items[]=10 |
{
"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
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=414&campaignId[]=402&campaignId[]=372 |
| items | array(int) | list of category ids for the format. See here | &items[]=9&items[]=10 |
{
"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
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=414&campaignId[]=402&campaignId[]=372 |
| items | array(float) | list of countries (country code ISO 3166-1 alpha-2) (key) and bid per 1000 impressions / clicks in USD (value) | &items[ES]=3.1&items[AG]=2.05&items[US]=5.08 |
{
"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
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | array(int) | list of campaign ids | &campaignId[]=414&campaignId[]=402&campaignId[]=372 |
| items | array(float) | list of countries (country code ISO 3166-1 alpha-2) (key) and bid per 1000 impressions / clicks in USD (value) | &items[]=AZ&items[]=KZ |
{
"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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
Example
http://daopush-api.info/api/campaign/bid-rules?api-key={xxxxx-key}&id=111
{
"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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| items | array(string) | list of source IDs or subIds to add to bid rules |
&items[]=335f313233&items[]=335f313234 |
| bid | float | Bid in USD | &bid=1.2 |
{ "status": "ok"}
Remove Campaign Bid Rule
GET/POST http://daopush-api.info/api/campaign/drop-bid-rlue?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=111 |
| items | array(string) | list of source IDs or subIds to remove from bid rules |
&items[]=335f313233&items[]=335f313234&items[]=1234 |
{ "status": "ok"}
Auto-rules for a Campaign
Campaign CPA Rules
GET http://daopush-api.info/api/campaign/cpa-rules?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
Example
http://daopush-api.info/api/campaign/bid-rules?api-key={xxxxx-key}&id=111
{
"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}&id=111&mode={mode}
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=123 |
| mode | string | 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 | mode=edit |
| items | array | 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 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) | &items[16][type]="click" &items[16][cond]="greater" &items[16][amount]="0.5" &items[16][lead_type]="lead" &items[16][lead_cond]="less" &items[16][lead_amount]="1" |
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}&id=111&mode=add&items[16][type]=click&items[16][cond]=greater&items[16][amount]=0.5&items[16][lead_type]=lead&items[16][lead_cond]=less&items[16][lead_amount]=1
{ "status": "ok"}
Example:
POST http://daopush-api.info/api/campaign/add-cpa-rule?api-key={xxxxx-key}&id=111&mode=add
Content-type: application/json
Body:
{
"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}&id=111&mode=edit
Content-type: application/json
Body:
{
"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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | campaign id | &id=111 |
| items | array(string) | list of rule IDs to remove from CPA rules |
&items[]=4444&items[]=4445 |
{ "status": "ok"}
Creatives
Creative List
GET http://daopush-api.info/api/creative/list?api-key={xxxxx-key}&campaignId=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| campaignId | int | campaign id | &campaignId=111 |
| status | string | moderation status (available values: approved, new, declined) | &status=approved |
| work_status | string | work status (paused, started, archived) | &work_status=started |
| title | string | filter by title. Substring match | &title=test |
| text | string | filter by text. Substring match | &text=test |
| url | string | filter by url. Substring match. (for filtering by youtube_url in a YouTube creative, the url field is also used) | &url=google.com |
Example
{
"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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | creative id | &id=123 |
Example
http://daopush-api.info/api/creative/item?api-key={xxxxx-key}&id=123
{
"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}&campaignId={campaignId}
{campaignId} - ID of the campaign to which the creative will be added
| parameter | type | description (available values) | example |
|---|---|---|---|
| name | string (required) | Creative name | name=Test |
| work_status | string | Work status. Values: paused - paused; started - started; archived - archived. Default - paused | work_status=paused |
| title | string (required) | Creative title (max. 65 characters) | title=My offer title |
| text | string | Creative text (max. 160 characters) | text=My super offer description |
| url | string | Click-through url for the creative. Required for all creatives except Youtube creatives for video format | url=https://google.com?new=1 |
| youtubeUrl | string | Link to a Youtube video. For Youtube creatives for video format | youtubeUrl=https://www.youtube.com/watch?v=O76EUqrhpfg |
| iconFile | file | Icon file for the creative. Required for formats push, inpage, tg-msg | |
| imageFile | file | Large image file for the creative. | |
| videoFile | file | Video file for a video creative. Required for video format if youtubeUrl is not specified |
Example
POST http://daopush-api.info/api/creative/create?api-key={xxxxx-key}&campaignId=123
{
"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}&id=222
| parameter | type | description (available values) | example |
|---|---|---|---|
| name | string (required) | Creative name | name=Test |
| work_status | string | Work status. Values: paused - paused; started - started; archived - archived. Default - paused | work_status=paused |
| title | string (required) | Creative title (max. 65 characters) | title=My offer title |
| text | string | Creative text (max. 160 characters) | title=My super offer description |
| url | string | Click-through url for the creative. Required for all creatives except Youtube creatives for video format | url=https://google.com?new=1 |
| youtubeUrl | string | Link to a Youtube video. For Youtube creatives for video format | youtubeUrl=https://www.youtube.com/watch?v=O76EUqrhpfg |
| iconFile | file | Icon file for the creative. Required for formats push, inpage, tg-msg | |
| imageFile | file | Large image file for the creative. | |
| videoFile | file | Video file for a video creative. Required for video format if youtubeUrl is not specified |
Example
POST http://daopush-api.info/api/creative/create?api-key={xxxxx-key}
{
"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}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | creative id | &id=123 |
Example
http://daopush-api.info/api/creative/start?api-key={xxxxx-key}&id=111{"status": "ok"}
Pause Creative
GET http://daopush-api.info/api/creative/pause?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | creative id | &id=123 |
Example
http://daopush-api.info/api/creative/pause?api-key={xxxxx-key}&id=111{"status": "ok"}
Archive Creative
GET http://daopush-api.info/api/creative/archive?api-key={xxxxx-key}&id=111
| parameter | type | description (available values) | example |
|---|---|---|---|
| id | int | creative id | &id=123 |
Example
http://daopush-api.info/api/creative/archive?api-key={xxxxx-key}&id=111{"status": "ok"}
Other Operations
Balance
GET http://daopush-api.info/api/campaign/balance?api-key={xxxxx-key}
Example
http://daopush-api.info/api/campaign/archive?api-key={xxxxx-key}&id=111
{"user_id":7,"currency":"USD","balance":98.52546}
Data Dictionaries
GET http://daopush-api.info/api/campaign/list-refs-data?api-key={xxxxx-key}
| parameter | type | description (available values) | example |
|---|---|---|---|
| type | string | Dictionary type: country, os, browser, category, vertical, language, language_code, subs_age | &type=category |
Example: category dictionary (grouped by format)
http://daopush-api.info/api/campaign/list-refs-data?api-key={xxxxx-key}&type=category
{
"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}&type=country
{
"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}
{
"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}
| parameter | type | description (available values) | example |
|---|---|---|---|
| type | string (required) | Dictionary type: city, region, isp-mobile | &type=city |
| search | string (required) | Search string. Minimum 3 characters. | &search=London |
| country | array (string) | List of countries for additional filtering of cities / regions. Only for type: city, region | &country[]=US |
| limit | int | Limit of records in the response. Default 10. Max. 100; | &limit=5 |
Example: Dictionary search for ISP mobile by substring “voda”
http://daopush-api.info/api/campaign/search?api-key={xxxxx-key}&type=isp-mobile&search=voda&limit=10
{
"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}&type=city&search=new%20york&limit=10&country[]=US
{
"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}&type=region&search=new&limit=10
{
"13": "New York (US)",
"21": "New Jersey (US)",
"116": "New South Wales (AU)",
"223": "New Hampshire (US)"
}
Get Minimum and Recommended Bid for a Campaign
GET/POST http://daopush-api.info/api/campaign/price?api-key={xxxxx-key}&adFormat={ad_format}
{ad_format} - Ad format. Available values: push, pops, video, inpage
| parameter | type | description (available values) | example |
|---|---|---|---|
| language | array (string) | List of languages ISO 639-1 (2 letter) | &language[]=en&language[]=vi |
| country | array (string) | List of countries (country code ISO 3166-1 alpha-2) | &country[]=BR&country[]=AG |
| quality | array (string) | List of quality values: low, regular, high, premium | &quality[]=high&quality[]=low |
| category | array (int) | List of category IDs for the format. See here | &category[]=9&category[]=10 |
| os | array (int) | List of OS IDs. See here | &os[]=14&os[]=10 |
| browser | array (int) | List of browser IDs. See here | &browser[]=14&browser[]=10 |
| subsAge | array (int) | List of subscription age group IDs. See here Push format only | &subsAge[]=1&subsAge[]=2 |
| region | array (int) | list of region ids. To get a region id, you need to perform its search | ®ion[]=4®ion[]=9®ion[]=10 |
| city | array (int) | list of city ids. To get a city id, you need to perform its search | &city[]=14&city[]=10 |
| ispMobile | array (int) | list of ISP mobile ids. To get a region id, you need to perform its search | &ispMobile[]=4&ispMobile[]=9 |
Example: getting the minimum and recommended price
POST http://daopush-api.info/api/campaign/price?api-key={xxxxx-key}&adFormat=push
Response (in USD):
{
"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}&adFormat=pops
Response (in USD):
{
"status": "ok",
"price": {
"minimum": {
"price": 0.13,
"estimated_traffic": 40073
},
"recommend": {
"price": 0.45,
"estimated_traffic": 159402
}
}
}







No Comments