API 목록으로
📹 미디어·소셜무료

Instagram Graph API

Meta · Instagram Graph API

인증 방식

🔐 OAuth 2.0

요금

무료 (호출량 제한 있음)

Base URL

graph.instagram.com

태그

Instagram, 소셜

서비스 소개

Instagram Graph API는 비즈니스/크리에이터 계정의 미디어(게시물·릴스·스토리), 댓글, 인사이트(도달·좋아요·저장), 해시태그 검색 등을 조회합니다. 마케팅 분석 도구, 소셜 미디어 관리 서비스, 자동 리포팅 등에 활용됩니다. Facebook 앱 등록이 선행되어야 합니다.

🚀 시작하기

  1. 1

    Meta 개발자 앱 생성

    developers.facebook.com → 앱 만들기 → 비즈니스 유형 선택

  2. 2

    Instagram 비즈니스 계정 연결

    Instagram Basic Display 또는 Instagram Graph API 제품 추가

  3. 3

    장기 액세스 토큰 발급

    단기 토큰(60일)을 장기 토큰(60일 갱신 가능)으로 교환

  4. 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 }
}