LiveBroadcasts

API hiện hỗ trợ khả năng đánh dấu chương trình phát sóng trực tiếp là "dành cho trẻ em", đồng thời tài nguyên liveBroadcast hiện chứa một thuộc tính xác định trạng thái "dành cho trẻ em" của chương trình phát sóng trực tiếp đó. Điều khoản dịch vụ của Dịch vụ API YouTube và Chính sách dành cho nhà phát triển cũng được cập nhật vào ngày 10 tháng 1 năm 2020. Để biết thêm thông tin, hãy xem nhật ký sửa đổi của Dịch vụ API Phát trực tiếp trên YouTubeĐiều khoản dịch vụ của Các dịch vụ API YouTube.

Tài nguyên liveBroadcast đại diện cho một sự kiện sẽ được phát trực tiếp bằng video trực tiếp trên YouTube.

Phương thức

API này hỗ trợ các phương thức sau cho tài nguyên liveBroadcasts:

list
Trả về danh sách các chương trình phát sóng trên YouTube khớp với các tham số yêu cầu API. Thử ngay.
chèn
Tạo một chương trình phát sóng. Thử ngay.
update
Cập nhật thông tin về một chương trình phát sóng. Ví dụ: bạn có thể sửa đổi các chế độ cài đặt truyền tin được xác định trong đối tượng contentDetails của tài nguyên liveBroadcast. Thử ngay.
xóa
Xoá một chương trình phát sóng. Thử ngay.
bind
Liên kết một chương trình phát sóng trên YouTube với một luồng phát hoặc xoá mối liên kết hiện có giữa một chương trình phát sóng và một luồng phát. Một chương trình phát sóng chỉ có thể được liên kết với một luồng video, mặc dù một luồng video có thể được liên kết với nhiều chương trình phát sóng. Thử ngay.
transition
Thay đổi trạng thái của một sự kiện phát sóng trực tiếp trên YouTube và bắt đầu mọi quy trình liên quan đến trạng thái mới. Ví dụ: khi bạn chuyển trạng thái của một chương trình phát sóng sang testing, YouTube sẽ bắt đầu truyền video đến luồng giám sát của chương trình phát sóng đó. Trước khi gọi phương thức này, bạn nên xác nhận rằng giá trị của thuộc tính status.streamStatus cho luồng được liên kết với chương trình phát sóng của bạn là active. Thử ngay.
cuepoint
Chèn điểm đánh dấu vào một chương trình phát sóng trực tiếp. Điểm đánh dấu có thể kích hoạt điểm chèn quảng cáo.

Cách trình bày tài nguyên

Cấu trúc JSON sau đây cho thấy định dạng của tài nguyên liveBroadcasts:

{
  "kind": "youtube#liveBroadcast",
  "etag": etag,
  "id": string,
  "snippet": {
    "publishedAt": datetime,
    "channelId": string,
    "title": string,
    "description": string,
    "thumbnails": {
      (key): {
        "url": string,
        "width": unsigned integer,
        "height": unsigned integer
      }
    },
    "scheduledStartTime": datetime,
    "scheduledEndTime": datetime,
    "actualStartTime": datetime,
    "actualEndTime": datetime,
    "isDefaultBroadcast": boolean,
    "liveChatId": string
  },
  "status": {
    "lifeCycleStatus": string,
    "privacyStatus": string,
    "recordingStatus": string,
    "madeForKids": string,
    "selfDeclaredMadeForKids": string,
  },
  "contentDetails": {
    "boundStreamId": string,
    "boundStreamLastUpdateTimeMs": datetime,
    "monitorStream": {
      "enableMonitorStream": boolean,
      "broadcastStreamDelayMs": unsigned integer,
      "embedHtml": string
    },
    "enableEmbed": boolean,
    "enableDvr": boolean,
    "recordFromStart": boolean,
    "enableClosedCaptions": boolean,
    "closedCaptionsType": string,
    "projection": string,
    "enableLowLatency": boolean,
    "latencyPreference": boolean,
    "enableAutoStart": boolean,
    "enableAutoStop": boolean,
    "availabilityConfig": {
      "globalConfig": {
        "excludedRegionCodes": [
          string
        ],
        "interval": {
          "startTime": datetime,
          "endTime": datetime
        }
      },
      "regionsConfig": {
        "regionIntervals": [
          {
            "regionCode": string,
            "interval": {
              "startTime": datetime,
              "endTime": datetime
            }
          }
        ]
      }
    }
  },
  "statistics": {
    "totalChatCount": unsigned long
  },
  "monetizationDetails": {
    "adsMonetizationStatus": string,
    "eligibleForAdsMonetization": boolean,
    "cuepointSchedule": {
      "enabled": boolean,
      "pauseAdsUntil": datetime,
      "ytOptimizedCuepointConfig": string,
      "creatorCuepointConfig": {
        "scheduleStrategy": string,
        "repeatIntervalSecs": unsigned integer
      }
    }
  }
}

Thuộc tính

Bảng sau đây xác định các thuộc tính xuất hiện trong tài nguyên này:

Thuộc tính
kind string
Xác định loại tài nguyên API. Giá trị sẽ là youtube#liveBroadcast.
etag etag
Etag của tài nguyên này.
id string
Mã nhận dạng duy nhất mà YouTube chỉ định cho chương trình phát sóng.
snippet object
Đối tượng snippet chứa thông tin cơ bản về sự kiện, bao gồm tiêu đề, nội dung mô tả, thời gian bắt đầu và thời gian kết thúc.
snippet.publishedAt datetime
Ngày và giờ sự kiện phát sóng được thêm vào lịch phát sóng trực tiếp của YouTube. Giá trị được chỉ định ở định dạng ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ).
snippet.channelId string
Mã nhận dạng mà YouTube dùng để xác định riêng biệt kênh phát sóng.
snippet.title string
Tiêu đề của chương trình phát sóng. Xin lưu ý rằng chương trình phát sóng này chỉ đại diện cho một video trên YouTube. Bạn có thể đặt trường này bằng cách sửa đổi tài nguyên chương trình phát sóng hoặc bằng cách đặt trường title của tài nguyên video tương ứng.
snippet.description string
Nội dung mô tả của chương trình phát sóng. Tương tự như title, bạn có thể đặt trường này bằng cách sửa đổi tài nguyên broadcast hoặc bằng cách đặt trường description của tài nguyên video tương ứng.
snippet.thumbnails object
Một bản đồ gồm các hình thu nhỏ liên kết với chương trình phát sóng. Đối với mỗi đối tượng lồng nhau trong đối tượng này, khoá là tên của hình thu nhỏ và giá trị là một đối tượng chứa thông tin khác về hình thu nhỏ.
snippet.thumbnails.(key) object
Các giá trị khoá hợp lệ là:
  • default – Hình thu nhỏ mặc định. Hình thu nhỏ mặc định cho một video (hoặc một tài nguyên đề cập đến video, chẳng hạn như mục trong danh sách phát hoặc kết quả tìm kiếm) có chiều rộng 120 pixel và chiều cao 90 pixel. Hình thu nhỏ mặc định của kênh có kích thước rộng 88 pixel và cao 88 pixel.
  • medium – Phiên bản có độ phân giải cao hơn của hình thu nhỏ. Đối với video (hoặc tài nguyên đề cập đến video), hình ảnh này có chiều rộng 320 px và chiều cao 180 px. Đối với kênh, hình ảnh này có chiều rộng 240 px và chiều cao 240 px.
  • high – Phiên bản có độ phân giải cao của hình thu nhỏ. Đối với video (hoặc tài nguyên đề cập đến video), hình ảnh này có chiều rộng 480 pixel và chiều cao 360 pixel. Đối với kênh, hình ảnh này có chiều rộng 800px và chiều cao 800px.
snippet.thumbnails.(key).url string
URL của hình ảnh.
snippet.thumbnails.(key).width unsigned integer
Chiều rộng của hình ảnh.
snippet.thumbnails.(key).height unsigned integer
Chiều cao của hình ảnh.
snippet.scheduledStartTime datetime
Ngày và giờ dự kiến bắt đầu chương trình phát sóng. Giá trị được chỉ định ở định dạng ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ). Creator Studio hỗ trợ tính năng tạo chương trình phát sóng mà không cần lên lịch thời gian bắt đầu. Trong trường hợp này, chương trình phát sóng sẽ bắt đầu bất cứ khi nào chủ sở hữu kênh bắt đầu phát trực tiếp. Đối với những chương trình phát sóng này, giá trị datetime tương ứng với thời gian bắt đầu của kỷ nguyên Unix và bạn không thể thay đổi giá trị này bằng API hoặc trong Creator Studio.
snippet.scheduledEndTime datetime
Ngày và giờ dự kiến kết thúc chương trình phát sóng. Giá trị được chỉ định ở định dạng ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ). Nếu tài nguyên liveBroadcast không chỉ định giá trị cho thuộc tính này, thì chương trình phát sóng sẽ được lên lịch để tiếp tục vô thời hạn. Tương tự, nếu bạn không chỉ định giá trị cho thuộc tính này, thì YouTube sẽ coi sự kiện phát sóng đó là diễn ra vô thời hạn.
snippet.actualStartTime datetime
Ngày và giờ mà chương trình phát sóng thực sự bắt đầu. Thông tin này chỉ có khi trạng thái của chương trình phát sóng là live. Giá trị được chỉ định ở định dạng ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ).
snippet.actualEndTime datetime
Ngày và giờ mà chương trình phát sóng thực sự kết thúc. Thông tin này chỉ có khi trạng thái của chương trình phát sóng là complete. Giá trị được chỉ định ở định dạng ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ).
snippet.isDefaultBroadcast boolean
Thuộc tính này sẽ không được dùng nữa kể từ ngày 1 tháng 9 năm 2020. Vào thời điểm đó, YouTube sẽ ngừng tạo luồng phát và chương trình phát sóng mặc định khi một kênh được bật tính năng phát trực tiếp. Hãy xem thông báo về việc không dùng nữa để biết thêm thông tin chi tiết.
Thuộc tính này cho biết liệu chương trình phát sóng này có phải là chương trình phát sóng mặc định hay không.

Cách hoạt động của chương trình phát sóng mặc định

Khi một kênh YouTube được bật tính năng phát trực tiếp, YouTube sẽ tạo một luồng phát mặc định và một chương trình phát sóng mặc định cho kênh đó. Luồng phát xác định cách chủ sở hữu kênh gửi video trực tiếp đến YouTube, còn chương trình phát sóng là cách người xem có thể xem luồng phát mặc định. Chủ sở hữu kênh có thể sử dụng phương thức liveStreams.listliveBroadcasts.list để xác định các tài nguyên này.

Khi một kênh bắt đầu phát trực tuyến video đến luồng phát mặc định, video đó sẽ xuất hiện trên chương trình phát sóng mặc định của kênh. Khi luồng phát kết thúc, YouTube sẽ chuyển đổi luồng phát đã hoàn tất thành một video trên YouTube và chỉ định cho video đó một mã nhận dạng video trên YouTube.

Sau khi quá trình chuyển đổi hoàn tất, video đó sẽ xuất hiện trong danh sách video đã tải lên của kênh. Video không có sẵn ngay sau khi sự kiện phát sóng kết thúc và thời gian trễ liên quan đến thời lượng thực tế của sự kiện phát sóng.
snippet.liveChatId string
Mã nhận dạng của cuộc trò chuyện trực tiếp trên YouTube trong sự kiện phát sóng. Với mã nhận dạng này, bạn có thể sử dụng các phương thức của tài nguyên liveChatMessage để truy xuất, chèn hoặc xoá tin nhắn trò chuyện. Bạn cũng có thể thêm hoặc xoá người kiểm duyệt cuộc trò chuyện, cấm người dùng tham gia cuộc trò chuyện trực tiếp hoặc xoá lệnh cấm hiện có.
status object
Đối tượng status chứa thông tin về trạng thái của sự kiện.
status.lifeCycleStatus string
Trạng thái của chương trình phát sóng. Bạn có thể cập nhật trạng thái bằng phương thức liveBroadcasts.transition của API.

Các giá trị hợp lệ cho thuộc tính này là:
  • complete – Chương trình phát sóng đã kết thúc.
  • created – Chế độ cài đặt của chương trình phát sóng chưa hoàn chỉnh, nên chưa sẵn sàng chuyển sang trạng thái live hoặc testing, nhưng chương trình đã được tạo và hợp lệ.
  • live – Chương trình phát sóng đang diễn ra.
  • liveStarting – Chương trình phát sóng đang trong quá trình chuyển sang trạng thái live.
  • ready – Chế độ cài đặt chương trình phát sóng đã hoàn tất và chương trình phát sóng có thể chuyển sang trạng thái live hoặc testing.
  • revoked – Quản trị viên đã xoá chương trình phát sóng này.
  • testStarting – Chương trình phát sóng đang trong quá trình chuyển sang trạng thái testing.
  • testing – Chỉ đối tác mới xem được chương trình phát sóng.
status.privacyStatus string
Trạng thái riêng tư của chương trình phát sóng. Xin lưu ý rằng chương trình phát sóng này chỉ đại diện cho một video trên YouTube, vì vậy, chế độ cài đặt quyền riêng tư sẽ giống với chế độ cài đặt được hỗ trợ cho video. Ngoài ra, bạn có thể đặt trường này bằng cách sửa đổi tài nguyên phát sóng hoặc bằng cách đặt trường privacyStatus của tài nguyên video tương ứng.

Các giá trị hợp lệ cho thuộc tính này là:
  • private
  • public
  • unlisted
status.recordingStatus string
Trạng thái ghi hình của chương trình phát sóng.

Các giá trị hợp lệ cho thuộc tính này là:
  • notRecording
  • recorded
  • recording
status.madeForKids boolean
Giá trị này cho biết liệu chương trình phát sóng có được chỉ định là hướng đến trẻ em hay không. Giá trị thuộc tính này chỉ đọc.
status.selfDeclaredMadeForKids boolean
Trong yêu cầu liveBroadcasts.insert, thuộc tính này cho phép chủ sở hữu kênh chỉ định chương trình phát sóng là hướng đến trẻ em. Trong yêu cầu liveBroadcasts.list, giá trị thuộc tính chỉ được trả về nếu chủ sở hữu kênh cho phép yêu cầu API.
contentDetails object
Đối tượng contentDetails chứa thông tin về nội dung video của sự kiện, chẳng hạn như nội dung có thể xuất hiện trong trình phát video được nhúng hay không, hoặc nội dung sẽ được lưu trữ và do đó có thể xem sau khi sự kiện kết thúc.
contentDetails.boundStreamId string
Giá trị này xác định duy nhất live stream được liên kết với chương trình phát sóng.
contentDetails.boundStreamLastUpdateTimeMs datetime
Ngày và giờ mà sự kiện phát trực tiếp được boundStreamId tham chiếu được cập nhật lần gần đây nhất.
contentDetails.monitorStream object
Đối tượng monitorStream chứa thông tin về luồng giám sát mà đài truyền hình có thể dùng để xem xét nội dung sự kiện trước khi luồng phát sóng được hiển thị công khai.
contentDetails.monitorStream.enableMonitorStream boolean
Giá trị này xác định xem luồng giám sát có được bật cho chương trình phát sóng hay không. Nếu chế độ phát sóng giám sát được bật, thì YouTube sẽ phát sóng nội dung sự kiện trên một luồng phát đặc biệt chỉ dành cho nhà phát sóng. Đài truyền hình có thể sử dụng luồng này để xem xét nội dung sự kiện và xác định thời điểm tối ưu để chèn điểm báo.

Bạn cần đặt giá trị này thành true nếu dự định có một giai đoạn testing cho sự kiện phát sóng hoặc nếu muốn có độ trễ phát sóng cho sự kiện. Ngoài ra, nếu giá trị của thuộc tính này là true, thì bạn phải chuyển chương trình phát sóng sang trạng thái testing trước khi có thể chuyển chương trình đó sang trạng thái live. (Nếu giá trị của thuộc tính là false, chương trình phát sóng của bạn không thể có giai đoạn testing, vì vậy, bạn có thể chuyển chương trình phát sóng trực tiếp sang trạng thái live.)

Khi bạn update a broadcast, bạn phải đặt thuộc tính này nếu yêu cầu API của bạn bao gồm phần contentDetails trong giá trị tham số part. Tuy nhiên, khi bạn insert a broadcast, thuộc tính này là không bắt buộc và có giá trị mặc định là true.

Lưu ý quan trọng: Bạn không thể cập nhật thuộc tính này khi chương trình phát sóng ở trạng thái testing hoặc live.
contentDetails.monitorStream.broadcastStreamDelayMs unsigned integer
Nếu bạn đã đặt thuộc tính enableMonitorStream thành true, thì thuộc tính này sẽ xác định độ dài của độ trễ phát sóng trực tiếp.

Khi bạn update a broadcast, bạn phải đặt thuộc tính này nếu yêu cầu API của bạn bao gồm phần contentDetails trong giá trị tham số part. Tuy nhiên, khi bạn insert a broadcast, thuộc tính này là không bắt buộc và có giá trị mặc định là 0. Giá trị này cho biết chương trình phát sóng không có độ trễ phát sóng. Lưu ý: Bạn không thể cập nhật thuộc tính này khi chương trình phát sóng ở trạng thái testing hoặc live.
contentDetails.monitorStream.embedHtml string
Mã HTML nhúng một trình phát phát luồng màn hình.
contentDetails.enableEmbed boolean
Chế độ cài đặt này cho biết liệu video phát sóng có thể phát trong trình phát được nhúng hay không. Nếu bạn chọn lưu trữ video (bằng cách sử dụng thuộc tính enableArchive), chế độ cài đặt này cũng sẽ áp dụng cho video đã lưu trữ.

Khi bạn update a broadcast, bạn phải đặt thuộc tính này nếu yêu cầu API của bạn bao gồm phần contentDetails trong giá trị tham số part. Tuy nhiên, khi bạn insert a broadcast, thuộc tính này là không bắt buộc và có giá trị mặc định là true.

Lưu ý: Bạn không thể cập nhật thuộc tính này sau khi chương trình phát sóng ở trạng thái testing hoặc live.
contentDetails.enableDvr boolean
Chế độ cài đặt này xác định xem người xem có thể sử dụng các nút điều khiển DVR trong khi xem video hay không. Các nút điều khiển DVR cho phép người xem kiểm soát trải nghiệm phát video bằng cách tạm dừng, tua lại hoặc tua đi nội dung. Giá trị mặc định của thuộc tính này là true.

Khi bạn update a broadcast, bạn phải đặt thuộc tính này nếu yêu cầu API của bạn bao gồm phần contentDetails trong giá trị tham số part. Tuy nhiên, khi bạn insert a broadcast, thuộc tính này là không bắt buộc và có giá trị mặc định là true.

Quan trọng: Bạn phải đặt giá trị thành true và đặt giá trị của thuộc tính enableArchive thành true nếu muốn phát ngay sau khi chương trình phát sóng kết thúc. Ngoài ra, bạn không thể cập nhật thuộc tính này sau khi chương trình phát sóng ở trạng thái testing hoặc live.
contentDetails.recordFromStart boolean
Chế độ cài đặt này cho biết liệu YouTube có tự động bắt đầu ghi hình chương trình phát sóng sau khi trạng thái của sự kiện thay đổi thành đang phát trực tiếp hay không.

Giá trị mặc định của thuộc tính này là true và bạn chỉ có thể đặt thành false nếu kênh phát sóng được phép tắt tính năng ghi hình cho chương trình phát sóng trực tiếp.

Nếu kênh của bạn không có quyền tắt tính năng ghi hình và bạn cố gắng chèn một chương trình phát sóng có thuộc tính recordFromStart được đặt thành false, thì API sẽ trả về lỗi Forbidden. Ngoài ra, nếu kênh của bạn không có quyền đó và bạn cố gắng cập nhật một chương trình phát sóng để đặt thuộc tính recordFromStart thành false, thì API sẽ trả về lỗi modificationNotAllowed.

Khi bạn update a broadcast, bạn phải đặt thuộc tính này nếu yêu cầu API của bạn bao gồm phần contentDetails trong giá trị tham số part. Tuy nhiên, khi bạn insert a broadcast, thuộc tính này là không bắt buộc và có giá trị mặc định là true.

Lưu ý quan trọng: Bạn cũng phải đặt giá trị của thuộc tính enableDvr thành true nếu muốn có thể phát ngay sau khi chương trình phát sóng kết thúc. Nếu bạn đặt giá trị của thuộc tính này thành true nhưng không đặt thuộc tính enableDvr thành true, thì có thể sẽ mất khoảng một ngày trước khi video lưu trữ có thể phát.

Lưu ý: Bạn không thể cập nhật thuộc tính này sau khi chương trình phát sóng ở trạng thái testing hoặc live.
contentDetails.enableClosedCaptions boolean
Thuộc tính này không được dùng nữa kể từ ngày 17 tháng 12 năm 2015. Thay vào đó, hãy sử dụng thuộc tính contentDetails.closedCaptionsType.

Chế độ cài đặt này cho biết liệu phụ đề HTTP POST có được bật cho chương trình phát sóng này hay không. Đối với những ứng dụng API đang sử dụng tài sản này:
  • Đặt giá trị thuộc tính thành true tương đương với việc đặt thuộc tính contentDetails.closedCaptionsType thành closedCaptionsHttpPost.
  • Đặt giá trị thuộc tính thành false tương đương với việc đặt thuộc tính contentDetails.closedCaptionsType thành closedCaptionsDisabled.
contentDetails.closedCaptionsType string
Lưu ý: Thuộc tính này thay thế thuộc tính contentDetails.enableClosedCaptions.

Thuộc tính này cho biết liệu bạn có bật phụ đề cho chương trình phát sóng hay không và nếu có thì bạn đang cung cấp loại phụ đề nào:
  • closedCaptionsDisabled: Phụ đề bị tắt đối với chương trình phát sóng trực tiếp.
  • closedCaptionsHttpPost: Bạn sẽ gửi phụ đề bằng HTTP POST đến một URL tiếp nhận được liên kết với sự kiện phát trực tiếp của bạn.
  • closedCaptionsEmbedded: Phụ đề sẽ được mã hoá trong luồng video bằng định dạng EIA-608 và/hoặc CEA-708.
contentDetails.projection string
Định dạng chiếu của chương trình phát sóng này. Giá trị mặc định của thuộc tính là rectangular.

Các giá trị hợp lệ cho thuộc tính này là:
  • 360
  • rectangular
contentDetails.enableLowLatency boolean
Cho biết liệu chương trình phát sóng này có cần được mã hoá để phát trực tiếp có độ trễ thấp hay không. Luồng có độ trễ thấp có thể giảm thời gian hiển thị video cho người dùng xem chương trình phát sóng, mặc dù điều này cũng có thể ảnh hưởng đến độ phân giải cho người xem luồng phát.
contentDetails.latencyPreference string
Cho biết chế độ cài đặt độ trễ nào sẽ được dùng cho chương trình phát sóng này. Bạn có thể dùng thuộc tính này thay cho enableLowLatency. Thuộc tính này không hỗ trợ ultraLow.

Sự kiện phát trực tiếp có độ trễ thấp có thể giảm thời gian người dùng nhìn thấy video khi xem một chương trình phát sóng, mặc dù điều này cũng có thể ảnh hưởng đến độ mượt của quá trình phát.

Sự kiện phát trực tiếp có độ trễ thấp nhất giúp giảm thêm thời gian người xem nhìn thấy video, giúp người xem tương tác dễ dàng hơn, nhưng độ trễ thấp nhất không hỗ trợ phụ đề hoặc độ phân giải cao hơn 1080p.

Các giá trị hợp lệ cho thuộc tính này là:
  • normal
  • low
  • ultraLow
contentDetails.enableAutoStart boolean
Cho biết liệu chương trình phát sóng này có tự động bắt đầu khi bạn bắt đầu phát trực tiếp video trên live stream được liên kết hay không.
contentDetails.enableAutoStop boolean
Cho biết liệu sự kiện phát sóng này có tự động dừng sau khoảng một phút kể từ khi chủ sở hữu kênh dừng phát video trên luồng video được liên kết hay không.
contentDetails.availabilityConfig object
Cấu hình về phạm vi cung cấp của chương trình phát sóng. Dùng để đặt tình trạng còn hàng theo khu vực cụ thể hoặc chặn các khu vực cụ thể. Đây là một lựa chọn không bắt buộc. Nếu bạn không đặt, thì chính sách này sẽ không được thực thi.
contentDetails.availabilityConfig.globalConfig object
Cấu hình phạm vi cung cấp toàn cầu của chương trình phát sóng. Video này có ở tất cả các khu vực, ngoại trừ những khu vực được chỉ định trong danh sách excludedRegionCodes.
contentDetails.availabilityConfig.globalConfig.excludedRegionCodes list (string)
Danh sách các khu vực nơi video bị chặn.
contentDetails.availabilityConfig.globalConfig.interval object
Khoảng thời gian mặc định mà video được cung cấp ở tất cả các khu vực không bị chặn. Lưu ý: Thuộc tính này không được hỗ trợ cho sự kiện phát sóng trực tiếp sắp diễn ra hoặc đang diễn ra.
contentDetails.availabilityConfig.globalConfig.interval.startTime datetime
Ngày và giờ video xuất hiện. Nếu bạn không chỉ định, thì video đã có sẵn. Giá trị được chỉ định ở định dạng ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ).
contentDetails.availabilityConfig.globalConfig.interval.endTime datetime
Ngày và giờ video ngừng hoạt động. Nếu bạn không chỉ định, video sẽ có hiệu lực vĩnh viễn. Thời gian bắt đầu và kết thúc đã chỉ định không được cách đây quá 5 năm. Giá trị được chỉ định ở định dạng ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ).
contentDetails.availabilityConfig.regionsConfig object
Cấu hình phạm vi cung cấp chương trình phát sóng theo khu vực. Video này chỉ phát được ở các khu vực được chỉ định.
contentDetails.availabilityConfig.regionsConfig.regionIntervals list (object)
Danh sách các khu vực và khoảng thời gian mà video có sẵn. Nếu bạn chỉ định một khu vực nhiều lần, thì hệ thống sẽ sử dụng hợp của tất cả các khoảng.
contentDetails.availabilityConfig.regionsConfig.regionIntervals.regionCode string
Khu vực mà video được cung cấp.
contentDetails.availabilityConfig.regionsConfig.regionIntervals.interval object
Khung thời gian mà video có sẵn cho khu vực được chỉ định. Lưu ý: Thuộc tính này không được hỗ trợ cho sự kiện phát sóng trực tiếp sắp diễn ra hoặc đang diễn ra.
contentDetails.availabilityConfig.regionsConfig.regionIntervals.interval.startTime datetime
Ngày và giờ video được cung cấp ở khu vực được chỉ định. Nếu bạn không chỉ định, thì video đã có sẵn. Giá trị được chỉ định ở định dạng ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ).
contentDetails.availabilityConfig.regionsConfig.regionIntervals.interval.endTime datetime
Ngày và giờ video ngừng được cung cấp ở khu vực đã chỉ định. Nếu bạn không chỉ định, video sẽ có hiệu lực vĩnh viễn. Thời gian bắt đầu và kết thúc đã chỉ định không được cách đây quá 5 năm. Giá trị được chỉ định ở định dạng ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ).
statistics object
Đối tượng statistics chứa số liệu thống kê liên quan đến một chương trình phát sóng trực tiếp. Các giá trị của những số liệu thống kê này có thể thay đổi trong quá trình phát sóng và bạn chỉ có thể truy xuất các giá trị này khi chương trình đang phát sóng.
statistics.totalChatCount unsigned long
Tổng số tin nhắn trong cuộc trò chuyện trực tiếp liên quan đến chương trình phát sóng. Thuộc tính và giá trị của thuộc tính này sẽ xuất hiện nếu người dùng nhìn thấy chương trình phát sóng, chương trình đó có tính năng trò chuyện trực tiếp và có ít nhất một tin nhắn. Xin lưu ý rằng thuộc tính này sẽ không chỉ định giá trị sau khi chương trình phát sóng kết thúc. Do đó, thuộc tính này sẽ không xác định số lượng tin nhắn trò chuyện cho một video lưu trữ của một sự kiện phát sóng trực tiếp đã hoàn tất.
monetizationDetails object
Đối tượng monetizationDetails chứa thông tin về các thông tin chi tiết về việc kiếm tiền của luồng phát, chẳng hạn như liệu trình chạy quảng cáo tự động có được bật hay không hoặc liệu việc chèn quảng cáo trong video có bị trì hoãn hay không.

monetizationDetails.adsMonetizationStatus string
Thuộc tính này cho biết liệu một chương trình phát sóng video có bật quảng cáo trong video hay không. Các giá trị hợp lệ là onoff.
monetizationDetails.eligibleForAdsMonetization string
Thuộc tính này cho biết liệu một chương trình phát sóng video có đủ điều kiện chạy quảng cáo trong video hay không. Có nhiều lý do khiến một chương trình phát sóng không đủ điều kiện, chẳng hạn như có đơn khiếu kiện hiện tại hoặc kênh chưa được thiết lập để kiếm tiền.
monetizationDetails.cuepointSchedule object
Đối tượng cuepointSchedule chỉ định chế độ cài đặt tự động đặt quảng cáo cho chương trình phát sóng.
monetizationDetails.cuepointSchedule.enabled boolean
Giá trị này xác định xem quảng cáo có được tự động chèn vào chương trình phát sóng hay không. Nếu giá trị là true, YouTube sẽ tự động chèn quảng cáo trong video vào chương trình phát sóng. Lịch biểu chạy quảng cáo sẽ được xác định bằng giá trị của các trường khác trong đối tượng monetizationDetails.cuepointSchedule.
monetizationDetails.cuepointSchedule.pauseAdsUntil datetime
Giá trị này chỉ định rằng YouTube không được chèn quảng cáo trong video vào chương trình phát sóng cho đến ngày và giờ đã chỉ định. Giá trị được chỉ định ở định dạng ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ). Bạn phải đặt giá trị thành một ngày giờ trong tương lai để tạm dừng quảng cáo; bạn cũng có thể đặt giá trị trường thành một ngày giờ trong quá khứ hoặc một giá trị trống để tiếp tục quảng cáo.
monetizationDetails.cuepointSchedule.ytOptimizedCuepointConfig string
Trường này chỉ định lựa chọn đã chọn cho các điểm đánh dấu quảng cáo được chèn tự động. Trường này có thể chỉ định một trong ba chế độ sau:
  • LOW: Tiềm năng kiếm thu nhập thấp hơn, trải nghiệm xem ít gián đoạn hơn
  • MEDIUM: Tiềm năng kiếm thu nhập ở mức trung bình, trải nghiệm người xem cân bằng
  • HIGH: Tiềm năng tạo ra thu nhập cao hơn, nhưng người xem bị gián đoạn nhiều hơn
monetizationDetails.cuepointSchedule.creatorCuepointConfig object
Đối tượng creatorCuepointConfig chỉ định lựa chọn về công cụ tự động hoá quảng cáo, cho phép nhà sáng tạo chọn cách quảng cáo trong video xuất hiện.
monetizationDetails.cuepointSchedule.creatorCuepointConfig.scheduleStrategy string
Giá trị này chỉ định chiến lược mà YouTube nên tuân theo để lập lịch cho các điểm đánh dấu. Các giá trị hợp lệ là:
  • CONCURRENT: Điểm đánh dấu được lên lịch cùng lúc cho tất cả người xem
  • NON_CONCURRENT: Cuepoint được lên lịch vào những thời điểm khác nhau cho những người xem khác nhau. Phương pháp này cho phép quảng cáo xuất hiện với tần suất cao hơn, nhờ đó người xem có thể nhận được điểm đánh dấu khi đủ điều kiện.
monetizationDetails.cuepointSchedule.creatorCuepointConfig.repeatIntervalSecs unsigned integer
Giá trị này chỉ định khoảng thời gian (tính bằng giây) giữa các lần chèn quảng cáo tự động trong một chương trình phát sóng. Ví dụ: nếu giá trị là 360, YouTube có thể chèn điểm dừng quảng cáo trong video sau mỗi 6 phút.

Lưu ý:
  • Giá trị này chỉ định thời gian giữa điểm bắt đầu của các điểm đánh dấu liên tiếp. Tức là khoảng thời gian này không được đo từ cuối điểm đánh dấu này đến đầu điểm đánh dấu tiếp theo.
  • Để nhất quán với chế độ cài đặt của YouTube Studio, giá trị này là bội số của 6 phút, từ 6 phút đến 30 phút. Mọi số nguyên trong yêu cầu cập nhật nằm trong phạm vi này, mặc dù hợp lệ, sẽ được làm tròn xuống đến bội số gần nhất của 6 phút.