728x90

https://developers.google.com/youtube/v3/docs

 

API Reference  |  YouTube Data API  |  Google Developers

YouTube Data API를 사용하면 YouTube 웹사이트에서 일반적으로 실행하는 기능을 사용자의 웹사이트 또는 애플리케이션에 통합할 수 있습니다. 아래 목록에서는 API를 사용하여 검색할 수 있는 다양한 유형의 리소스를 확인합니다. API는 이러한 여러 개의 리소스를 삽입하거나 업데이트 또는 삭제하는 메소드도 지원합니다. 참조 가이드에서는 API로 이러한 모든 작업을 수행하는 방법을 설명합니다. 이 가이드는 리소스 유형별로 정리되어 있습니다. 리소

developers.google.com

YouTube Data API를 사용하면 YouTube 웹사이트에서 일반적으로 실행하는 기능을 사용자의 웹사이트 또는 애플리케이션에 통합할 수 있습니다. 아래 목록에서는 API를 사용하여 검색할 수 있는 다양한 유형의 리소스를 확인합니다. 

API는 이러한 여러 개의 리소스를 삽입하거나 업데이트 또는 삭제하는 메소드도 지원합니다.

참조 가이드에서는 API로 이러한 모든 작업을 수행하는 방법을 설명합니다. 

이 가이드는 리소스 유형별로 정리되어 있습니다. 

리소스란 동영상, 재생 목록 또는 구독과 같이 YouTube 환경을 구성하는 항목 유형을 의미합니다. 

가이드에는 리소스 유형별로 하나 이상의 데이터 표현이 나와 있으며 리소스는 JSON 개체로 표시됩니다. 

또한 리소스 유형별로 지원되는 하나 이상의 메소드(LIST, POST, DELETE 등)와 함께 애플리케이션에서 이러한 메소드를 사용하는 방법에 대해 설명합니다.

 

1. Activity (활동)

특정 사용자가 YouTube 사이트에서 실행한 작업의 정보를 알 수 있습니다.

요청하는 기준에 일치하는 채널 활동 이벤트의 리스트를 반환합니다.

예를 들어 특정 채널과 관련된 이벤트, 사용자의 구독정보 및 Google+ 친구 또는 사용자별로 맞춤 설정되는 YouTube 홈페이지 피드와 관련된 이벤트를 검색할 수 있습니다.

동영상 평가, 동영상 공유, 동영상 즐겨찾기 정보, 채널 게시판에 게시 등이 포함되어 있습니다.

 

Activity 리소스에 다음 메소드를 지원합니다.

 

- list 

- insert 


2. Channel (채널)

단일 YouTube 채널에 대한 정보를 알 수 있습니다.

channel 리소스에는 YouTube 채널에 대한 정보가 포함되어 있습니다.

 

channels 리소스에 다음 메소드를 지원합니다.

- list

요청 기준과 일치하는 0개 이상의 channel 리소트 집합을 반환합니다.

 

- update

채널의 메타데이터를 업데이트 합니다.

  * 이 메소드는 현재 channel 리소스의 brandingSettings 및 invideoPromotion 개체와 해당 하위 속성의 업데이트만 지원합니다

 

2-1. channelBanner (채널 배너 업로드 )

channelBanner 리소스에는 새로 업로드한 이미지를 채널의 배너 이미지로 설정하는 데 사용할 URL을 포함할 수 있습니다.

새로 업로드한 이미지를 채널의 배너 이미지로 설정하는 데 사용할 URL을 찾아줍니다.

 

API는 channelBanners 리소스에 다음 메소드를 지원합니다

- insert : YouTube에 채널 배너 이미지를 업로드합니다. 

 

  * 이 메소드는 다음과 같이 채널의 배너 이미지를 업데이트하기 위해서는 다음 5단계를 거쳐야 제대로 업로드가 됩니다.

  1. channelBanners.insert 메소드를 호출하여 YouTube에 바이너리 이미지를 업로드합니다.

  2. 이미지는 화면 비율이 16:9여야 하며 최소 2120x1192픽셀 이상이어야 합니다.

  3. API가 1단계에서 반환한 응답으로부터 url 속성 값을 추출합니다.

  4. channels.update 메소드를 호출해 채널의 브랜드 설정을 업데이트합니다. 

  5. brandingSettings.image.bannerExternalUrl 속성 값을 2단계에서 확인한 URL로 설정합니다.

 

Youtube에 channel banner이미지를 업로드합니다.

이 channelBanner 메소드는 channel 에 배너이미지를 업로드하기위한 3단계 프로세스에서 첫 2단계를 나타냅니다. :

 

1. channelBanners.insert 라 불리는 메소드는 YouTube 에 바이너리 이미지 데이터를 업로드하기 위한 것입니다.

 이미지는 반드시 16:9 가로:세로비율을 가지고 있어야 하고, 2048X1152pixels 이상이어야 합니다.

 우리는 2560px X 1140px 이미지를 업로드하는 것을 추천합니다.

 

2. 1단계에서 API 가 return 해주는 응답에서 URL Property 를 추출해야 합니다.

 

3. channels.update 라 불리는 메소드에서 channel의 branding setting에 업데이트합니다.

brandingSettings.image.brannerExternelUrl property에 URL에 2단계에서 가져온 URL property를 value로 세팅하세요.

 

이 메소드는 media 업로드를 지원합니다.

업로드하는 파일은 반드시 아래의 제약 조건을 갖춰야 합니다.

최대 파일 크기 : 6MB

허용된 Media MIME types :  image/jpeg, image/png, application/octet-stream

Uploads a channel banner image to YouTube. This method represents the first two steps in a three-step process to update the banner image for a channel:

1. Call the channelBanners.insert method to upload the binary image data to YouTube. The image must have a 16:9 aspect ratio and be at least 2048x1152 pixels. We recommend uploading a 2560px by 1440px image.

2. Extract the url property's value from the response that the API returns for step 1.Call the channels.update method to update the channel's branding settings. 

3. Set the brandingSettings.image.bannerExternalUrl property's value to the URL obtained in step 2.

This method supports media upload. Uploaded files must conform to these constraints: 
Maximum file size: 6MB 
Accepted Media MIME types: image/jpeg, image/png, application/octet-stream

 

 

2-1. ChannelSections

channelSection 리소스에는 채널이 추천한 videos 세트에 대한 정보가 포함되어 있습니다.

 

예를 들어, 섹션에는 채널의 최신 업로드, 가장 인기있는 업로드 또는 하나 이상의 재생 목록의 비디오가 포함될 수 있습니다.

channel의 section은 channel이 browse view에 컨텐츠를 표시하는 경우에만 표시됩니다. (feed view 가 아닙니다.)

 

채널이 browse view 컨텐츠를 표시 할 수 있게 하려면 지정된 채널(specified channel)에 대해 brandingSettings.channel.showBrowseView  프로퍼티(property)를 true로 설정하면 됩니다.

 

channel은 targeting data를 설정하지 않고 최대 10개의 shelve를 만들 수 있으며 targeting data를 사용하면 최대 100 개의 shelve을 만들 수 있습니다.

A channelSection resource contains information about a set of videos that a channel has chosen to feature.
For example, a section could feature a channel's latest uploads, most popular uploads, or videos from one or more playlists.Note that a channel's sections are only visible if the channel displays content in a browse view (rather than a feed view). 

To enable a channel to display content in a browse view, set the brandingSettings.channel.showBrowseView property to true for the specified channel.

A channel can create a maximum of 10 shelves without setting targeting data and can create a maximum of 100 shelves with targeting data.

 

API는 channelSections 리소스에 다음 메소드를 지원합니다


- list

channelSection 리소스의 리스트를 API 요청기준(API request criteria)에 맞는 것을 되돌려 줍니다.

 

- insert

인증된 user 채널에 대한 channel 색션을 추가합니다.

한개의 channel은 10개의 shelves 를 targeting data 세팅없이 만들 수 있고, 최대 targeting data 를 가지고는 100 shelves를 만들 수 있습니다.

A channel can create a maximum of 10 shelves without setting targeting data and can create a maximum of 100 shelves with targeting data

 

- update
channel section을 업데이트 합니다.

 

- delete
channel section 를 삭제합니다.

 


3. Caption (자막)

Caption 리소스는 Youtube의 자막트랙을 가져옵니다.

자막 트랙(Caption track)은 정확히 한개의 YouTube 동영상과 연결되어 있습니다.

 

API는 Captions 리소스에 다음 메소드를 지원합니다


- list

caption tracks의 목록을 검색하는 것은 지정한(특정지은) video에 관련되어 있다.

즉, 지정한 video와 관련된 캡션 트랙 목록을 검색합니다.

API 응답(response)는 실제 captions을 포함하고 있지 않는 것과 captions.download 메소드는 캡션 트랙을 검색하기 위한 기능을 제공하는 것을 을 알아주세요.

Retrieve a list of caption tracks that are associated with a specified video. 
Note that the API response does not contain the actual captions and that the captions.download method provides the ability to retrieve a caption track.

 

- insert
caption track을 업로드 합니다.

 

- update
caption track을 업데이트합니다.

caption track을 업데이트할때, 당신은 바꿀 수 있습니다. 

track의 초안 상태를 변경하거나 트랙의 새 caption file 을 업로드하거나 둘 다를 수행 할 수 있습니다.

 

- delete

선택한(지정한) caption track을 삭제할 수 있습니다.

 

- download

caption track을 다운로드 합니다.

caption track은 tfmt  파라미터에 지정된 값을 요청하지 않는다면, 오리지널 포멧으로 리턴합니다.

tlang 파라미터에 대해서 지정된 값을 요청하지 않는다면 오리지널 언어로 리턴합니다.

The caption track is returned in its original format unless the request specifies a value for the tfmt parameter and in its original language unless the request specifies a value for the tlang parameter.

 


4. Comment (답글, 댓글)

comment 리소스에는 YouTube 댓글 한개에 대한 정보가 포함되어 있습니다.

comment 리소스는 동영상 또는 채널에 대한 댓글이 나타나게 할 수 있습니다.? (댓글을 달 수 있다.)

추가로, comment은 Top-Level 의 comment나 Top-Level 의 comment에 대한  회신을 할 수 있습니다.

A comment resource contains information about a single YouTube comment.
A comment resource can represent a comment about either a video or a channel.
In addition, the comment could be a top-level comment or a reply to a top-level comment.

 

API는 Comment 리소스에 다음 메소드를 지원합니다


- list

API request 파라미터에 매치된 comments 리스트를 리턴합니다.

 

- insert

표현할 comment를 회신하여 생성합니다. 

Top-Level comment를 달기 위해서는 commentThreads.insert메소드를 이용하세요.

 

- update
comment를 업데이트 합니다.

 

- delete
comment를 삭제합니다.

 

- setModerationStatus

하나 이상의 comment의 검토 상태를 설정합니다.

API 요청여부는 댓글과 관련된 채널 또는 동영상의 소유자가 승인해야 합니다.

Sets the moderation status of one or more comments. 
The API request must be authorized by the owner of the channel or video associated with the comments.

 

- markAsSpam

하나 이상의 comment에 달린 발신자의 의견에 대해 스팸으로 표시할 수 있습니다.

Expresses the caller's opinion that one or more comments should be flagged as spam. 

 

3-1.CommentThreads (top-level 댓글)

CommentThread 리소스에는 Top-level comment로 구성된 YouTube comment thread에 대한 정보가 포함되어, 해당 댓글이 있는 경우 Top-level의 댓글(comment)과 답글(reply)로 구성되어 있습니다.

CommentThread 리소스는 videos 또는 Channels에 대한 comment을 나타낼 수 있습니다.

 

Top-level의 댓글(comment)과 답글(reply)은 실제로 commentThread 리소스에 기반하고 있습니다.

CommentThread 리소스에 Comment에 대한 모든 응답이 반드시 포함되는 것은 아니며, 특정 Comment에 대한 모든 응답을 검색하려면 comments.list 메소드를 사용해야합니다. 또한 일부 comments에 대해 회신이 없을 수도 있습니다.

 

A commentThread resource contains information about a YouTube comment thread, which comprises a top-level comment and replies, if any exist, to that comment. A commentThread resource can represent comments about either a video or a channel.Both the top-level comment and the replies are actually comment resources nested inside the commentThread resource.
The commentThread resource does not necessarily contain all replies to a comment, and you need to use the comments.list method if you want to retrieve all replies for a particular comment. Also note that some comments do not have replies.

 

API는 CommentThread 리소스에 다음 메소드를 지원합니다


- list

API request parameters에 맞는 comment threads 리스트를 반환합니다.

 

- insert

새 Top-level comment를 등록합니다.

존재하는 comment에 reply을 추가하기 위해서, comments.insert 메소드를 대신 사용합니다.

Creates a new top-level comment. To add a reply to an existing comment, use the  comments.insert method instead. 

 

- update

comment thread에 있는 Top-level comment 를 수정합니다.

 


4.GuideCategories (가이드 카테고리)

guideCategory 리소스는 YouTube 알고리즘이 채널의 콘텐츠 또는 인기도와 같은 기타 지표(예: 인기도)를 바탕으로 지정한 카테고리를 확인합니다.

guideCategory는 YouTube 사용자가 원하는 콘텐츠를 더 쉽게 찾을 수 있는 방법으로 채널을 구성하기 위한 방법을 모색합니다.

channel은 한 개 이상의 guideCategory에 연결될 수 있지만 가이드 카테고리에 모두 포함된다고는 할 수 없습니다.

 

이 list는 동영상 카테고리와 유사하지만 vidoes 카테고리는 동영상 업로더가 지정할 수 있고 chnnels 카테고리는 YouTube만 지정할 수 있다는 점이 다릅니다.

 

API는 guideCategories 리소스에 다음 메소드를 지원합니다.

- list

YouTube 채널과 관련된 카테고리의 목록을 반환합니다.

 


5. PlaylistItems

PlaylistItem 리소스는 재생목록에 포함된 동영상과 같은, 다른 리소스를 식별합니다.

또한 playlistItem 리소스에는 재생목록에서 리소스가 사용되는 방식과 관련하여 포함된 리소스에 대한 세부정보가 포함되어 있습니다.
YouTube 재생목록은 다음과 같은 채널의 특별한 동영상 모음을 구분합니다.

업로드한 동영상
즐겨찾는 동영상
긍정적 평가(좋아요)를 받은 동영상
감상한 동영상
나중에 볼 동영상
보다 구체적으로 이러한 목록은 개인, 그룹 또는 회사의 동영상, 재생목록 및 기타 YouTube 정보의 모음인 채널과 연결되어 있습니다.

각 목록의 재생목록 ID는 해당 채널의 channel resource 로부터 검색할 수 있습니다. 

그런 다음 playlistItems.list 메소드를 사용해 원하는 목록을 검색합니다. 

playlistItems.insert 및 playlistItems.delete 메소드를 호출해 목록에 항목을 추가하거나 목록에서 항목을 삭제할 수도 있습니다. 

예를 들어 사용자가 동영상을 즐겨찾기에 추가한 경우 해당 동영상을 사용자 채널의 즐겨찾기 동영상 재생목록에 넣을 수 있습니다.

 


API는 playlistItems 리소스에 다음 메소드를 지원합니다.

- list
API 요청 매개변수와 일치하는 재생목록 항목의 모음을 반환합니다. 

지정된 재생목록의 모든 항목을 검색하거나 고유 ID를 통해 하나 또는 여러 개의 재생목록 항목을 검색할 수 있습니다. 

 

- insert
재생목록에 리소스를 추가합니다. 

 

- update
재생목록의 항목을 수정합니다. 

예를 들어 재생목록에서 항목의 위치를 업데이트할 수 있습니다. 

 

- delete
재생목록의 항목을 삭제합니다. 

 

 

5-1. playlist

playlist 리소스는 YouTube 재생목록을 나타냅니다. 

* 재생목록은 순서대로 감상하거나 다른 사용자와 공유할 수 있는 동영상의 리스트 모음입니다.

재생목록은 최대 200개의 동영상을 포함할 수 있으며 사용자가 만들 수 있는 재생목록의 수에는 제한이 없습니다. 

재생목록은 기본적으로 다른 사용자에게 공개되지만 비공개로 설정할 수도 있습니다.

YouTube 재생목록은 다음과 같은 채널의 특별한 동영상 모음을 구분합니다.

업로드한 동영상
즐겨찾는 동영상
긍정적 평가(좋아요)를 받은 동영상
감상한 동영상
나중에 볼 동영상
보다 구체적으로 이러한 목록은 개인, 그룹 또는 회사의 동영상, 재생목록 및 기타 YouTube 정보의 모음인 채널과 연결되어 있습니다. 

각 목록의 재생목록 ID는 해당 채널의 channel resource 리소스로부터 검색할 수 있습니다.

그런 다음 playlistItems.list 메소드를 사용해 원하는 목록을 검색합니다. 

 

playlistItems.insert 및 playlistItems.delete 메소드를 호출해 목록에 항목을 추가하거나 목록에서 항목을 삭제할 수도 있습니다.


API는 playlists 리소스에 다음 메소드를 지원합니다.

- list
API 요청 매개변수와 일치하는 재생목록의 모음을 반환합니다. 

예를 들어 인증된 사용자가 보유한 전체 재생목록을 검색하거나, 고유 ID를 통해 하나 또는 여러 개의 재생목록을 검색할 수 있습니다.

 

- insert
재생목록을 만듭니다.

 

- update
재생목록을 수정합니다. 

예를 들어 재생목록의 제목, 설명, 개인정보 보호 상태를 변경할 수 있습니다. 

 

- delete
재생목록을 삭제합니다.


7. search (검색결과)

검색결과에는 API 요청에 지정된 검색 매개변수와 일치하는 YouTube 동영상, 채널 또는 재생목록의 정보가 포함되어 있습니다.

검색결과는 동영상과 같이 고유하게 식별할 수 있는 리소스를 보여주지만, 자체적으로는 영구적인 데이터를 가지고 있진 않습니다. (항상 변할 수 있습니다.)

 

API는 검색에 다음 메소드를 지원합니다.

- list
API 요청에 지정된 쿼리 매개변수와 일치하는 검색결과의 모음을 반환합니다. 

기본적으로 검색결과의 집합은 쿼리 매개변수와 일치하는 video, channel, playlist 리소스를 식별하지만, 특정 유형의 리소스만 검색하도록 쿼리를 구성할 수도 있습니다. 


8. subscription

YouTube 사용자의 구독 정보를 포함하고 있습니다.

* 구독정보는 채널에 새 동영상이 추가되거나 다른 사용자가 YouTube에서 동영상 업로드, 동영상 평가 또는 동영상 추천 등의 작업 중 하나를 수행할 때 이를 알려주는 기능입니다.

 

subscription 리소스에는 YouTube 사용자의 구독정보가 포함되어 있습니다.

구독정보는 채널에 새 동영상이 추가되거나 다른 사용자가 YouTube에서 동영상 업로드, 동영상 평가 또는 동영상 추천 등의 작업 중 하나를 수행할 때 이를 알려줍니다.


API는 subscriptions 리소스에 다음 메소드를 지원합니다.

- list

API 요청 기준과 일치하는 구독정보 리소스를 반환합니다. 

 

- insert
인증된 사용자 채널에 대한 구독정보를 추가합니다.

 

- delete
구독정보를 삭제합니다.


9. thumbnail

하나의 리소스에 연결된 미리보기 이미지의 각기 다른 크기별로 구분하여 줍니다. 미리보기 이미지의 특징은 다음과 같습니다.

  • 리소스의 snippet.thumbnails 속성은 해당 리소스에서 사용할 수 있는 미리보기 이미지를 식별하는 개체입니다.

  • thumbnail 리소스에는 일련의 개체가 포함되어 있습니다.  각 개체의 이름(default, medium, high 등)은 미리보기 이미지의 크기를 나타냅니다.

  • 다양한 유형의 리소스를 통해 미리보기 이미지의 다양한 크기를 지원할 수 있습니다.

  • 다양한 유형의 리소스를 통해 동일한 이름을 가진 미리보기 이미지의 크기를 서로 다르게 정의할 수 있습니다.

    • 예를 들어 video 리소스의 default 미리보기 이미지는 보통 120x90픽셀이며, channel 리소스의 default 미리보기 이미지는 보통 88x88픽셀입니다.

  • 미리보기 이미지의 크기는 리소스 유형이 동일하더라도 원본 이미지 또는 YouTube에 업로드된 콘텐츠의 해상도에 따라 달라질 수 있습니다.

    • 예를 들어 HD 동영상은 HD가 아닌 동영상보다 더 높은 해상도의 미리보기를 지원할 수 있습니다.

  • 미리보기 이미지의 크기 정보가 포함된 개체에는 width 속성과 height 속성이 있습니다.

    • width와 height 속성은 반환되지 않을 수도 있습니다.

  • 업로드된 미리보기 이미지가 필요한 크기와 일치하지 않는 경우 이미지가 올바른 크기에 맞춰 조정되며 가로세로 비율도 그대로 유지됩니다.

    • 이미지가 잘리지는 않으나 올바른 크기로 맞추기 위해 이미지에 검은색 띠가 포함될 수 있습니다.

API는 subscriptions 리소스에 다음 메소드를 지원합니다.

- set

YouTube에 맞춤 동영상 미리보기 이미지를 업로드하고 이를 동영상에 설정합니다.


10. videos

단일 YouTube 동영상을 나타냅니다.

 

API는 videos 리소스에 다음 메소드를 지원합니다.

 

- getRating

지정된 동영상의 목록에 대해 인증된 사용자가 적용한 평가를 검색합니다

- list

API 요청 매개변수와 일치하는 동영상의 목록을 반환합니다.

- insert

YouTube에 동영상을 업로드하고 동영상의 메타데이터를 선택적으로 설정합니다.

- update

동영상의 메타데이터를 업데이트합니다.

- delete

YouTube 동영상을 삭제합니다

- rate

동영상에 좋아요 또는 싫어요 평가를 추가하거나 이러한 평가를 삭제합니다.

 

10-1. VideoAbuseReportReasons

videoAbuseReportReason 리소스에는 잘못된 콘텐츠가 포함된 것으로 동영상이 신고된 이유에 대한 정보를 확인해 줍니다.

내 애플리케이션이 abusive video에 대한 정보를 알기 위해서 videos.reportAbuse 메소드를 호출하면, 해당 요청은 videoAbuseReportReason 리소스의 정보를 사용하여 비디오가 보고되는 이유를 확인해 줍니다.

A videoAbuseReportReason resource contains information about a reason that a video would be flagged for containing abusive content.
When your application calls the videos.reportAbuse method to report an abusive video, the request uses the information from a videoAbuseReportReason resource to identify the reason that the video is being reported.

 

videosAbuseReport 리소스에 다음 메소드를 지원합니다.

 

- list

abusive videos로 신고된 사유를 검색합니다.

 

10-2. videoCategory

업로드된 동영상과 연결되었거나 연결할 수 있는 카테고리를 확인해 줍니다.

 

API는 videoCateogory 리소스에 다음 메소드를 지원합니다.

- list

YouTube 동영상과 연결할 수 있는 카테고리의 목록을 반환합니다.

 


11. Watermarks

지정된 채널의 동영상을 재생하는 동안 표시되는 이미지를 확인해 줍니다.

또한 동영상 재생 중 워터마크가 표시되는 시기와 표시되는 시간의 길이를 정하는 타이밍 세부정보뿐 아니라 이미지가 연결되는 타겟 채널도 지정할 수 있습니다.

 

watermarks 리소스에 다음 메소드를 지원합니다.

 

- set

YouTube에 워터마크 이미지를 업로드하고 채널에 설정합니다.

- unset

워터마크를 삭제합니다. 

+ Recent posts