Consulta las métricas de visibilidad y tráfico no válido

Descripción general

En las siguientes instrucciones, se proporcionan ejemplos de cómo consultar el tráfico de visibilidad válido y el tráfico no válido con la API de. Estas métricas se limitan al inventario adquirido con Google Ads, Display &Video 360 y YouTube Reserve.

Ten en cuenta que las métricas de vistas de TrueView view acreditadas por el MRC requieren el uso de la API de ADH, ya que no hay ninguna consulta basada en plantillas asociada. Además, las métricas de vistas de TrueView no se deben confundir con las métricas de visibilidad.

Selecciona la plataforma de compra para la que deseas consultar las métricas de visibilidad:

Consulta las métricas de visibilidad con la IU

La consulta de visibilidad basada en plantillas proporciona métricas acreditadas por el MRC.

La acreditación del MRC es binaria (tus resultados pueden estar acreditados o no) y se aplica a toda la tabla de resultados. En BigQuery, la etiqueta adh-mrc-accredited se aplica a todos los resultados acreditados por el MRC. Debes ejecutar la consulta a través de la plantilla para que tus métricas estén acreditadas por el MRC.

Para ejecutar la consulta acreditada por el MRC a través de la plantilla, sigue estos pasos:

  1. Sigue las instrucciones para crear una consulta y asegúrate de seleccionar Google Ads como plataforma de compra y Visibilidad de video como plantilla de consulta.
  2. Haz clic en el botón Ejecutar junto a Usar plantilla.

Consulta las métricas de tráfico no válido y visibilidad con la API

Las métricas de tráfico no válido y visibilidad se pueden recuperar de la API de ADH con los extremos generateIvtReport y startAnalysis. En el caso del tráfico no válido, tus métricas se deben recuperar a través de generateIvtReport para que se aplique la adh-mrc-accredited etiqueta y tus métricas estén acreditadas por el MRC. Del mismo modo, la consulta global que se especifica a continuación se debe usar para las métricas de visibilidad a través de la API de ADH para la acreditación del MRC. En esta sección, se explica cómo enviar una solicitud a este extremo con la biblioteca cliente de Python.

Sigue las instrucciones de configuración y autorización/autenticación que se encuentran en la guía de inicio rápido de la API.

Después de reemplazar los siguientes campos con información pertinente para tu cuenta, puedes ejecutar la siguiente consulta para recuperar un informe de tráfico no válido para tus Google Ads campañas:

  • Archivo de secretos del cliente
  • ID de cliente
  • Clave de API
  • Campaign IDs
  • Zona horaria

Código de muestra

Tráfico no válido

from __future__ import print_function
import json
import os.path
from google.auth.transport.requests import Request
from google.oauth2.credentials import Credentials
from google_auth_oauthlib.flow import InstalledAppFlow
from googleapiclient.discovery import build

# If modifying these scopes, delete the file `token.json`.
SCOPES = ['https://www.googleapis.com/auth/adsdatahub']
TOKEN_FILE = 'token.json'

creds = None

# The file token.json stores the user's access and refresh tokens, and is
# created automatically when the authorization flow completes for the first
# time.
if os.path.exists(TOKEN_FILE):
    creds = Credentials.from_authorized_user_file(TOKEN_FILE, SCOPES)
# If there are no (valid) credentials available, let the user log in.
if not creds or not creds.valid:
    if creds and creds.expired and creds.refresh_token:
        creds.refresh(Request())
    else:
        flow = InstalledAppFlow.from_client_secrets_file(
            'YOUR_CLIENT_SECRETS.json', SCOPES)
        creds = flow.run_local_server(port=0)
    # Save the credentials for the next run.
    with open(TOKEN_FILE, 'w') as token:
        token.write(creds.to_json())

service = build('adsdatahub', 'v1', credentials=creds,
                developerKey='YOUR_API_KEY',
                discoveryServiceUrl='https://adsdatahub.googleapis.com/$discovery/rest?version=v1&labels=')

body = {
    'ads_data_customer_id': YOUR_CUSTOMER_ID,
    'start_date': {
        'year': 2019,
        'month': 12,
        'day': 15
    },
    'end_date': {
        'year': 2019,
        'month': 12,
        'day': 20
    },
    'time_zone': 'YOUR_TIMEZONE',
    'google_ads_dimensions': {
        'campaign_ids': [YOUR_CAMPAIGN_IDS],
        'metric_type': 'METRIC_TYPE_IMPRESSION'
    },
    'dest_table': 'YOUR_DESTINATION_TABLE'
}

resp = service.customers().generateIvtReport(name='customers/YOUR_CUSTOMER_ID,
                                             body=body).execute()
print(json.dumps(resp))

Métricas de visibilidad

from __future__ import print_function
import json
import os.path
from google.auth.transport.requests import Request
from google.oauth2.credentials import Credentials
from google_auth_oauthlib.flow import InstalledAppFlow
from googleapiclient.discovery import build

# If modifying these scopes, delete the file `token.json`.
SCOPES = ['https://www.googleapis.com/auth/adsdatahub']
TOKEN_FILE = 'token.json'

creds = None

# The file token.json stores the user's access and refresh tokens, and is
# created automatically when the authorization flow completes for the first
# time.
if os.path.exists(TOKEN_FILE):
    creds = Credentials.from_authorized_user_file(TOKEN_FILE, SCOPES)
# If there are no (valid) credentials available, let the user log in.
if not creds or not creds.valid:
    if creds and creds.expired and creds.refresh_token:
        creds.refresh(Request())
    else:
        flow = InstalledAppFlow.from_client_secrets_file(
            'YOUR_CLIENT_SECRETS.json', SCOPES)
        creds = flow.run_local_server(port=0)
    # Save the credentials for the next run.
    with open(TOKEN_FILE, 'w') as token:
        token.write(creds.to_json())

service = build('adsdatahub', 'v1', credentials=creds,
                developerKey='YOUR_API_KEY',
                discoveryServiceUrl='https://adsdatahub.googleapis.com/$discovery/rest?version=v1&labels=')

name = 'customers/global/analysisQueries/f41320e7296d49158e572aba662f35b1'
body = {
  'spec': {
    'ads_data_customer_id': YOUR_CUSTOMER_ID,
    'start_date': {
      'year': 2019,
      'month': 12,
      'day': 15
    },
    'end_date': {
      'year': 2019,
      'month': 12,
      'day': 20
    },
    'time_zone': 'YOUR_TIMEZONE',
    'parameter_values': {
      'campaign_ids': {
        'array_value': {
          'values': [
            {
              'value': 'YOUR_CAMPAIGN_ID'
            },
          ]
        }
      }
    }
  },
  'dest_table': 'YOUR_DESTINATION_TABLE',
  'customer_id': YOUR_CUSTOMER_ID
}

resp = service.customers().analysisQueries().start(name=name,body=body).execute()
print(json.dumps(resp))

Calcula las métricas de visibilidad netas del tráfico no válido general

Usa las siguientes fórmulas para obtener las métricas de visibilidad acreditadas por el MRC netas del tráfico no válido general (GIVT):

  • Impresiones totales (netas de GIVT): Impresiones totales - Impresiones no válidas generales
  • Impresiones visibles (netas de GIVT): Impresiones visibles + Impresiones visibles no válidas - Impresiones visibles de GIVT
  • Impresiones medibles (netas de GIVT): Impresiones medibles + Impresiones medibles no válidas - Impresiones medibles de GIVT
  • Impresiones aptas (netas de GIVT): Impresiones aptas + Impresiones aptas no válidas - Impresiones aptas de GIVT
  • Impresiones no visibles (netas de GIVT) : Impresiones medibles (netas de GIVT) - Impresiones visibles (netas de GIVT)
  • Impresiones no medibles (netas de GIVT): Impresiones aptas (netas de GIVT) - Impresiones medibles (netas de GIVT)
  • % de impresiones medibles (netas de GIVT): Impresiones medibles (netas de GIVT) / Impresiones aptas (netas de GIVT)
  • % de impresiones visibles (netas de GIVT): Impresiones visibles (netas de GIVT) / Impresiones medibles (netas de GIVT)