Descripción general
Las siguientes instrucciones proporcionan ejemplos de cómo consultar el tráfico de visibilidad válido y el tráfico no válido con la API. Estas métricas se limitan al inventario comprado con Google Ads, Display & Video 360 y YouTube Reserve.
Ten en cuenta que las métricas de vistas de vistas de TrueView 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 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 (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. Para que tus métricas estén acreditadas por el MRC, debes ejecutar la consulta a través de la plantilla.
Para ejecutar la consulta acreditada por el MRC a través de la plantilla, sigue estos pasos:
- Sigue las instrucciones para crear una consulta y asegúrate de seleccionar Google Ads como la puerta de compra y Visibilidad de video como la plantilla de consulta.
- 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 deben recuperarse a través de generateIvtReport para que se aplique la etiqueta adh-mrc-accredited 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 indican en el 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 de tus campañas de Google Ads :
- 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))
Cómo calcular las métricas de visibilidad sin incluir el 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 (sin GIVT): Impresiones totales - Impresiones no válidas generales
- Impresiones visibles (sin incluir el 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)
- Porcentaje de impresiones medibles (netas de GIVT): Impresiones medibles (netas de GIVT) / Impresiones aptas (netas de GIVT)
- Porcentaje de impresiones visibles (netas de GIVT): Impresiones visibles (netas de GIVT) / Impresiones medibles (netas de GIVT)