Advertiser Domain Lists API

Advertiser domain lists can be created, edited and viewed using the advertiser domain list api.  When you have created an advertiser domain list, you can attach that advertiser domain list to a demand or supply tag for competitive exclusions targeting. 



Creating an advertiser domain list

SDK

Use tab completion with SDK to auto-complete function names or show field options!

In [1]: import springserve

In [2]: adomain_list = springserve.advertiser_domain_lists.new({"name":"My Test Advertiser Domain List"})

In [3]: print adomain_list.ok, adomain_list.id
True <id>

REST API

POST /api/v0/advertiser_domain_lists

Headers

Content-Type application/json
Authorization "yourAuthToken"

Body (example)

{
    "name": "My Advertiser Domain List",
        "description": "My description"
}

Required parameters: name

Response

Status code 200

{
 	"description": "My description", 
 	"id": <id>, 
	"name": "My Test Advertiser Domain List", 
	"account_id": <account_id>
}

Get a Domain List

SDK

In [1]: adomain_list = springserve.advertiser_domain_lists.get(<id>)

In [2]:print adomain_list.name

"My Test Advertiser Domain List"

REST API

GET /api/v0/advertiser_domain_lists/<id>

Headers


Content-Type application/json
Authorization "yourAuthToken"

Response

Status code 200

{
 	"description": "My description", 
 	"id": <id>, 
	"name": "My Test Advertiser Domain List", 
	"account_id": <account_id>
}


Add Advertiser Domains

SDK

In [1]:  adomain_list = springserve.advertiser_domain_lists.get(<id>)

In [2]:  add = adomain_list.bulk_create(['cnn.com', 'abc.com'])
In [3]: add.ok
Out [3]: True
In [4]: print add.created

REST API

POST /api/v0/advertiser_domain_lists/<id>/advertiser_domains/bulk_create

Headers

Content-Type application/json
Authorization "yourAuthToken"

Body (example)


{
	"names": ["cnn.com", "abc.com"]
}

Response

Status code 200

{"created": 2}

Append Advertiser Domains to an Advertiser Domain List From a File

SDK

In [1]:  adomain_list = springserve.advertiser_domain_lists.get(<id>)

In [2]:  add = adomain_list.bulk_create(file_path='/<filepath>/adomain_list.csv')
In [3]: add.ok
Out [3]: True
In [4]: print add.created
True

REST API

POST /api/v0/advertiser_domain_lists/<id>/advertiser_domains/file_bulk_create

curl --location --request POST 'https://console.springserve.com/api/v0/advertiser_domain_lists/<id>/advertiser_domains/file_bulk_create' \
--header 'Content-Type: application/json' \
--header 'Authorization: <yourAuthToken>' \
--form 'csv_file=@"/<filepath>/adomain_list.csv"'

Response

Status code 201

{"created": True}

Get Domains in Advertiser Domain List

SDK

In [15]: resp = adomain_list.get_list() 

In [16]: for advertiser_domain in resp:
   ....:     print advertiser_domain.name
   ....:     
cnn.com
abc.com

REST API

GET /api/v0/advertiser_domain_lists/<id>/advertiser_domains

Headers

Content-Type application/json
Authorization "yourAuthToken"


Response (note you need to paginate)

Status code 200

[
	{"id": 29070603, "name": "cnn.com"}, 
    {"id": 29070604, "name": "abc.com"}
]

Replace Advertiser Domains

SDK

 In [13]: adomain_list = springserve.advertiser_domain_lists.get(<id>)

 In [14]: resp = adomain_list.bulk_replace(['cnn.com'])
 In [15]: resp.ok
 Out [15]: True

REST API

POST /api/v0/advertiser_domain_lists/<id>/advertiser_domains/bulk_replace

Headers

Content-Type application/json
Authorization "yourAuthToken"

Body (example)

{
	"advertiser": ["replacement.com"]
}

Replace All Domains with a File

SDK

 In [13]: adomain_list = springserve.advertiser_domain_lists.get(<id>)

 In [14]: resp = adomain_list.bulk_replace(file_path='/<filepath>/replacement_adomain_list.csv')
 In [15]: resp.ok
 Out [15]: True

REST API

POST /api/v0/advertiser_domain_lists/<id>/advertiser_domains/file_bulk_replace

curl --location --request POST 'https://console.springserve.com/api/v0/advertiser_domain_lists/<id>/advertiser_domains/file_bulk_replace' \
--header 'Content-Type: application/json' \
--header 'Authorization: <yourAuthToken>' \
--form 'csv_file=@"/<filepath>/replacement_adomain_list.csv"'

Response

Status code 201

{"created": True}

Remove Domains

SDK

 In [13]: adomain_list = springserve.advertiser_domain_lists.get(6114)

 In [14]: resp = adomain_list.bulk_delete(['cnn.com'])
 In [15]: resp.ok
 Out [15]: True
 In [16]: resp.deleted
 Out [16]: True

REST API

DELETE /api/v0/advertiser_domain_lists/<id>/advertiser_domains/bulk_delete

Headers

Content-Type application/json
Authorization "yourAuthToken"

Body (example)


{
	"names": ["cnn.com"]
}

Response (note you need to paginate)

Status code 200

{"deleted": 1}

Remove Domains in a File from an Advertiser Domain List

SDK

 In [13]: adomain_list = springserve.advertiser_domain_lists.get(<id>)

 In [14]: resp = adomain_list.bulk_delete(file_url='/<filepath>/deletion_adomain_list.csv')
 In [15]: resp.ok
 Out [15]: True
 In [16]: resp.deleted
 Out [16]: True

REST API

DELETE /api/v0/advertiser_domain_lists/<id>/advertiser_domains/file_bulk_delete

curl --location --request DELETE 'https://console.springserve.com/api/v0/advertiser_domain_lists/<id>/advertiser_domains/file_bulk_delete' \
--header 'Content-Type: application/json' \
--header 'Authorization: <yourAuthToken>' \
--form 'csv_file=@"/<filepath>/deletion_adomain_list.csv"'

Response

Status code 201

{"created": True}


Attach to a Demand or Supply Tag

To attach an advertiser domain list to a supply or demand tag you must set the following fields on a supply or demand tag

  • advertiser_domain_list_ids → this is a list of advertiser domain list ids that you want to target on the supply or demand tag
  • advertiser_domain_targeting → Whether or not to treat it like an 'Allowlist' or 'Blocklist'

SDK

In [18]: tag = springserve.demand_tags.get(2)

In [19]: tag.advertiser_domain_list_ids.append(123)

In [20]: tag.advertiser_domain_targeting = "Allowlist"

In [21]: print tag.save().ok
True

REST API

See documentation on the Supply and Demand Tag APIs