Interfejs Dynamic Ad Insertion API umożliwia zgłaszanie żądań związanych z DAI i ich śledzenie linearnych transmisji na żywo.
Usługa: dai.google.com
Wszystkie identyfikatory URI wymienione poniżej odnoszą się do elementu https://dai.google.com
Metoda: strumień
Metody | |
---|---|
stream |
POST /linear/v1/hls/event/{assetKey}/stream
Tworzy strumień z dynamicznym wstawianiem reklam dla podanego identyfikatora zdarzenia. |
Żądanie HTTP
POST https://dai.google.com/linear/v1/hls/event/{assetKey}/stream
Nagłówek żądania
Parametry | |
---|---|
api‑key |
string Klucz interfejsu API podany przy tworzeniu strumienia musi być prawidłowy w sieci wydawcy. Zamiast podawać go w treści żądania, klucz interfejsu API można przekazać w nagłówku autoryzacji HTTP w formacie: Authorization: DCLKDAI key="<api-key>" |
Parametry ścieżki
Parametry | |
---|---|
assetKey |
string Identyfikator zdarzenia strumienia. |
Treść żądania
Treść żądania jest typu application/x-www-form-urlencoded
i zawiera
następujące parametry:
Parametry | ||
---|---|---|
dai-ssb |
Opcjonalnie | Ustaw jako |
Parametry kierowania w DFP | Opcjonalnie | Dodatkowe parametry kierowania. |
Zastąp parametry strumienia | Opcjonalnie | Zastąp wartości domyślne parametru tworzenia strumienia. |
Uwierzytelnianie HMAC | Opcjonalnie | Uwierzytelnij przy użyciu tokena opartego na HMAC. |
Treść odpowiedzi
Jeśli operacja się uda, treść odpowiedzi będzie zawierała nowy
Stream
W przypadku strumieni z sygnalizowaniem po stronie serwera Stream
zawiera tylko pola stream_id
i stream_manifest
.
Open Measurement
Interfejs DAI API zawiera informacje potrzebne do weryfikacji Open Measurement w
Verifications
. To pole zawiera co najmniej jedno pole
Elementy Verification
zawierające listę zasobów i metadanych wymaganych do wykonania
za pomocą kodu pomiarowego firmy zewnętrznej, by sprawdzić odtwarzanie kreacji. Tylko
JavaScriptResource
jest obsługiwany. Więcej informacji:
IAB Tech Lab i
Specyfikacja VAST 4.1.
Metoda: weryfikacja multimediów
Po napotkaniu identyfikatora multimediów podczas odtwarzania natychmiast wykonaj żądania przy użyciu parametru media_verification_url uzyskanego ze stream punktu końcowego powyżej. Te żądania nie są niezbędne do sygnalizowania po stronie serwera gdzie to serwer rozpoczyna weryfikację multimediów.
Żądania do punktu końcowego media verification
są idempotentne.
Metody | |
---|---|
media verification |
GET /{media_verification_url}/{ad_media_id}
Powiadamia API o zdarzeniu weryfikacji multimediów. |
Żądanie HTTP
GET https://{media-verification-url}/{ad-media-id}
Treść odpowiedzi
media verification
zwraca następujące odpowiedzi:
HTTP/1.1 204 No Content
, jeśli weryfikacja mediów się uda i wysłane zostaną wszystkie pingi.HTTP/1.1 404 Not Found
, jeśli nie można zweryfikować multimediów z powodu nieprawidłowego formatowania adresu URL lub wygaśnięcia ważności.HTTP/1.1 404 Not Found
, jeśli wcześniejsza prośba o weryfikację została zrealizowana.HTTP/1.1 409 Conflict
, jeśli inne żądanie wysyła w tej chwili pingi.
Identyfikatory mediów reklamowych (HLS)
Identyfikatory mediów reklam będą kodowane w metadanych czasowych HLS za pomocą klucza
TXXX
, zarezerwowany na potrzeby zdefiniowanych przez użytkownika informacji tekstowych ramki.
zawartość ramki nie będzie zaszyfrowana i zawsze będzie zaczynać się od tekstu
"google_"
Cały tekst ramki powinien być dołączony do kodu weryfikacyjnego reklamy adres URL przed wysłaniem każdego żądania weryfikacji reklamy.
Metoda: metadane
Punkt końcowy metadanych w domenie metadata_url
zwraca informacje użyte do utworzenia reklamy
Interfejs. Punkt końcowy metadanych jest niedostępny w przypadku strumieni beaconing po stronie serwera.
na której serwer jest odpowiedzialny za zainicjowanie weryfikacji mediów reklamowych.
Metody | |
---|---|
metadata |
GET /{metadata_url}/{ad-media-id} GET /{metadata_url}
Pobiera informacje o metadanych reklam. |
Żądanie HTTP
GET https://{metadata_url}/{ad-media-id}
GET https://{metadata_url}
Treść odpowiedzi
Jeśli operacja się uda, odpowiedź zwróci wystąpienie
PodMetadata
Praca z metadanymi
Metadane składają się z 3 oddzielnych sekcji: tags
, ads
i reklamy breaks
. Wpis
do danych jest sekcja tags
. Następnie przejrzyj tagi,
i znajdź pierwszy wpis, którego nazwa jest prefiksem
ad media ID znaleziony w strumieniu wideo. Na przykład:
może mieć identyfikator multimediów reklamy, który wygląda tak:
google_1234567890
Następnie znajdziesz obiekt tagu o nazwie google_12345
. W tym przypadku jest ona zgodna z
identyfikator multimediów reklamy. Po znalezieniu właściwego obiektu prefiksu mediów reklamowych możesz wyszukać
identyfikatory reklam,
identyfikatory przerw na reklamę i typ zdarzenia. Identyfikatory reklam są następnie używane do indeksowania
Obiekty ads
i identyfikatory przerwy na reklamę są używane do indeksowania obiektów breaks
.
Dane odpowiedzi
Strumień
Strumień jest używany do renderowania listy zasobów dla nowo utworzonego strumienia w Format JSON.Zapis JSON |
---|
{ "stream_id": string, "stream_manifest": string, "hls_master_playlist": string, "media_verification_url": string, "metadata_url": string, "session_update_url": string, "polling_frequency": number, } |
Pola | |
---|---|
stream_id |
string Identyfikator strumienia GAM. |
stream_manifest |
string Adres URL pliku manifestu strumienia używany do pobierania playlisty z wieloma wariantami w HLS lub Opis prezentacji multimedialnej (MPD) w formacie DASH. |
hls_master_playlist |
string (WYCOFANO) URL playlisty z wieloma wariantami HLS. Użyj parametru „stream_manifest” |
media_verification_url |
string Adres URL do weryfikacji multimediów używany jako podstawowy punkt końcowy do śledzenia zdarzeń odtwarzania. |
metadata_url |
string Adres URL metadanych służący do okresowego sprawdzania informacji o nadchodzących zdarzeniach reklamowych w transmisji. |
session_update_url |
string Adres URL aktualizacji sesji użyty do zaktualizowania parametrów kierowania w tym strumieniu. Pierwotne wartości parametrów kierowania są przechwytywane podczas wstępnego żądania utworzenia strumienia. |
polling_frequency |
number Częstotliwość odpytywania (w sekundach) podczas żądania metadata_url lub heartbeat_url. |
PodMetadata
Metadane PodMetadata zawierają informacje o reklamach, przerwach na reklamy i tagach identyfikatorów multimediów.Zapis JSON |
---|
{ "tags": map[string, object(TagSegment)], "ads": map[string, object(Ad)], "ad_breaks": map[string, object(AdBreak)], } |
Pola | |
---|---|
tags |
map[string, object(TagSegment)] Mapa segmentów tagów indeksowanych według prefiksu tagu. |
ads |
map[string, object(Ad)] Mapa reklam zindeksowanych według identyfikatora reklamy. |
ad_breaks |
map[string, object(AdBreak)] Mapa przerw na reklamę zindeksowanych według identyfikatora przerwy na reklamę. |
TagSegment
TagSegment zawiera odwołanie do reklamy, jej przerwy na reklamę i typu zdarzenia. TagSegment z wartością type="progress" nie powinny być wywoływane do mediów reklamowych punktu końcowego weryfikacji.Zapis JSON |
---|
{ "ad": string, "ad_break_id": string, "type": string, } |
Pola | |
---|---|
ad |
string Identyfikator reklamy zawierającej ten tag. |
ad_break_id |
string Identyfikator przerwy na reklamę w tym tagu. |
type |
string Typ zdarzenia tego tagu. |
AdBreak
AdBreak opisuje pojedynczą przerwę na reklamę w strumieniu. Zawiera czas trwania, typu (połowa/przed/po) i liczby reklam.Zapis JSON |
---|
{ "type": string, "duration": number, "expected_duration": number, "ads": number, } |
Pola | |
---|---|
type |
string Prawidłowe typy przerw na reklamy to: przed, w trakcie i po. |
duration |
number Łączny czas trwania tej przerwy na reklamę (w sekundach). |
expected_duration |
number Oczekiwany czas trwania przerwy na reklamę (w sekundach) z uwzględnieniem wszystkich reklam i plansz. |
ads |
number Liczba reklam w przerwie na reklamę. |
Reklama
Reklama opisuje reklamę w strumieniu.Zapis JSON |
---|
{ "ad_break_id": string, "position": number, "duration": number, "title": string, "description": string, "advertiser": string, "ad_system": string, "ad_id": string, "creative_id": string, "creative_ad_id": string, "deal_id": string, "clickthrough_url": string, "click_tracking_urls": [], "verifications": [object(Verification)], "slate": boolean, "icons": [object(Icon)], "wrappers": [object(Wrapper)], "universal_ad_id": object(UniversalAdID), "extensions": [], "companions": [object(Companion)], "interactive_file": object(InteractiveFile), } |
Pola | |
---|---|
ad_break_id |
string Identyfikator przerwy na reklamę w tej reklamie. |
position |
number Pozycja tej reklamy w przerwie na reklamę, zaczynając od 1. |
duration |
number Czas trwania reklamy w sekundach. |
title |
string Opcjonalny tytuł reklamy. |
description |
string Opcjonalny opis reklamy. |
advertiser |
string Opcjonalny identyfikator reklamodawcy. |
ad_system |
string Opcjonalny system reklamowy. |
ad_id |
string Opcjonalny identyfikator reklamy. |
creative_id |
string Opcjonalny identyfikator kreacji. |
creative_ad_id |
string Opcjonalny identyfikator reklamy kreacji. |
deal_id |
string Opcjonalny identyfikator umowy. |
clickthrough_url |
string Opcjonalny docelowy URL. |
click_tracking_urls |
string Opcjonalne linki monitorujące kliknięcia. |
verifications |
[object(Verification)] Opcjonalne wpisy weryfikacyjne Open Measurement zawierające listę zasobów i metadane wymagane do wykonania kodu pomiarowego firmy zewnętrznej w celu weryfikacji odtwarzania kreacji. |
slate |
boolean Opcjonalna wartość logiczna wskazująca, że bieżący wpis to Slate. |
icons |
[object(Icon)] Lista ikon pomijana, jeśli jest pusta. |
wrappers |
[object(Wrapper)] Lista kodów towarzyszących, pomijana, jeśli jest pusta. |
universal_ad_id |
object(UniversalAdID) Opcjonalny uniwersalny identyfikator reklamy. |
extensions |
string Opcjonalna lista wszystkich elementów <Extension> i węzły w ramach VAST. |
companions |
[object(Companion)] Opcjonalne elementy towarzyszące, które mogą być wyświetlane z tą reklamą. |
interactive_file |
object(InteractiveFile) Opcjonalna kreacja interaktywna (SIMID), która powinna wyświetlać się podczas odtwarzania reklamy. |
Ikona
Ikona zawiera informacje o ikonie VAST.Zapis JSON |
---|
{ "click_data": object(ClickData), "creative_type": string, "click_fallback_images": [object(FallbackImage)], "height": int32, "width": int32, "resource": string, "type": string, "x_position": string, "y_position": string, "program": string, "alt_text": string, } |
Pola | |
---|---|
click_data |
object(ClickData) |
creative_type |
string |
click_fallback_images |
[object(FallbackImage)] |
height |
int32 |
width |
int32 |
resource |
string |
type |
string |
x_position |
string |
y_position |
string |
program |
string |
alt_text |
string |
ClickData
ClickData zawiera informacje o kliknięciu ikony.Zapis JSON |
---|
{ "url": string, } |
Pola | |
---|---|
url |
string |
FallbackImage
Zawiera informacje o obrazie zastępczym VAST.Zapis JSON |
---|
{ "creative_type": string, "height": int32, "width": int32, "resource": string, "alt_text": string, } |
Pola | |
---|---|
creative_type |
string |
height |
int32 |
width |
int32 |
resource |
string |
alt_text |
string |
Wrapper
Paczka zawiera informacje o reklamie z kodem. Nie zawiera ona Identyfikator umowy, jeśli nie istnieje.Zapis JSON |
---|
{ "system": string, "ad_id": string, "creative_id": string, "creative_ad_id": string, "deal_id": string, } |
Pola | |
---|---|
system |
string Identyfikator systemu reklamowego. |
ad_id |
string Identyfikator reklamy używany w reklamie z kodem. |
creative_id |
string Identyfikator kreacji używany na potrzeby reklamy z kodem. |
creative_ad_id |
string Identyfikator reklamy z kreacją używany na potrzeby reklamy z kodem. |
deal_id |
string Opcjonalny identyfikator umowy dotyczącej reklamy z kodem towarzyszącym. |
Weryfikacja
Weryfikacja zawiera informacje do Open Measurement, zewnętrzne pomiary widoczności i weryfikacji. Obecnie obsługiwane są tylko zasoby JavaScript. Więcej informacji znajdziesz na https://iabtechlab.com/standards/open-measurement-sdk/Zapis JSON |
---|
{ "vendor": string, "java_script_resources": [object(JavaScriptResource)], "tracking_events": [object(TrackingEvent)], "parameters": string, } |
Pola | |
---|---|
vendor |
string Dostawca usługi weryfikacyjnej. |
java_script_resources |
[object(JavaScriptResource)] Lista zasobów JavaScript na potrzeby weryfikacji. |
tracking_events |
[object(TrackingEvent)] Lista zdarzeń śledzenia na potrzeby weryfikacji. |
parameters |
string Nieprzejrzysty ciąg znaków przekazany do kodu weryfikacyjnego wczytywania. |
JavaScriptResource
JavaScriptResource zawiera informacje potrzebne do weryfikacji przez JavaScript.Zapis JSON |
---|
{ "script_url": string, "api_framework": string, "browser_optional": boolean, } |
Pola | |
---|---|
script_url |
string Identyfikator URI do ładunku JavaScript. |
api_framework |
string APIFramework to nazwa platformy wideo, w której działa kod weryfikacyjny. |
browser_optional |
boolean Czy ten skrypt można uruchomić poza w przeglądarce. |
TrackingEvent
TrackingEvent zawiera adresy URL, które klient powinien wysłać ping na określonych w różnych sytuacjach.Zapis JSON |
---|
{ "event": string, "uri": string, } |
Pola | |
---|---|
event |
string Typ zdarzenia śledzenia. |
uri |
string Zdarzenie śledzenia do sprawdzenia. |
UniversalAdID
UniversalAdID jest używany do przekazywania unikalnego identyfikatora kreacji, który jest i zachowane w różnych systemach reklamowych.Zapis JSON |
---|
{ "id_value": string, "id_registry": string, } |
Pola | |
---|---|
id_value |
string Uniwersalny identyfikator reklamy wybranej dla reklamy. |
id_registry |
string Ciąg znaków identyfikujący adres URL witryny rejestru, w której znajduje się parametr uniwersalnego identyfikatora reklamy wybranej kreacji. |
Reklama towarzysząca
Kreacja towarzysząca zawiera informacje o reklamach towarzyszących, które mogą być wyświetlane razem z reklamą.Zapis JSON |
---|
{ "click_data": object(ClickData), "creative_type": string, "height": int32, "width": int32, "resource": string, "type": string, "ad_slot_id": string, "api_framework": string, "tracking_events": [object(TrackingEvent)], } |
Pola | |
---|---|
click_data |
object(ClickData) Dane o kliknięciach reklamy towarzyszącej. |
creative_type |
string Atrybut CreativeType w elemencie <StaticResource> węzła w VAST, jeśli jest to reklama towarzysząca typu statycznego. |
height |
int32 Wysokość reklamy towarzyszącej w pikselach. |
width |
int32 Szerokość w pikselach reklamy towarzyszącej. |
resource |
string W przypadku statycznych i towarzyszących elementów iframe będzie to URL do załadowania wyświetlenie. W przypadku reklam towarzyszących HTML jest to fragment kodu HTML, który powinien będzie wyświetlana jako kreacja towarzysząca. |
type |
string Typ elementu towarzyszącego. Może to być statyczny, iframe lub HTML. |
ad_slot_id |
string Identyfikator boksu towarzyszącego. |
api_framework |
string Platforma interfejsu API tej aplikacji towarzyszącej. |
tracking_events |
[object(TrackingEvent)] Lista zdarzeń śledzenia tej reklamy towarzyszącej. |
InteractiveFile
Element InteractiveFile zawiera informacje o kreacji interaktywnej (np.identyfikator SIMID). które powinny się wyświetlać podczas odtwarzania reklamy.Zapis JSON |
---|
{ "resource": string, "type": string, "variable_duration": boolean, "ad_parameters": string, } |
Pola | |
---|---|
resource |
string Adres URL kreacji interaktywnej. |
type |
string Typ MIME pliku dostarczonego jako zasób. |
variable_duration |
boolean Czy ta kreacja może prosić o wydłużenie czasu trwania. |
ad_parameters |
string Wartość parametru <AdParameters> w tagu VAST. |