تتوفر واجهة برمجة تطبيقات DAI في إصدار تجريبي وقد لا تكون متاحة في شبكتك. اتصل بمدير حسابك للحصول على مزيد من المعلومات. يُنصَح باستخدام حزمة تطوير البرامج لإعلانات الوسائط التفاعلية للمنصات التي تتوفّر فيها.

واجهة برمجة التطبيقات الخطية لإدراج الإعلانات الديناميكية

تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

تمكّنك واجهة برمجة تطبيقات إدراج الإعلان الديناميكي من طلب مجموعات بث 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 اختياري

يمكنك ضبط هذه السياسة على true لإنشاء بث إشارة من جهة الخادم. ضبط القيمة التلقائية على false. يتم بدء البث التلقائي من قِبل العميل ويتم اختباره من جهة الخادم.

معلمات استهداف DFP اختياري معلَمات استهداف إضافية
إلغاء معلّمات البث اختياري إلغاء القيم التلقائية لمعلَمة إنشاء مصدر بيانات
مصادقة HMAC اختياري المصادقة باستخدام رمز مميز يستند إلى بروتوكول HMAC.

نص الاستجابة

إذا كانت الاستجابة ناجحة، يحتوي نص الاستجابة على رمز Stream جديد. بالنسبة إلى أحداث البث من جهة الخادم، تحتوي Stream هذه على الحقلين stream_id وstream_manifest فقط.

فتح القياس

تحتوي واجهة برمجة التطبيقات لـ DAI على معلومات حول التحقق من القياس المفتوح في الحقل Verifications. يتضمّن هذا الحقل عنصرًا واحدًا أو أكثر من عناصر Verification التي تسرد الموارد والبيانات الوصفية المطلوبة لتنفيذ رمز القياس التابع لجهة خارجية من أجل التحقّق من تشغيل تصميم الإعلان. ولا يمكن استخدام سوى JavaScriptResource. لمزيد من المعلومات، يرجى الاطلاع على مختبر IAB التقني ومواصفات VAST 4.1

الطريقة: التحقق من الوسائط

بعد ظهور معرّف وسائط الإعلان أثناء التشغيل، يمكنك تقديم طلب على الفور باستخدام media_verification_url الذي تم الحصول عليه من نقطة النهاية stream أعلاه. ولا تكون هذه الطلبات ضرورية لعمليات البث من جهة الخادم، حيث يبدأ الخادم عملية التحقّق من الوسائط.

الطلبات إلى نقطة النهاية 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.

بيانات الاستجابة

Stream

يتم استخدام ساحة المشاركات لعرض قائمة بمصادر البث الذي تم إنشاؤه حديثًا بتنسيق 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

معرّف مصدر البيانات:
stream_manifest string

بيان البث، والذي يتوافق مع قائمة التشغيل الرئيسية في بروتوكول HLS أو MPD في DASH. وهذا هو الحقل الوحيد بجانب "stream_id" الذي يتوفّر في الاستجابة عند إنشاء بث من جانب الخادم.
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 للبيانات الوصفية المقترحة بالثواني.

البيانات الوصفية لـ Pod

يحتوي ملف 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)]

خريطة الفواصل الإعلانية المفهرسة حسب رقم تعريف الفاصل الإعلاني.

شريحة العلامة

يحتوي TagTag على مرجع إلى الإعلان وفاصله الإعلاني ونوع الحدث. يجب عدم إرسال العلامة - مع نوع تقدم العملية - إلى نقطة نهاية التحقق من وسائط الإعلانات.
تمثيل JSON
{
  "ad": string,
  "ad_break_id": string,
  "type": string,
}
الحقول
ad string

رقم تعريف إعلان هذه العلامة.
ad_break_id string

رقم تعريف الفاصل الإعلاني لهذه العلامة.
type string

نوع حدث هذه العلامة.

AdBreak

يصف 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

قائمة اختيارية من جميع عُقد <الإضافة> في نموذج عرض إعلانات الفيديو (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 على معلومات حول نسبة النقر إلى الظهور للرمز.
تمثيل 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

يحتوي مورد JavaScript على معلومات للتحقق من خلال JavaScript.
تمثيل JSON
{
  "script_url": string,
  "api_framework": string,
  "browser_optional": boolean,
}
الحقول
script_url string

معرّف الموارد المنتظم (URI) إلى حمولة JavaScript
api_framework string

APIFramework هو اسم إطار عمل الفيديو الذي يستخدم رمز التحقّق.
browser_optional boolean

ما إذا كان يمكن تشغيل هذا النص البرمجي خارج المتصفح.

حدث التتبع

يحتوي TrackingEvent على عناوين URL التي يجب أن يرسِلها العميل في حالات معيّنة.
تمثيل JSON
{
  "event": string,
  "uri": string,
}
الحقول
event string

نوع حدث التتبّع، والخيار الوحيد في الوقت الحالي هو "verificationNotExecuted" كما هو محدّد في مواصفات VAST 4.1.
uri string

حدث التتبُّع الذي سيتم فحص اتصاله.

معرّف الإعلانات العام

يتم استخدام 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,
}
الحقول
click_data object(ClickData)

بيانات النقرات لهذا الإعلان المصاحب.
creative_type string

سمة CreativeType على العقدة <StaticResource> في نموذج عرض إعلانات الفيديو إذا كانت هذه السمة مصاحبة للنوع الثابت.
height int32

الارتفاع بالبكسل لهذا الجهاز المصاحب.
width int32

العرض بالبكسل لهذا العنصر المصاحب.
resource string

بالنسبة إلى الإعلانات الثابتة وإطارات iframe المصاحبة، سيكون هذا هو عنوان URL الذي سيتم تحميله وعرضه. بالنسبة إلى ملفات HTML المصاحبة، سيكون هذا مقتطف HTML الذي يجب أن يظهر كإعلان مصاحب.
type string

نوع هذا الإعلان المصاحب. ويمكن أن يتمثل ذلك في ملف ثابت أو iframe أو HTML.

ملف تفاعلي

يحتوي ملف 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.