Demand-Side Inventory Format#
The data describing Demand-Side Inventory implements the following JSON format:
The values for all fields are expressed as strings, unless stated otherwise.
Dates are in extended date and time ISO8601 format, e.g.
2021-08-26T10:21:15+00:00
.Amounts are integers, denominated in clicks, as explained below:
1 click === 1e-11 ADS
1 ADS === 100,000,000,000 click
Demand-Side Inventory is an array of Campaign Objects.
Campaign Object#
Field |
Type |
Description |
---|---|---|
id |
string |
UUID |
landing_url |
string |
The URL of landing page |
date_start |
string |
Date of start |
date_end |
string or null |
Date of end, |
created_at |
string |
Date of creation |
updated_at |
string |
Date of last update |
medium |
string |
Medium |
vendor |
string or null |
Vendor, |
max_cpc |
integer |
Maximal amount which can be payed per click |
max_cpm |
integer or null |
Maximal amount which can be payed per mille (thousand views),
|
budget |
integer |
Maximal amount which can be payed for all events per hour |
creatives |
array of Creative Objects |
Creatives |
targeting_requires |
array of Targeting Objects |
Required targeting |
targeting_excludes |
array of Targeting Objects |
Excluded targeting |
Creative Object#
Field |
Type |
Description |
---|---|---|
id |
string |
UUID |
size |
string |
Space occupied by creative content |
type |
string |
Type: “image”, “video”, etc. |
mime |
string |
MIME type |
checksum |
string |
SHA-1 checksum of content |
serve_url |
string |
The URL of creative content |
click_url |
string |
The URL of click callback |
view_url |
string |
The URL of view callback |
classification |
Classification |
Classification Object#
Classification Object’s key is the classifier’s ID (usually corresponding to ADS account address).
Classification Object’s value is an object with following keys:
keywords – features compatible with classifier Taxonomy
signature – signature of classification
signed_at – date of signature
Targeting Object#
TODO https://adshares.atlassian.net/browse/ACP-6
Targeting Object matches the targeting Taxonomy.
Example:
[
{
"id": "f3339e88383a4264aa6acedd6ee00865",
"landing_url": "https://example.com",
"date_start": "2021-08-26T10:21:15+00:00",
"date_end": null,
"created_at": "2021-08-26T10:57:37+00:00",
"updated_at": "2022-05-20T16:23:07+00:00",
"max_cpc": 0,
"max_cpm": null,
"budget": 72184612500,
"creatives": [
{
"id": "0c3439d1ae2c420d8864a86a660217b8",
"size": "300x250",
"type": "html",
"mime": "text/html",
"checksum": "b80f67f5b64e8327e45e02f208f0299e977e503d",
"serve_url": "https://app.example.com/serve/x0c3439d1ae2c420d8864a86a660217b8.doc?v=b80b",
"click_url": "https://app.example.com/click/0c3439d1ae2c420d8864a86a660217b8",
"view_url": "https://app.example.com/view/0c3439d1ae2c420d8864a86a660217b8",
"classification": {
"0001000000081a67": {
"keywords": {
"quality": [
"high"
],
"category": [
"crypto"
]
},
"signature": "0dfe07f3134007f0deec9a16d9d3ad8c32d2de887df10b8861f416277f6fa4bc454814adba40fd2aad8216b7a7c4f5325a25e3c2984a4a64ea8317c9852afe0b",
"signed_at": "2022-02-10T14:08:02+00:00"
}
}
}
],
"targeting_requires": {
"site": {
"quality": [
"high"
]
}
},
"targeting_excludes": {
"user": {
"country": [
"us"
]
}
}
}
]