Early ad break notification v1

Como usar a API Early Ad Break Notification

  • O identificador da transmissão ao vivo correspondente para a qual o intervalo de anúncio está sendo criado. Esse identificador pode ser um dos seguintes:
  • A "Chave de recurso" da transmissão ao vivo.
  • A "Chave de recurso personalizada" da transmissão ao vivo, que permite gerenciar seu próprio espaço de chaves especificando sua própria string de identificador.
  • O "ID da origem do conteúdo" e o "ID do conteúdo" da transmissão ao vivo.

Observação: você precisa ter permissão para usar esse tipo de identificador. Para mais informações, entre em contato com seu gerente de contas.

  • A duração esperada do próximo intervalo de anúncio. A duração precisa ser o mais próxima possível do intervalo de anúncio real.

Além desses campos obrigatórios, você também pode enviar parâmetros de segmentação personalizada, o nome de um modelo de bloco de anúncios a ser aplicado ou dados de saída de SCTE35, se disponíveis.

Pré-requisitos

Para usar a API EABN, você precisa criar uma conta de serviço e adicioná-la à sua rede do Google Ad Manager.

Como criar uma conta de serviço

Para criar uma conta de serviço para chamar a API EABN, siga estas etapas: - Se você tiver uma conta do Google Cloud, use o módulo IAM para criar uma conta de serviço. Para mais informações, consulte Como criar e gerenciar contas de serviço. - Se você não tiver uma conta do Google Cloud, siga estas etapas para criar uma no Console de APIs do Google:

  1. Crie um novo projeto ou selecione um projeto atual.
  2. Na página Credenciais, clique em Gerenciar contas de serviço.
  3. Na página Contas de serviço, clique em CRIAR CONTA DE SERVIÇO.
  4. Na página Criar conta de serviço, insira os detalhes da conta. Em seguida, clique em CRIAR.

Depois de criar uma conta de serviço, copie a chave JSON dela, que é usada para autenticação.

Como adicionar sua conta de serviço à rede do Google Ad Manager

Para adicionar a conta de serviço à rede, siga as etapas em Adicionar um usuário da conta de serviço para acesso à API.

Ative a API

Depois de criar a conta de serviço, forneça as seguintes informações ao gerente de contas para ativar a API:

  • Endereço de e-mail da sua conta do Google Cloud
  • Sua conta de serviço
  • O código da rede do Google Ad Manager.

Depois que a API for ativada pelo gerente da conta, siga estas etapas para ativar a API:

  1. Na Biblioteca de APIs Google, pesquise "API Google Ad Manager Video".
  2. Clique em ATIVAR.

Observação: se a API não aparecer nos resultados da pesquisa, entre em contato com seu gerente de contas para confirmar se a conta foi ativada para a API DAI.

Como usar a API

É possível chamar a API EABN usando solicitações JSON/REST.

Autorização

Para fazer chamadas autorizadas para a API EABN, você precisa gerar credenciais da conta de serviço OAuth2 usando a chave JSON da sua conta de serviço e o escopo https://www.googleapis.com/auth/video-ads. Para mais informações, consulte Usar o OAuth 2.0 para aplicativos de servidor para servidor.

É necessário incluir o token de autorização resultante como um cabeçalho de autenticação para cada chamada à API EABN.

Como enviar uma notificação antecipada de intervalo de anúncio

Para enviar uma notificação de intervalo de anúncio antecipado, envie uma solicitação POST para um dos três URLs válidos da EABN, dependendo de como você prefere especificar a transmissão ao vivo. As seções a seguir explicam as diferenças entre os URLs e fornecem exemplos de solicitação e resposta.

URLs

Há três URLs válidos para a notificação antecipada de intervalo de anúncio. Você pode usar os três tipos para criar um intervalo de anúncio (POST) ou receber a lista de intervalos atribuídos (GET).

Para usar a chave de recurso de uma transmissão ao vivo, use:

POST admanagervideo.googleapis.com/v1/networks/{network_code}/assets/{asset_key}/adBreaks
GET admanagervideo.googleapis.com/v1/networks/{network_code}/assets/{asset_key}/adBreaks

Para usar a chave de recurso personalizada de uma transmissão ao vivo, use:

POST admanagervideo.googleapis.com/v1/networks/{network_code}/customAssets/{custom_asset_key}/adBreaks
GET admanagervideo.googleapis.com/v1/networks/{network_code}/customAssets/{custom_asset_key}/adBreaks

Para usar a abordagem do ID da origem do conteúdo e do Content ID, use:

POST admanagervideo.googleapis.com/v1/networks/{network_code}/sources/{content_source_id}/content/{content_id}/adBreaks
GET admanagervideo.googleapis.com/v1/networks/{network_code}/sources/{content_source_id}/content/{content_id}/adBreaks

Para todos os parâmetros:

  • network_code representa o código da rede do Google Ad Manager.
  • asset_key representa a chave de recurso mostrada na página de detalhes da transmissão ao vivo.
  • custom_asset_key representa a chave de recurso personalizada da sua transmissão ao vivo.
  • content_source_id representa o ID de uma origem de conteúdo no Google Ad Manager.
  • content_id representa o ID de um conteúdo no Google Ad Manager.

Observação: o par content_source_id/content_id especificado precisa estar associado a uma transmissão ao vivo no Google Ad Manager.

Corpo da solicitação: usado apenas para criar um intervalo de anúncio (POST).

Objeto

expectedDuration

Obrigatório A duração desse intervalo de anúncio, usando o formato de duração padrão do Google (xx.xxxs, em que xx.xxx é o número de segundos)

customParams

Opcional Pares de chave-valor que vão ser incluídos nas solicitações de anúncio desse intervalo para a segmentação de critérios personalizados no AM360, separados por

=

e se juntar a

&

.
Exemplo:

key=value&key2=value2,value3


Para mais informações sobre segmentação, consulte Fornecer parâmetros de segmentação ao stream.

podTemplateName

Opcional O nome do modelo de conjunto de anúncios

scte35CueOut

Opcional Dados codificados em base64 da saída da cue scte35. Pode incluir o

splice_insert()

ou

time_signal()

bq load.
Exemplos:

  • time_signal():

    /DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==

  • splice_insert():

    /DAvAAAAAAAA///wFAVIAACPf+/+c2nALv4AUsz1AAAAAAAKAAhDVUVJAAABNWLbowo=

Exemplos de solicitação

Criar um intervalo de anúncio
POST admanagervideo.googleapis.com/v1/networks/.../sources/.../content/.../adBreaks
Content-Type: application/json
Authorization: Bearer …
{
    "expectedDuration": "30s",
    "scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
    "customParams": "param1=value1&param2=value2",
    "podTemplateName": "podtemplate"
}
Corpo da resposta

O corpo da resposta contém todos os parâmetros enviados no objeto adBreak, além de um campo name extra, que contém o ID padrão do Google do intervalo de anúncio criado. Esse campo é retornado no seguinte formato:

networks/{network_code}/assets/{asset_key}/adBreaks/{ad_break_id}
Exemplo de resposta
HTTP/1.1 200 OK
{
  "name": "networks/.../assets/.../adBreaks/1",
  "expectedDuration": "30s",
  "scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
  "customParams": "param1=value1&param2=value2",
  "podTemplateName": "podtemplate"
}
Listar intervalos de anúncio atribuídos
GET admanagervideo.googleapis.com/v1/networks/.../sources/.../content/.../adBreaks
Content-Type: application/json
Authorization: Bearer …
Corpo da resposta

O corpo da resposta contém os intervalos de anúncios com um campo breakState adicional para cada intervalo atribuído ao stream. O campo breakState aceita os seguintes valores:

 // Ad break decisioning has started.
BREAK_STATE_DECISIONED

// Break has started to be delivered to end users.
BREAK_STATE_COMPLETE
Exemplo de resposta
HTTP/1.1 200 OK
{
  "name": "networks/.../assets/.../adBreaks/1",
  "expectedDuration": "30s",
  "breakState": "BREAK_STATE_COMPLETE"
}