인증 방식
🔐 OAuth 2.0
요금
무료 (호출량 제한 있음)
Base URL
graph.instagram.com
태그
Instagram, 소셜
서비스 소개
Instagram Graph API는 비즈니스/크리에이터 계정의 미디어(게시물·릴스·스토리), 댓글, 인사이트(도달·좋아요·저장), 해시태그 검색 등을 조회합니다. 마케팅 분석 도구, 소셜 미디어 관리 서비스, 자동 리포팅 등에 활용됩니다. Facebook 앱 등록이 선행되어야 합니다.
🚀 시작하기
- 1
Meta 개발자 앱 생성
developers.facebook.com → 앱 만들기 → 비즈니스 유형 선택
- 2
Instagram 비즈니스 계정 연결
Instagram Basic Display 또는 Instagram Graph API 제품 추가
- 3
장기 액세스 토큰 발급
단기 토큰(60일)을 장기 토큰(60일 갱신 가능)으로 교환
- 4
권한 검토 요청
프로덕션 사용 시 Meta 앱 검토 필요 (개발 모드는 본인 계정만)
💡 코드 예제
JavaScriptJavaScript (미디어 조회)
const IG_TOKEN = process.env.INSTAGRAM_ACCESS_TOKEN
const IG_USER_ID = process.env.INSTAGRAM_USER_ID
// 내 게시물 목록
async function getMedia() {
const res = await fetch(
`https://graph.instagram.com/${IG_USER_ID}/media?` +
`fields=id,caption,media_type,media_url,thumbnail_url,timestamp,like_count,comments_count&` +
`access_token=${IG_TOKEN}&limit=12`
)
return (await res.json()).data
}
// 인사이트 (비즈니스 계정)
async function getInsights(mediaId: string) {
const res = await fetch(
`https://graph.instagram.com/${mediaId}/insights?` +
`metric=reach,impressions,saved,video_views&access_token=${IG_TOKEN}`
)
return (await res.json()).data
}
// 토큰 갱신 (만료 전 주기적 실행)
async function refreshToken() {
const res = await fetch(
`https://graph.instagram.com/refresh_access_token?` +
`grant_type=ig_refresh_token&access_token=${IG_TOKEN}`
)
return res.json() // { access_token, token_type, expires_in }
}