Dinamik Reklam Ekleme API'si, DAI seç-izle video (VOD) akışlarını istemenizi ve izlemenizi sağlar. HLS ve DASH akışları desteklenir.
Hizmet: dai.google.com
stream
yönteminin yolu https://dai.google.com
'a görelidir
Yöntem: stream
Yöntemler | |
---|---|
stream |
POST /ondemand/v1/hls/content/{content-source}/vid/{video-id}/stream
Belirtilen içerik kaynağı ve video kimliği için HLS DAI akışı oluşturur.
Belirtilen içerik kaynağı ve video kimliği için bir DASH DAI akışı oluşturur. |
HTTP isteği
POST https://dai.google.com/ondemand/v1/hls/content/{content-source}/vid/{video-id}/stream
POST https://dai.google.com/ondemand/v1/dash/content/{content-source}/vid/{video-id}/stream
İstek başlığı
Parametreler | |
---|---|
api‑key |
string Akış oluşturulurken sağlanan API anahtarı, yayıncının ağı için geçerli olmalıdır. API anahtarı, istek gövdesinde sağlanmak yerine aşağıdaki biçimle HTTP Yetkilendirme başlığında iletilebilir: Authorization: DCLKDAI key="<api-key>" |
Yol parametreleri
Parametreler | |
---|---|
content-source |
string Akışın içerik yönetim sistemi kimliği. |
video-id |
string Yayının video kimliği. |
İstek içeriği
İstek metni application/x-www-form-urlencoded
türündedir ve aşağıdaki parametreleri içerir:
Parametreler | ||
---|---|---|
dai-ssb |
İsteğe bağlı | Sunucu tarafı işaretleme akışı oluşturmak için |
DFP Hedefleme Parametreleri | İsteğe bağlı | Ek hedefleme parametreleri. |
Akış Parametrelerini Geçersiz Kılma | İsteğe bağlı | Akış oluşturma parametresinin varsayılan değerlerini geçersiz kılabilirsiniz. |
HMAC Kimlik Doğrulaması | İsteğe bağlı | HMAC tabanlı bir jeton kullanarak kimlik doğrulama yapın. |
Yanıt gövdesi
Başarılı olursa yanıt metni yeni bir Stream
içerir. Sunucu tarafı işaretçi akışları için bu Stream
yalnızca stream_id
ve stream_manifest
alanlarını içerir.
Open Measurement
Verifications
alanı, sunucu tarafı işaretçi olmayan akışlar için Open Measurement doğrulamasıyla ilgili bilgileri içerir.
Verifications
, reklam öğesi oynatmayı üçüncü taraf ölçüm koduyla doğrulamak için ihtiyaç duyduğunuz kaynakları ve meta verileri listeleyen bir veya daha fazla Verification
öğesi içerir.
Yalnızca JavaScriptResource
desteklenir. Daha fazla bilgi için IAB Tech Lab'e ve VAST 4.1 spesifikasyonuna göz atın.
Yöntem: medya doğrulaması
Oynatma sırasında bir reklam medya tanımlayıcısı ile karşılaştıktan sonra hemen stream
uç noktasından media_verification_url
kullanarak istek gönderin. media_verification_url
mutlak bir yoldur.
Sunucunun medya doğrulamasını başlattığı sunucu tarafı işaretçi akışları için medya doğrulama istekleri gerekli değildir.
media verification
uç noktasına gönderilen istekler idempotent'tir.
Yöntemler | |
---|---|
media verification |
GET {media_verification_url}/{ad_media_id}
API'yi medya doğrulama etkinliği hakkında bilgilendirir. |
HTTP isteği
GET {media-verification-url}/{ad-media-id}
Yanıt gövdesi
media verification
aşağıdaki yanıtları döndürür:
HTTP/1.1 204 No Content
medya doğrulaması başarılı olursa ve tüm ping'ler gönderilirse.- İstek, yanlış URL biçimlendirmesi veya geçerlilik süresi sona ermesi nedeniyle medyayı doğrulayamazsa
HTTP/1.1 404 Not Found
. HTTP/1.1 404 Not Found
değerini döndürür.HTTP/1.1 409 Conflict
ise başka bir istek şu anda ping gönderiyor demektir.
Reklam medya kimlikleri (HLS)
Reklam medya tanımlayıcıları, "kullanıcı tanımlı metin bilgileri" çerçeveleri için ayrılmış TXXX
anahtarı kullanılarak HLS Zamanlanmış Meta Verileri'ne kodlanır. Çerçevenin içeriği şifresi çözülecek ve her zaman "google_"
metniyle başlayacaktır.
Çerçevenin metin içeriğinin tamamı, her reklam doğrulama isteği için media_verification_url'ye eklenmelidir.
Reklam medya kimlikleri (DASH)
Reklam medya tanımlayıcıları, DASH'in EventStream
öğesi kullanılarak manifest'e eklenir.
Her EventStream
, urn:google:dai:2018
Scheme ID URI'sine sahip olacaktır.
Bu raporlar, “google_”
ile başlayan bir reklam medya kimliği içeren messageData
özelliğine sahip etkinlikleri içerir. messageData
özelliğinin içeriğinin tamamı, her reklam doğrulama isteği için media_verification_url'ye eklenmelidir.
Yanıt verileri
Akış
Akış, yeni oluşturulan bir yayının tüm kaynaklarının JSON biçiminde bir listesini oluşturmak için kullanılır .JSON gösterimi |
---|
{ "stream_id": string, "total_duration": number, "content_duration": number, "valid_for": string, "valid_until": string, "subtitles": [object(Subtitle)], "hls_master_playlist": string, "stream_manifest": string, "media_verification_url": string, "apple_tv": object(AppleTV), "ad_breaks": [object(AdBreak)], } |
Alanlar | |
---|---|
stream_id |
string Akış tanımlayıcısı. |
total_duration |
number Saniye cinsinden yayın süresi. |
content_duration |
number Reklamlar olmadan içeriğin süresi (saniye cinsinden). |
valid_for |
string Süre akışı, "00sa00dk00sn" biçiminde geçerlidir. |
valid_until |
string Aktarımın geçerli olduğu tarih (RFC 3339 biçiminde). |
subtitles |
[object(Subtitle)] Altyazıların listesi. Boşsa atlanır. Yalnızca HLS. |
hls_master_playlist |
string (KULLANIMDAN KALDIRILDI) HLS ana oynatma listesi URL'si. stream_manifest parametresini kullanın. Yalnızca HLS. |
stream_manifest |
string Yayın manifesti. HLS'deki ana oynatma listesine ve DASH'teki MPD'ye karşılık gelir. Sunucu tarafı işaretleme akışı oluşturulurken yanıtta "stream_id" dışında bulunan tek alan budur. |
media_verification_url |
string Medya doğrulama URL'si. |
apple_tv |
object(AppleTV) AppleTV cihazlarına özel isteğe bağlı bilgiler. Yalnızca HLS. |
ad_breaks |
[object(AdBreak)] Reklam aralarının listesi. Boşsa atlanır. |
AppleTV
AppleTV, Apple TV cihazlarına özgü bilgileri içerir.JSON gösterimi |
---|
{ "interstitials_url": string, } |
Alanlar | |
---|---|
interstitials_url |
string İnteraktif reklam URL'si. |
AdBreak
AdBreak, yayındaki tek bir reklam arasını tanımlar. Bir konum, süre, tür (ortası/öncesi/sonrası) ve reklam listesini içerir.JSON gösterimi |
---|
{ "type": string, "start": number, "duration": number, "ads": [object(Ad)], } |
Alanlar | |
---|---|
type |
string Geçerli ara türleri: orta, ön ve son. |
start |
number Aranızın başladığı yayındaki konum (saniye cinsinden). |
duration |
number Reklam arasının saniye cinsinden süresi. |
ads |
[object(Ad)] Reklamların listesi. Boşsa atlanır. |
Reklam
Reklam, yayındaki bir reklamı tanımlar. Reklamın aradaki konumunu, reklamın süresini ve bazı isteğe bağlı meta verileri içerir.JSON gösterimi |
---|
{ "seq": number, "start": 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, "icons": [object(Icon)], "wrappers": [object(Wrapper)], "events": [object(Event)], "verifications": [object(Verification)], "universal_ad_id": object(UniversalAdID), "companions": [object(Companion)], "interactive_file": object(InteractiveFile), "skip_metadata": object(SkipMetadata), "extensions": [], } |
Alanlar | |
---|---|
seq |
number Reklamın aradaki konumu. |
start |
number Reklamın başladığı yayın konumu (saniye cinsinden). |
duration |
number Reklamın saniye cinsinden süresi. |
title |
string Reklamın isteğe bağlı başlığı. |
description |
string Reklamın isteğe bağlı açıklaması. |
advertiser |
string İsteğe bağlı reklamveren tanımlayıcısı. |
ad_system |
string İsteğe bağlı reklam sistemi. |
ad_id |
string İsteğe bağlı reklam kimliği. |
creative_id |
string İsteğe bağlı reklam öğesi kimliği. |
creative_ad_id |
string İsteğe bağlı reklam öğesi reklam kimliği. |
deal_id |
string İsteğe bağlı fırsat kimliği. |
clickthrough_url |
string İsteğe bağlı tıklama URL'si. |
icons |
[object(Icon)] Simgelerin listesi (boşsa atlanır). |
wrappers |
[object(Wrapper)] Sarmalayıcıların listesi. Boşsa atlanır. |
events |
[object(Event)] Reklamdaki etkinliklerin listesi. |
verifications |
[object(Verification)] Reklam öğesi oynatmayı doğrulamak için üçüncü taraf ölçüm kodunu yürütmek üzere gereken kaynakları ve meta verileri listeleyen isteğe bağlı Open Measurement doğrulama girişleri. |
universal_ad_id |
object(UniversalAdID) İsteğe bağlı evrensel reklam kimliği. |
companions |
[object(Companion)] Bu reklamla birlikte gösterilebilecek isteğe bağlı tamamlayıcılar. |
interactive_file |
object(InteractiveFile) Reklam oynatımı sırasında gösterilmesi gereken isteğe bağlı etkileşimli reklam öğesi (SIMID). |
skip_metadata |
object(SkipMetadata) Atlanabilir reklamlar için isteğe bağlı meta veriler. Bu ayar, reklamın atlanabilir olduğunu gösterir ve atlama kullanıcı arayüzünün ve izleme etkinliğinin nasıl ele alınacağına dair talimatlar içerir. |
extensions |
string VAST'taki tüm <Extension> düğümlerinin isteğe bağlı listesi. |
Etkinlik
Etkinlik, etkinlik türünü ve etkinliğin sunum zamanını içerir.JSON gösterimi |
---|
{ "time": number, "type": string, } |
Alanlar | |
---|---|
time |
number Bu etkinliğin sunum zamanı. |
type |
string Bu etkinliğin türü. |
Alt başlık
Altyazı, video akışı için bir yan altyazı kanalını tanımlar. İki altyazı biçimini depolar: TTML ve WebVTT. TTMLPath özelliği, TTML yan dosyasındaki URL'yi içerir. WebVTTPath özelliği de benzer şekilde WebVTT yan dosyasındaki URL'yi içerir.JSON gösterimi |
---|
{ "language": string, "language_name": string, "ttml": string, "webvtt": string, } |
Alanlar | |
---|---|
language |
string "en" veya "de" gibi bir dil kodu. |
language_name |
string Dilin açıklayıcı adı. Aynı dil için birden fazla altyazı grubu varsa belirli altyazı grubunu ayırt eder |
ttml |
string TTML yardımcı dosyasının isteğe bağlı URL'si. |
webvtt |
string WebVTT yardımcı dosyasının isteğe bağlı URL'si. |
SkipMetadata
SkipMetadata, müşterilerin atlanabilir reklamlar için atlama etkinliklerini işleyebilmesi için gereken bilgileri sağlar.JSON gösterimi |
---|
{ "offset": number, "tracking_url": string, } |
Alanlar | |
---|---|
offset |
number Ofset, oynatıcının atlama düğmesini oluşturmak için reklamın başından itibaren beklemesi gereken süreyi (saniye cinsinden) gösterir. VAST'ta sağlanmazsa atlanır. |
tracking_url |
string TrackingURL, atlama etkinliğinde pinglenmesi gereken bir URL içerir. |
Simge
Simge, VAST simgesiyle ilgili bilgileri içerir.JSON gösterimi |
---|
{ "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, } |
Alanlar | |
---|---|
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, simge tıklaması hakkında bilgi içerir.JSON gösterimi |
---|
{ "url": string, } |
Alanlar | |
---|---|
url |
string |
FallbackImage
FallbackImage, VAST yedek resmiyle ilgili bilgileri içerir.JSON gösterimi |
---|
{ "creative_type": string, "height": int32, "width": int32, "resource": string, "alt_text": string, } |
Alanlar | |
---|---|
creative_type |
string |
height |
int32 |
width |
int32 |
resource |
string |
alt_text |
string |
Wrapper
Sarmalayıcı, sarmalayıcı reklamla ilgili bilgileri içerir. Anlaşma kimliği yoksa anlaşma kimliği içermez.JSON gösterimi |
---|
{ "system": string, "ad_id": string, "creative_id": string, "creative_ad_id": string, "deal_id": string, } |
Alanlar | |
---|---|
system |
string Reklam sistemi tanımlayıcısı. |
ad_id |
string Sarmalayıcı reklam için kullanılan reklam kimliği. |
creative_id |
string Sarmalayıcı reklam için kullanılan reklam öğesi kimliği. |
creative_ad_id |
string Sarmalayıcı reklam için kullanılan reklam öğesi kimliği. |
deal_id |
string Sarmalayıcı reklam için isteğe bağlı anlaşma kimliği. |
Doğrulama
Doğrulama, üçüncü taraf görüntülenebilirlik ve doğrulama ölçümünü kolaylaştıran Open Measurement ile ilgili bilgileri içerir. Şu anda yalnızca JavaScript kaynakları desteklenmektedir. https://iabtechlab.com/standards/open-measurement-sdk/ adresine göz atın.JSON gösterimi |
---|
{ "vendor": string, "java_script_resources": [object(JavaScriptResource)], "tracking_events": [object(TrackingEvent)], "parameters": string, } |
Alanlar | |
---|---|
vendor |
string Doğrulama tedarikçisi. |
java_script_resources |
[object(JavaScriptResource)] Doğrulama için JavaScript kaynaklarının listesi. |
tracking_events |
[object(TrackingEvent)] Doğrulama için izleme etkinliklerinin listesi. |
parameters |
string Başlangıç doğrulama koduna iletilen opak bir dize. |
JavaScriptResource
JavaScriptResource, JavaScript aracılığıyla doğrulamayla ilgili bilgileri içerir.JSON gösterimi |
---|
{ "script_url": string, "api_framework": string, "browser_optional": boolean, } |
Alanlar | |
---|---|
script_url |
string JavaScript yüküne URI. |
api_framework |
string APIFramework, doğrulama kodunu yürüten video çerçevesinin adıdır. |
browser_optional |
boolean Bu komut dosyasının tarayıcı dışında çalıştırılıp çalıştırılamayacağını belirtir. |
TrackingEvent
TrackingEvent, belirli durumlarda istemci tarafından pinglenmesi gereken URL'leri içerir.JSON gösterimi |
---|
{ "event": string, "uri": string, } |
Alanlar | |
---|---|
event |
string İzleme etkinliğinin türü. |
uri |
string Ping gönderilecek izleme etkinliği. |
UniversalAdID
UniversalAdID, reklam sistemlerinde korunan benzersiz bir reklam öğesi tanımlayıcısı sağlamak için kullanılır.JSON gösterimi |
---|
{ "id_value": string, "id_registry": string, } |
Alanlar | |
---|---|
id_value |
string Reklam için seçilen reklam öğesinin Evrensel Reklam Kimliği. |
id_registry |
string Seçilen reklam öğesinin Evrensel Reklam Kimliği'nin kataloglandığı kayıt otoritesi web sitesinin URL'sini tanımlamak için kullanılan bir dize. |
Companion
Tamamlayıcı, reklamla birlikte gösterilebilecek tamamlayıcı reklamlarla ilgili bilgileri içerir.JSON gösterimi |
---|
{ "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)], } |
Alanlar | |
---|---|
click_data |
object(ClickData) Bu tamamlayıcının tıklama verileri. |
creative_type |
string Bu, static türündeki bir tamamlayıcıysa VAST'teki <StaticResource> düğümündeki CreativeType özelliği. |
height |
int32 Bu tamamlayıcı öğenin piksel cinsinden yüksekliği. |
width |
int32 Bu tamamlayıcı öğenin piksel cinsinden genişliği. |
resource |
string Statik ve iframe tamamlayıcılar için bu, yüklenecek ve gösterilecek URL'dir. HTML tamamlayıcılar için bu, tamamlayıcı olarak gösterilmesi gereken HTML snippet'idir. |
type |
string Bu tamamlayıcının türü. Statik, iFrame veya HTML olabilir. |
ad_slot_id |
string Bu arkadaşın slot kimliği. |
api_framework |
string Bu tamamlayıcının API çerçevesi. |
tracking_events |
[object(TrackingEvent)] Bu tamamlayıcı cihazla ilgili izleme etkinliklerinin listesi. |
InteractiveFile
InteractiveFile, reklam oynatımı sırasında gösterilmesi gereken etkileşimli reklam öğesi (ör. SIMID) bilgilerini içerir.JSON gösterimi |
---|
{ "resource": string, "type": string, "variable_duration": boolean, "ad_parameters": string, } |
Alanlar | |
---|---|
resource |
string Etkileşimli reklam öğesinin URL'si. |
type |
string Kaynak olarak sağlanan dosyanın MIME türü. |
variable_duration |
boolean Bu reklam öğesinin süresinin uzatılmasını isteyip istemeyeceğini belirtir. |
ad_parameters |
string VAST'taki <AdParameters> düğümünün değeri. |