개요

Instagram 기본 디스플레이 API는 앱이 Instagram 사용자의 프로필, 이미지, 동영상, 사진첩을 가져오기 위해 사용할 수 있는 HTTP 기반 API입니다.

2023년 10월 27일부터 앱에서 기본 디스플레이 API에 대한 고급 액세스 권한이 필요한 경우 데이터 처리 질문을 작성해야 할 수 있습니다. 자세한 내용은 이 블로그 게시물FAQ를 참조하세요.

9월 5일부터 일부 개발자는 연간 데이터 사용 확인 중에도 데이터 처리 질문에 답변해야 할 수 있습니다.

비공개 Instagram 계정에 대한 장기 실행 액세스 토큰새로 고침할 수 있습니다. 또한 이제 비공개 계정으로 앱 사용자가 앱에 부여한 권한은 90일 동안 유효합니다.

구성 요소

기본 URL

  • api.instagram.comInstagram 사용자 액세스 토큰을 가져오기 위해 사용합니다.
  • graph.instagram.com — Instagram 사용자 프로필과 미디어를 가져오기 위해 사용합니다.

버전

이 API는 Facebook 그래프 API와 동일한 버전의 프로토콜과 릴리스 사이클을 지원합니다. 새로운 버전은 약 3개월마다 릴리스되며 각 버전은 대략 2년간 제공되다가 사용 중단됩니다.

특정 API 버전을 쿼리하려면 기본 URL 뒤의 쿼리 경로에 버전 번호를 포함하세요. 예를 들면 다음과 같습니다.

https://graph.instagram.com/v11.0/10218560180051171/media

요청에서 버전 번호를 누락하면 앱 대시보드 > 설정 > 고급 > API 버전 업그레이드 섹션에서 지정한 버전으로 설정됩니다.

인증 창

인증 창에서는 앱이 앱 사용자로부터 인증 코드권한을 가져올 수 있습니다. 인증 코드는 Instagram 사용자 액세스 토큰으로 교환할 수 있으며, 앱 사용자 프로필이나 미디어를 쿼리할 때 반드시 포함해야 합니다.

인증 창을 구현하려면 액세스 토큰 가져오기 가이드를 참조하세요.

인증 코드

인증 코드는 단기 실행되는 Instagram 사용자 액세스 토큰으로 교환할 수 있습니다. 인증 코드를 가져오려면 앱에 인증 창을 구현합니다. 앱 사용자가 인증 창을 통해 ID를 인증하고 앱에 필요한 모든 권한을 부여하고 나면, 사용자가 인증 코드와 함께 앱으로 리디렉션됩니다. 그러면 API를 사용하여 인증 코드를 앱 사용자의 단기 실행 Instagram 사용자 액세스 토큰으로 교환할 수 있습니다.

인증 코드는 단기 실행 코드이고 1시간 동안만 유효합니다.

Instagram 사용자 액세스 토큰

API 인증은 OAuth 2.0 프로토콜을 준수하는 Instagram 사용자 액세스 토큰이 처리합니다. 액세스 토큰은 (앱과 사용자 쌍에 고유한) 앱 범위이며 단기 실행되거나 장기 실행될 수 있습니다. Instagram 사용자나 그 사용자의 미디어를 쿼리하는 API 요청에는 Instagram 사용자 액세스 토큰이 포함되어야 합니다.

단기 실행 액세스 토큰

단기 실행 액세스 토큰은 1시간 동안 유효하지만 장기 실행 토큰으로 교환할 수 있습니다. 단기 실행 액세스 토큰을 가져오려면 앱에 인증 창을 구현합니다. 앱 사용자가 인증 창을 통해 ID를 인증하면 인증 코드와 함께 사용자를 앱으로 리디렉션합니다. 그러면 인증 코드를 단기 실행 액세스 토큰으로 교환할 수 있습니다.

장기 실행 액세스 토큰

만료되지 않은 단기 실행 토큰은 60간 유효한 장기 실행 액세스 토큰으로 교환할 수 있습니다. 장기 실행 토큰은 GET /refresh_access_token 엔드포인트를 쿼리하면 만료 전에 새로 고침할 수 있습니다.

권한

데이터 액세스 인증은 아래에 나열된 권한을 사용하여 앱 사용자가 제어합니다. 앱이 데이터에 액세스하려면 사용자가 먼저 인증 창을 통해 해당 권한을 앱에 부여해야 합니다.

Instagram 테스터는 언제든 앱에 이러한 권한을 부여할 수 있습니다. 앱에서 역할이 부여되지 않은 앱 사용자가 앱에 이러한 권한을 부여할 수 있으려면 먼저 앱 검수 절차를 통해 각 권한을 고급 액세스에 대해 승인받아야 하고 앱이 라이브 모드여야 합니다.

공개 계정 앱 사용자가 부여한 권한은 90일 동안 유효합니다. 앱 사용자의 장기 실행 액세스 토큰새로 고침할 경우, 토큰을 부여한 앱 사용자에게 공개 계정이 있는 경우 부여된 권한이 90일 더 연장됩니다. 그러나 앱 사용자의 계정이 비공개일 경우, 부여된 권한을 연장할 수 없고 앱 사용자가 만료된 권한을 앱에 다시 부여해야 합니다.

Instagram 테스터

Instagram 사용자로 앱을 테스트하려면 먼저 Instagram 사용자 계정에 초대를 보내고 해당 계정이 초대를 수락해야 합니다. 초대는 앱 대시보드 > 역할 > 역할 탭의 Instagram 테스터에서 발송할 수 있습니다.

Instagram 사용자는 계정에 로그인한 후 Instagram 웹사이트 또는 모바일 앱의 (프로필 아이콘) > 프로필 편집 > 앱 및 웹사이트 > 테스터 초대 섹션에서 초대를 수락할 수 있습니다.

리소스

API의 데이터는 Instagram 사용자와 해당 미디어(이미지, 동영상 및 사진첩)로 구성됩니다. 모든 데이터는 권한으로 보호를 받습니다. 앱이 사용자 데이터에 액세스하려면 사용자가 인증 창을 통해 앱에 액세스 권한을 부여해야 합니다.

사용자

Instagram 사용자와 해당 프로필은 사용자 노드로 표시됩니다. Instagram 기존 API 사용자 ID는 Instagram 기본 디스플레이 API와 호환되지 않습니다.

미디어

사진, 동영상 및 사진첩은 미디어 노드로 표시되고 개별 사용자별로 생성됩니다.

사용 제한

모든 엔드포인트 요청에는 그래프 API의 플랫폼 사용 제한이 적용됩니다.

앱에 Instagram 제품을 추가한 후 앱의 현재 호출 개수 사용량을 앱 대시보드 > Instagram > 기본 디스플레이 사용 제한 탭에서 확인할 수 있습니다.

앱 유형

비즈니스 앱으로 지정된 앱은 지원되지 않습니다. 앱이 비즈니스 앱이라면 대신 Instagram 그래프 API를 사용하거나 비즈니스 앱이 아닌 새로운 앱을 만드세요.

앱 검수

Instagram 테스터는 언제든 앱에 Instagram 권한을 부여할 수 있습니다. 앱에서 역할이 부여되지 않은 앱 사용자가 앱에 Instagram 권한을 부여할 수 있으려면 먼저 앱 검수 절차를 통해 각 권한을 고급 액세스에 대해 승인받아야 하고 앱이 라이브 모드여야 합니다.

앱 개발을 완료하고 앱을 라이브 모드로 전환할 준비가 끝나면 앱 검수, 제출 샘플, 일반적인 거부 이유 문서를 통해 앱 검수 절차에 대한 자세한 내용을 참조하세요. 이 절차에 익숙해지고 나면 앱 대시보드 > 제품 > Instagram > 기본 디스플레이 탭에서 Instagram 기본 디스플레이 API 권한에 대한 승인을 요청할 수 있습니다.

사용자 토큰 생성기로 액세스 토큰을 생성할 목적으로만 앱을 만드는 경우, 앱 검수를 위해 앱을 제출할 필요가 없습니다. 앱이 개발 모드인 경우 사용자 토큰 생성기를 사용할 수 있으며, 앱에 아무런 권한을 요구하지 않습니다.

비즈니스 인증

앱이 개발 모드일 때는 Instagram 테스터 계정에서만 데이터에 액세스할 수 있습니다. 앱을 라이브 모드로 전환하고 테스터가 아닌 계정에서 데이터에 액세스하기 전에 먼저 비즈니스 인증을 완료해야 합니다.

사용 방법

API를 사용하려면 먼저 인증 창을 가져와 앱 사용자에게 표시합니다. 앱 사용자가 인증 창을 통해 ID를 인증하고 앱에 권한을 부여하여 앱이 데이터에 액세스할 수 있도록 승인합니다. 인증이 완료되고 나면 인증 창이 인증 코드와 함께 앱으로 다시 리디렉션됩니다. 코드를 캡처하고 해당 코드를 단기 실행 Instagram 사용자 액세스 토큰으로 교환합니다. 단기 실행 토큰을 받고 나면 이 토큰을 사용하여 사용자가 앱에 액세스를 허용한 모든 데이터에 대해 사용자미디어 엔드포인트를 쿼리하거나 장기 실행 토큰으로 교환할 수 있습니다.

도구

사용자 토큰 생성기

Instagram 사용자 토큰 생성기는 모든 Instagram 공개 계정에 대해 장기 실행 Instagram 사용자 액세스 토큰을 신속히 생성하는 데 사용할 수 있는 도구입니다. 앱을 테스트하면서도 인증 창을 구현하는 데 방해받고 싶지 않거나 타사 서비스에서 제공하는 복사 및 붙여넣기가 가능한 코드를 사용하고 있을 경우(예: 웹사이트에 자신의 Instagram 데이터 표시)에 특히 유용합니다.

인증 창을 트리거하여 이 도구를 실행하면 테스터 계정으로 지정한 Instagram 공개 계정에 로그인할 수 있습니다. 로그인하고 나면 도구는 복사 및 붙여넣기가 가능한 장기 실행 액세스 토큰을 생성합니다. 토큰은 Instagram 공개 계정에 대해서만 생성할 수 있습니다.

토큰은 이동 가능합니다! 즉, 토큰을 가지고 있는 사람은 누구나 Facebook API를 통해 해당 토큰을 생성하는 데 사용한 Instagram 테스터 계정에서 데이터를 가져올 수 있습니다. 그러므로 신뢰할 수 있는 타사 서비스에만 토큰을 공유해야 합니다. 토큰을 제공하라고 요구하는 타사 서비스는 이용하지 않는 것이 좋습니다. 대신 토큰 플레이스홀더가 포함되고 복사 및 붙여넣기가 가능한 코드를 제공하여 개발자가 직접 교체할 수 있는 서비스를 사용해야 합니다.

토큰 생성기는 앱 대시보드 > 제품 > Instagram > 기본 디스플레이 탭에서 액세스할 수 있습니다.

사용자 토큰 생성기로 액세스 토큰을 생성할 목적으로만 앱을 만드는 경우, 앱 검수를 위해 앱을 제출할 필요가 없습니다. 앱이 개발 모드인 경우 사용자 토큰 생성기를 사용할 수 있으며, 앱에 아무런 권한을 요구하지 않습니다.

다음 단계

앱을 설정하고 기본 API 요청을 보내는 방법은 시작하기 가이드를 참조하세요.