API Chèn quảng cáo động cho phép bạn yêu cầu và theo dõi các sự kiện phát trực tiếp tuyến tính DAI (TRỰC TIẾP).
Dịch vụ: dai.google.com
Tất cả URI dưới đây đều liên quan đến https://dai.google.com
Phương thức: stream
Phương thức | |
---|---|
stream |
POST /linear/v1/hls/event/{assetKey}/stream
Tạo một luồng DAI cho mã sự kiện đã cho. |
Yêu cầu HTTP
POST https://dai.google.com/linear/v1/hls/event/{assetKey}/stream
Tiêu đề của yêu cầu
Các tham số | |
---|---|
api‑key |
string Khoá API (được cung cấp khi tạo luồng) phải hợp lệ đối với mạng của nhà xuất bản. Thay vì cung cấp khoá này trong nội dung yêu cầu, bạn có thể chuyển khoá API trong tiêu đề Uỷ quyền HTTP theo định dạng sau: Authorization: DCLKDAI key="<api-key>" |
Tham số đường dẫn
Các tham số | |
---|---|
assetKey |
string Mã sự kiện của luồng. |
Nội dung yêu cầu
Nội dung yêu cầu thuộc loại application/x-www-form-urlencoded
và chứa các tham số sau:
Các tham số | ||
---|---|---|
dai-ssb |
Không bắt buộc | Đặt thành |
Thông số nhắm mục tiêu DFP | Không bắt buộc | Các tham số nhắm mục tiêu khác. |
Ghi đè thông số của luồng | Không bắt buộc | Ghi đè các giá trị mặc định của thông số tạo luồng. |
Xác thực HMAC | Không bắt buộc | Xác thực bằng mã thông báo dựa trên HMAC. |
Nội dung phản hồi
Nếu thành công, nội dung phản hồi sẽ chứa một Stream
mới. Đối với các luồng có báo hiệu phía máy chủ, Stream
này chỉ chứa các trường stream_id
và stream_manifest
.
Đo lường mở
API DAI chứa thông tin để xác minh số liệu đo lường mở trong trường
Verifications
. Trường này chứa một hoặc nhiều phần tử Verification
liệt kê các tài nguyên và siêu dữ liệu cần thiết để thực thi mã đo lường bên thứ ba nhằm xác minh việc phát mẫu quảng cáo. Chỉ hỗ trợ JavaScriptResource
. Để biết thêm thông tin, vui lòng xem
Phòng thí nghiệm công nghệ IAB và
thông số kỹ thuật VAST 4.1.
Phương thức: xác minh nội dung nghe nhìn
Sau khi gặp giá trị nhận dạng nội dung nghe nhìn quảng cáo trong khi phát, hãy gửi yêu cầu ngay lập tức bằng cách sử dụng media_verification_url nhận được từ điểm cuối luồng ở trên. Các yêu cầu này không cần thiết đối với các luồng báo hiệu phía máy chủ, nơi máy chủ bắt đầu quy trình xác minh nội dung nghe nhìn.
Các yêu cầu đến điểm cuối media verification
là không thay đổi.
Phương thức | |
---|---|
media verification |
GET /{media_verification_url}/{ad_media_id}
Thông báo cho API của sự kiện xác minh nội dung nghe nhìn. |
Yêu cầu HTTP
GET https://{media-verification-url}/{ad-media-id}
Nội dung phản hồi
media verification
trả về các phản hồi sau:
HTTP/1.1 204 No Content
nếu xác minh nội dung nghe nhìn thành công và tất cả ping đều được gửi.- Là giá trị
HTTP/1.1 404 Not Found
nếu yêu cầu không xác minh được nội dung nghe nhìn do định dạng URL không chính xác hoặc do thời hạn. HTTP/1.1 404 Not Found
nếu yêu cầu xác minh trước đó cho mã này thành công.HTTP/1.1 409 Conflict
nếu có một yêu cầu khác đang gửi ping tại thời điểm này.
Mã nhận dạng nội dung đa phương tiện của quảng cáo (HLS)
Giá trị nhận dạng nội dung đa phương tiện của quảng cáo sẽ được mã hoá trong Siêu dữ liệu được hẹn giờ HLS bằng cách sử dụng khoá TXXX
, dành riêng cho khung "thông tin văn bản do người dùng xác định". Nội dung của khung sẽ không được mã hoá và sẽ luôn bắt đầu bằng văn bản "google_"
.
Toàn bộ nội dung văn bản của khung phải được thêm vào URL xác minh quảng cáo trước khi thực hiện từng yêu cầu xác minh quảng cáo.
Phương thức: siêu dữ liệu
Điểm cuối siêu dữ liệu tại metadata_url
trả về thông tin dùng để tạo giao diện người dùng
quảng cáo. Điểm cuối siêu dữ liệu không có sẵn cho các luồng báo hiệu phía máy chủ,
nơi máy chủ chịu trách nhiệm bắt đầu quy trình xác minh nội dung nghe nhìn quảng cáo.
Phương thức | |
---|---|
metadata |
GET /{metadata_url}/{ad-media-id} GET /{metadata_url}
Truy xuất thông tin siêu dữ liệu quảng cáo. |
Yêu cầu HTTP
GET https://{metadata_url}/{ad-media-id}
GET https://{metadata_url}
Nội dung phản hồi
Nếu thành công, phản hồi sẽ trả về một thực thể của PodMetadata
.
Làm việc với siêu dữ liệu
Siêu dữ liệu có ba phần riêng biệt: tags
, ads
và quảng cáo breaks
. Điểm truy cập vào dữ liệu là phần tags
. Từ đó, hãy lặp lại các thẻ
và tìm mục đầu tiên có tên là tiền tố cho
mã nhận dạng nội dung đa phương tiện quảng cáo tìm thấy trong luồng video. Ví dụ: bạn có thể
có một mã nhận dạng nội dung đa phương tiện của quảng cáo có dạng như sau:
google_1234567890
Sau đó, bạn sẽ thấy một đối tượng thẻ có tên là google_12345
. Trong trường hợp này, mã khớp với
mã nhận dạng nội dung đa phương tiện của quảng cáo. Sau khi tìm thấy đối tượng tiền tố nội dung nghe nhìn chính xác, bạn có thể tra cứu
mã quảng cáo, mã điểm chèn quảng cáo và loại sự kiện. Sau đó, mã nhận dạng quảng cáo được dùng để lập chỉ mục các đối tượng ads
và mã điểm chèn quảng cáo được dùng để lập chỉ mục các đối tượng breaks
.
Dữ liệu phản hồi
Phát trực tiếp
Bảng tin được dùng để hiển thị danh sách tài nguyên cho một trình phát trực tiếp mới tạo ở định dạng JSON.Biểu diễn dưới dạng 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, } |
Các trường | |
---|---|
stream_id |
string Giá trị nhận dạng sự kiện phát trực tiếp. |
stream_manifest |
string Tệp kê khai của luồng, tương ứng với danh sách phát chính trong HLS hoặc MPD trong DASH. Đây là trường duy nhất ngoài "stream_id" có trong phản hồi khi tạo luồng báo hiệu phía máy chủ. |
hls_master_playlist |
string (KHÔNG DÙNG NỮA) URL của danh sách phát chính dựa trên giao thức HLS. Thay vào đó, hãy sử dụng "stream_manifest". |
media_verification_url |
string URL xác minh nội dung nghe nhìn. |
metadata_url |
string URL siêu dữ liệu nội dung nghe nhìn của quảng cáo. |
session_update_url |
string URL cập nhật phiên. |
polling_frequency |
number Tần suất thăm dò URL siêu dữ liệu được đề xuất (tính bằng giây). |
PodMetadata
PodMetadata chứa thông tin siêu dữ liệu về quảng cáo, điểm chèn quảng cáo và thẻ mã nhận dạng nội dung đa phương tiện.Biểu diễn dưới dạng JSON |
---|
{ "tags": map[string, object(TagSegment)], "ads": map[string, object(Ad)], "ad_breaks": map[string, object(AdBreak)], } |
Các trường | |
---|---|
tags |
map[string, object(TagSegment)] Bản đồ các phân khúc thẻ được lập chỉ mục theo tiền tố thẻ. |
ads |
map[string, object(Ad)] Bản đồ quảng cáo được lập chỉ mục theo mã quảng cáo. |
ad_breaks |
map[string, object(AdBreak)] Bản đồ các điểm chèn quảng cáo được lập chỉ mục theo mã điểm chèn quảng cáo. |
TagSegment
Phân đoạn thẻ chứa tệp tham chiếu đến một quảng cáo, điểm chèn quảng cáo và loại sự kiện. Không được ping TagSegment với type="progress" tới điểm cuối xác minh nội dung nghe nhìn quảng cáo.Biểu diễn dưới dạng JSON |
---|
{ "ad": string, "ad_break_id": string, "type": string, } |
Các trường | |
---|---|
ad |
string Mã nhận dạng của quảng cáo của thẻ này. |
ad_break_id |
string Mã điểm chèn quảng cáo của thẻ này. |
type |
string Loại sự kiện của thẻ này. |
AdBreak
Điểm chèn quảng cáo mô tả một điểm chèn quảng cáo trong luồng. Đơn vị quảng cáo này chứa thời lượng, loại (giữa/trước/bài đăng) và số lượng quảng cáo.Biểu diễn dưới dạng JSON |
---|
{ "type": string, "duration": number, "expected_duration": number, "ads": number, } |
Các trường | |
---|---|
type |
string Các loại điểm chèn hợp lệ là: trước, giữa và sau. |
duration |
number Tổng thời lượng quảng cáo cho điểm chèn quảng cáo này (tính bằng giây). |
expected_duration |
number Thời lượng dự kiến của điểm chèn quảng cáo (tính bằng giây), bao gồm tất cả quảng cáo và phương tiện chặn bất kỳ. |
ads |
number Số lượng quảng cáo trong điểm chèn quảng cáo. |
Quảng cáo
Quảng cáo mô tả một quảng cáo trong luồng.Biểu diễn dưới dạng 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), } |
Các trường | |
---|---|
ad_break_id |
string Mã điểm chèn quảng cáo của quảng cáo này. |
position |
number Vị trí của quảng cáo này trong điểm chèn quảng cáo, bắt đầu tại vị trí 1. |
duration |
number Thời lượng của quảng cáo, tính bằng giây. |
title |
string Tiêu đề không bắt buộc của quảng cáo. |
description |
string Nội dung mô tả không bắt buộc về quảng cáo. |
advertiser |
string Giá trị nhận dạng nhà quảng cáo (không bắt buộc). |
ad_system |
string Hệ thống quảng cáo không bắt buộc. |
ad_id |
string Mã quảng cáo không bắt buộc. |
creative_id |
string Mã mẫu quảng cáo không bắt buộc. |
creative_ad_id |
string Mã quảng cáo của mẫu quảng cáo (không bắt buộc). |
deal_id |
string Mã giao dịch không bắt buộc. |
clickthrough_url |
string URL nhấp qua không bắt buộc. |
click_tracking_urls |
string URL theo dõi lượt nhấp (không bắt buộc). |
verifications |
[object(Verification)] Các mục nhập xác minh Đo lường mở (không bắt buộc) liệt kê các tài nguyên và siêu dữ liệu cần thiết để thực thi mã đo lường bên thứ ba nhằm xác minh việc phát mẫu quảng cáo. |
slate |
boolean Giá trị bool không bắt buộc cho biết mục hiện tại là phương tiện chặn. |
icons |
[object(Icon)] Danh sách biểu tượng, sẽ bị bỏ qua nếu trống. |
wrappers |
[object(Wrapper)] Danh sách Trình bao bọc, được bỏ qua nếu trống. |
universal_ad_id |
object(UniversalAdID) Mã quảng cáo chung không bắt buộc. |
extensions |
string Danh sách không bắt buộc về tất cả các nút <Extension> trong VAST. |
companions |
[object(Companion)] Quảng cáo đồng hành không bắt buộc có thể xuất hiện cùng với quảng cáo này. |
interactive_file |
object(InteractiveFile) Mẫu quảng cáo tương tác (SIMID) không bắt buộc phải hiển thị trong khi phát quảng cáo. |
Biểu tượng
Biểu tượng chứa thông tin về Biểu tượng VAST.Biểu diễn dưới dạng 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, } |
Các trường | |
---|---|
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 chứa thông tin về một lượt nhấp vào biểu tượng.Biểu diễn dưới dạng JSON |
---|
{ "url": string, } |
Các trường | |
---|---|
url |
string |
FallbackImage
ReservationImage (Hình ảnh dự phòng) chứa thông tin về hình ảnh dự phòng VAST.Biểu diễn dưới dạng JSON |
---|
{ "creative_type": string, "height": int32, "width": int32, "resource": string, "alt_text": string, } |
Các trường | |
---|---|
creative_type |
string |
height |
int32 |
width |
int32 |
resource |
string |
alt_text |
string |
Wrapper
Trình bao bọc chứa thông tin về quảng cáo bao bọc. Nó không bao gồm ID giao dịch nếu không tồn tại.Biểu diễn dưới dạng JSON |
---|
{ "system": string, "ad_id": string, "creative_id": string, "creative_ad_id": string, "deal_id": string, } |
Các trường | |
---|---|
system |
string Giá trị nhận dạng hệ thống quảng cáo. |
ad_id |
string Mã quảng cáo được dùng cho quảng cáo trình bao bọc. |
creative_id |
string Mã mẫu quảng cáo được dùng cho quảng cáo trình bao bọc. |
creative_ad_id |
string Mã quảng cáo của mẫu quảng cáo được dùng cho quảng cáo bao bọc. |
deal_id |
string Mã giao dịch không bắt buộc cho quảng cáo bao bọc. |
Xác minh
Quy trình xác minh chứa thông tin về tính năng Đo lường mở, giúp tạo điều kiện cho việc đo lường khả năng xem và xác minh của bên thứ ba. Hiện tại, chúng tôi chỉ hỗ trợ tài nguyên JavaScript. Hãy tham khảo tại https://iabtechlab.com/standards/open-measurement-sdk/Biểu diễn dưới dạng JSON |
---|
{ "vendor": string, "java_script_resources": [object(JavaScriptResource)], "tracking_events": [object(TrackingEvent)], "parameters": string, } |
Các trường | |
---|---|
vendor |
string Nhà cung cấp dịch vụ xác minh. |
java_script_resources |
[object(JavaScriptResource)] Danh sách tài nguyên JavaScript để xác minh. |
tracking_events |
[object(TrackingEvent)] Danh sách các sự kiện theo dõi để xác minh. |
parameters |
string Một chuỗi mờ được truyền vào mã xác minh tự khởi động. |
JavaScriptResource
JavaScriptResource chứa thông tin để xác minh qua JavaScript.Biểu diễn dưới dạng JSON |
---|
{ "script_url": string, "api_framework": string, "browser_optional": boolean, } |
Các trường | |
---|---|
script_url |
string URI sang tải trọng javascript. |
api_framework |
string APIFramework là tên của khung video thực thi mã xác minh. |
browser_optional |
boolean Liệu tập lệnh này có thể chạy bên ngoài trình duyệt hay không. |
TrackingEvent
TrackingEvent chứa các URL mà ứng dụng sẽ ping trong một số tình huống nhất định.Biểu diễn dưới dạng JSON |
---|
{ "event": string, "uri": string, } |
Các trường | |
---|---|
event |
string Loại sự kiện theo dõi, hiện tại, tuỳ chọn duy nhất là "verificationNotExecuted" như được chỉ định trong thông số kỹ thuật VAST 4.1. |
uri |
string Sự kiện theo dõi được ping. |
UniversalAdID
UniversalAdID được dùng để cung cấp mã nhận dạng mẫu quảng cáo duy nhất được duy trì trên các hệ thống quảng cáo.Biểu diễn dưới dạng JSON |
---|
{ "id_value": string, "id_registry": string, } |
Các trường | |
---|---|
id_value |
string Mã quảng cáo chung của mẫu quảng cáo được chọn cho quảng cáo. |
id_registry |
string Một chuỗi dùng để xác định URL của trang web đăng ký nơi mã nhận dạng chung của mẫu quảng cáo đã chọn được liệt kê trong danh mục. |
Quảng cáo đồng hành
Quảng cáo đồng hành chứa thông tin về quảng cáo đồng hành có thể hiển thị cùng với quảng cáo.Biểu diễn dưới dạng JSON |
---|
{ "click_data": object(ClickData), "creative_type": string, "height": int32, "width": int32, "resource": string, "type": string, } |
Các trường | |
---|---|
click_data |
object(ClickData) Dữ liệu lượt nhấp cho quảng cáo đồng hành này. |
creative_type |
string Thuộc tính CreativeType trên nút <StaticResource> trong VAST nếu đây là thuộc tính đồng hành của loại tĩnh. |
height |
int32 Chiều cao tính bằng pixel của quảng cáo đồng hành này. |
width |
int32 Chiều rộng tính bằng pixel của quảng cáo đồng hành này. |
resource |
string Đối với quảng cáo đồng hành tĩnh và iframe, đây sẽ là URL được tải và hiển thị. Đối với tệp đồng hành HTML, đây sẽ là đoạn mã HTML sẽ xuất hiện dưới dạng đoạn mã đồng hành. |
type |
string Loại quảng cáo đồng hành này. Đó có thể là tĩnh, iframe hoặc HTML. |
InteractiveFile
InteractiveFile chứa thông tin về mẫu quảng cáo tương tác (tức là SIMID) sẽ xuất hiện trong quá trình phát quảng cáo.Biểu diễn dưới dạng JSON |
---|
{ "resource": string, "type": string, "variable_duration": boolean, "ad_parameters": string, } |
Các trường | |
---|---|
resource |
string URL đến mẫu quảng cáo tương tác. |
type |
string Loại MIME của tệp được cung cấp dưới dạng tài nguyên. |
variable_duration |
boolean Liệu mẫu quảng cáo này có thể yêu cầu gia hạn hay không. |
ad_parameters |
string Giá trị của nút <AdParameters> trong VAST. |