Descripción general
Las siguientes instrucciones proporcionan ejemplos de cómo consultar tanto el tráfico de visibilidad como el tráfico no válido mediante la API. Estas métricas se limitan al inventario comprado mediante Google Ads, Display & Video 360 y YouTube Reserve.
Ten en cuenta que las métricas de vistas de TrueView acreditadas por el MRC requieren el uso de la API del CDA, ya que no hay una consulta basada en una plantilla asociada. Además, las métricas de vistas de TrueView no deben confundirse con las métricas de visibilidad.
Selecciona el canal de compra para el 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 (los resultados se pueden acreditar 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:
- Sigue las instrucciones para crear una búsqueda y asegúrate de seleccionar YouTube Reserve como el canal de compra y la Visibilidad de video como la plantilla de búsqueda.
- Haz clic en el botón Ejecutar junto a Usar plantilla.
Consulta las métricas de visibilidad y tráfico no válido con la API
Las métricas de tráfico y visibilidad no válidas se pueden recuperar desde la API del CDA con los extremos generateIvtReport
y startAnalysis
. En el caso del tráfico no válido, tus métricas deben recuperarse a través de generateIvtReport
para que se aplique la etiqueta adh-mrc-accredited
y que tus métricas estén acreditadas por el MRC. De manera similar, la consulta global que se especifica a continuación debe usarse para las métricas de visibilidad a través de la API del CDA para la acreditación de 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 o autenticación que se indican en la guía de inicio rápido de la API.
Tras reemplazar los siguientes campos con información relevante para su cuenta, puede ejecutar la siguiente consulta para recuperar un informe de tráfico no válido de sus YouTube Reserve campañas:
- Archivo de secretos del cliente
- ID de cliente
- Clave de API
- Order 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',
'yt_reserve_dimensions': {
'order_ids': [YOUR_ORDER_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/ad88e8562a8f4baa9c8522945fe95522'
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': {
'line_item_ids': {
'array_value': {
'values': [
{
'value': 'YOUR_LINE_ITEM_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
Use las siguientes fórmulas para derivar las métricas de visibilidad acreditadas por el MRC netas de Tráfico no válido general (GIVT):
- Impresiones totales (neto de GIVT): impresiones totales - impresiones generales no válidas
- 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
- Impresión no visible (neto 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)
- Porcentaje de impresiones medibles (neto de GIVT): impresiones medibles (netas de GIVT) / impresiones aptas (neto del GIVT)
- Porcentaje de impresiones visibles (neto del GIVT): impresiones visibles (netas de GIVT) / impresiones medibles (neto del GIVT)