## 이 연동으로 보이는 것
| 데이터 | 지원 |
|---|---|
| 채널명 · 구독자 수 | ✅ |
| 채널 누적 조회수 | ✅ |
| 총 업로드 영상 수 | ✅ |
| 동영상 목록 | ✅ (최대 50개) |
| 영상별 조회수 · 좋아요 · 댓글 | ✅ |
| 썸네일 | ✅ |
| Shorts 구분 | ⚠️ API 에 명시 필드가 없어 추정만 가능 |
| **시청 시간 · 시청자 통계** | ❌ YouTube Analytics API 가 별도로 필요 |
SNS 분석 화면에서 채널 카드와 추이 차트로 확인합니다.
## 사전 준비물
| 항목 | 어디서 | 비고 |
|---|---|---|
| 채널을 관리하는 **Google 계정** | — | |
| **Google Cloud 프로젝트** | console.cloud.google.com | 없으면 새로 만듭니다 |
| **YouTube Data API v3 활성화** | Cloud Console → 라이브러리 | ⚠️ 필수 |
| **Client ID / Client Secret** | Cloud Console → 사용자 인증 정보 | 웹 애플리케이션 유형 |
## 발급 절차
### 1. Google Cloud 프로젝트와 API 활성화
1. [Google Cloud Console](https://console.cloud.google.com) 에 채널 관리 계정으로 로그인
2. 상단 프로젝트 드롭다운 → **새 프로젝트** (기존 프로젝트가 있으면 재사용 가능)
3. **API 및 서비스 → 라이브러리** → `YouTube Data API v3` 검색 → **사용** 클릭
> API 를 활성화하지 않으면 OAuth 는 통과하는데 데이터 조회가 실패합니다.
### 2. OAuth 동의 화면 구성
1. **API 및 서비스 → OAuth 동의 화면** (최신 UI: **Google 인증 플랫폼 → 대상**)
2. User Type: **외부** → 만들기
3. 앱 이름 · 지원 이메일 · 개발자 연락처 입력
4. **범위 추가** → `.../auth/youtube.readonly` 체크
5. **테스트 사용자**에 **연동에 사용할 Google 계정을 반드시 추가**
> ⚠️ 앱이 "테스트" 상태면 **이 목록에 등록된 계정만** 로그인할 수 있습니다.
> 등록하지 않으면 `403 access_denied` 가 발생합니다.
### 3. OAuth 클라이언트 ID 발급
1. **API 및 서비스 → 사용자 인증 정보** → **+ 사용자 인증 정보 만들기 → OAuth 클라이언트 ID**
2. 애플리케이션 유형: **웹 애플리케이션**
3. **승인된 JavaScript 원본** 에 서비스 도메인을 등록
4. **승인된 리디렉션 URI** 에 아래 형식을 등록
```
https://<서비스 도메인>/auth/youtube/callback
```
> 프로토콜(`http`/`https`) · 포트 · 경로까지 **정확히 일치**해야 합니다.
> 하나라도 다르면 `redirect_uri_mismatch` 가 발생합니다.
> 서비스 도메인을 모르면 운영 담당자에게 확인하세요.
5. **만들기** → Client ID / Client Secret 확인
> **Client Secret 은 생성 직후 팝업에서만 전체 값이 보입니다.**
> 팝업을 닫아 값을 놓쳤다면:
> - 클라이언트 목록의 **JSON 다운로드** 아이콘 → 파일 안의 `client_secret` 확인
> - 또는 클라이언트 상세에서 **+ Add secret** 으로 새 시크릿 발급
## 모닝인사이트에 입력
1. **설정 → 데이터 연동** 탭
2. **SNS 계정 연동 → YouTube** 카드 클릭
3. Client ID · Client Secret 입력 후 **저장**
4. **YouTube 계정 연결** 버튼 클릭 → Google 로그인 팝업
5. 채널을 관리하는 계정 선택
6. "이 앱은 Google 에서 확인하지 않았습니다" 경고가 나오면 **고급 → 계속 진행**
(앱이 테스트 단계일 때 나오는 정상 경고입니다)
7. YouTube 데이터 읽기 권한 승인 → 팝업 자동 종료
## 확인 방법
1. 카드 상태 `연동됨` + 채널명 표시
2. **SNS 분석** 화면에 채널 카드와 구독자 수가 나오는지
3. 영상 목록과 조회수가 나오는지
## 토큰 자동 갱신
액세스 토큰은 **1시간** 뒤 만료되지만 자동으로 갱신됩니다.
조회 중 만료가 감지되면 새 토큰을 발급받아 재시도하므로, 평소에는 아무 조치도 필요 없습니다.
단, 앱이 **"테스트" 단계일 때는 토큰 유효기간이 7일로 제한**됩니다.
7일마다 재인증이 필요하다면 앱 게시(Verification)를 검토해야 합니다
→ [운영자 가이드](/news/guide/operator-google)
## 자주 나는 오류
| 증상 | 원인 | 대응 |
|---|---|---|
| `403 access_denied` | OAuth 동의 화면 **테스트 사용자 미등록** | 테스트 사용자에 계정 추가 → 1~2분 후 재시도 |
| `redirect_uri_mismatch` | 리디렉션 URI 불일치 | Cloud Console 등록 값을 정확히 일치시킴 |
| Client Secret 이 마스킹돼 안 보인다 | 생성 팝업을 닫았음 | JSON 다운로드 또는 **+ Add secret** |
| 연결됐는데 데이터가 없다 | **YouTube Data API v3 미활성화** | Cloud Console 라이브러리에서 활성화 |
| 7일마다 재인증을 요구한다 | 앱이 테스트 단계 | 앱 게시 검토 |
| 시청 시간이 안 나온다 | 정상 — Analytics API 미지원 범위 | — |
| 다른 채널 데이터가 보인다 | 로그인한 Google 계정의 채널 | 올바른 계정으로 재연결 |
## 제약
- **시청 시간·시청자 통계는 조회할 수 없습니다** (YouTube Analytics API 별도 권한 필요)
- 동영상 목록은 최대 50개까지 가져옵니다
- Shorts 여부는 API 에 명시 필드가 없어 정확히 구분되지 않습니다
- 테스트 단계 앱은 테스트 사용자 **최대 100명**, 토큰 유효기간 **7일** 제한이 있습니다
## 관련 문서
- [Instagram 연동](/news/guide/instagram) · [Facebook 페이지 연동](/news/guide/facebook-pages) · [네이버 블로그 연동](/news/guide/naver-blog)
- [운영자 가이드 — Google 앱 등록](/news/guide/operator-google)
가이드 목록 ▾
광고 연동 3▾
쇼핑몰·매출 연동 5▾
SNS 연동 4▾
금융 연동 4▾
화면별 사용법 7▾
팀·권한 관리 4▾
운영자 가이드 11▾
문제 해결 4▾
검색 결과가 없습니다.