Примеры сценариев

Добавление площадки

Чтобы добавить площадку, воспользуйтесь операцией POST/{resource-id}.

Запрос:

curl -v -H "Accept: application/vnd.api+json" \
-H "Content-Type: application/vnd.api+json" \
-H "Authorization: token ac3b42lp-89ls-..." \
-X POST 
--data \
  '{
     "data":
     {
       "type":"context_on_site_campaign",
       "attributes":
       {
         "domain_id":115505,
         "caption":"Test"
       }
     }
   }' \
 'https://jsonapi.partner2.yandex.com/v1/context_on_site_campaign' | json_pp

Ответ:

HTTP/1.1 201 Created
Content-Length: 2014
Content-Type: application/vnd.api+json
Date: Fri, 13 Nov 2020 11:14:52 GMT
Location: https://jsonapi.partner2.yandex.com:443/v1/context_on_site_campaign/672422
Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Content-Type-Options: nosniff

{
   "data" : {
      "attributes" : {},
      "id" : "672422",
      "links" : {
         "self" : "https://jsonapi.partner2.yandex.com:443/v1/context_on_site_campaign/672422"
      },
      "relationships" : {
         "blocks" : {
            "links" : {
               "related" : "https://jsonapi.partner2.yandex.com:443/v1/context_on_site_campaign/672422/blocks",
               "self" : "https://jsonapi.partner2.yandex.com:443/v1/context_on_site_campaign/672422/relationships/blocks"
            }
         },
         "context_on_site_adblock" : {
            "links" : {
               "related" : "https://jsonapi.partner2.yandex.com:443/v1/context_on_site_campaign/672422/context_on_site_adblock",
               "self" : "https://jsonapi.partner2.yandex.com:443/v1/context_on_site_campaign/672422/relationships/context_on_site_adblock"
            }
         },
         "context_on_site_content" : {
            "links" : {
               "related" : "https://jsonapi.partner2.yandex.com:443/v1/context_on_site_campaign/672422/context_on_site_content",
               "self" : "https://jsonapi.partner2.yandex.com:443/v1/context_on_site_campaign/672422/relationships/context_on_site_content"
            }
         },
         "context_on_site_direct" : {
            "links" : {
               "related" : "https://jsonapi.partner2.yandex.com:443/v1/context_on_site_campaign/672422/context_on_site_direct",
               "self" : "https://jsonapi.partner2.yandex.com:443/v1/context_on_site_campaign/672422/relationships/context_on_site_direct"
            }
         },
         "context_on_site_natural" : {
            "links" : {
               "related" : "https://jsonapi.partner2.yandex.com:443/v1/context_on_site_campaign/672422/context_on_site_natural",
               "self" : "https://jsonapi.partner2.yandex.com:443/v1/context_on_site_campaign/672422/relationships/context_on_site_natural"
            }
         },
         "context_on_site_rtb" : {
            "links" : {
               "related" : "https://jsonapi.partner2.yandex.com:443/v1/context_on_site_campaign/672422/context_on_site_rtb",
               "self" : "https://jsonapi.partner2.yandex.com:443/v1/context_on_site_campaign/672422/relationships/context_on_site_rtb"
            }
         },
         "context_on_site_stripe" : {
            "links" : {
               "related" : "https://jsonapi.partner2.yandex.com:443/v1/context_on_site_campaign/672422/context_on_site_stripe",
               "self" : "https://jsonapi.partner2.yandex.com:443/v1/context_on_site_campaign/672422/relationships/context_on_site_stripe"
            }
         }
      },
      "type" : "context_on_site_campaign"
   }
}

Добавление домена

Чтобы добавить домен, воспользуйтесь операцией POST/{resource-id}.

Запрос:

curl -v -H "Accept: application/vnd.api+json" \
-H "Content-Type: application/vnd.api+json" \
-H "Authorization: token ac3b42lp-89ls-..." \
-X POST \
--data \
  '{
     "data":
     {
       "type":"site",
       "attributes":
       {
         "domain":"mysite.com"
       }
     }
   }' \
'https://jsonapi.partner2.yandex.com/v1/site' | json_pp

Ответ:

HTTP/1.1 201 Created
Content-Length: 147
Content-Type: application/vnd.api+json
Date: Fri, 13 Nov 2020 11:26:47 GMT
Location: https://jsonapi.partner2.yandex.com/v1/site/184480
Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Content-Type-Options: nosniff

{
   "data" : {
      "attributes" : {},
      "id" : "184480",
      "links" : {
         "self" : "https://jsonapi.partner2.yandex.com/v1/site/184480"
      },
      "relationships" : {},
      "type" : "site"
   }
}

Добавление RTB-блока со стратегией

Чтобы добавить RTB-блок со стратегией «Максимальный доход», воспользуйтесь операцией POST/{resource-id}.

$PI_TOKEN должен содержать значение токена для API партнерского интерфейса. Например, значение может начинаться с «a7b8e0-». Также задайте свое значение для параметра page_id.

Запрос:

curl -v -H "Accept: application/vnd.api+json" \
-H "Content-Type: application/vnd.api+json" \
-H "Authorization: token $PI_TOKEN" \
-X POST \
--data \
  '{
    "data":
    {
      "type":"context_on_site_rtb",
      "attributes":
      {
        "caption":"API-created block",
        "page_id": "636326",
        
        "block_type": "banner",
        "design_templates":[
          {
            "caption":"Media design",
            "type":"media",
            "design_settings":
            {
              "filterSizes":false,
              "horizontalAlign":true
            }
          },
          {
            "caption":"Standard design",
            "type":"tga",
            "filter_tags":["adaptive","vertical"],
            "is_custom_format_direct": false, 
            "design_settings":
            {
              "name":"adaptive0418",
              "limit":1
            }                    
          }
        ],
        "dsp_blocks":["300x300","300x500","300x600","336x280","100%x250"],
        "blind":0,
        "strategy":1
      }
    }
  }' \
'https://jsonapi.partner2.yandex.com/v1/context_on_site_rtb' | json_pp

Ответ:

HTTP/1.1 201 Created
Content-Length: 683
Content-Type: application/vnd.api+json
Date: Fri, 13 Nov 2020 11:32:18 GMT
Location: https://jsonapi.partner2.yandex.com/v1/context_on_site_rtb/R-A-636326-3
Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Content-Type-Options: nosniff


{
   "data" : {
      "attributes" : {},
      "id" : "R-A-636326-4",
      "links" : {
         "self" : "https://jsonapi.partner2.yandex.com/v1/context_on_site_rtb/R-A-636326-4"
      },
      "relationships" : {
         "context_on_site_campaign" : {
            "links" : {
               "related" : "https://jsonapi.partner2.yandex.com/v1/context_on_site_rtb/R-A-636326-4/context_on_site_campaign",
               "self" : "https://jsonapi.partner2.yandex.com/v1/context_on_site_rtb/R-A-636326-4/relationships/context_on_site_campaign"
            }
         },
         "pages" : {
            "links" : {
               "related" : "https://jsonapi.partner2.yandex.com/v1/context_on_site_rtb/R-A-636326-4/pages",
               "self" : "https://jsonapi.partner2.yandex.com/v1/context_on_site_rtb/R-A-636326-4/relationships/pages"
            }
         }
      },
      "type" : "context_on_site_rtb"
   }
}

Установить порог CPM на весь блок:


         "attributes": {
            "strategy":"0",
            "mincpm":"123"
        }
         

Редактирование параметров RTB-блока

Чтобы отредактировать название RTB-блока, воспользуйтесь операцией PATCH/{resource-id}/{object-id}.

Запрос:

curl -v -H "Accept: application/vnd.api+json" \
-H "Content-Type: application/vnd.api+json" \
-H "Authorization: token ac3b42lp-89ls-..." \
-X PATCH \
--data \
  '{
     "data":
     {
       "type":"context_on_site_rtb",
       "id":"R-A-636326-1",
       "attributes": 
       {
         "caption":"MyBlock"
       }
     }
   }' \
'https://jsonapi.partner2.yandex.com/v1/context_on_site_rtb/R-A-636326-1' | json_pp

Ответ:

HTTP/1.1 200 OK
Content-Length: 732
Content-Type: application/vnd.api+json
Date: Fri, 13 Nov 2020 11:40:50 GMT
Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Content-Type-Options: nosniff

{
   "data" : {
      "attributes" : {
         "caption" : "MyBlock"
      },
      "id" : "R-A-636326-1",
      "relationships" : {
         "context_on_site_campaign" : {
            "links" : {
               "related" : "https://jsonapi.partner2.yandex.com/v1/context_on_site_rtb/R-A-636326-1/context_on_site_campaign",
               "self" : "https://jsonapi.partner2.yandex.com/v1/context_on_site_rtb/R-A-636326-1/relationships/context_on_site_campaign"
            }
         },
         "pages" : {
            "links" : {
               "related" : "https://jsonapi.partner2.yandex.com/v1/context_on_site_rtb/R-A-636326-1/pages",
               "self" : "https://jsonapi.partner2.yandex.com/v1/context_on_site_rtb/R-A-636326-1/relationships/pages"
            }
         }
      },
      "type" : "context_on_site_rtb"
   },
   "links" : {
      "self" : "https://jsonapi.partner2.yandex.com/v1/context_on_site_rtb/R-A-636326-1"
   },
   "meta" : {
      "fields" : [
         "caption"
      ]
   }
}

Создание универсального баннера

Запрос:


curl 'https://jsonapi.partner2.yandex.com/v1/context_on_site_rtb' \
-X 'POST' \
-H 'Content-Type: application/vnd.api+json' \
-H 'Accept: application/vnd.api+json' \
-H "Authorization: $PI_TOKEN" \
-d '{
    "data" : {
        "attributes" : {
            "block_type" : "banner",
            "formats_setup_mode" : "standard",
            "strategy" : 1,
            "caption" : "Блок",
            "page_id" : 12345,
            "tech_type" : "none"
        },
    "type" : "context_on_site_rtb"
    }
}'
         

Создание баннера для Turbo

Запрос:


curl 'https://jsonapi.partner2.yandex.com/v1/context_on_site_rtb' \
-X 'POST' \
-H 'Content-Type: application/vnd.api+json' \
-H 'Accept: application/vnd.api+json' \
-H "Authorization: $PI_TOKEN" \
-d '{
    "data" : {
        "attributes" : {
            "block_type" : "banner",
            "formats_setup_mode" : "standard",
            "strategy" : 1,
            "caption" : "Блок",
            "page_id" : 12345,
            "tech_type" : "turbo"
        },
    "type" : "context_on_site_rtb"
    }
}'
         

Настройки рекламного блока

Параметры отображения можно настроить на уровне всего блока.

Настройка темной темы:


"attributes":{
   "pcode_settings":{
         "themeIndicator":"dark",
         "bgColorLight":"A387FF",
         "bgColorDark":"FF6279"
   }
}
         

Блокировка рекламного формата

Чтобы заблокировать рекламный формат, удалите его из design_templates.

Блокировка брендов и тематик устанавливается на уровне сайта.

Заблокировать видеорекламу:


"attributes" : {
            "formats_setup_mode" : "manual",
            "design_templates" : [
                {
                    ...,
                    "caption" : "Медиа дизайн",
                    "type" : "media",
                    ...,
                },
                {
                    ...,
                    "caption" : "ТГА дизайн",
                    "type" : "tga",
                    ...,
                }
            ]
        },
         

Заблокировать медийную рекламу:


"attributes" : {
   "formats_setup_mode" : "manual",
   "design_templates" : [
                {
                    ...,
                    "caption" : "Видео дизайн",
                    "type" : "video",
                    ...,
                },
                {
                    ...,
                    "caption" : "ТГА дизайн",
                    "type" : "tga",
                    ...,
                }
            ]
        },
         

Блокировка брендов и тематик

Заблокировать бренды на уровне сайта


curl 'https://jsonapi.partner2.yandex.com/v1/context_on_site_campaign/12345' \
-X PATCH \
-H 'Accept: application/vnd.api+json' \
-H 'content-type: application/vnd.api+json' \
-H "Authorization: $TOKEN" \
-d '{
    "data":{
        "attributes":{
            "brands":[{"bid":"189","blocked":true}]
        },
        "type":"context_on_site_campaign",
        "id":"12345"
    }
}'
         

Заблокировать тематики на уровне сайта


curl 'https://jsonapi.partner2.yandex.com/v1/context_on_site_campaign/12345' \
-X PATCH \
-H 'Accept: application/vnd.api+json' \
-H 'content-type: application/vnd.api+json' \
-H "Authorization: $TOKEN" \
-d '{
    "data":{
        "attributes":{
            "picategories":[{"id":"2","cpm":9999}]
        },
        "type":"context_on_site_campaign",
        "id":"12345"
    }
}'