API-Referenz
Siehe auch die API-Referenz.
Basis-URL
Die Basis-URL für die Audience API lautet:
https://audience.api.brightcove.com/v1
Account-Pfad
In allen Fällen werden Anfragen für ein bestimmtes Video Cloud-Konto gestellt. Sie müssen der Basis-URL immer den Begriff „Konten“ gefolgt von Ihrer Konto-ID hinzufügen:
https://audience.api.brightcove.com/v1/accounts/{account_id}
Authentifizierung
Die Zielgruppen-API verwendet die Brightcove OAuth-Dienst Anrufe zu authentifizieren.
Sie müssen zuerst die Kundenanmeldeinformationen abrufen (a client_id
und client_secret
). Dies ist ein einmaliger Vorgang, der mit dem Benutzeroberfläche für OAuth-Anmeldeinformationen. Sie benötigen Berechtigungen für Zielgruppen-/Lesevorgänge:
Sie können Client-Anmeldeinformationen direkt vom Brightcove OAuth-Dienst abrufen, indem Sie cURL oder Postbote.
Sie benötigen auch eine access_token
, die mit dem client_id
und erhalten wird client_secret
und übergab einen Autorisierungsheader mit Ihrer API-Anfrage:
Authorization: Bearer {access_token}
Die access_token
läuft nach fünf Minuten ab. Sie müssen also für jede Anfrage einen anfordern oder überprüfen, ob Ihr Token noch gültig ist. Sehen Zugriffstoken erhalten für eine detaillierte Erläuterung zum Abrufen von Zugriffstoken, einschließlich Codebeispielen.
Fehlerbehandlung
Tritt ein Fehler auf, antwortet die API mit einem der folgenden Statuscodes und einem entsprechenden Fehlercode im Antworttext:
Statuscode | Fehlercode | Beschreibung |
---|---|---|
400 | BAD_REQUEST_ERROR |
Abfrageparameter sind ungültig |
401 | UNAUTHORIZED_ERROR |
Das Zugriffstoken ist entweder nicht vorhanden, abgelaufen oder ungültig |
404 | RESOURCE_NOT_FOUND |
Die URL existiert nicht |
429 | REQUEST_THROTTLED_ERROR |
Der Benutzer hat die Richtlinie zur Ratenbegrenzung überschritten |
500 | INTERNAL_ERROR |
Ein interner Fehler ist aufgetreten |
504 | GATEWAY_TIMEOUT_ERROR |
Der Server hat eine Zeitüberschreitung beim Erfüllen Ihrer Anfrage |
Unten sehen Sie ein Beispiel für einen Antworttext für einen Fehler:
[
{
"error_code": "UNAUTHORIZED_ERROR",
"message": "Permission denied"
}
]
Parameter
Es gibt mehrere Parameter, die Sie zu Anfragen hinzufügen können, um die abgerufenen Daten einzuschränken und zu filtern. Diese gelten für alle in den folgenden Abschnitten beschriebenen Anforderungstypen.
Ergebnisse filtern
Sie können die Ergebnisse mit der filtern where
Parameter. Die Syntax für Filter lautet:
where=field1==value1;field2==value2
Zum Beispiel:
where=video_id==123456789;video_name==test
Kommas werden als logisches ODERs und Semikolons als logisches UNDs behandelt. Zum Beispiel, where=video_id==1234,5678;video_name=test
wird interpretiert als "wo video_id = 1234 ODER 5678, AND video_name = test".
Auswählen von Feldern, die zurückgegeben werden sollen
In der Anforderung kann eine Liste von Feldern angegeben werden, um die Ergebnisse auf diese Teilmenge von Feldern zu beschränken. Die Syntax für Felder lautet:
fields=field1,field4
Zum Beispiel:
fields=video_id,video_name
Die Felder, nach denen Sie filtern und sortieren können, werden in den folgenden Abschnitten für jeden Anforderungstyp detailliert beschrieben.
Datumsbereiche
Datumsbereiche können angegeben werden in from
und to
Parameter und werden auf das Datum angewendet, an dem das Ansichtsereignis zuletzt aktualisiert wurde (das Feld "updated_at"). Datumsbereiche können in den folgenden Formaten angegeben werden:
- Der Textwert
now
was die aktuelle Uhrzeit darstellt - Epochenzeitwerte in Millisekunden, wie z
1377047323000
- Datumsangaben im internationalen Datumsformat ISO 8601:
YYYY-MM-DD
Format, wie z2013-09-12
. Für in diesem Format ausgedrückte Daten:- Jeder angegebene Datumsbereich wird in UTC interpretiert
- Die Uhrzeit für das angegebene Datum wird als Mitternacht (
00:00:00
) am angegebenen Datum interpretiert
- Relative Daten: Sie können eines der beiden ausdrücken
to
undfrom
Werte relativ zum anderen ind
(Tage),h
(Std),m
(Minuten), oders
(Sek.). Zum Beispiel:from=2015-01-01&to=31d
from=-48h&to=now
from=-2d&to=now
(wird die gleichen Ergebnisse wie im vorherigen Beispiel liefern)from=-365d&to=2015-12-31
from=-10m&to=now
Paging-Ergebnisse
Die limit
ist die Anzahl der zurückzugebenden Elemente (Standard: 25; Maximum: 200). offset
ist die Anzahl der zu überspringenden Elemente (Standard: 0). Sie können limit
und offset
zusammen verwenden, um eine App zu erstellen, die die Ergebnisse durchsucht. Jeder enthält die limit
, und offset
count.
, die Sie verwenden können, um festzulegen die Iteration über die Gesamtergebnisse nach oben. In JavaScript können Sie beispielsweise die gesamten erforderlichen Iterationen wie folgt abrufen:
// response is the JSON-parsed response from the first request
var totalRequests = Math.ceil(response.count / response.limit)
Abrufen von Ansichtsereignissen
Führen Sie zum Abrufen von Ansichtsereignissen in einem Konto Folgendes aus: GET
Anfrage an die Ressource view_events:
https://audience.api.brightcove.com/v1/accounts/{account_id}/view_events
Hier ist eine Beispielanfrage in 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}"
Beispielantwort
{
"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
}, ...
}
]
Felder zum Filtern und Auswählen
All die Parameter kann mit verwendet werden view_event
Anfragen.
Hier ist eine Beispielanfrage in cURL mit den Parametern:
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}"
Die folgenden Felder werden unterstützt für view_event
Anfragen beim Filtern mit a where
-Klausel oder bei der Auswahl während a fields
Klausel:
Feld | Beschreibung |
---|---|
video_id |
Brightcove-Video-ID |
video_name |
Brightcove-Videoname |
tracking_id |
Benutzerdefinierte Tracking-ID |
external_id |
Der Marketo, Eloqua oder die benutzerdefinierte GUID |
player_id |
Die ID des Brightcove-Players, der das Ansichtsereignis erstellt hat |
page_url |
Die URL der Seite, auf der das Ansichtsereignis erstellt wurde |
watched |
Prozent gesehen |
time_watched |
Sekunden des angeschauten Videos |
created_at |
Erstellungsdatum |
updated_at |
Datum der letzten Aktualisierung |
is_synced |
Ein boolescher Wert, der angibt, ob das Ansichtsereignis synchronisiert wurde oder nicht |
event_1 |
Benutzerdefinierte Ereignisse |
event_2 |
|
event_3 |
|
metric_1 |
Benutzerdefinierte Messwerte |
metric_2 |
|
metric_3 |
Abrufen von Leads
Führen Sie zum Abrufen von Ansichtsereignissen in einem Konto Folgendes aus: GET
Anfrage an die view_events
Ressource:
https://audience.api.brightcove.com/v1/accounts/{account_id}/leads
Beispielantwort:
{
"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"
}
]
}
Felder zum Filtern und Auswählen
All die Parameter kann mit verwendet werden leads
Anfragen.
Hier ist eine Beispielanfrage in cURL mit den Parametern:
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}"
Die folgenden Felder werden unterstützt für leads
Anfragen beim Filtern mit a where
-Klausel oder bei der Auswahl während a fields
Klausel:
Feld | Beschreibung |
---|---|
video_id |
Brightcove-Video-ID |
external_id |
Der Marketo, Eloqua oder die benutzerdefinierte GUID |
player_id |
Die ID des Brightcove-Players, der das Ansichtsereignis erstellt hat |
page_url |
Die URL der Seite, auf der das Ansichtsereignis erstellt wurde |
created_at |
Erstellungsdatum |
email_address |
Die E-Mail-Adresse des Leads |
first_name |
Der Vorname des Leads, falls angegeben |
last_name |
Der Nachname des Leads, falls angegeben |
business_phone |
Die Telefonnummer des Leads, falls angegeben |
country |
Das Land des Leads, falls angegeben |
company_name |
Das Unternehmen des Leads, falls angegeben |
industry |
Die Branche, zu der die Führung gehört, wenn sie bereitgestellt wird |