
API 홈
https://developers.google.com/youtube?hl=ko
YouTube | Google for Developers
사이트 및 앱에 YouTube 기능을 추가하세요.
developers.google.com
🎈Youtube Data API v3: /search list 메서드 사용하기
API KEY 발급
[ YoutubeAPI ] API KEY 발급하기
🎈 Youtube Data API KEY 발급 https://console.cloud.google.com/apis Google 클라우드 플랫폼로그인 Google 클라우드 플랫폼으로 이동accounts.google.com google console apis 메뉴 접속 후 좌측 라이브러리 선택 youtub
euntry.tistory.com
Youtube API를 사용할려면 Google Cloud Console에서 API 키를 발급받아야 한다
쿼터 제한
기본적으로 하루 10,000 쿼터가 제공
- /search 요청당 100쿼터 적용
API Base Url
https://www.googleapis.com/youtube/v3
🔎 /search 엔드포인트
Youtube 콘텐츠를 검색하는데 사용
HTTP 요청
GET https://www.googleapis.com/youtube/v3/search
파라미터
| 필수 파라미터 | |
| part | 반환할 데이터 종류를 지정 (search는 snippet만 가능) |
| key | API Key |
| 필터 (다음 매개변수를 0 또는 1로 지정, 미지정시 0으로 간주, 1 선택시 OAuth 인증 필요) | |
| forContentOwner | 콘텐츠 소유자(콘텐츠 매니저 계정)에 속한 리소스만 검색 |
| forDeveloper | 요청을 보내는 프로젝트와 연결된 채널의 게시된 콘텐츠만 검색 |
| forMine | 현재 인증된 사용자 계정이 업로드한 콘텐츠만 검색 |
| 선택 파라미터 | |
| q | 검색 키워드 |
| type | 검색 결과 유형 지정 (video, channel, playlist) |
| maxResults | 반환할 결과의 최대 개수, 기본값 5, 최대값 50 |
| order | 정렬 기준 (date:최신순, rating:높은평가순, viewCount:조회수) |
| publishedAfter | 특정 날짜 이후 업로드된 콘텐츠만 검색. ISO 8601 형식 (YYYY-MM-DD DDThh:mm:ssZ) |
| publishedBefore | 특정 날짜 이전 업로드된 콘텐츠만 검색 |
| reginCode | 특정 국가에 관련성 높은 콘텐츠를 검색, ISO 3166-1 alpha-2 형식의 국가코드 (한국 : KR) |
| videoCategoryId | 특정 카테고리에 속하는 동영상만 필터링할 때 사용, (영화및애니메이션: 1, 음악: 10, 게임: 20 ...) |
예시: 프로그래밍 관련 동영상 검색
GET https://www.googleapis.com/youtube/v3/search
?part=snippet
&q=programming tutorials
&type=video
&maxResults=5
&key=YOUR_API_KEY
예시: 한국에서 인기 있는 채널 검색
GET https://www.googleapis.com/youtube/v3/search
?part=snippet
&type=channel
®ionCode=KR
&key=YOUR_API_KEY
예시: reponse Data
{
"kind": "youtube#searchListResponse",
"etag": "etag_value",
"nextPageToken": "CAUQAA", // 다음 페이지 토큰
"regionCode": "US", // 요청한 지역 코드
"pageInfo": {
"totalResults": 1000000, // 검색 결과 총 개수
"resultsPerPage": 5 // 요청당 반환된 동영상 수
},
"items": [
{
"kind": "youtube#searchResult",
"etag": "etag_value",
"id": {
"kind": "youtube#video",
"videoId": "abcd1234" // 동영상 ID
},
"snippet": {
"publishedAt": "2024-12-01T00:00:00Z", // 업로드 날짜
"channelId": "channel1234", // 채널 ID
"title": "Learn Programming in 10 Minutes", // 동영상 제목
"description": "A quick tutorial on programming basics.", // 동영상 설명
"thumbnails": { // 썸네일 이미지
"default": {
"url": "https://i.ytimg.com/vi/abcd1234/default.jpg",
"width": 120,
"height": 90
},
"medium": {
"url": "https://i.ytimg.com/vi/abcd1234/mqdefault.jpg",
"width": 320,
"height": 180
},
"high": {
"url": "https://i.ytimg.com/vi/abcd1234/hqdefault.jpg",
"width": 480,
"height": 360
}
},
"channelTitle": "Code Academy", // 채널 이름
"liveBroadcastContent": "none", // 라이브 방송 여부
"publishTime": "2024-11-01T00:00:00Z" // 동영상 게시 시간
}
}
]
}
'Back-end > Server' 카테고리의 다른 글
| [ TMDB ] API search 엔드포인트 사용하기 (3) | 2024.12.18 |
|---|---|
| [ TMDB ] API KEY 발급하기 (2) | 2024.12.11 |
| [ YoutubeAPI ] API KEY 발급하기 (3) | 2024.11.29 |
| [ YoutubeAPI ] YouTube Data API v3: /videos list 메서드 사용 하기 (4) | 2024.11.28 |
| [ WINDOWS ] Open JDK 17 설치 (2) | 2024.11.18 |