Usa la API de DAI Ad Break

La API de DAI Ad Break te permite crear y administrar los datos de segmentación de anuncios y la sincronización de las pausas publicitarias en tus transmisiones en vivo.

En esta guía, se explica cómo usar la API de DAI Ad Break para crear, actualizar y borrar una pausa publicitaria para un evento de transmisión en vivo de la inserción de anuncios dinámicos (DAI) de Google.

Requisitos previos

Para usar la API de DAI Ad Break, necesitas lo siguiente:

Configura el acceso a la API

Para habilitar la API, completa los siguientes pasos:

  1. Crea una cuenta de servicio. Para obtener más información, consulta Crea una cuenta de servicio.
  2. Agrega la cuenta de servicio a tu red de Google Ad Manager. Para obtener más información, consulta Agrega un usuario de cuenta de servicio para acceder a la API.
  3. Proporciona la dirección de correo electrónico de la cuenta de servicio y el código de tu red de Google Ad Manager a tu administrador de cuentas de Google.
  4. Habilita la API de Google Ad Manager Video en tu proyecto de Google Cloud. Para obtener más información, consulta Habilita "APIs y servicios" para tu app.

Autenticación con OAuth2

Para autorizar tus solicitudes a la API, sigue estos pasos:

  1. Genera el token de acceso con el alcance https://www.googleapis.com/auth/video-ads.
  2. En cada solicitud, incluye el token de acceso a la API como un valor de Authorization del encabezado HTTP Bearer. Para obtener más información, consulta Cómo llamar a las APIs de Google.

En el siguiente ejemplo, se genera un token de OAuth con el alcance de la API de DAI Ad Break:

gcloud auth print-access-token --scopes='https://www.googleapis.com/auth/video-ads'

Si la operación se realiza correctamente, verás el siguiente token de acceso:

ya29.c.c0ASRK0GYUYU0...

Realiza la primera solicitud

Para recuperar las pausas publicitarias de un evento de transmisión en vivo, usa el método GET para enumerar todas las entidades AdBreak por la clave de activo generada por el sistema del evento o tu clave de activo personalizada.

La API de DAI Ad Break solo devuelve entidades AdBreak que se crean a través de la API, lo que excluye las pausas publicitarias creadas a partir de la solicitud de manifiesto, la solicitud de segmento de grupo o la solicitud de manifiesto de grupo.

En el siguiente ejemplo de solicitud, se enumeran las entidades AdBreak según un valor de assetKey:

curl -X GET "https://admanagervideo.googleapis.com/v1/adBreak/networks/NETWORK_CODE/assets/ASSET_KEY/adBreaks" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer OAUTH_TOKEN"

Si se ejecuta correctamente, verás la siguiente respuesta JSON:

{
 "adBreaks": []
}

A medida que creas entidades AdBreak adicionales a través de la API y solicitas la lista, verás la siguiente respuesta JSON:

{
 "adBreaks": [
    {
      "name": "networks/.../assets/.../adBreaks/bcc402a6-9880-4b8b-8e4a-a8cd3688f854",
      "expectedDuration": "30s",
      "expectedStartTime": "2025-06-03T15:00:00Z",
      "scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
      "customParams": "param1=value1&param2=value2",
      "podTemplateName": "podtemplate"
      "breakState": "BREAK_STATE_SCHEDULED",
    },
    {
      "name": "networks/.../assets/.../adBreaks/cc68b0df-0257-46e7-8193-254060b6256c",
      "breakSequence": "1",
      "expectedDuration": "30s",
      "expectedStartTime": "2025-06-03T14:30:00Z",
      "scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
      "customParams": "param1=value1&param2=value2",
      "podTemplateName": "podtemplate"
      "breakState": "BREAK_STATE_COMPLETE",
    },
    
  ],
  "nextPageToken": "ChAIARIMCNDn97IGEJbhhYUC"
}

Crea una entidad AdBreak

Para informar a la DAI de Google sobre una próxima pausa publicitaria en un evento de transmisión en vivo, usa el método POST.

  • Para crear una entidad AdBreak nueva, debes esperar a que la anterior pase al estado BREAK_STATE_COMPLETE.
  • Como alternativa, puedes borrar la entidad AdBreak pendiente para crear una nueva.
  • Para crear más de una entidad AdBreak para un solo evento de transmisión en vivo, comunícate con tu administrador de cuentas para obtener información sobre la configuración avanzada.

En el siguiente ejemplo de solicitud, se crea una pausa publicitaria que se espera que comience el 3 de junio de 2025 a las 15:00:00 (UTC):

curl -X POST "https://admanagervideo.googleapis.com/v1/adBreak/networks/{NETWORK_CODE}/assets/ASSET_KEY/adBreaks" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer OAUTH_TOKEN" \
  -d '{
    "expectedDuration": "30s",
    "expectedStartTime": "2025-06-03T15:00:00Z",
    "scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
    "customParams": "param1=value1&param2=value2",
    "podTemplateName": "podtemplate"
  }'

Si se ejecuta correctamente, verás la siguiente respuesta JSON:

{
  "name": "networks/.../assets/.../adBreaks/bcc402a6-9880-4b8b-8e4a-a8cd3688f854",
  "expectedDuration": "30s",  "expectedStartTime": "2025-06-03T15:00:00Z",
  "scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
  "customParams": "param1=value1&param2=value2",
  "podTemplateName": "podtemplate"
  "breakState": "BREAK_STATE_SCHEDULED",
}

El resultado contiene el ID de la pausa publicitaria necesario para recuperar, modificar o borrar la pausa publicitaria. En la respuesta de ejemplo, el ID del corte publicitario creado es bcc402a6-9880-4b8b-8e4a-a8cd3688f854.

Recupera una entidad AdBreak

Usa el método GET para recuperar los detalles de una entidad AdBreak específica, incluidos el estado de la pausa publicitaria y los metadatos de sincronización.

curl -X GET \
'https://admanagervideo.googleapis.com/v1/adBreak/networks/NETWORK_CODE/assets/ASSET_KEY/adBreaks/AD_BREAK_ID' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer OAUTH_TOKEN'

Si se ejecuta correctamente, verás la siguiente respuesta JSON:

{
  "name": "networks/.../assets/.../adBreaks/bcc402a6-9880-4b8b-8e4a-a8cd3688f854",
  "expectedDuration": "30s",
  "expectedStartTime": "2025-06-03T15:10:00Z",
  "scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
  "customParams": "param1=value1&param2=value2",
  "podTemplateName": "podtemplate"
  "breakState": "BREAK_STATE_SCHEDULED",
}

Actualiza una entidad de AdBreak

Para modificar una próxima pausa publicitaria antes de que comience la decisión del anuncio, usa el método PATCH:

curl -X PATCH 'https://admanagervideo.googleapis.com/v1/adBreak/networks/NETWORK_CODE/assets/ASSET_KEY/adBreaks/AD_BREAK_ID' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer OAUTH_TOKEN' \
  -d '{"expectedStartTime": "2025-06-03T15:10:00Z"}'

Si se ejecuta correctamente, verás la siguiente respuesta JSON:

{
  "name": "networks/.../assets/.../adBreaks/bcc402a6-9880-4b8b-8e4a-a8cd3688f854",
  "expectedDuration": "30s",
  "expectedStartTime": "2025-06-03T15:10:00Z",
  "scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
  "customParams": "param1=value1&param2=value2",
  "podTemplateName": "podtemplate"
  "breakState": "BREAK_STATE_SCHEDULED",
}

Borra una entidad de AdBreak

Usa el método DELETE para cancelar la decisión del anuncio de una pausa publicitaria creada a través de la API antes de que comience a publicarse.

En el siguiente ejemplo de solicitud, se borra una pausa publicitaria:

curl -X DELETE 'https://admanagervideo.googleapis.com/v1/adBreak/networks/NETWORK_CODE/assets/ASSET_KEY/adBreaks/AD_BREAK_ID' \
  -H 'Authorization: Bearer OAUTH_TOKEN'

Si se ejecuta correctamente, verás la respuesta HTTP/1.1 200 OK.

Más información sobre las funciones avanzadas de las pausas publicitarias

Después de crear y administrar las pausas publicitarias, explora estas funciones de la API de Ad Break de DAI: