API Chèn quảng cáo động cho phép bạn yêu cầu và theo dõi DAI luồng tuyến tính (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: luồng
| Phương thức | |
|---|---|
stream |
POST /linear/v1/hls/event/{assetKey}/stream
Tạo 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 đề yêu cầu
| Tham số | |
|---|---|
api‑key |
stringKhoá API, được cung cấp khi bạn tạo sự kiện phát trực tiếp, phải hợp lệ 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 bằng định dạng sau: Authorization: DCLKDAI key="<api-key>" |
Tham số đường dẫn
| Tham số | |
|---|---|
assetKey |
stringMã 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 thông số sau:
| Tham số | ||
|---|---|---|
dai-ssb |
Không bắt buộc | Đặt thành |
| Tham số nhắm mục tiêu DFP | Không bắt buộc | Tham số nhắm mục tiêu bổ sung. |
| Ghi đè thông số 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. Đối với luồng 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 Đo lường mở trong
Trường Verifications. Trường này chứa một hoặc nhiều
Các phần tử Verification liệt kê những tài nguyên và siêu dữ liệu cần thiết để thực thi
mã đo lường của bên thứ ba để xác minh việc phát lại mẫu quảng cáo. Chỉ
JavaScriptResource được hỗ trợ. Để biết thêm thông tin, vui lòng xem
Phòng thí nghiệm công nghệ của IAB và
Quy cách 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 của quảng cáo trong khi phát, hãy ngay lập tức yêu cầu bằng media_verification_url có được từ luồng điểm cuối, ở trên. Những yêu cầu này không cần thiết cho tính năng báo hiệu phía máy chủ luồng mà máy chủ bắt đầu xác minh nội dung nghe nhìn.
Các yêu cầu đến điểm cuối media verification không thay đổi giá trị.
| Phương thức | |
|---|---|
media verification |
GET /{media_verification_url}/{ad_media_id}
Thông báo cho API của một 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 Contentnếu xác minh thành công nội dung nghe nhìn và tất cả ping đều được gửi.HTTP/1.1 404 Not Foundnếu yêu cầu không thể xác minh nội dung nghe nhìn do định dạng URL không chính xác hoặc do hết hạn.HTTP/1.1 404 Not Foundnếu yêu cầu xác minh trước đó cho giấy tờ tuỳ thân này thành công.HTTP/1.1 409 Conflictnếu có một yêu cầu khác đang gửi ping vào lúc này.
Mã nội dung nghe nhìn của quảng cáo (HLS)
Giá trị nhận dạng nội dung nghe nhìn của quảng cáo sẽ được mã hoá trong Siêu dữ liệu theo thời gian HLS bằng khoá
TXXX, dành riêng cho "thông tin văn bản do người dùng xác định" khung hình. Chiến lược phát hành đĩa đơn
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 thông tin xác minh quảng cáo URL trước khi thực hiện mỗi 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 sẽ trả về thông tin dùng để tạo quảng cáo
Giao diện người dùng. Không dùng được điểm cuối siêu dữ liệu 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 phiên bản của
PodMetadata.
Cách dùng siêu dữ liệu
Siêu dữ liệu có ba phần riêng biệt: tags, ads và breaks quảng cáo. Mục nhập
trỏ vào dữ liệu là phần tags. Từ đó, hãy lặp lại các thẻ
và tìm mục nhập đầu tiên có tên là tiền tố cho
mã nhận dạng nội dung nghe nhìn của quảng cáo trong luồng video. Ví dụ: bạn
có thể có ID phương tiện quảng cáo như sau:
google_1234567890
Sau đó, bạn sẽ thấy một đối tượng thẻ có tên google_12345. Trong trường hợp này, URL khớp với
id phương tiện quảng cáo. Sau khi tìm thấy đúng đối tượng tiền tố nội dung nghe nhìn quảng cáo, 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ã 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
Luồng
Luồng dùng để hiển thị danh sách tài nguyên cho một luồng mới được tạo trong Đị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,
} |
| Trường | |
|---|---|
stream_id |
stringGiá trị nhận dạng luồng GAM. |
stream_manifest |
stringURL tệp kê khai của luồng, dùng để truy xuất danh sách phát đa biến thể trong HLS hoặc MPD trong DASH. |
hls_master_playlist |
string(KHÔNG DÙNG NỮA) URL của danh sách phát đa biến thể HLS. Sử dụng "stream_manifest" . |
media_verification_url |
stringURL xác minh nội dung nghe nhìn được dùng làm điểm cuối cơ sở để theo dõi các sự kiện phát. |
metadata_url |
stringURL siêu dữ liệu dùng để thăm dò thông tin định kỳ về các sự kiện quảng cáo trong luồng phát sắp tới. |
session_update_url |
stringURL cập nhật của phiên được dùng để cập nhật các thông số nhắm mục tiêu cho luồng này. Các giá trị ban đầu cho các thông số nhắm mục tiêu sẽ được thu thập trong yêu cầu tạo luồng ban đầu. |
polling_frequency |
numberTần suất thăm dò ý kiến (tính bằng giây) khi yêu cầu siêu dữ liệu_url hoặc đẩy nhịp tim_url. |
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ẻ ID 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)],
} |
| Trường | |
|---|---|
tags |
map[string, object(TagSegment)]Bản đồ của 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 mà mã quảng cáo đã lập chỉ mục. |
ad_breaks |
map[string, object(AdBreak)]Sơ đồ đ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
Tag Segment chứa thông tin tham chiếu đến một quảng cáo, điểm chèn quảng cáo và loại sự kiện. Phân đoạn thẻ với type="progress" không được ping đến phương tiện quảng cáo điểm cuối xác minh.| Biểu diễn dưới dạng JSON |
|---|
{ "ad": string, "ad_break_id": string, "type": string, } |
| Trường | |
|---|---|
ad |
stringMã quảng cáo của thẻ này. |
ad_break_id |
stringMã điểm chèn quảng cáo của thẻ này. |
type |
stringLoại sự kiện của thẻ này. |
AdBreak
AdBreak mô tả một điểm chèn quảng cáo duy nhất trong luồng. Thông số này có một thời lượng, loại (giữa/trước/sau) 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, } |
| Trường | |
|---|---|
type |
stringCác loại điểm chèn hợp lệ là: trước, giữa và sau. |
duration |
numberTổ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 |
numberThờ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à bất kỳ phương tiện chặn nào. |
ads |
numberSố 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),
} |
| Trường | |
|---|---|
ad_break_id |
stringMã điểm chèn quảng cáo của quảng cáo này. |
position |
numberVị trí của quảng cáo này trong điểm chèn quảng cáo, bắt đầu từ 1. |
duration |
numberThời lượng quảng cáo, tính bằng giây. |
title |
stringTiêu đề không bắt buộc của quảng cáo. |
description |
stringNội dung mô tả (không bắt buộc) của quảng cáo. |
advertiser |
stringMã nhận dạng nhà quảng cáo (không bắt buộc). |
ad_system |
stringHệ thống quảng cáo không bắt buộc. |
ad_id |
stringMã quảng cáo không bắt buộc. |
creative_id |
stringMã mẫu quảng cáo không bắt buộc. |
creative_ad_id |
stringMã quảng cáo của mẫu quảng cáo không bắt buộc. |
deal_id |
stringMã giao dịch không bắt buộc. |
clickthrough_url |
stringURL của trang đích khi nhấp (không bắt buộc). |
click_tracking_urls |
stringURL 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 tiêu chuẩn Đ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 của bên thứ ba nhằm xác minh phát mẫu quảng cáo. |
slate |
booleanBool không bắt buộc cho biết mục nhập 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, bỏ qua nếu trống. |
universal_ad_id |
object(UniversalAdID)Mã quảng cáo chung không bắt buộc. |
extensions |
stringDanh sách không bắt buộc của tất cả <Extension> nút 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 không bắt buộc (SIMID) sẽ 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ề một 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, } |
| 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ề lượt nhấp vào biểu tượng.| Biểu diễn dưới dạng JSON |
|---|
{
"url": string,
} |
| Trường | |
|---|---|
url |
string |
FallbackImage
FallbackImage 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, } |
| 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ề một quảng cáo trình bao bọc. Không bao gồm Mã 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,
} |
| Trường | |
|---|---|
system |
stringGiá trị nhận dạng hệ thống quảng cáo. |
ad_id |
stringMã quảng cáo dùng cho quảng cáo trình bao bọc. |
creative_id |
stringMã mẫu quảng cáo dùng cho quảng cáo trình bao bọc. |
creative_ad_id |
stringMã quảng cáo mẫu quảng cáo dùng cho quảng cáo trình bao bọc. |
deal_id |
stringMã giao dịch không bắt buộc cho quảng cáo trình 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ở, hỗ trợ đo lường xác minh và khả năng xem của bên thứ ba. Hiện tại, chúng tôi chỉ hỗ trợ các 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,
} |
| Trường | |
|---|---|
vendor |
stringNhà cung cấp dịch vụ xác minh. |
java_script_resources |
[object(JavaScriptResource)]Danh sách các 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 |
stringMột chuỗi mờ được truyền đến 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,
} |
| Trường | |
|---|---|
script_url |
stringURI đến tải trọng JavaScript. |
api_framework |
stringAPIFramework là tên của khung video thực hiện mã xác minh. |
browser_optional |
booleanLiệu tập lệnh này có thể chạy bên ngoài một . |
TrackingEvent
TrackingEvent chứa các URL cần được khách hàng ping trong một số ngoại lệ.| Biểu diễn dưới dạng JSON |
|---|
{
"event": string,
"uri": string,
} |
| Trường | |
|---|---|
event |
stringLoại sự kiện theo dõi. |
uri |
stringSự kiện theo dõi cần được ping. |
UniversalAdID
UniversalAdID dùng để cung cấp một giá trị nhận dạng mẫu quảng cáo duy nhất 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, } |
| Trường | |
|---|---|
id_value |
stringMã quảng cáo chung của mẫu quảng cáo đã chọn cho quảng cáo. |
id_registry |
stringMột chuỗi được dùng để xác định URL cho trang web của sổ đăng ký nơi mã quảng cáo toàn cầu của mẫu quảng cáo đã chọn đã được lập danh mục. |
Companion
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, "ad_slot_id": string, "api_framework": string, "tracking_events": [object(TrackingEvent)], } |
| Trường | |
|---|---|
click_data |
object(ClickData)Dữ liệu về lượt nhấp cho quảng cáo đồng hành này. |
creative_type |
stringThuộc tính CreativeType trên <StaticResource> nút trong VAST nếu đây là tệp đồng hành thuộc loại tĩnh. |
height |
int32Chiều cao tính bằng pixel của quảng cáo đồng hành này. |
width |
int32Chiề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ần được tải và được hiển thị. Đối với quảng cáo đồng hành HTML, đây sẽ là đoạn mã HTML nên sẽ xuất hiện dưới dạng đồng hành. |
type |
stringLoại của quảng cáo đồng hành này. Đó có thể là tĩnh, iframe hoặc HTML. |
ad_slot_id |
stringMã vị trí cho quảng cáo đồng hành này. |
api_framework |
stringKhung API cho đồng hành này. |
tracking_events |
[object(TrackingEvent)]Danh sách các sự kiện theo dõi cho quảng cáo đồng hành này. |
InteractiveFile
InteractiveFile chứa thông tin cho quảng cáo tương tác (ví dụ: SIMID) sẽ được hiển thị trong khi phát lại quảng cáo.| Biểu diễn dưới dạng JSON |
|---|
{ "resource": string, "type": string, "variable_duration": boolean, "ad_parameters": string, } |
| Trường | |
|---|---|
resource |
stringURL đến mẫu quảng cáo tương tác. |
type |
stringLoại MIME của tệp được cung cấp dưới dạng tài nguyên. |
variable_duration |
booleanLiệu mẫu quảng cáo này có thể yêu cầu kéo dài thời lượng hay không. |
ad_parameters |
stringGiá trị của <AdParameters> nút trong VAST. |