Glowb Dev Docs
Admin APICreator Marketplace

Creator Marketplace 개요

메타 Instagram Creator Marketplace 탐색 (온디맨드 프록시 + Redis 캐싱)

Meta Creator Marketplace 탐색

메타 비즈니스 매니저의 Instagram Creator Marketplace 를 글로우비 안으로 옮겨와, 온보딩된 크리에이터를 직접 검색·필터·열람하는 기능입니다. 1차는 어드민 전용 탐색 조회만 제공합니다(저장/매핑/TB_INFLUENCE 매칭은 후속).

데이터 전략 — 온디맨드 프록시

요청이 올 때마다 메타 creator_marketplace_creators 엣지를 호출하고, 결과를 Redis 에 단기 캐싱합니다. 배치는 쓰지 않습니다.

  • 페이지당 10건 하드캡 + 커서 페이지네이션 (nextCursor 를 다음 요청 cursor 로 전달).
  • 인사이트(insights)는 마켓 호출에 인라인으로 함께 받아 카드/상세를 채웁니다(별도 인사이트 엔드포인트 없음). 상세는 recent_media 를 추가로 요청해 최근 미디어까지 포함합니다.

mock vs 실데이터 (App Review)

현재 표준(standard) 액세스에서는 mock 데이터(mocked_username_1~10, biography = "proceed through app review")가 내려옵니다. 응답의 mock 필드가 true 입니다. ads_read 및 마켓플레이스 권한 App Review 승인 후 동일 엔드포인트·필드로 실데이터가 자동 전환됩니다 (코드 변경 불필요).

토큰 / 페이지토큰

크리에이터 엣지는 페이지 액세스 토큰으로만 호출됩니다(유저토큰 직접 호출은 #190).

  1. 단명 유저토큰(Glowb graph 앱) → GET /{page-id}?fields=access_token 으로 페이지 액세스 토큰 추출.
  2. 추출한 페이지토큰을 Redis(meta:cm:pageToken)에 TTL(기본 50분) 캐시 → 만료 시 자동 재추출.
  3. 그 페이지토큰으로 creator_marketplace_creators 호출.

유저토큰이 만료되면 페이지토큰 추출이 실패하고 502 META_UPSTREAM_ERROR 와 함께 WARN 로그가 남습니다. 토큰은 Secret Manager/환경변수로 주입합니다. App Review 승인 후 액세스키가 시스템유저 토큰에 포함되면 그 토큰으로 교체합니다(코드/키 구조 변경 불필요).

레이트리밋

매 응답의 X-Business-Use-Case-Usage 에서 type=creator_marketplace 버킷 call_count(0~100%)를 로깅합니다. 90% 이상이면 WARN. 호출 사이 1초 throttle. 이 버킷은 인사이트 배치(ads_insights)와 별개라 상호 영향이 없습니다(실측 확인).

캐싱 요약

대상TTL(기본)비고
페이지 액세스 토큰meta:cm:pageToken3000s (50분)미스 시 재추출
검색 결과meta:cm:search:{필터해시}180s (3분)캐시 장애 시 원콜 폴백

설정 (deploy)

토큰/식별자는 application-staging-saas.yml + application-prod.yml 에 설정합니다(두 파일 모두 gitignore — 커밋되지 않는 배포 설정). 토큰은 환경변수/Secret Manager 로 주입하며 평문 커밋하지 않습니다.

meta:
  creator-marketplace:
    user-access-token: ${META_CM_USER_ACCESS_TOKEN:}   # 단명 유저토큰(페이지토큰 추출용)
    page-id: "107530898740982"                          # Glow.B Global 페이지
    ig-user-id: "17841457648644039"                     # @glow.b_kor
    page-token-ttl-seconds: 3000
    search-cache-ttl-seconds: 180

설정 블록이 없어도 애플리케이션은 정상 기동하며, 본 엔드포인트만 502 를 반환합니다(@Value 기본값 = 빈 문자열).

두 기능 (A 탐색기 + B 후보군)

  • A. 진짜 크리에이터 탐색기 — 검색·필터·열람 (GET .../creators).
  • B. 인스타그램 후보군 추천 — 캠페인 적합도순 후보군 + 추천사 (GET .../candidates). 1차는 mock 패스스루, App Review 승인 후 기존 Python 추천 계약(evaluation/vectorize-and-score)으로 적합도·추천사를 교체.

엔드포인트

광고주(biz)용 /ai/business/... 엔드포인트는 동일 서비스를 주입해 후속에 추가합니다.

On this page