تتيح لك واجهة برمجة التطبيقات Dynamic Ad Insertion API طلب أحداث البث المباشر غير القابلة للتقديم أو الإيقاف (DAI) وتتبُّعها.
الخدمة: dai.google.com
ترتبط كل معرّفات الموارد المنتظمة (URI) التالية بالموقع الإلكتروني https://dai.google.com
.
الطريقة: التدفق
الطُرق | |
---|---|
stream |
POST /linear/v1/hls/event/{assetKey}/stream
تُنشئ مصدر بيانات DAI لمعرّف الحدث المحدّد. |
طلب HTTP
POST https://dai.google.com/linear/v1/hls/event/{assetKey}/stream
عنوان الطلب
المَعلمات | |
---|---|
api‑key |
string ويجب أن يكون مفتاح واجهة برمجة التطبيقات الذي يتم تقديمه عند إنشاء بث صالحًا لشبكة الناشر. بدلاً من إدخاله في نص الطلب، يمكن تمرير مفتاح واجهة برمجة التطبيقات في عنوان تفويض HTTP بالتنسيق التالي: Authorization: DCLKDAI key="<api-key>" |
معلمات المسار
المَعلمات | |
---|---|
assetKey |
string رقم تعريف حدث مصدر البيانات. |
نص الطلب
نص الطلب من النوع application/x-www-form-urlencoded
ويحتوي على المعلمات التالية:
المَعلمات | ||
---|---|---|
dai-ssb |
اختيارية | اضبط القيمة على |
مَعلمات استهداف DoubleClick | اختيارية | مَعلمات الاستهداف الإضافية |
إلغاء مَعلمات مصدر البيانات | اختيارية | إلغاء القيم التلقائية لمَعلمة إنشاء مصدر البيانات |
مصادقة HMAC | اختيارية | عليك المصادقة باستخدام رمز مميّز مستند إلى رمز مصادقة الرسائل المستندة إلى بروتوكول HMAC. |
نص الاستجابة
إذا كانت الاستجابة ناجحة، يحتوي نص الاستجابة على العنصر
Stream
الجديد. بالنسبة إلى ساحات المشاركات التي تتضمن إشارات من جهة الخادم، تحتوي سمة Stream
هذه على الحقلين stream_id
وstream_manifest
فقط.
فتح أداة القياس
تحتوي DAI API على معلومات حول التحقّق من بيانات القياس المفتوح في الحقل
Verifications
. يحتوي هذا الحقل على عنصر Verification
واحد أو أكثر يسرد الموارد والبيانات الوصفية المطلوبة لتنفيذ رمز القياس التابع لجهة خارجية من أجل التحقّق من تشغيل المواد الإبداعية. يُسمح فقط بالقيمة
JavaScriptResource
. لمزيد من المعلومات، يُرجى الاطّلاع على مختبر IAB التقني ومواصفات نموذج عرض إعلانات الفيديو (VAST 4.1).
الطريقة: التحقّق من الوسائط
بعد ظهور معرّف وسائط إعلانات أثناء التشغيل، يمكنك تقديم طلب على الفور باستخدام media_verification_url الذي تم الحصول عليه من نقطة نهاية البث أعلاه. ولا تكون هذه الطلبات ضرورية لأحداث البث التي تتضمن إشارات من جهة الخادم، حيث يبدأ الخادم التحقق من الوسائط.
وتكون الطلبات المُرسَلة إلى نقطة النهاية media verification
ثابتة.
الطُرق | |
---|---|
media verification |
GET /{media_verification_url}/{ad_media_id}
تُعلم واجهة برمجة التطبيقات بحدث التحقق من الوسائط. |
طلب HTTP
GET https://{media-verification-url}/{ad-media-id}
نص الاستجابة
تعرض media verification
الردود التالية:
HTTP/1.1 204 No Content
إذا تم التحقق من الوسائط بنجاح وتم إرسال كل الإشعارات.HTTP/1.1 404 Not Found
إذا تعذّر على الطلب التحقق من الوسائط بسبب تنسيق عنوان URL أو انتهاء الصلاحية غير الصحيح.HTTP/1.1 404 Not Found
إذا تم قبول طلب إثبات الهوية السابق لهذا المعرّف.HTTP/1.1 409 Conflict
إذا كان هناك طلب آخر يرسل إشعارات في الوقت الحالي.
أرقام تعريف وسائط الإعلانات (HLS)
سيتمّ ترميز معرّفات وسائط الإعلانات في البيانات الوصفية المحدّدة زمنيًا بتنسيق HLS باستخدام المفتاح
TXXX
، المخصّص لإطارات "المعلومات النصية من تحديد المستخدم". ولن يتم تشفير
محتوى الإطار وستبدأ دائمًا بالنص
"google_"
.
يجب إلحاق المحتوى النصي الكامل للإطار بعنوان URL للتحقق من الإعلان قبل تقديم كل طلب من طلبات التحقق من الإعلانات.
الطريقة: البيانات الوصفية
تعرض نقطة نهاية البيانات الوصفية في metadata_url
المعلومات المستخدمة لإنشاء واجهة مستخدم إعلانية. لا تتوفّر نقطة نهاية البيانات الوصفية لأحداث الإشارة من جهة الخادم،
حيث يكون الخادم مسؤولاً عن بدء التحقّق من وسائط الإعلانات.
الطُرق | |
---|---|
metadata |
GET /{metadata_url}/{ad-media-id} GET /{metadata_url}
لاسترداد معلومات البيانات الوصفية للإعلانات. |
طلب HTTP
GET https://{metadata_url}/{ad-media-id}
GET https://{metadata_url}
نص الاستجابة
إذا نجحت الاستجابة، ستعرض الاستجابة PodMetadata
.
التعامل مع البيانات الوصفية
تتضمّن البيانات الوصفية ثلاثة أقسام منفصلة: tags
وads
وbreaks
للإعلان. نقطة الإدخال في البيانات هي قسم tags
. بعد ذلك، كرِّر هذه الخطوات في العلامات وابحث عن الإدخال الأول الذي يكون اسمه بادئة لمعرّف وسائط الإعلان في الفيديو المضمّن. على سبيل المثال، قد يكون لديك
رقم تعريف وسائط إعلانية يبدو كما يلي:
google_1234567890
بعد ذلك، ستعثر على عنصر علامة باسم google_12345
. في هذه الحالة، يتطابق
مع معرّف وسائط الإعلانات بعد العثور على كائن بادئة الوسائط الإعلانية الصحيح، يمكنك البحث عن أرقام تعريف الإعلانات وأرقام تعريف الفواصل الإعلانية ونوع الحدث. بعد ذلك، تُستخدَم معرّفات الإعلانات لفهرسة
عناصر ads
، ويتم استخدام أرقام تعريف الفواصل الإعلانية لفهرسة عناصر breaks
.
بيانات الاستجابة
بث المحتوى
يُستخدَم مصدر البيانات لعرض قائمة بالموارد الخاصة ببث تم إنشاؤه حديثًا بتنسيق JSON.تمثيل 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, } |
الحقول | |
---|---|
stream_id |
string معرّف مصدر بيانات "مدير إعلانات Google" |
stream_manifest |
string عنوان URL لبيان مجموعة البث، والذي يُستخدم لاسترداد قائمة التشغيل المتعددة الصِيَغ في HLS أو MPD في DASH. |
hls_master_playlist |
string (تم الإيقاف) عنوان URL لقائمة تشغيل HLS متعددة الصيغ: يُرجى استخدام "stream_manifest" بدلاً من ذلك. |
media_verification_url |
string عنوان URL للتحقق من الوسائط المستخدَم كنقطة نهاية أساسية لتتبُّع أحداث التشغيل |
metadata_url |
string عنوان URL للبيانات الوصفية المستخدَم للبحث عن معلومات دورية بشأن أحداث الإعلانات أثناء البث القادمة. |
session_update_url |
string عنوان URL الخاص بتحديث الجلسة المستخدم في تعديل معلمات الاستهداف لساحة المشاركات هذه. يتم تسجيل القيم الأصلية لمَعلمات الاستهداف أثناء طلب إنشاء البث المباشر الأولي. |
polling_frequency |
number معدّل تكرار الاستطلاعات بالثواني عند طلب البيانات الوصفية_url أو Heartbeat_url. |
PodMetadata
تحتوي PodMetadata على معلومات بيانات وصفية حول الإعلانات والفواصل الإعلانية وعلامات تعريف الوسائط.تمثيل JSON |
---|
{ "tags": map[string, object(TagSegment)], "ads": map[string, object(Ad)], "ad_breaks": map[string, object(AdBreak)], } |
الحقول | |
---|---|
tags |
map[string, object(TagSegment)] خريطة شرائح العلامة المفهرسة حسب بادئة العلامة |
ads |
map[string, object(Ad)] خريطة الإعلانات المفهرَسة حسب رقم تعريف الإعلان |
ad_breaks |
map[string, object(AdBreak)] خريطة الفواصل الإعلانية المفهرَسة حسب رقم تعريف الفاصل الإعلاني |
TagSegment
تحتوي شريحة العلامة على مرجع إلى إعلان وفاصل إعلاني ونوع الحدث. يجب عدم إرسال أداة Tagsegment with type="progress" إلى نقطة نهاية التحقّق من الوسائط الإعلانية.تمثيل JSON |
---|
{ "ad": string, "ad_break_id": string, "type": string, } |
الحقول | |
---|---|
ad |
string رقم تعريف إعلان هذه العلامة. |
ad_break_id |
string رقم تعريف الفاصل الإعلاني المرتبط بهذه العلامة. |
type |
string نوع الحدث لهذه العلامة. |
AdBreak
يصف الفاصل الإعلاني فاصلاً إعلانيًا واحدًا في البث المباشر. ويحتوي على مدة ونوع (منتصف/قبل/بعد) وعدد الإعلانات.تمثيل JSON |
---|
{ "type": string, "duration": number, "expected_duration": number, "ads": number, } |
الحقول | |
---|---|
type |
string أنواع الفواصل الإعلانية الصالحة هي: ما قبل، ومنتصف، وبعد. |
duration |
number إجمالي مدة الإعلان لهذا الفاصل الإعلاني بالثواني. |
expected_duration |
number المدة المتوقّعة للفاصل الإعلاني (بالثواني)، بما في ذلك جميع الإعلانات وأي عنصر حاجب. |
ads |
number عدد الإعلانات في الفاصل الإعلاني. |
إعلان
يصف الإعلان إعلانًا في البث.تمثيل 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), } |
الحقول | |
---|---|
ad_break_id |
string رقم تعريف الفاصل الإعلاني لهذا الإعلان |
position |
number موضع هذا الإعلان في الفاصل الإعلاني، بدءًا من 1. |
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 عنوان URL الاختياري للنقرة |
click_tracking_urls |
string عناوين URL الاختيارية لتتبّع النقرات |
verifications |
[object(Verification)] الإدخالات الاختيارية للتحقّق من خلال ميزة "القياس المفتوح" والتي تسرد الموارد والبيانات الوصفية المطلوبة لتنفيذ رمز القياس التابع لجهة خارجية من أجل التحقّق من تشغيل تصميم الإعلان. |
slate |
boolean قيمة منطقية اختيارية تشير إلى أنّ الإدخال الحالي عبارة عن عنصر حاجب. |
icons |
[object(Icon)] قائمة بالرموز تم حذفها إذا كانت فارغة |
wrappers |
[object(Wrapper)] قائمة بأغلفة الملفات، يتم حذفها إذا كانت فارغة |
universal_ad_id |
object(UniversalAdID) رقم تعريف عام اختياري للإعلان |
extensions |
string قائمة اختيارية بجميع عُقد <Extension> في نموذج عرض إعلانات الفيديو (VAST). |
companions |
[object(Companion)] الإعلانات المصاحبة الاختيارية التي قد يتم عرضها مع هذا الإعلان. |
interactive_file |
object(InteractiveFile) تصميم إعلان تفاعلي اختياري (SIMID) يجب عرضه أثناء تشغيل الإعلان. |
الرمز
يحتوي الرمز على معلومات حول رمز نموذج عرض إعلانات الفيديو (VAST).تمثيل 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, } |
الحقول | |
---|---|
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 على معلومات حول رمز نسبة النقر إلى الظهور.تمثيل JSON |
---|
{ "url": string, } |
الحقول | |
---|---|
url |
string |
FallbackImage
تحتوي الصورة الاحتياطية على معلومات حول صورة احتياطية لنموذج عرض إعلانات الفيديو (VAST).تمثيل JSON |
---|
{ "creative_type": string, "height": int32, "width": int32, "resource": string, "alt_text": string, } |
الحقول | |
---|---|
creative_type |
string |
height |
int32 |
width |
int32 |
resource |
string |
alt_text |
string |
Wrapper
يحتوي الالتفاف على معلومات عن إعلان الالتفاف. ولا يتضمن معرف الصفقة إذا لم يكن موجودًا.تمثيل JSON |
---|
{ "system": string, "ad_id": string, "creative_id": string, "creative_ad_id": string, "deal_id": string, } |
الحقول | |
---|---|
system |
string معرّف نظام الإعلانات: |
ad_id |
string رقم تعريف الإعلان المستخدَم لإعلان التضمين. |
creative_id |
string رقم تعريف تصميم الإعلان المستخدَم في إعلان الالتفاف. |
creative_ad_id |
string رقم تعريف إعلان تصميم الإعلان المستخدَم في إعلان الملحقات. |
deal_id |
string رقم تعريف الصفقة الاختياري لإعلان التضمين. |
إثبات الملكية
تحتوي عملية إثبات الملكية على معلومات تخصّ "القياس المفتوح" الذي يسهِّل قياس إمكانية العرض وإمكانية التحقّق التابعة لجهة خارجية. في الوقت الحالي، لا تتوفَّر سوى موارد JavaScript. يُرجى الاطّلاع على https://iabtechlab.com/standards/open-measurement-sdk/ .تمثيل JSON |
---|
{ "vendor": string, "java_script_resources": [object(JavaScriptResource)], "tracking_events": [object(TrackingEvent)], "parameters": string, } |
الحقول | |
---|---|
vendor |
string مورّد إثبات الملكية: |
java_script_resources |
[object(JavaScriptResource)] قائمة موارد JavaScript لعملية إثبات الملكية |
tracking_events |
[object(TrackingEvent)] قائمة أحداث التتبُّع لعملية إثبات الملكية |
parameters |
string سلسلة مبهمة يتم تمريرها إلى رمز التحقّق التمهيد. |
JavaScriptResource
يحتوي JavaScriptResource على معلومات للتحقق من خلال JavaScript.تمثيل JSON |
---|
{ "script_url": string, "api_framework": string, "browser_optional": boolean, } |
الحقول | |
---|---|
script_url |
string معرّف الموارد المنتظم (URI) لحمولة JavaScript. |
api_framework |
string APIFramework هو اسم إطار عمل الفيديو الذي ينفّذ رمز التحقّق. |
browser_optional |
boolean ما إذا كان يمكن تشغيل هذا النص البرمجي خارج متصفّح أم لا. |
TrackingEvent
يحتوي حدث TrackingEvent على عناوين URL التي يجب على العميل إرسال إشعار بشأنها في حالات معيّنة.تمثيل JSON |
---|
{ "event": string, "uri": string, } |
الحقول | |
---|---|
event |
string نوع حدث التتبُّع. |
uri |
string حدث التتبُّع الذي سيتم إرسال إشعار إليه. |
UniversalAdID
يتم استخدام UniversalAdID لتوفير معرّف تصميم إعلان فريد يتم الاحتفاظ به في جميع الأنظمة الإعلانية.تمثيل JSON |
---|
{ "id_value": string, "id_registry": string, } |
الحقول | |
---|---|
id_value |
string رقم تعريف الإعلان العام لتصميم الإعلان الذي تم اختياره. |
id_registry |
string سلسلة تُستخدَم لتحديد عنوان URL للموقع الإلكتروني الخاص بقاعدة بيانات المسجّلين حيث تتم فهرسة رقم تعريف الإعلان العام لتصميم الإعلان المحدّد. |
الإعلان المصاحب
يحتوي الإعلان المصاحب على معلومات للإعلانات المصاحبة التي يمكن عرضها مع الإعلان.تمثيل 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)], } |
الحقول | |
---|---|
click_data |
object(ClickData) بيانات النقرات لهذا الإعلان المصاحب |
creative_type |
string سمة CreativeType في العقدة <StaticResource> ضمن نموذج عرض إعلانات الفيديو (VAST) إذا كان هذا النوع مصاحبًا من النوع الثابت. |
height |
int32 الارتفاع بالبكسل لهذا الإعلان المصاحب. |
width |
int32 العرض بالبكسل لهذا الإعلان المصاحب. |
resource |
string بالنسبة إلى الإعلانات الثابتة وإطارات iframe، سيكون هذا هو عنوان URL الذي سيتم تحميله وعرضه. بالنسبة إلى إعلانات HTML المصاحبة، سيكون هذا هو مقتطف HTML الذي يجب عرضه كإعلان مصاحب. |
type |
string نوع هذا الإعلان المصاحب. ويمكن أن يكون المستند ثابتًا أو إطار iframe أو HTML. |
ad_slot_id |
string رقم تعريف الخانة لهذا الإعلان المصاحب. |
api_framework |
string إطار عمل واجهة برمجة التطبيقات لهذا المنتج المصاحب. |
tracking_events |
[object(TrackingEvent)] قائمة أحداث التتبُّع لهذا الإعلان المصاحب |
InteractiveFile
يحتوي ملف InteractiveFile على معلومات لتصميم الإعلان التفاعلي (على سبيل المثال SIMID) التي يجب عرضها أثناء تشغيل الإعلان.تمثيل JSON |
---|
{ "resource": string, "type": string, "variable_duration": boolean, "ad_parameters": string, } |
الحقول | |
---|---|
resource |
string عنوان URL لتصميم الإعلان التفاعلي. |
type |
string نوع MIME للملف الذي يتم تقديمه كمورد. |
variable_duration |
boolean ما إذا كان تصميم الإعلان هذا قد يطلب تمديد المهلة أم لا. |
ad_parameters |
string قيمة العقدة <AdParameters> في نموذج عرض إعلانات الفيديو (VAST). |