Skip to content

Instagram 앱을 만들고 계정 Access Token 받기 ​

이 문서는 Meta for Developers에서 Instagram 앱을 만들고, 자신의 Instagram 프로페셔널 계정을 테스터로 추가하고, Instagram User Access Token을 생성한 뒤 팔로워 수를 읽을 수 있는지 확인하는 방법을 설명합니다.

개인 개발, API 디버깅, 출시 전 테스트에 적합합니다. 앱이 개발 모드인 동안에는 관리자, 개발자, 초대를 수락한 테스터만 사용할 수 있습니다.

중요: 이 문서는 graph.instagram.com을 사용하는 Instagram API with Instagram Login 기준입니다. Facebook Page가 필요한 Instagram API with Facebook Login과는 다른 인증 방식입니다.

1. 준비 사항 ​

다음을 준비하세요.

  • Meta for Developers에 로그인할 수 있는 Meta/Facebook 개발자 계정
  • Business 또는 Creator 유형의 Instagram 프로페셔널 계정
  • 해당 Instagram 계정의 로그인 권한
  • 생성한 Access Token을 안전하게 저장할 위치

개인 계정이라면 먼저 Business 또는 Creator로 전환하세요. Instagram API with Instagram Login은 프로페셔널 계정용입니다.

2. Meta 앱 만들기 ​

Meta 앱 목록을 열고 로그인한 뒤 오른쪽 위의 Create an application / 앱 만들기를 선택합니다.

Meta for Developers에서 앱 만들기

앱 이름, 연락처 이메일 등 기본 정보를 입력합니다. 사용 사례 화면에서 Managing messages and content on Instagram을 선택합니다.

Instagram 관리 사용 사례 선택

안내에 따라 나머지 설정을 완료합니다. 생성이 끝나면 앱 Dashboard가 열립니다.

앱 생성 후 Dashboard

Meta는 화면과 번역을 주기적으로 변경합니다. 이름이 다르면 Instagram, Use cases, Application identity 같은 키워드로 찾으세요.

3. Instagram 테스터 추가하기 ​

Dashboard 왼쪽에서 Application Identity / 앱 ID를 펼치고 사용자 관리로 이동한 뒤 오른쪽 위의 Add user / 사용자 추가를 선택합니다.

대화 상자에서 Instagram testers를 선택하고 인증할 사용자 이름을 @ 없이 입력합니다. 계정을 확인하고 초대를 보냅니다.

Instagram 테스터 추가

일반 Tester가 아니라 대화 상자 아래에 별도로 표시된 Instagram testers 역할을 선택해야 합니다.

일부 화면에는 이전 “Instagram Basic Display API” 문구가 남아 있을 수 있습니다. Meta 문구가 통일되지 않은 것이며, 이 문서는 중단된 Basic Display API를 사용하지 않습니다.

4. Instagram에서 테스트 초대 수락하기 ​

추가한 Instagram 계정으로 로그인하고 다음 페이지를 엽니다.

https://www.instagram.com/accounts/manage_access/

Instagram 설정에서도 다음 순서로 이동할 수 있습니다.

text
Website permissions
→ Apps and websites
→ Tester Invites

Tester Invites에서 앱을 찾아 초대를 수락합니다. 수락해야 계정이 유효한 테스터가 됩니다.

Instagram에서 Tester Invite 수락

초대가 보이지 않으면 현재 로그인한 사용자 이름이 Dashboard에 추가한 이름과 정확히 같은지 확인하고 다시 로그인하세요.

5. Instagram 계정 추가 및 Token 생성하기 ​

Meta Dashboard로 돌아가 Use cases / 사용 사례를 열고 Instagram 항목 옆의 Customize / 맞춤 설정을 선택합니다.

Instagram 사용 사례 설정 열기

Instagram API 설정에서 API setup with Instagram Login을 선택합니다. 일반적으로 다음 권한이 표시됩니다.

text
instagram_business_basic
instagram_business_manage_comments
instagram_business_manage_messages

계정 정보와 팔로워 수만 확인한다면 핵심 권한은 instagram_business_basic입니다. 댓글, 메시지, 게시 권한은 실제 기능에 필요한 경우에만 요청하세요.

Generate access password / Generate access token에서 Add account를 선택한 뒤, 초대를 수락한 Instagram 계정으로 로그인하고 인증을 완료합니다.

Instagram API 설정에서 계정 추가

추가 후 계정 옆의 Generate password / Generate token을 선택하고 안내를 확인한 뒤 생성된 문자열을 복사합니다.

Instagram Access Token 복사

화면에서 “Access password”라고 표시할 수 있지만 실제로는 Instagram User Access Token이며 Instagram 로그인 비밀번호가 아닙니다.

Token은 보통 한 번만 전체 표시됩니다. 암호 관리자, 서버 시크릿 저장소, 환경 변수에 즉시 보관하고 코드, 스크린샷, 채팅, 공개 로그, Git에 넣지 마세요.

6. Graph API Explorer에서 Token 검증하기 ​

Graph API Explorer를 열고 다음과 같이 설정합니다.

  1. 메서드는 GET.
  2. API 호스트는 graph.instagram.com.
  3. 현재 지원되는 버전(화면 예시는 v25.0).
  4. 경로는 me?fields=id,username,followers_count.
  5. Access Token 입력란에 Token 붙여넣기.
  6. Submit / 제출 선택.

Graph API Explorer에서 Token 검증

동일한 요청은 다음과 같습니다.

http
GET https://graph.instagram.com/v25.0/me?fields=id,username,followers_count
Authorization: Bearer <INSTAGRAM_ACCESS_TOKEN>

cURL도 사용할 수 있습니다.

bash
curl -G "https://graph.instagram.com/v25.0/me" \
  -H "Authorization: Bearer $INSTAGRAM_ACCESS_TOKEN" \
  --data-urlencode "fields=id,username,followers_count"

성공 응답 예시:

json
{
  "id": "<INSTAGRAM_USER_ID>",
  "username": "your_username",
  "followers_count": 123
}

올바른 id, username, followers_count가 반환되면 Token, 계정 인증, 기본 권한이 작동합니다.

자신의 프로페셔널 계정에는 복수형 followers_count를 사용합니다. Messaging User Profile API에서 DM 사용자를 조회할 때는 단수형 follower_count를 사용합니다.

7. 사용 범위와 제한 ​

여기서 생성한 테스트 Token은 주로 앱 관리자와 Instagram 테스터 계정의 개발 및 디버깅용입니다.

현재 앱을 인증한 Instagram 프로페셔널 계정만 직접 읽을 수 있습니다. 사용자 이름만으로 임의의 개인 계정을 조회하거나 미인증 계정의 비공개 정보를 읽을 수 없습니다.

개발 모드에서는 앱 역할과 초대를 수락한 테스터만 인증할 수 있습니다. 고객용으로 제공하려면 정식 Instagram Login/OAuth를 구현하고 필요한 앱 공개, 비즈니스 인증, App Review를 완료하세요.

미인증 공개 Business/Creator 계정을 조회하려면 Instagram API with Facebook Login의 Business Discovery를 검토하세요. 여기서 만든 Instagram Login Token으로는 직접 사용할 수 없습니다.

8. 자주 묻는 질문 ​

1. 계정을 추가할 때 Instagram 사용자를 찾을 수 없습니다 ​

계정이 Instagram tester로 추가되고 Instagram의 Tester Invites에서 초대를 수락했는지 확인하세요. Dashboard에 사용자 이름만 입력해서는 충분하지 않습니다.

2. Invalid OAuth access token이 반환됩니다 ​

호스트가 graph.instagram.com인지, Token에 공백이 없는지, 만료되거나 취소되지 않았는지 확인하세요. Instagram Login Token을 graph.facebook.com의 Business Discovery로 보내지 마세요.

3. Tried accessing nonexisting field가 반환됩니다 ​

필드 철자와 객체를 확인하세요. 자신의 프로페셔널 계정은 followers_count, Messaging User Profile API는 follower_count를 사용합니다.

4. Explorer에서는 되지만 내 프로그램에서는 안 됩니다 ​

동일한 Token, API 호스트, 버전을 사용하는지 확인하세요. Authorization: Bearer 헤더를 사용하고 서버가 Token을 잘라내지 않는지 점검하세요.

5. Token이 노출되면 어떻게 해야 하나요? ​

Meta/Instagram 인증 설정에서 즉시 취소하고 새로 생성하세요. 채팅, 로그, 스크린샷, 저장소에 표시된 Token은 모두 노출된 것으로 간주해야 합니다.

참고 자료 ​