Documentação para desenvolvedores › Referência da API
Endpoints de receita e Apple Ads
As fontes conectadas de cada app: receita, eventos de assinatura, o funil da App Store, preços e códigos de oferta, o antes e depois de uma mudança, e campanhas, palavras-chave, termos de busca e comandos do Apple Ads. Escopos revenue:read e ads:read.
Autenticação · Créditos · Parâmetros comuns · Códigos de erro · openapi.json
GET /apps/{appId}/revenue
Receita e downloads de um app a partir das fontes que o usuário conectou: unidades diárias por país do App Store Connect, instalações diárias do Google Play e, do RevenueCat, MRR, receita de 28 dias, assinaturas ativas e testes gratuitos, com o detalhamento da movimentação do MRR. connected=false significa que nenhuma fonte está conectada; measured=false significa que as fontes não têm linhas para este app. Nada aqui é estimado.
| Parâmetro | Local | Tipo | Descrição |
|---|---|---|---|
days | query | integer | quantos dias de séries diárias retornar, 1–365 (padrão 90) |
Também aceita: appId (obrigatório)
curl "https://storelift.net/v1/apps/sbx-lumen/revenue" \
-H "Authorization: Bearer $STORELIFT_API_KEY"Resposta de exemplo
GET /apps/{appId}/subscriptions
Contagens de eventos de assinatura de um app a partir do webhook do RevenueCat / Adapty: por dia e por país — inícios de teste gratuito, conversões de teste, inícios pagos, renovações, cancelamentos, reembolsos, problemas de cobrança e receita —, além de coortes mensais (usuários, pagantes). As contagens são de eventos, não de usuários. connected=false significa que nenhum webhook está conectado.
| Parâmetro | Local | Tipo | Descrição |
|---|---|---|---|
days | query | integer | janela em dias, 1–365 (padrão 90) |
Também aceita: appId (obrigatório)
curl "https://storelift.net/v1/apps/sbx-lumen/subscriptions" \
-H "Authorization: Bearer $STORELIFT_API_KEY"Resposta de exemplo
GET /apps/{appId}/funnel
O funil de conversão da App Store de um app a partir das análises do App Store Connect: impressões → visualizações da página do produto → downloads, com o ponto de hoje e o histórico dia a dia, e os detalhamentos por fonte de tráfego e por página de produto personalizada quando a Apple os fornece. O Google Play não tem equivalente aqui. connected=false significa que o App Store Connect não está conectado.
| Parâmetro | Local | Tipo | Descrição |
|---|---|---|---|
days | query | integer | janela do histórico em dias, 1–365 (padrão 90) |
Também aceita: appId (obrigatório)
curl "https://storelift.net/v1/apps/sbx-lumen/funnel" \
-H "Authorization: Bearer $STORELIFT_API_KEY"Resposta de exemplo
GET /apps/{appId}/campaigns
Campanhas do Apple Ads que promovem um app (associadas pelo id do app na App Store, não pelo nome): gasto, impressões, toques, instalações, orçamento e status de veiculação por campanha nos últimos 28 dias, os totais e as principais palavras-chave e termos de busca por gasto. O gasto está na moeda da própria conta (currency). connected=false significa que o Apple Ads não está conectado.
Também aceita: appId (obrigatório)
curl "https://storelift.net/v1/apps/sbx-lumen/campaigns" \
-H "Authorization: Bearer $STORELIFT_API_KEY"Resposta de exemplo
GET /apps/{appId}/ads-keywords
Todas as palavras-chave do Apple Ads compradas para um app em suas campanhas (últimos 28 dias), por gasto: lance, tipo de correspondência, grupo de anúncios, gasto, impressões, toques, instalações, taxa de toques, taxa de conversão, custo por toque e custo por instalação, com a posição orgânica do app para a mesma palavra no país ao lado (tracked:false quando a palavra não é acompanhada). Envie campaign para restringir a uma campanha. connected=false significa que o Apple Ads não está conectado.
| Parâmetro | Local | Tipo | Descrição |
|---|---|---|---|
country | query | string | código do país para a coluna de posição orgânica (padrão: o primeiro país do app) |
campaign | query | string | id da campanha para restringir a uma campanha |
Também aceita: appId (obrigatório)
curl "https://storelift.net/v1/apps/sbx-lumen/ads-keywords?country=us" \
-H "Authorization: Bearer $STORELIFT_API_KEY"GET /apps/{appId}/ads-search-terms
As buscas que as pessoas realmente digitaram e que acionaram os anúncios do app no Apple Ads (últimos 28 dias), por gasto: o termo de busca, a palavra-chave e o tipo de correspondência que o capturaram, gasto, toques, instalações, custo por toque e por instalação, e a posição orgânica do app para essa busca no país, lado a lado. É a lista de buscas para adicionar como palavras-chave, adicionar como negativas ou parar de pagar, porque o app já ranqueia ali. Os termos que a Apple oculta por baixo volume são somados em hidden. connected=false significa que o Apple Ads não está conectado.
| Parâmetro | Local | Tipo | Descrição |
|---|---|---|---|
country | query | string | código do país para a coluna de posição orgânica (padrão: o primeiro país do app) |
campaign | query | string | id da campanha para restringir a uma campanha |
Também aceita: appId (obrigatório)
curl "https://storelift.net/v1/apps/sbx-lumen/ads-search-terms?country=us" \
-H "Authorization: Bearer $STORELIFT_API_KEY"GET /apps/{appId}/ads-commands
Comandos do Apple Ads para as campanhas de um app — vindos do painel, das regras de automação e de confirm_action —, do mais recente para o mais antigo, cada um com seu status: queued, applying, applied, failed ou unknown (o envio foi interrompido e pode ter chegado à Apple ou não; confira no Apple Ads antes de enviar de novo), quando terminou, o erro (se houver) e a ação de desfazer que carrega. Envie id para um único comando.
| Parâmetro | Local | Tipo | Descrição |
|---|---|---|---|
id | query | string | id do comando, como retornado na lista, para um único comando |
Também aceita: appId (obrigatório)
curl "https://storelift.net/v1/apps/sbx-lumen/ads-commands" \
-H "Authorization: Bearer $STORELIFT_API_KEY"GET /apps/{appId}/search-popularity
A popularidade de busca da própria Apple, a partir da conta do Apple Ads conectada a este espaço de trabalho: os termos mais buscados no país para a categoria do app (semanal, na ordem da Apple), cada um com a posição na categoria e a popularidade de 1-100 (na categoria e no país inteiro) e de 1-5 (a escala do Apple Ads), além de cada palavra-chave acompanhada marcada com inTopTerms true ou false. Envie terms para verificar mais palavras. connected=false significa que o Apple Ads não está conectado.
| Parâmetro | Local | Tipo | Descrição |
|---|---|---|---|
terms | query | string | termos extras para consultar, separados por vírgula, até 50 |
limit | query | number | principais termos a retornar, até 200 (padrão 50) |
Também aceita: appId (obrigatório) · country
curl "https://storelift.net/v1/apps/sbx-lumen/search-popularity?country=us" \
-H "Authorization: Bearer $STORELIFT_API_KEY"GET /apps/{appId}/pricing
Preços de produtos e códigos de oferta de um app a partir do webhook do RevenueCat ou do Adapty, nos últimos 365 dias: por produto e país, o preço em vigor agora (moeda, preço local, desde quando) e cada período de preço fixo com seus inícios de teste gratuito, novas assinaturas pagas, conversões de teste e receita, além de cada código de oferta com o primeiro e o último dia e os resgates. Uma mudança de preço aparece como um novo período, então o antes e o depois são lidos período a período. connected=false significa que nenhum dos dois webhooks está conectado.
| Parâmetro | Local | Tipo | Descrição |
|---|---|---|---|
country | query | string | código do país de duas letras para restringir a uma loja |
product | query | string | id do produto na loja para restringir a um produto |
Também aceita: appId (obrigatório)
curl "https://storelift.net/v1/apps/sbx-lumen/pricing?country=us" \
-H "Authorization: Bearer $STORELIFT_API_KEY"GET /apps/{appId}/country-prices
Preços por país de um dos produtos do app, lidos do App Store Connect / Google Play (Pro): por país, o preço local, seu valor em USD e o índice (EUA = 100), se ainda é o preço automático da Apple (ou do Google), a mediana dos concorrentes que localizam seus preços (multiplicador em relação ao preço automático da Apple, com o número de concorrentes) e a diferença em porcentagem, além de um preço sugerido arredondado para um ponto de preço atrativo, com o motivo (mediana dos concorrentes ou faixa de renda). Os concorrentes são os concorrentes manuais de iOS do app; um país precisa de pelo menos 3 deles para ser comparado. summary conta os países com preço acima e abaixo dos concorrentes e os que ainda estão no preço automático. state é not_connected, pending (a primeira leitura ainda não terminou), permission (a função da chave não pode ler preços), no_products ou ok. products lista os outros produtos; envie product para trocar.
| Parâmetro | Local | Tipo | Descrição |
|---|---|---|---|
country | query | string | código do país de duas letras para retornar uma única linha |
product | query | string | id do produto ou SKU (padrão: o primeiro produto) |
Também aceita: appId (obrigatório)
curl "https://storelift.net/v1/apps/sbx-lumen/country-prices?country=us" \
-H "Authorization: Bearer $STORELIFT_API_KEY"GET /apps/{appId}/change-impact
O que uma mudança causou: para um dia de mudança (uma nova versão, capturas de tela, subtítulo, campo de palavras-chave, o início de uma campanha; o padrão é a mudança mais recente na linha do tempo da página da loja), compara o mesmo número de dias antes e depois, lado a lado: posições das palavras-chave (subiram/caíram/entraram/saíram e os maiores movimentos), o funil da App Store (impressões, visualizações da página, downloads por dia e as taxas de conversão), os downloads do relatório de vendas, e a receita de assinaturas e os inícios de teste gratuito e pagos por dia, cada um com a variação em porcentagem. O dia da mudança fica de fora das duas janelas. complete=false significa que a janela posterior ainda está em andamento. recentChanges lista os últimos dias de mudança para você escolher outro.
| Parâmetro | Local | Tipo | Descrição |
|---|---|---|---|
country | query | string | código do país para as posições e a linha do tempo da página da loja (padrão: o primeiro país do app) |
day | query | string | dia da mudança YYYY-MM-DD (padrão: a mudança mais recente) |
window | query | integer | dias de cada lado, 3–30 (padrão 7) |
Também aceita: appId (obrigatório)
curl "https://storelift.net/v1/apps/sbx-lumen/change-impact?country=us" \
-H "Authorization: Bearer $STORELIFT_API_KEY"