https://developers.google.com/youtube/v3/docs/channels/list?hl=ko
채널의 ID를 받아올 목적으로 사용. 최초 회원가입 시 1회 호출하므로 할당량은 생각 안해도 무방
<aside> ⚙
Request
</aside>
# 내 채널의 result
URL: <https://youtube.googleapis.com/youtube/v3/channels>
METHOD: GET
HEADERS:
- Authorization: Bearer [ACCESS_TOKEN]
- Accept: application/json
QUERIES:
- key: [MY_API_KEY]
- part: contentDetails
- mine: true
- maxResults?: 5(default), 1(이렇게 가져와도 무방. 어차피 내꺼니까!)
# handler로 가져오기
# 상대 채널의 result
URL: <https://youtube.googleapis.com/youtube/v3/channels>
METHOD: GET
HEADERS:
- Authorization: Bearer [ACCESS_TOKEN]
- Accept: application/json
QUERIES:
- key: [MY_API_KEY]
- part: contentDetails # <- contentDetails를 써야 relatedPlaylists가 반환된다.
- id: [channel Id]
- maxResults?: 5(default), 1(이렇게 가져와도 무방. 어차피 하나만 검색할거니까!)
<aside> ⚙
Response
</aside>
{
"kind": "youtube#channelListResponse",
"etag": "ETAG",
"pageInfo": {
"totalResults": 1,
"resultsPerPage": 5
},
"items": [
{
"kind": "youtube#channel",
"etag": "ETAG",
"id": "MY_YOUTUBE_ID",
"contentDetails": {
"relatedPlayLists": {
"likes": "aaa",
"uploads": "<업로드된 모든 동영상이 존재하는 기본 플레이리스트 ID>"
}
}
}
]
}
이때, 플레이리스트 id는 채널 id의 2번째 문자를 C에서 U로 바꾼 값이다.
C는 channel, U는 uploads를 의미하는것으로 추정
channel = response.data.items[0]
channelId = channel.id
uploadedPlaylist = channel.contentDetails.relatedPlayLists.uploads