Dinamik Reklam Ekleme API'si, DAI doğrusal (CANLI) akışları için istekte bulunmanızı ve bunları izlemenizi sağlar.
Hizmet: dai.google.com
Aşağıdaki tüm URI'ler https://dai.google.com
ile ilgilidir
Yöntem: akış
Yöntemler | |
---|---|
stream |
POST /linear/v1/hls/event/{assetKey}/stream
Belirtilen etkinlik kimliği için bir DAI akışı oluşturur. |
HTTP isteği
POST https://dai.google.com/linear/v1/hls/event/{assetKey}/stream
İstek başlığı
Parametreler | |
---|---|
api‑key |
string Akış oluştururken 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çimde HTTP Yetkilendirmesi başlığında iletilebilir: Authorization: DCLKDAI key="<api-key>" |
Yol parametreleri
Parametreler | |
---|---|
assetKey |
string Akışın etkinlik kimliği. |
İstek içeriği
İstek gövdesi 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ıl. |
HMAC Kimlik Doğrulaması | İsteğe bağlı | HMAC tabanlı bir jeton kullanarak kimlik doğrulayın. |
Yanıt gövdesi
Başarılı olursa yanıt gövdesi yeni bir Stream
içerir. Bu Stream
, sunucu tarafı işaretleme akışları için yalnızca stream_id
ve stream_manifest
alanlarını içerir.
Open Measurement
DAI API'si, Verifications
alanında Open Measurement doğrulamasına ilişkin bilgileri içerir. Bu alanda, reklam öğesinin oynatıldığını doğrulamak amacıyla üçüncü taraf ölçüm kodunu yürütmek için gereken kaynakları ve meta verileri listeleyen bir veya daha fazla Verification
öğesi bulunur. Yalnızca JavaScriptResource
desteklenir. Daha fazla bilgi için lütfen IAB Tech Lab ve VAST 4.1 spesifikasyonuna bakın.
Yöntem: medya doğrulaması
Oynatma sırasında bir reklam medya tanımlayıcısıyla karşılaştıktan sonra, yukarıdaki akış uç noktasından elde edilen media_verification_url'yi kullanarak hemen bir istekte bulunun. Bu istekler, sunucunun medya doğrulamasını başlattığı sunucu tarafı işaretleme akışları için gerekli değildir.
media verification
uç noktasına gönderilen istekler eşgüçlü.
Yöntemler | |
---|---|
media verification |
GET /{media_verification_url}/{ad_media_id}
API'yi bir medya doğrulama etkinliğiyle ilgili bilgilendirir. |
HTTP isteği
GET https://{media-verification-url}/{ad-media-id}
Yanıt gövdesi
media verification
aşağıdaki yanıtları döndürür:
- Medya doğrulaması başarılı olursa ve tüm ping'ler gönderilirse
HTTP/1.1 204 No Content
. - İstek, yanlış URL biçimlendirmesi veya geçerlilik sonu nedeniyle medyayı doğrulayamıyorsa
HTTP/1.1 404 Not Found
. - Bu kimlik için gönderilen önceki doğrulama isteği başarılı olursa
HTTP/1.1 404 Not Found
. - Şu anda başka bir istek zaten ping gönderiyorsa
HTTP/1.1 409 Conflict
.
Reklam medyası kimlikleri (HLS)
Reklam medya tanımlayıcıları, "kullanıcı tanımlı metin bilgisi" çerçeveleri için ayrılmış olan TXXX
anahtarı kullanılarak HLS Zamanlanmış Meta Verilerde kodlanacaktır. Çerçevenin içeriği şifrelenmez ve her zaman "google_"
metniyle başlar.
Çerçevedeki metin içeriğinin tamamı, her reklam doğrulama isteğinde bulunmadan önce reklam doğrulama URL'sine eklenmelidir.
Yöntem: meta veri
metadata_url
konumundaki meta veri uç noktası, reklam kullanıcı arayüzü oluşturmak için kullanılan bilgileri döndürür. Meta veri uç noktası, sunucunun reklam medyası doğrulamasını başlatmaktan sorumlu olduğu sunucu tarafı işaretleme akışları için kullanılamaz.
Yöntemler | |
---|---|
metadata |
GET /{metadata_url}/{ad-media-id} GET /{metadata_url}
Reklam meta veri bilgilerini alır. |
HTTP isteği
GET https://{metadata_url}/{ad-media-id}
GET https://{metadata_url}
Yanıt gövdesi
Başarılı olursa yanıt, PodMetadata
öğesinin bir örneğini döndürür.
Meta verilerle çalışma
Meta verilerde üç ayrı bölüm vardır: tags
, ads
ve reklam breaks
. Verilere giriş noktası tags
bölümüdür. Bundan sonra, etiketleri yineleyin ve adı video akışında bulunan reklam medya kimliği için ön ek olan ilk girişi bulun. Örneğin, şöyle bir
reklam medya kimliğiniz olabilir:
google_1234567890
Ardından google_12345
adlı bir etiket nesnesi bulursunuz. Bu durumda, reklam medyası kimliğinizle
eşleşir. Doğru reklam medyası ön eki nesnesini bulduktan sonra reklam kimliklerini, reklam arası kimliklerini ve etkinlik türünü arayabilirsiniz. Ardından reklam kimlikleri ads
nesnelerini dizine eklemek için, reklam arası kimlikleri ise breaks
nesnelerini dizine eklemek için kullanılır.
Yanıt verileri
Yayın yap
Akış, yeni oluşturulan bir akışa yönelik kaynak listesini JSON biçiminde oluşturmak için kullanılır.JSON gösterimi |
---|
{ "stream_id": string, "stream_manifest": string, "hls_master_playlist": string, "media_verification_url": string, "metadata_url": string, "session_update_url": string, "polling_frequency": number, } |
Alanlar | |
---|---|
stream_id |
string GAM akış tanımlayıcısı. |
stream_manifest |
string HLS'de çok değişkenli oynatma listesini veya DASH'te MPD'yi almak için kullanılan akışın manifest URL'si. |
hls_master_playlist |
string (KULLANIMDAN KALDIRILDI) HLS çok değişkenli oynatma listesi URL'si. Bunun yerine "stream_manifest" parametresini kullanın. |
media_verification_url |
string Oynatma etkinliklerini izlemek için temel uç nokta olarak kullanılan medya doğrulama URL'si. |
metadata_url |
string Yaklaşan yayın reklam etkinlikleri hakkında periyodik bilgi anketleri yapmak için kullanılan meta veri URL'si. |
session_update_url |
string Bu akışın hedefleme parametrelerini güncellemek için kullanılan oturumun güncelleme URL'si. Hedefleme parametrelerinin orijinal değerleri, ilk akış oluşturma isteği sırasında yakalanır. |
polling_frequency |
number Metadata_url veya cardbeat_url isterken saniye cinsinden anket sıklığı. |
PodMetadata
PodMetadata reklamlar, reklam araları ve medya kimliği etiketleriyle ilgili meta veri bilgilerini içerir.JSON gösterimi |
---|
{ "tags": map[string, object(TagSegment)], "ads": map[string, object(Ad)], "ad_breaks": map[string, object(AdBreak)], } |
Alanlar | |
---|---|
tags |
map[string, object(TagSegment)] Etiket önekine göre dizine eklenen etiket segmentlerinin haritası. |
ads |
map[string, object(Ad)] Reklam kimliğine göre dizine eklenen reklamların haritası. |
ad_breaks |
map[string, object(AdBreak)] Reklam arası kimliğine göre dizine eklenen reklam aralarının haritası. |
TagSegment
TagSegment, bir reklama, reklam arasına ve etkinlik türüne bir referans içerir. type="progress" değerine sahip TagSegment, reklam medyası doğrulama uç noktasına pinglenmemelidir.JSON gösterimi |
---|
{ "ad": string, "ad_break_id": string, "type": string, } |
Alanlar | |
---|---|
ad |
string Bu etiketin reklamının kimliği. |
ad_break_id |
string Bu etiketin reklam arasının kimliği. |
type |
string Bu etiketin etkinlik türü. |
AdBreak
AdBreak, akıştaki tek bir reklam arasını tanımlar. Burada süre, tür (orta/önce/sonra) ve reklam sayısı bulunur.JSON gösterimi |
---|
{ "type": string, "duration": number, "expected_duration": number, "ads": number, } |
Alanlar | |
---|---|
type |
string Geçerli ara türleri şunlardır: pre, mid ve post. |
duration |
number Bu reklam arası için saniye cinsinden toplam reklam süresi. |
expected_duration |
number Tüm reklamlar ve tüm seçenek listeleri dahil olmak üzere reklam arasının tahmini süresi (saniye cinsinden). |
ads |
number Reklam arasındaki reklam sayısı. |
Reklam
Reklam, akıştaki bir reklamı açıklar.JSON gösterimi |
---|
{ "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), } |
Alanlar | |
---|---|
ad_break_id |
string Bu reklamın reklam arasının kimliği. |
position |
number Bu reklamın, reklam arasındaki konumu (1'den başlayarak). |
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ı anlaşma kimliği. |
clickthrough_url |
string İsteğe bağlı tıklama URL'si. |
click_tracking_urls |
string İsteğe bağlı tıklama izleme URL'leri. |
verifications |
[object(Verification)] Reklam öğesinin oynatıldığını doğrulamak amacıyla üçüncü taraf ölçüm kodunu yürütmek için gereken kaynakları ve meta verileri listeleyen isteğe bağlı Open Measurement doğrulama girişleri. |
slate |
boolean Geçerli girişin seçenek listesi olduğunu belirten isteğe bağlı bool. |
icons |
[object(Icon)] Simgelerin bir listesi (boşsa atlanır). |
wrappers |
[object(Wrapper)] Sarmalayıcıların listesi (boşsa atlanır). |
universal_ad_id |
object(UniversalAdID) İsteğe bağlı evrensel reklam kimliği. |
extensions |
string VAST'teki tüm <Extension> düğümlerinin isteğe bağlı listesi. |
companions |
[object(Companion)] Bu reklamla birlikte gösterilebilecek isteğe bağlı tamamlayıcılar. |
interactive_file |
object(InteractiveFile) Reklam oynatma sırasında gösterilmesi gereken isteğe bağlı etkileşimli reklam öğesi (SIMID). |
Simge
Simge, VAST simgesi hakkında bilgi içeriyor.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 bir simge tıklamasıyla ilgili bilgiler içerir.JSON gösterimi |
---|
{ "url": string, } |
Alanlar | |
---|---|
url |
string |
FallbackImage
Yedek Resim, VAST yedek resmiyle ilgili bilgiler 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 bilgiler içerir. Mevcut değilse 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 Reklam 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 bilgilerini içerir. Şu anda yalnızca JavaScript kaynakları desteklenmektedir. https://iabtechlab.com/standards/open-measurement-sdk/ sayfasına bakınJSON gösterimi |
---|
{ "vendor": string, "java_script_resources": [object(JavaScriptResource)], "tracking_events": [object(TrackingEvent)], "parameters": string, } |
Alanlar | |
---|---|
vendor |
string Doğrulama tedarikçi firması. |
java_script_resources |
[object(JavaScriptResource)] Doğrulama için JavaScript kaynaklarının listesi. |
tracking_events |
[object(TrackingEvent)] Doğrulamayla ilgili izleme etkinliklerinin listesi. |
parameters |
string Önyükleme doğrulama koduna bir opak dize iletildi. |
JavaScriptResource
JavaScriptResource, JavaScript aracılığıyla doğrulama için bilgiler 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 uygulayan video çerçevesinin adıdır. |
browser_optional |
boolean Bu komut dosyasının bir tarayıcının dışında çalıştırılıp çalıştırılamayacağı. |
TrackingEvent
TrackingEvent, belirli durumlarda istemci tarafından pinglenmesi gereken URL'ler içerir.JSON gösterimi |
---|
{ "event": string, "uri": string, } |
Alanlar | |
---|---|
event |
string İzleme etkinliğinin türü. |
uri |
string Pinglenecek izleme etkinliği. |
UniversalAdID
UniversalAdID, reklam sistemleri genelinde 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 kataloga eklendiği kayıt otoritesi web sitesinin URL'sini tanımlamak için kullanılan dize. |
Tamamlayıcı
Tamamlayıcı, reklamla birlikte görüntülenebilecek tamamlayıcı reklamlarla ilgili bilgiler 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 Statik türde bir tamamlayıcıysa VAST'taki <StaticResource> düğümünde CreativeType özelliği. |
height |
int32 Bu tamamlayıcı öğenin piksel cinsinden yüksekliği. |
width |
int32 Bu tamamlayıcının piksel cinsinden genişliği. |
resource |
string Statik ve iframe tamamlayıcılar için bu, yüklenecek ve görüntülenecek URL'dir. HTML tamamlayıcıları için bu, tamamlayıcı olarak gösterilmesi gereken HTML snippet'i olacaktır. |
type |
string Bu tamamlayıcının türü. Statik, iframe veya HTML olabilir. |
ad_slot_id |
string Bu tamamlayıcı öğenin alan kimliği. |
api_framework |
string Bu tamamlayıcının API çerçevesi. |
tracking_events |
[object(TrackingEvent)] Bu tamamlayıcı için izleme etkinliklerinin listesi. |
InteractiveFile
InteractiveFile, reklam oynatma sırasında görüntülenmesi gereken etkileşimli reklam öğesine (ör. SIMID) ilişkin bilgileri 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ürenin uzatılmasını isteyip istemeyeceği. |
ad_parameters |
string VAST'teki <AdParameters> düğümünün değeri. |