Skip to main content

Reklama kampaniyalarini boshqarish uchun asosiy API usullari

Reklama beruvchini yaratish:

curl 'http://visiobox.cloud/v3/odvertisers/' -H 'Authorization: OAuth <token>' -H 'Content-Type: application/json' --data-binary '{"name":"Test","description":"","logo":null}'

Javob:

{
"name":"Test",
"description":"",
"logo":null
}

id javobda bo'ladi


Video yuklanmoqda

  1. Fayl yuklash
curl 'http://visiobox.cloud/v3/content/files' -H 'Accept: application/json, text/javascript, */*; q=0.01' -H 'Authorization: OAuth <token>' -H 'Content-Type: multipart/form-data; boundary=----WebKitFormBoundary8HmpcBj8J6y71Chi' --data-binary $'------WebKitFormBoundary8HmpcBj8J6y71Chi\r\nContent-Disposition: form-data; name="file"; filename="02_01_NY_\u0424\u0440\u0435\u0448\u0438_\u0438_\u043f\u0438\u0432\u043e_16_12_08_1.mp4"\r\nContent-Type: video/mp4\r\n\r\n\r\n------WebKitFormBoundary8HmpcBj8J6y71Chi--\r\n'

Fayl maydoni file

id javobda bo'ladi

  1. Fayl yordamida kontent yaratish
curl 'http://visiobox.cloud/v3/content/items/' -H 'Authorization: OAuth <token>' -H 'Content-Type: application/json' --data-binary $'{"name":"02_01_NY_\u0424\u0440\u0435\u0448\u0438_\u0438_\u043f\u0438\u0432\u043e_16_12_08_1.mp4","description":"","type":"video","data":{"orientation":"landscape","default_play_audio":true},"content_file_id":13,"tags":[],"advertiser_id":5}'

Javob:

{
"name":"02_01_NY_\u0424\u0440\u0435\u0448\u0438_\u0438_\u043f\u0438\u0432\u043e_16_12_08_1.mp4",
"description":"",
"type":"video",
"data":{
"orientation":"landscape", // "portrait" если это контент портретной ориентации
"default_play_audio":true
},
"content_file_id":13, // ID залитого файоа
"tags":[],
"advertiser_id":5 // ID рекламодателя
}
  1. Reklama beruvchining kutubxonasidan tarkibni olib tashlash

Kontent faol reklama kampaniyalarida ishlatilsa, o'chirilmaydi.

curl 'http://visiobox.cloud/v3/content/items/1' -H 'Authorization: OAuth <token>' -X DELETE

Kampaniya yaratish

curl 'http://visiobox.cloud/v3/od/campaigns/' -H 'Authorization: OAuth <token>' -H 'Content-Type: application/json' --data-binary $'{"type":"normal","name":"\u0422\u0435\u0441\u0442","description":"","advertiser":1,"requirements":{"orientation":"landscape"},"start":"2019-10-16","end":"2019-10-17","start_time":null,"end_time":null,"algorithm":"each_n","layout":null,"programmatic_platforms":[],"interval":60,"max_interval":69,"order":0,"playback_items":[{"data":{"orientation":"landscape"},"content_items":[{"content_item_data":{"play_audio":true},"id":2,"playback_item_data":{}}]}],"players":[{"id":1,"skip_days":[]}],"expand":false}'

Javob:

{
"type":"normal", // "pipeline" для цикл-в-цикле
"name":"\u0422\u0435\u0441\u0442",
"description":"",
"advertiser":1, // ID рекламодателя. Все ролики должны быть его.
"requirements":{"orientation":"landscape"}, // Или portrait. Все ролики и устройства должны соответствовать
"start":"2019-10-16",
"end":"2019-10-17",
"start_time":null,
"end_time":null,
"algorithm":"each_n",
"layout":null,
"programmatic_platforms":[],
"interval":60, // Раз в сколько секунд играть кампанию
"max_interval":69, // round(interval * 1.15)
"order":0,
"playback_items":[
// По элементу для каждого ролика в кампании
{
"data":{"orientation":"landscape"},
"content_items":[{
"content_item_data":{"play_audio":true},
"id":2, // content item ID (не файла!)
"playback_item_data":{}
}]
}
],
"players":[
// По элементу для каждого плеера
{"id":1,"skip_days":[]}
],
"expand":false
}

Kampaniyani to'xtatish

curl 'http://visiobox.cloud/v3/od/campaigns/3' -X PATCH -H 'Authorization: OAuth <token>' -H 'Content-Type: application/json' --data-binary '{"terminated":true}'

Kampaniyani o'chirish

curl 'http://visiobox.cloud/v3/od/campaigns/3' -X DELETE -H 'Authorization: OAuth <token>'

planogramma so'rash

Planogramma so'rovi kampaniyani yaratishdan oldin bo'sh joy borligiga ishonch hosil qilish uchun yoki nima uchun ishlamay qolganini tushunish uchun amalga oshiriladi.

curl 'http://visiobox.cloud/v3/od/campaign_preview/players/?limit=50&requirements=%7B%22orientation%22%3A%22landscape%22%7D&start=2019-10-16&end=2019-10-16&type=normal&player_type=single&algorithm=each_n&duration=15&interval=60&max_interval=69&allow_unavailable=1&tags_op=or' -H 'Authorization: OAuth <token>'

Javob:

{
"objects": [
// Для каждого плеера
{
// Для каждого дня
"calendar": [
{
"share_left": 0.75,
"date": "2019-10-16",
"available": true // Доступен или нет
}
],
"player": {
"id": 2,
// Ещё всякие поля
}
}
],
"meta": {"total": 2, "limit": 50, "offset": 0}
}

O'yinchilar ro'yxatini so'rash

Barcha o'yinchilar:

http://visiobox.cloud/v3/players

Faqat faollashtirilmagan:

http://visiobox.cloud/v3/players?activated=0

Faqat onlayn:

http://visiobox.cloud/v3/players?online=1

Belgilangan vaqtdan (UTC) oldin oxirgi onlayn:

http://visiobox.cloud/v3/players?last_online_at__lt=2019-10-28T13:00:00