Referencia de API
También vea el Referencia de API.
URL base
La URL base de Audience API es:
https://audience.api.brightcove.com/v1
Ruta de la cuenta
En todos los casos, las solicitudes se realizarán para un Video Cloud Cuenta. Siempre deberá agregar el término "cuentas" seguido de su ID de cuenta a la URL base:
https://audience.api.brightcove.com/v1/accounts/{account_id}
Autenticación
La API Audience usa Brightcove Servicio OAuth para autenticar llamadas.
Primero deberá obtener las credenciales del cliente (un client_id
y client_secret
). Ésta es una operación única que se puede realizar utilizando el Interfaz de usuario de credenciales de OAuth. Necesitará permisos para las operaciones de audiencia / lectura:
Puede obtener las credenciales del cliente directamente desde Brightcove OAuth Service utilizando rizo o Cartero.
También necesitarás un access_token
, que se obtiene utilizando el client_id
y client_secret
y se pasa un encabezado de autorización con tu solicitud de API:
Authorization: Bearer {access_token}
La access_token
caduca después de cinco minutos, por lo que debe obtener uno para cada solicitud, o verificar para asegurarse de que su token aún sea válido. Ver Obtener tokens de acceso para obtener una explicación detallada de cómo obtener tokens de acceso, incluidos ejemplos de código.
Manejo de errores
Si ocurre un error, la API responderá con uno de los siguientes códigos de estado y un código de error correspondiente en el cuerpo de la respuesta:
Código de estado | Código de error | Descripción |
---|---|---|
400 | BAD_REQUEST_ERROR |
Los parámetros de la consulta no son válidos |
401 | UNAUTHORIZED_ERROR |
El token de acceso está ausente, ha caducado o no es válido |
404 | RESOURCE_NOT_FOUND |
La URL no existe |
429 | REQUEST_THROTTLED_ERROR |
El usuario superó la política de limitación de velocidad. |
500 | INTERNAL_ERROR |
Se ha producido un error interno |
504 | GATEWAY_TIMEOUT_ERROR |
El servidor agotó el tiempo de espera mientras cumplía con su solicitud |
A continuación se muestra un cuerpo de respuesta de muestra para un error:
[
{
"error_code": "UNAUTHORIZED_ERROR",
"message": "Permission denied"
}
]
Parámetros
Hay varios parámetros que puede agregar a las solicitudes para limitar y filtrar los datos recuperados. Estos se aplican a todos los tipos de solicitud descritos en las secciones siguientes.
Filtrar resultados
Puede filtrar los resultados utilizando el where
parámetro. La sintaxis de los filtros es:
where=field1==value1;field2==value2
Por ejemplo:
where=video_id==123456789;video_name==test
Las comas se tratan como OR lógicos y los puntos y comas como AND lógicos. Por ejemplo, where=video_id==1234,5678;video_name=test
se interpreta como "donde video_id = 1234 OR 5678, AND video_name = test".
Seleccionar campos para regresar
Se puede especificar una lista de campos en la solicitud para limitar los resultados a ese subconjunto de campos. La sintaxis de los campos es:
fields=field1,field4
Por ejemplo:
fields=video_id,video_name
Los campos que puede filtrar y ordenar se detallan para cada tipo de solicitud en las secciones siguientes.
Intervalos de fechas
Los rangos de fechas se pueden especificar en from
y to
y se aplican a la fecha en que se actualizó por última vez el evento de vista (el campo updated_at). Los rangos de fechas se pueden indicar en los siguientes formatos:
- El valor del texto
now
que representa la hora actual - Valores de tiempo de época en milisegundos, como
1377047323000
- Fechas expresadas en formato de fecha internacional estándar ISO 8601:
YYYY-MM-DD
formato, como2013-09-12
. Para fechas expresadas en este formato:- Cualquier rango de fechas especificado se interpretará en UTC
- La hora de la fecha indicada se interpretará como medianoche (
00:00:00
) en la fecha especificada
- Fechas relativas: puede expresar cualquiera de las
to
yfrom
valores relativos al otro end
(dias),h
(horas),m
(minutos), os
(segundo). Por ejemplo:from=2015-01-01&to=31d
from=-48h&to=now
from=-2d&to=now
(dará los mismos resultados que el ejemplo anterior)from=-365d&to=2015-12-31
from=-10m&to=now
Resultados de paginación
El limit
es el número de artículos a devolver (predeterminado: 25; máximo: 200). offset
es el número de elementos a omitir (predeterminado: 0). Puedes usar limit
y offset
juntos para crear una aplicación que recorra los resultados. Cada uno incluye el limit
offset
, y count.
, que puede usar para configurar iteración superior sobre los resultados totales. Por ejemplo, en JavaScript, podría obtener las iteraciones totales requeridas de esta manera:
// response is the JSON-parsed response from the first request
var totalRequests = Math.ceil(response.count / response.limit)
Recuperando eventos de vista
Para recuperar eventos de visualización en una cuenta, realice una GET
solicitud al recurso view_events:
https://audience.api.brightcove.com/v1/accounts/{account_id}/view_events
Aquí hay una solicitud de muestra en cURL
curl -i https://audience.api.brightcove.com/v1/accounts/{account_id}/view_events?where=video_id==123&from=-5d&to=now&sort=-created_at \
-H "Authorization: Bearer {token}"
Respuesta de muestra
{
"count": 27,
"limit": 25,
"offset": 0,
"result": [
{
"created_at": "2016-04-25T18:30:21.651Z",
"page_url": "https://players.brightcove.net/1486906377/V1s6NOwRx_default/index.html?videoId=4842718056001",
"player_id": "V1s6NOwRx",
"time_watched": 2,
"updated_at": "2016-04-25T18:30:21.651Z",
"video_id": "4842718056001",
"video_name": "Horses Heading to the Track",
"watched": 19
},
{
"created_at": "2016-04-25T18:31:55.071Z",
"page_url": "https://players.brightcove.net/1486906377/BkgFuzyhg_default/index.html?videoId=4842718056001",
"player_id": "BkgFuzyhg",
"time_watched": 15,
"updated_at": "2016-04-25T18:32:00.879Z",
"video_id": "4842718056001",
"video_name": "Horses Heading to the Track",
"watched": 99
}, ...
}
]
Campos de filtrado y selección
Todos parámetros se puede utilizar con view_event
peticiones.
Aquí hay una solicitud de muestra en cURL usando los parámetros:
curl -i https://audience.api.brightcove.com/v1/accounts/{account_id}/view_events?where=video_id==123&from=-5d&to=now&sort=-created_at \
-H "Authorization: Bearer {token}"
Los siguientes campos son compatibles con view_event
solicitudes al filtrar con un where
cláusula o al seleccionar durante una fields
cláusula:
Campo | Descripción |
---|---|
video_id |
Identificación de video de Brightcove |
video_name |
Nombre del video de Brightcove |
tracking_id |
ID de seguimiento personalizado |
external_id |
Marketo, Eloqua o GUID personalizado |
player_id |
El ID del reproductor de Brightcove que creó el evento de vista |
page_url |
La URL de la página donde se creó el evento de visualización. |
watched |
Porcentaje visto |
time_watched |
Segundos del video visto |
created_at |
Fecha de creación |
updated_at |
Fecha de última actualización |
is_synced |
Un booleano que indica si el evento de vista se ha sincronizado o no. |
event_1 |
Eventos personalizados |
event_2 |
|
event_3 |
|
metric_1 |
Métricas personalizadas |
metric_2 |
|
metric_3 |
Recuperar clientes potenciales
Para recuperar eventos de visualización en una cuenta, realice una GET
solicitud a la view_events
recurso:
https://audience.api.brightcove.com/v1/accounts/{account_id}/leads
Respuesta de muestra:
{
"count": 2,
"limit": 25,
"offset": 0,
"result": [
{
"created_at": "2016-06-30T12:57:11.283Z",
"email_address": "bbailey@brightcove.com",
"first_name": "Bob",
"last_name": "Bailey",
"page_url": "https://players.brightcove.net/1486906377/Hk4TBqzL_default/index.html?videoId=4997275041001",
"player_id": "Hk4TBqzL",
"video_id": "4997275041001"
},
{
"created_at": "2016-06-30T12:57:33.301Z",
"email_address": "rcrooks@brightcove.com",
"first_name": "Robert",
"last_name": "Crooks",
"page_url": "https://players.brightcove.net/1486906377/Hk4TBqzL_default/index.html?videoId=4997275041001",
"player_id": "Hk4TBqzL",
"video_id": "4997275041001"
}
]
}
Campos de filtrado y selección
Todos parámetros se puede utilizar con leads
peticiones.
Aquí hay una solicitud de muestra en cURL usando los parámetros:
curl -i https://audience.api.brightcove.com/v1/accounts/{account_id}/leads?where=video_id==123&from=-5d&to=now&sort=-created_at \
-H "Authorization: Bearer {token}"
Los siguientes campos son compatibles con leads
solicitudes al filtrar con un where
cláusula o al seleccionar durante una fields
cláusula:
Campo | Descripción |
---|---|
video_id |
Identificación de video de Brightcove |
external_id |
Marketo, Eloqua o GUID personalizado |
player_id |
El ID del reproductor de Brightcove que creó el evento de vista |
page_url |
La URL de la página donde se creó el evento de visualización. |
created_at |
Fecha de creación |
email_address |
La dirección de correo electrónico del cliente potencial |
first_name |
El primer nombre del cliente potencial, si se proporciona |
last_name |
El apellido del cliente potencial, si se proporciona |
business_phone |
El número de teléfono del cliente potencial, si se proporciona |
country |
El país del cliente potencial si se proporciona |
company_name |
La empresa del cliente potencial si se proporciona |
industry |
La industria a la que pertenece el cliente potencial, si se proporciona |