12CODE

MKT FAQ

MKT FAQ 조직·업무프로세스

광고 대행사 리포트 작성을 자동화하려고 Python 코드나 자체 API를 메타 그래프 API·구글 애즈 API와 다이렉트로 연동할 때 인증 토큰 갱신 아키텍처는 어떻게 짜나요?

이런 질문도 같은 답입니다: 리포트 자동화 인증 토큰 갱신 · Meta Graph API 구글애즈 API 연동 · 대행사 리포트 자동화 아키텍처

답변

먼저 두 매체의 토큰 구조 차이부터 아셔야 합니다. 메타 그래프 API는 짧은 만료(1~2시간) 사용자 액세스 토큰을 앱 시크릿과 교환해 장기(최대 60일) 토큰으로 연장할 수 있고, 이후 시스템 사용자 토큰을 발급받으면 만료 없는 토큰으로 운영할 수 있습니다. 반면 구글 애즈 API는 refresh_token(만료 없음, 단 장기 미사용·정책 위반 시 무효화될 수 있음)을 한 번 발급받아 access_token(1시간 만료)을 필요할 때마다 재발급하는 구조입니다. 다수 광고주 계정을 대행하는 구조라면 메타는 개인 사용자 토큰이 아니라 비즈니스 매니저의 '시스템 사용자' 토큰을 쓰시는 게 실무 표준입니다. 개인 계정 토큰은 담당자 퇴사·비밀번호 변경 시 자동화가 통째로 끊기는 리스크가 있지만, 시스템 사용자 토큰은 특정 개인 계정에 종속되지 않아 담당자가 바뀌어도 파이프라인이 끊기지 않습니다. 토큰·시크릿 저장 방식도 아키텍처의 중요한 부분입니다. 코드에 하드코딩하거나 평문 파일로 저장하지 마시고, 클라우드 환경이라면 AWS Secrets Manager·GCP Secret Manager 같은 시크릿 관리 서비스에 암호화 저장한 뒤 스크립트가 실행 시점에 API로 불러와 쓰는 구조로 설계하세요. refresh_token으로 access_token을 재발급받는 로직은 매 실행 시 자동 처리하도록 코드에 넣어, 만료 때문에 자동화가 중단되지 않게 하는 게 핵심입니다. 마지막으로, 다수 계정을 자동 조회하는 스크립트는 API 호출 한도에 걸리기 쉽습니다. 메타·구글 모두 계정당·앱당 시간단위 호출 한도가 있어, 지수 백오프 재시도 로직과 요청 간 딜레이를 넣으셔야 다수 계정을 순회할 때 API가 일시 차단되는 문제를 피할 수 있습니다.

← FAQ 목록으로