Quando utilizzi la piattaforma DAI di Google, potrebbe essere opportuno fornire dati di targeting per alla prossima interruzione pubblicitaria dal vivo/lineare in uno stream. L'interruzione pubblicitaria iniziale L'API Notification (EABN) consente di implementare un targeting specifico per le interruzioni utilizzando coppie chiave-valore, che offrono scalabilità per il processo decisionale degli annunci in volumi elevati i flussi di dati.
Le chiamate effettuate all'API EABN devono includere la chiave asset da scegliere come target e della durata della prossima pausa. La durata deve essere il più simile possibile all'annuncio effettivo. la lunghezza delle interruzioni. Se la durata prevista inviata è più breve del l'interruzione pubblicitaria fornita, Tipo di riempimento interruzione pubblicitaria con riempimento parziale (il valore predefinito è slate vuoto) viene utilizzato per il resto dell'interruzione. Se la durata prevista inviata è superiore all'interruzione pubblicitaria fornita, l'interruzione pubblicitaria potrebbe prima che l'annuncio sia completo.
Oltre a questi campi obbligatori, puoi anche inviare targeting personalizzato parametri, il nome di un modello di pod di annunci da applicare oppure dati SCTE35 Cue Out, se disponibili.
Prerequisiti
Crea un account di servizio
Per accedere all'API EABN, devi avere un account di servizio Google.
- Se hai un account Google Cloud, puoi utilizzare il modulo IAM per creare un l'account di servizio. Per ulteriori informazioni, vedi Creazione e gestione degli account di servizio.
- Se non hai un account Google Cloud, puoi creare un account di servizio.
dalla console API di Google,
procedendo nel seguente modo:
- .
- Crea un nuovo progetto o selezionane uno esistente.
- Nella pagina Credenziali, fai clic su Gestisci account di servizio.
- Nella pagina Account di servizio, fai clic su CREA ACCOUNT DI SERVIZIO.
- Nella pagina Crea account di servizio, inserisci i dettagli dell'account. Poi fai clic su CREA.
Dopo aver creato un account di servizio, copia il codice JSON dell'account che verrà utilizzata per l'autenticazione.
Abilita l'API EABN
Una volta creato l'account di servizio, chiedi all'account manager di abilitarlo l'API EABN per l'account in questione.
Attiva l'API DAI
Dopo aver abilitato l'API EABN per il tuo account di servizio, abilita l'API DAI nell'account:
Nella libreria API di Google, cerca "API DAI".
Seleziona e abilita l'API DAI.
Utilizzo dell'API EABN
Puoi chiamare l'API EABN utilizzando richieste JSON/REST.
Autenticazione
Per effettuare chiamate autenticate all'API EABN, devi generare il servizio OAuth2
utilizzando la chiave JSON del tuo account di servizio e l'ambito
https://www.googleapis.com/auth/video-ads
. Per ulteriori informazioni, vedi
Utilizzo di OAuth 2.0 per applicazioni server-server.
Deve includere il token di autenticazione risultante come intestazione Auth per ogni all'API EABN.
Invio di una notifica di interruzione pubblicitaria anticipata
Per inviare una notifica di interruzione pubblicitaria anticipata, invia una richiesta POST utilizzando il seguente codice URL e corpo della richiesta:
POST dai.googleapis.com/v1/adBreaks
Corpo della richiesta
Oggetto | ||
---|---|---|
adBreak |
Obbligatorio | L'oggetto wrapper per le proprietà adBreak |
assetKey |
Obbligatorio | Un identificatore univoco del valore LiveStreamEvent per il quale
interruzione creata |
expectedDuration |
Obbligatorio | La durata di questa interruzione pubblicitaria, utilizzando il formato di durata standard di Google (xx,xxx dove xx,xxx è il numero di secondi) |
scte35CueOut |
Facoltativo | Dati con codifica Base64 dal cue-out di scte35. Può includere il parametro
Comando splice_insert() o time_signal() .
Esempi:
|
custParams |
Facoltativo | Le coppie chiave-valore da includere nelle richieste di annunci per questa interruzione per i
criteri di targeting in AM360, separati da = e uniti da
& .Esempio: key=value&key2=value2,value3
Per ulteriori informazioni sul targeting, consulta
Targeting dell'offerta
parametri al tuo stream.
|
ptpln |
Facoltativo | Il nome del modello del pod di annunci |
Intestazione della risposta
HTTP/1.1 200 OK
Corpo della risposta
Il corpo della risposta contiene tutti i parametri inviati nell'oggetto adBreak
,
e un campo daiBreakId
aggiuntivo, che contiene il DAI interno
l'identificatore dell'interruzione pubblicitaria creata all'interno dello stream.
Esempio
Richiesta
POST /v1/adBreaks HTTP/1.1
Content-Type: application/json
{
"adBreak": {
"assetKey": "asset1",
"expectedDuration": "30s",
"scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
"custParams": "param1=value1¶m2=value2",
"ptpln": "podtemplate"
}
}
Risposta
HTTP/1.1 200 OK
{
"assetKey": "asset1",
"expectedDuration": "30s",
"custParams": "param1=value1¶m2=value2",
"scte35CueOut": "/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==",
"ptpln": "podtemplate",
"daiBreakId": 1
}
Esempio di implementazione (Python)
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
from absl import app
from google.auth.transport.requests import AuthorizedSession
from google.oauth2 import service_account
SERVICE_ACCOUNT_KEY_FILE = "~/eabn_key.json"
ASSET_KEY = "asset1"
SCOPES = ['https://www.googleapis.com/auth/video-ads']
EABN_API_URL = 'https://dai.googleapis.com/v1/adBreaks'
def main():
credentials = service_account.Credentials.from_service_account_file(
SERVICE_ACCOUNT_KEY_FILE, scopes=SCOPES)
authed_session = AuthorizedSession(credentials)
data = {
'assetKey': ASSET_KEY,
'expectedDuration': '120s',
'custParams': 'param1=value1¶m2=value2',
'scte35CueOut': '/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==',
}
r = authed_session.post(EABN_API_URL, json={'adBreak': data})
print(r.status_code)
print(r.headers)
print(r.text)
if __name__ == '__main__':
app.run(main)