LiveBroadcasts: insert

이제 API에서 실시간 방송을 '아동용'으로 표시하는 기능을 지원하고, liveBroadcast 리소스에 이제 실시간 방송의 '아동용' 상태를 식별하는 속성이 포함됩니다. YouTube API 서비스 약관 및 개발자 정책도 2020년 1월 10일에 업데이트되었습니다. 자세한 내용은 YouTube Live Streaming API 서비스YouTube API 서비스 약관의 업데이트 기록을 참고하세요.

브로드캐스트를 만듭니다.

일반적인 사용 사례

요청

HTTP 요청

POST https://www.googleapis.com/youtube/v3/liveBroadcasts

승인

이 요청에는 다음 범위 중 최소 하나를 사용하여 인증이 필요합니다. (인증 및 승인에 대해 자세히 알아보기)

범위
https://www.googleapis.com/auth/youtube
https://www.googleapis.com/auth/youtube.force-ssl

매개변수

다음 표에는 이 쿼리가 지원하는 매개변수가 나와 있습니다. 나열된 모든 매개변수는 쿼리 매개변수입니다.

매개변수
필수 매개변수
part string
이 연산에서 part 매개변수는 두 가지 용도로 사용됩니다. 쓰기 작업에서 설정할 속성과 API 응답에 포함될 속성을 식별합니다.

매개변수 값에 포함할 수 있는 part 속성은 id, snippet, contentDetails, status입니다.
선택적 매개변수
onBehalfOfContentOwner string
이 매개변수는 제대로 승인된 요청에서만 사용할 수 있습니다. 참고: 이 매개변수는 YouTube 콘텐츠 파트너 전용입니다.

onBehalfOfContentOwner 매개변수는 요청의 승인 사용자 인증 정보가 매개변수 값에 지정된 콘텐츠 소유자를 대신하는 YouTube CMS 사용자를 식별함을 나타냅니다. 이 매개변수는 다양한 YouTube 채널을 소유하고 관리하는 YouTube 콘텐츠 파트너를 위한 것입니다. 콘텐츠 소유자가 각 채널에 사용자 인증 정보를 제공하지 않고도 한 번만 인증하면 모든 동영상 및 채널 데이터에 액세스할 수 있습니다. 사용자가 인증할 CMS 계정은 지정된 YouTube 콘텐츠 소유자에게 연결되어야 합니다.
onBehalfOfContentOwnerChannel string
이 매개변수는 제대로 승인된 요청에서만 사용할 수 있습니다. 이 매개변수는 제대로 인증된 요청에서만 사용할 수 있습니다. 참고: 이 매개변수는 YouTube 콘텐츠 파트너 전용입니다.

onBehalfOfContentOwnerChannel 매개변수는 동영상을 추가할 채널의 YouTube 채널 ID를 지정합니다. 이 매개변수는 요청이 onBehalfOfContentOwner 매개변수의 값을 지정할 때 필요하며 이 매개변수와 함께만 사용할 수 있습니다. 또한 onBehalfOfContentOwner 매개변수가 지정하는 콘텐츠 소유자에게 연결된 CMS 계정을 사용하여 요청을 승인해야 합니다. 마지막으로 onBehalfOfContentOwnerChannel 매개변수 값이 지정하는 채널은 onBehalfOfContentOwner 매개변수가 지정하는 콘텐츠 소유자와 연결되어야 합니다.

이 매개변수는 다양한 YouTube 채널을 소유하고 관리하는 YouTube 콘텐츠 파트너를 위한 것입니다. 이 매개변수로 콘텐츠 소유자는 각 개별 채널에 승인 사용자 인증 정보를 제공할 필요 없이 한 번 인증하여 매개변수 값에 지정된 채널을 대신하여 작업을 수행합니다.

요청 본문

요청 본문에 liveBroadcast 리소스를 제공합니다. 해당 리소스의 경우:

  • 다음 속성에 값을 지정해야 합니다.

    • snippet.title
    • snippet.scheduledStartTime
    • status.privacyStatus

  • 다음 속성에 값을 설정할 수 있습니다.

    • snippet.title
    • snippet.description
    • snippet.scheduledStartTime
    • snippet.scheduledEndTime
    • status.privacyStatus
    • status.selfDeclaredMadeForKids
    • contentDetails.monitorStream.enableMonitorStream
    • contentDetails.monitorStream.broadcastStreamDelayMs
    • contentDetails.enableAutoStart
    • contentDetails.enableAutoStop
    • contentDetails.enableClosedCaptions
    • contentDetails.enableDvr
    • contentDetails.enableEmbed
    • contentDetails.recordFromStart

    참고: 속성 표에는 위에 나열된 속성에 설정된 모든 기본값이 설명되어 있습니다. 다음 중 하나에 해당하는 경우 기본값이 할당됩니다.
    • 이러한 속성 값은 지정하지 않습니다.
    • 요청의 part 매개변수 값이 이러한 속성을 포함하는 부분을 지정하지 않습니다.

응답

성공하는 경우 이 메서드는 응답 본문에 liveBroadcast 리소스를 반환합니다.

오류

다음 표에서는 이 메서드에 대한 호출에 대한 응답으로 API가 반환할 수 있는 오류 메시지를 확인합니다. 자세한 내용은 오류 메시지 설명서를 참조하세요.

오류 유형 오류 세부정보 설명
insufficientPermissions insufficientLivePermissions 요청에 실시간 방송을 만들 권한이 없습니다.
insufficientPermissions livePermissionBlocked 요청을 승인한 사용자는 현재 YouTube에서 라이브 동영상을 스트리밍할 수 없습니다. 사용자가 라이브 동영상을 스트리밍할 수 없는 이유에 대한 자세한 내용은 사용자의 채널 설정(https://www.youtube.com/features)에서 확인할 수 있습니다.
insufficientPermissions liveStreamingNotEnabled 요청을 승인한 사용자가 YouTube에서 라이브 동영상을 스트리밍할 수 없습니다. 사용자는 https://www.youtube.com/features에서 자세한 정보를 확인할 수 있습니다.
invalidValue (400) invalidAutoStart liveBroadcast 리소스에 잘못된 contentDetails.enableAutoStart 속성 값이 포함되어 있습니다. 일부 브로드캐스트에서는 이 설정이 지원되지 않습니다.
invalidValue (400) invalidAutoStop liveBroadcast 리소스에 잘못된 contentDetails.enableAutoStop 속성 값이 포함되어 있습니다. 영구 브로드캐스트의 enableAutoStop 설정은 수정할 수 없습니다.
invalidValue (400) invalidDescription liveBroadcast 리소스snippet.description 속성에 유효한 값을 지정하지 않았습니다. 속성 값은 최대 5,000자(영문 기준)까지 포함할 수 있습니다.
invalidValue (400) invalidEmbedSetting liveBroadcast 리소스에 잘못된 contentDetails.enable_embed 속성 값이 포함되어 있습니다. 이 브로드캐스트를 삽입할 수 없습니다.
invalidValue (400) invalidLatencyPreferenceOptions liveBroadcast 리소스에 잘못된 contentDetails.latencyPreference 속성 값이 포함되어 있습니다. 일부 설정은 이 지연 시간 환경설정에서 지원되지 않습니다.
invalidValue (400) invalidPrivacyStatus liveBroadcast 리소스에 잘못된 status.privacy_status 속성 값이 포함되어 있습니다.
invalidValue (400) invalidProjection liveBroadcast 리소스에 잘못된 contentDetails.projection 속성 값이 포함되어 있습니다. 기본 브로드캐스트의 프로젝션은 360로 설정할 수 없습니다.
invalidValue (400) invalidScheduledEndTime liveBroadcast 리소스에 잘못된 snippet.scheduledEndTime 속성 값이 포함되어 있습니다. 예약된 종료 시간은 예정된 시작 시간 이후여야 합니다.
invalidValue (400) invalidScheduledStartTime liveBroadcast 리소스에 잘못된 snippet.scheduledStartTime 속성 값이 포함되어 있습니다. 예약된 시작 시간은 미래여야 하며 해당 시간에 방송을 안정적으로 예약할 수 있을 만큼 현재 날짜와 충분히 가까워야 합니다.
invalidValue (400) invalidTitle liveBroadcast 리소스snippet.title 속성에 유효한 값을 지정하지 않았습니다. 속성 값은 1~100자(영문 기준)여야 합니다.
limitExceeded userBroadcastsExceedLimit 사용자가 실시간 방송이나 예약된 방송을 너무 많이 만들었으므로 일부 방송을 중지하거나 삭제해야 합니다.
rateLimitExceeded userRequestsExceedRateLimit 사용자가 일정 기간 동안 너무 많은 요청을 보냈습니다.
required (400) privacyStatusRequired liveBroadcast 리소스가 공개 범위 설정을 지정해야 합니다. 유효한 privacyStatus을 참고하세요.
required (400) scheduledEndTimeRequired liveBroadcast 리소스snippet.scheduledEndTime 속성을 지정해야 합니다.
required (400) scheduledStartTimeRequired liveBroadcast 리소스snippet.scheduledStartTime 속성을 지정해야 합니다.
required (400) titleRequired liveBroadcast 리소스snippet.title 속성을 지정해야 합니다.

사용해 보기

APIs Explorer를 사용하여 이 API를 호출하고 API 요청 및 응답을 확인하세요.