매출 및 Apple Ads 엔드포인트
앱별로 연결한 소스의 데이터입니다. 매출, 구독 이벤트, App Store 퍼널, 가격과 오퍼 코드, 변경 전후 비교, 그리고 Apple Ads의 캠페인, 키워드, 검색어, 명령을 다룹니다. 스코프는 revenue:read와 ads:read입니다.
인증 · 크레딧 · 공통 매개변수 · 오류 코드 · openapi.json
GET /apps/{appId}/revenue
사용자가 연결한 소스에서 가져온 한 앱의 수익과 다운로드입니다. App Store Connect의 국가별 일일 판매 수량, Google Play의 일일 설치 수, 그리고 RevenueCat의 MRR, 28일 수익, 활성 구독과 체험, MRR 변동 내역을 반환합니다. connected=false는 연결된 소스가 없다는 뜻이고, measured=false는 소스에 이 앱의 행이 없다는 뜻입니다. 여기에는 추정값이 전혀 없습니다.
| 매개변수 | 위치 | 타입 | 설명 |
|---|---|---|---|
days | query | integer | 반환할 일별 시리즈의 일수, 1–365(기본값 90) |
함께 받는 매개변수: appId (필수)
curl "https://storelift.net/v1/apps/sbx-lumen/revenue" \
-H "Authorization: Bearer $STORELIFT_API_KEY"샘플 응답
GET /apps/{appId}/subscriptions
RevenueCat / Adapty 웹훅에서 가져온 한 앱의 구독 이벤트 수입니다. 일별·국가별로 체험 시작, 체험 전환, 유료 시작, 갱신, 취소, 환불, 결제 문제, 수익을 반환하고, 월별 코호트(사용자, 결제자)도 반환합니다. 집계 단위는 사용자가 아니라 이벤트입니다. connected=false는 연결된 웹훅이 없다는 뜻입니다.
| 매개변수 | 위치 | 타입 | 설명 |
|---|---|---|---|
days | query | integer | 기간(일), 1–365(기본값 90) |
함께 받는 매개변수: appId (필수)
curl "https://storelift.net/v1/apps/sbx-lumen/subscriptions" \
-H "Authorization: Bearer $STORELIFT_API_KEY"샘플 응답
GET /apps/{appId}/funnel
App Store Connect 분석에서 가져온 한 앱의 App Store 전환 퍼널입니다. 노출 → 제품 페이지 조회 → 다운로드를 오늘 값과 일별 기록으로 반환하며, Apple이 제공하는 경우 트래픽 소스별, 맞춤형 제품 페이지별 분석도 함께 반환합니다. Google Play에는 이에 해당하는 것이 없습니다. connected=false는 App Store Connect가 연결되지 않았다는 뜻입니다.
| 매개변수 | 위치 | 타입 | 설명 |
|---|---|---|---|
days | query | integer | 기록 기간(일), 1–365(기본값 90) |
함께 받는 매개변수: appId (필수)
curl "https://storelift.net/v1/apps/sbx-lumen/funnel" \
-H "Authorization: Bearer $STORELIFT_API_KEY"샘플 응답
GET /apps/{appId}/campaigns
한 앱을 홍보하는 Apple Ads 캠페인입니다(이름이 아니라 앱의 App Store ID로 매칭합니다). 최근 28일간 캠페인별 지출, 노출, 탭, 설치, 예산, 게재 상태와 합계, 그리고 지출 상위 키워드와 검색어를 반환합니다. 지출은 계정 자체의 통화(currency)로 표시됩니다. connected=false는 Apple Ads가 연결되지 않았다는 뜻입니다.
함께 받는 매개변수: appId (필수)
curl "https://storelift.net/v1/apps/sbx-lumen/campaigns" \
-H "Authorization: Bearer $STORELIFT_API_KEY"샘플 응답
GET /apps/{appId}/ads-keywords
한 앱을 위해 모든 캠페인에서 구매한 Apple Ads 키워드 전체를 지출 순으로 반환합니다(최근 28일). 입찰가, 일치 유형, 광고 그룹, 지출, 노출, 탭, 설치, 탭률, 전환율, 탭당 비용, 설치당 비용과 함께, 해당 국가에서 같은 단어에 대한 앱의 오가닉 순위를 나란히 보여 줍니다(추적하지 않는 단어는 tracked:false). campaign을 넘기면 캠페인 하나로 좁힙니다. connected=false는 Apple Ads가 연결되지 않았다는 뜻입니다.
| 매개변수 | 위치 | 타입 | 설명 |
|---|---|---|---|
country | query | string | 오가닉 순위 열에 쓸 국가 코드(기본값은 앱의 첫 번째 국가) |
campaign | query | string | 캠페인 하나로 좁힐 캠페인 ID |
함께 받는 매개변수: appId (필수)
curl "https://storelift.net/v1/apps/sbx-lumen/ads-keywords?country=us" \
-H "Authorization: Bearer $STORELIFT_API_KEY"GET /apps/{appId}/ads-search-terms
앱의 Apple Ads를 노출시킨, 사람들이 실제로 입력한 검색을 지출 순으로 반환합니다(최근 28일). 검색어, 그 검색을 잡은 키워드와 일치 유형, 지출, 탭, 설치, 탭당 비용과 설치당 비용, 그리고 해당 국가에서 그 검색에 대한 앱의 오가닉 순위를 나란히 보여 줍니다. 키워드로 추가할 검색, 제외 키워드로 추가할 검색, 이미 순위에 올라 있어 비용을 그만 써도 되는 검색을 가려내는 목록입니다. 검색량이 적어 Apple이 숨긴 검색어는 hidden에 합산됩니다. connected=false는 Apple Ads가 연결되지 않았다는 뜻입니다.
| 매개변수 | 위치 | 타입 | 설명 |
|---|---|---|---|
country | query | string | 오가닉 순위 열에 쓸 국가 코드(기본값은 앱의 첫 번째 국가) |
campaign | query | string | 캠페인 하나로 좁힐 캠페인 ID |
함께 받는 매개변수: appId (필수)
curl "https://storelift.net/v1/apps/sbx-lumen/ads-search-terms?country=us" \
-H "Authorization: Bearer $STORELIFT_API_KEY"GET /apps/{appId}/ads-commands
한 앱의 캠페인에 대한 Apple Ads 명령을 최신순으로 반환합니다. 대시보드, 자동화 규칙, confirm_action에서 나온 명령이 대상입니다. 각 명령에는 상태(queued, applying, applied, failed, unknown), 완료 시각, 오류가 있으면 그 내용, 실행 취소 정보가 붙습니다. unknown은 전송이 도중에 끊겨 Apple에 반영됐는지 알 수 없는 상태이므로, 다시 보내기 전에 Apple Ads에서 확인하세요. id를 넘기면 명령 하나를 반환합니다.
| 매개변수 | 위치 | 타입 | 설명 |
|---|---|---|---|
id | query | string | 목록에서 반환된 명령 ID, 명령 하나를 조회할 때 |
함께 받는 매개변수: appId (필수)
curl "https://storelift.net/v1/apps/sbx-lumen/ads-commands" \
-H "Authorization: Bearer $STORELIFT_API_KEY"GET /apps/{appId}/search-popularity
이 워크스페이스에 연결된 Apple Ads 계정에서 가져온 Apple 자체의 검색 인기도입니다. 앱의 카테고리에 대해 해당 국가에서 가장 많이 검색된 검색어(주간, Apple의 순서)를 카테고리 내 순위, 인기도 1-100(카테고리 내와 국가 전체), 1-5(Apple Ads 척도)와 함께 반환하고, 모든 추적 키워드에 inTopTerms true 또는 false를 표시합니다. 더 많은 단어를 확인하려면 terms를 넘기세요. connected=false는 Apple Ads가 연결되지 않았다는 뜻입니다.
| 매개변수 | 위치 | 타입 | 설명 |
|---|---|---|---|
terms | query | string | 추가로 조회할 검색어, 쉼표로 구분, 최대 50개 |
limit | query | number | 반환할 상위 검색어 수, 최대 200(기본값 50) |
함께 받는 매개변수: appId (필수) · country
curl "https://storelift.net/v1/apps/sbx-lumen/search-popularity?country=us" \
-H "Authorization: Bearer $STORELIFT_API_KEY"GET /apps/{appId}/pricing
RevenueCat 또는 Adapty 웹훅에서 가져온 한 앱의 상품 가격과 오퍼 코드입니다(최근 365일). 상품과 국가별로 현재 적용 중인 가격(통화, 현지 가격, 적용 시작일)과, 가격이 고정되어 있던 각 기간의 체험 시작, 신규 유료 구독, 체험 전환, 수익을 반환하고, 각 오퍼 코드의 첫날과 마지막 날, 사용 횟수도 반환합니다. 가격 변경은 새 기간으로 나타나므로 전후를 기간 단위로 비교할 수 있습니다. connected=false는 두 웹훅 모두 연결되지 않았다는 뜻입니다.
| 매개변수 | 위치 | 타입 | 설명 |
|---|---|---|---|
country | query | string | 스토어프런트 하나로 좁힐 두 글자 국가 코드 |
product | query | string | 상품 하나로 좁힐 스토어 상품 ID |
함께 받는 매개변수: appId (필수)
curl "https://storelift.net/v1/apps/sbx-lumen/pricing?country=us" \
-H "Authorization: Bearer $STORELIFT_API_KEY"GET /apps/{appId}/country-prices
앱의 상품 하나에 대한 국가별 가격을 App Store Connect / Google Play에서 읽어 반환합니다(Pro). 국가별로 현지 가격, 그 USD 환산값과 지수(미국 = 100), 아직 Apple(또는 Google)의 자동 가격인지 여부, 가격을 현지화한 경쟁 앱의 중앙값(Apple 자동 가격 대비 배수와 경쟁 앱 수)과 차이(퍼센트), 그리고 매력적인 가격대로 맞춘 제안 가격과 그 이유(경쟁 앱 중앙값 또는 소득 구간)를 반환합니다. 경쟁 앱은 앱에 수동으로 추가한 iOS 경쟁 앱이며, 비교하려면 국가당 3개 이상이 필요합니다. summary는 경쟁 앱보다 비싼 국가, 싼 국가, 아직 자동 가격인 국가의 수를 셉니다. state는 not_connected, pending(첫 읽기가 아직 끝나지 않음), permission(키의 역할로는 가격을 읽을 수 없음), no_products, ok 중 하나입니다. products에는 다른 상품이 나열됩니다. 바꾸려면 product를 넘기세요.
| 매개변수 | 위치 | 타입 | 설명 |
|---|---|---|---|
country | query | string | 행 하나만 반환할 두 글자 국가 코드 |
product | query | string | 상품 ID 또는 SKU(기본값은 첫 번째 상품) |
함께 받는 매개변수: appId (필수)
curl "https://storelift.net/v1/apps/sbx-lumen/country-prices?country=us" \
-H "Authorization: Bearer $STORELIFT_API_KEY"GET /apps/{appId}/change-impact
변경이 가져온 결과를 반환합니다. 변경일 하나(새 버전, 스크린샷, 부제, 키워드 필드, 캠페인 시작. 기본값은 등록 정보 타임라인의 최신 변경)에 대해 전후 같은 일수를 나란히 비교합니다. 키워드 순위(상승/하락/진입/이탈과 가장 큰 변동), App Store 퍼널(일별 노출, 페이지 조회, 다운로드와 전환율), 판매 보고서의 다운로드, 일별 구독 수익과 체험/유료 시작을 각각 변화율(퍼센트)과 함께 반환합니다. 변경일 자체는 두 기간 모두에서 제외됩니다. complete=false는 변경 후 기간이 아직 진행 중이라는 뜻입니다. recentChanges에는 최근 변경일이 나열되어 다른 날을 고를 수 있습니다.
| 매개변수 | 위치 | 타입 | 설명 |
|---|---|---|---|
country | query | string | 순위와 등록 정보 타임라인에 쓸 국가 코드(기본값은 앱의 첫 번째 국가) |
day | query | string | 변경일 YYYY-MM-DD(기본값은 최신 변경) |
window | query | integer | 전후 각각의 일수, 3–30(기본값 7) |
함께 받는 매개변수: appId (필수)
curl "https://storelift.net/v1/apps/sbx-lumen/change-impact?country=us" \
-H "Authorization: Bearer $STORELIFT_API_KEY"