메인 콘텐츠로 건너뛰기

사용자 계정 vs 광고 계정

Ads API를 사용할 때는 두 가지 유형의 계정이 존재합니다: 광고 계정과 X 사용자 계정. Ads API 문서 전반에서 “계정”이라는 용어는 일반적으로 광고 계정을 의미합니다.
  • 광고 계정은 business.x.com에 등록되며 API에서는 account_id로 식별됩니다. 광고 계정은 자금원과 직접 연결되며, 하나 이상의 X 사용자 계정의 콘텐츠를 ‘프로모션 가능한 사용자’로 활용합니다. 각 광고 계정은 하나 이상의 X 사용자 계정에 권한을 부여할 수 있습니다. 광고 계정, 즉 “현재 계정”은 실행되는 거의 모든 URL에서 인라인 :account_id 매개변수로 표시됩니다.
  • X 사용자 계정(예: @AdsAPI)은 Ads API에서 user_id로 식별됩니다. 이러한 계정은 하나 이상이 특정 광고 계정과 연계될 수 있습니다. API에 요청을 보내는 인증된 X 사용자 계정은 ‘현재 사용자’라고 합니다. 현재 사용자가 액세스할 수 있는 광고 계정 목록은 GET accounts에서 확인할 수 있습니다. ‘프로모션 가능한 사용자’는 특정 광고 계정이 프로모션할 수 있는 X 핸들입니다. 자세한 내용은 Obtaining Ads Account Access를 참조하세요.

광고 계정 액세스 방법

광고주의 계정에 대해 Ads API 요청을 수행하는 방법은 두 가지가 있습니다.
  1. 광고주를 대신하여 요청하기(권장)
  2. 여러 계정을 지원하는 Agency와 같이 광고주의 계정에 대한 액세스 권한이 부여된 본인 계정을 사용하여 요청하기
이 문서는 이러한 옵션 간 차이를 간략히 소개하며, multi-user login FAQ 등 다른 자료와 함께 참고하시기 바랍니다. 요청 권한 부여에 설명된 대로 Ads API에 대한 모든 요청에는 OAuth 1.0a3-leggedOAuth 플로우를 통해 획득한 액세스 토큰을 사용하는 Authorization 헤더가 필요합니다. 애플리케이션은 액세스 토큰 획득을 위한 웹 기반 OAuth 플로우를 구현해야 합니다. Ads API 개발자는 X 광고주에게 로그인 자격 증명의 공유를 절대 요청해서는 안 됩니다. 기본적으로 각 X developer application에는 해당 애플리케이션을 소유한 계정으로 Ads API 요청을 수행하는 데 사용할 수 있는 정적 액세스 토큰이 포함되어 있습니다. 이러한 자격 증명은 3-legged 또는 PIN 기반 OAuth 플로우 없이 단일 계정 사용 사례에 적합합니다. 다른 X Ads Account에 접근하지 않는 경우 아래 단계 대신 이러한 single-user 자격 증명을 사용하십시오.

접근 수준

앱 수준 권한

각 사용자는 Ads API 신청 시 요청한 바에 따라 해당 접근 수준이 부여됩니다: 참고: 2023년 7월 이전에 접근을 요청한 Ads API 개발자는 접근 수준과 권한이 다를 수 있으며, OAuth 토큰이 5개로 제한될 수 있습니다. 기존 애플리케이션에 추가 엔드포인트 접근을 요청하거나 토큰 제한을 해제하려면 접근 확대 가이드를 참고하세요.

광고 계정 수준 권한

Ads 계정에 접근 권한이 있는 각 사용자는 Account administrator, Ad manager, Campaign analyst, Organic analyst, Creative Manager 중 하나의 특정 계정 수준 권한을 보유합니다. 계정 수준 권한에 대한 최신 문서는 business.x.com을 참조하세요. 애플리케이션은 Authenticated User Access API 엔드포인트를 통해 현재 인증된 사용자의 권한을 조회하여 접근 가능한 API 엔드포인트와 Ads 기능을 판별해야 합니다. 참고: Conversion API를 사용하는 모든 사용자 토큰은 Account administrator 또는 Ad manager 계정 수준 권한을 가진 사용자여야 합니다.                                                                                                                                              

액세스 토큰을 발급받는 방법

1. 광고주(사용자) 액세스 토큰 획득

광고주의 액세스 토큰을 얻는 방법은 두 가지가 있습니다. 가장 일반적인 방법은 웹 UI에서 직접 3-legged OAuth 플로우를 거치는 것입니다. 광고주가 접근할 수 있는 공개 UI가 없는 애플리케이션은 PIN 기반 OAuth 프로세스를 구현할 수 있습니다. 사용자가 3-legged 플로우를 완료하면, 애플리케이션은 API를 통해 해당 사용자의 Ads 계정에 요청을 보낼 수 있는 자격 증명을 얻게 됩니다. OAuth 플로우를 통해 사용자 자격 증명을 획득하는 방법은 대부분의 Ads API 개발자에게 광고주 계정에 접근하기 위한 강력 권장 방식입니다. 이를 통해 사용자를 대신해 API를 호출하고 해당 사용자로서 작업을 수행할 수 있습니다. 이러한 토큰은 만료되지 않지만 사용자가 언제든지 취소할 수 있습니다.

2. (개발자) 액세스 토큰 받기

이 옵션을 사용하려면 광고주가 business.x.com의 X UI를 통해 자신의 X Ads 계정에 대한 액세스 권한을 귀하의 @username(또는 여러 @username)에게 부여해야 합니다. 귀하의 계정에 대해 3-legged OAuth 플로우로 발급된 액세스 토큰은 광고주의 X Ads 계정에 접근할 수 있습니다. 이를 통해 광고주의 OAuth 토큰이 아니라 귀하 자신의 @username의 OAuth 토큰으로 API를 호출할 수 있습니다. 이 옵션의 핵심은, 게시물 위임/작성 권한이 귀하의 @username에 부여된 경우에만 Promoted-Only 게시물을 생성할 수 있다는 점입니다. 계정의 FULL 프로모션 가능 사용자를 대신해 Promoted-Only 게시물을 생성할 수 있는 권한을 얻으려면, 이 플로우에서 게시물 생성 권한도 함께 부여받아야 합니다. 그러면 GET accounts/:account_id/authenticated_user_access 엔드포인트에서 TWEET_COMPOSER 권한을 통해 액세스가 활성화됩니다.

이러한 방법 간의 차이점

광고주(사용자) OAuth 토큰(개발자) OAuth 토큰
 (@username이 추가되어 계정 구분)
광고 계정 액세스
사용자를 대신해 게시물 생성✔*
캠페인 관리
애널리틱스 액세스
사용자를 대신해 카드 생성
개발자의 X Ads UI
경유 액세스 가능
요청 한도광고주별로 별도 적용광고주 계정별로 별도 적용
참고: 자세한 내용은 위의 개발자 액세스 토큰 받기 섹션을 참조하세요.

예시 사용 사례

광고주 액세스 토큰: OAuth 3-legged 웹 플로우

표준 플로우는 웹 기반이며 3-legged authorization OAuth 플로우를 사용합니다. 여기 소개된 스크린샷은 샘플의 일부이며, 소스 코드는 https://github.com/xdevplatform/twauth-web에서 확인할 수 있습니다. 애플리케이션 실행 중 어느 시점에서든 애플리케이션 승인을 위해 X로 리디렉트해야 합니다.
image0
요청 토큰과 함께 X로 리디렉트하면, 사용자에게 애플리케이션 승인 여부를 묻는 화면이 표시됩니다.
image1
사용자가 애플리케이션을 승인하면 요청 토큰을 생성할 때 제공한 콜백 URL로 리디렉트됩니다. 이를 사용해 해당 사용자의 영구 액세스 토큰을 발급받아 로컬에 저장하세요.
image