CLI ile Analytics Sorgulama

Adapty CLI, adapty analytics konusu altında terminalden Adapty Analytics’e erişmenizi sağlar. Tek bir uygulamaya ait Analytics kontrol panelinin gösterdiği rakamları döndürür: gelir ve MRR gibi grafikler, dönüşümler, huni, elde tutma, LTV ve kurulum kohortları.

Uygulamanızın verilerine bir AI ajanının canlı olarak erişmesini sağlamak, bir grafiği betik veya tabloya çekmek ya da kontrol panelini açmadan tek bir soruya yanıt bulmak için kullanabilirsiniz.

Every analytics command is read-only and takes one app.

Başlamadan Önce

analytics konusu, CLI’nın geri kalanıyla aynı kurulum ve girişi kullanır. Bunu henüz ayarlamadıysanız, hızlı başlangıç kılavuzunun 1. ve 2. adımlarını takip edin. Bu konu için CLI sürüm 0.10.0 veya üzeri gereklidir. Sürümünüzü görmek için şunu çalıştırın: adapty --version.

Export Analytics API’nin aksine, CLI için gizli bir API anahtarına ihtiyaç yoktur. CLI girişiniz, Adapty kullanıcınızın erişebildiği her uygulamayı okur.

Her komut, --app parametresinde uygulamanın UUID’sini alır. Bunu bulmak için şunu çalıştırın:

adapty apps list

Sorgu oluşturma

Her sorguyu aynı sırayla oluşturun: katalogda adları bulun, filtre değerlerine bakın, ardından tek bir veri komutu çalıştırın.

  1. Uygulamanın analitiğinin neyi yanıtlayabileceğini listeleyin. Katalog, her grafiği birimi ile, her dönüşümü, her komutun kabul ettiği gruplandırma ve filtreleri, her seçeneğin kabul ettiği değerleri ve varsayılanları listeler:

    adapty analytics catalog --app <app-id>

    revenue, mrr veya trial-paid gibi grafik ve dönüşüm adları bu listeden gelir. CLI’nın kendi listesi yoktur; dolayısıyla Adapty’nin sonradan eklediği bir grafik, CLI güncellemesi gerektirmeden çalışır.

  2. Filtre değerlerini bulun. Filtreleme yapmayacaksanız bu adımı atlayın. Örneğin, filtreleyebileceğiniz ülkeleri listelemek için:

    adapty analytics values --app <app-id> --dimension country
  3. Veri komutunu çalıştırın:

    adapty analytics chart --app <app-id> --chart revenue \
      --date-from 2026-07-01 --date-to 2026-09-30 --group-by country

Yanıt, toplamı gösteren bir satır ve ardından her grup için bir satır içerir.

Örnekler

Bu çeyrekteki MRR, bir önceki çeyrektekiyle karşılaştırmalı:

adapty analytics chart --app <app-id> --chart mrr \
  --date-from 2026-07-01 --date-to 2026-09-30 \
  --compare-from 2026-04-01 --compare-to 2026-06-30

İki ülkede aylık trial’dan ödemeye dönüşüm:

adapty analytics conversion --app <app-id> --conversion trial-paid \
  --date-from 2026-04-01 --date-to 2026-09-30 --granularity month --filter country=US,GB

Ülkeye göre retention, trial’dan itibaren sayılır:

adapty analytics retention --app <app-id> --date-from 2026-07-01 --date-to 2026-09-30 \
  --group-by country --use-trial

Komisyon ve vergiler sonrası gelir üzerinden 7, 30 ve 90 günlük LTV, CSV dosyası olarak kaydedilmiş:

adapty analytics ltv --app <app-id> --date-from 2026-07-01 --date-to 2026-09-30 \
  --revenue-basis net --period-type days --renewal-days 7,30,90 --csv > ltv.csv

Mağaza komisyonu sonrası gelir üzerinden haftalık kurulum kohortları:

adapty analytics cohort --app <app-id> --date-from 2026-07-01 --date-to 2026-09-30 \
  --granularity week --revenue-basis proceeds

Çıktıyı seçin

Her veri komutu üç formattan birinde yazdırılır:

ÇıktıFlagKullanım amacı
TabloYokTerminalde okumak için. Her tablo; grafik adını, dönemi, saat dilimini ve filtreleri içeren bir başlıkla başlar. Para birimleri 2 ondalık basamakla gösterilir. Huni kayıp nedenleri ve kohort tahminleri gibi bazı alanlar dahil edilmez; tablo altında bu belirtilir.
JSON--jsonScript’ler ve yapay zeka ajanları için. Her alanıyla birlikte değiştirilmemiş API yanıtı.
CSV--csvElektronik tablolar için. Yanıttaki her alanla birlikte grup başına bir satır. Karşılaştırılan dönem, aynı satırın compare.* sütunlarına eklenir.

--csv ve --json seçeneklerini birlikte kullanamazsınız.

JSON formatında toplam, data.segments dizisinin ilk girdisidir; data.value ise tüm dönem için geçerli olan sayıdır. meta.query alanı, çalıştırılan sorguyu gösterir: tüm varsayılan değerler doldurulmuş ve geçerli saat dilimi belirtilmiş olarak.

Sonuçları okuma

  • Tarihler: --date-from ve --date-to, uygulamanın raporlama saat dilimine göre dahil edilen günlerdir. Günleri başka bir saat diliminde okumak için --timezone parametresine Europe/Berlin gibi bir IANA adı girin. meta.query.timezone geçerli saat dilimini gösterir.
  • Gelir: --revenue-basis, para değerlerinin hangi gelir bazını kullanacağını belirler: gross (varsayılan), proceeds (mağaza komisyonu düşüldükten sonra) veya net (komisyon ve vergiler düşüldükten sonra). ltv, cohort ve para gösteren grafiklerde geçerlidir. Katalog, bu grafikleri takes revenue_basis ile işaretler.
  • Boş değerler: Boş bir değer, Adapty’nin o değere sahip olmadığı anlamına gelir; asla sıfır değil. Bir kohortun henüz ulaşmadığı LTV dönemi boştur; tahmin edilemeyen bir kohort da öyle. --json çıktısında bu değerler null olarak görünür. Tabloda — yazdırılır, CSV’de ise hücre boş bırakılır.
  • Toplam satırı: Toplamı, boş bir key ile değil is_total ile bulun. Bir grubun key değeri de boş olabilir; örneğin ülkesi olmayan kullanıcıların grubu.
  • Grup anahtarları: Bir grubun key değeri her zaman --filter parametresinin kabul ettiği bir değer olmayabilir. Filtrelemek için değerleri analytics values komutundan alın.
  • Karşılaştırmalı dönemler: Yalnızca chart ve conversion, --compare-from ve --compare-to parametrelerini kabul eder. Karşılaştırılan dönemin kendi toplamı ve grupları vardır; tablo bunu ikinci bir tablo olarak yazdırır.
  • Attribution rakamları: Bu rakamları Attribution rakamlarıyla toplamayın. Adapty bunları farklı hesaplar.

CLI, kontrol panelinin sayılarını döndürür; iki istisna dışında:

  • funnel, kontrol paneli funnelinin yoksaydığı cancellation_reason filtresini uygular. Bu filtre nedeniyle iki sayı birbirinden farklı olabilir.
  • retention, kontrol panelinden farklı bir gruplama listesi sunar. Listeyi katalogdan alın.

Limitler

Her analytics komutu, uygulama başına saniyede en fazla 2 istek ve toplamda dakikada 360 istek kabul eder. CLI hiçbir zaman bir isteği yeniden denemez. İstekleri çok hızlı gönderdiğinizde komut, 4 koduyla çıkar. --json ile hata, retry_after_seconds içerir: bu süre kadar bekleyin, ardından komutu tekrar çalıştırın.

Hatalar

Her hata, neyi düzeltmeniz gerektiğini belirten bir kodla çıkar:

Çıkış koduNedenNe yapmalı
2CLI, isteği göndermeden önce girişi reddetti: geçersiz bir uygulama UUID’si, hatalı biçimlendirilmiş veya tersine çevrilmiş tarih aralığı, bir ucu eksik karşılaştırma dönemi, --renewal-days olmadan --period-type days, = içermeyen --filter veya --csv ile birlikte --json.Mesajın belirttiği flag’i düzeltin.
3Giriş yapmadınız ya da Adapty kullanıcınızın uygulamaya erişimi yok.adapty auth login ile giriş yapın. Zaten giriş yaptıysanız, yalnızca okuma izninizin olduğu uygulamaları listeleyen adapty apps list komutundan uygulama ID’sini bulun.
4Adapty isteği reddetti: bilinmeyen bir grafik, dönüşüm, gruplama, filtre veya saat dilimi; para göstermeyen bir grafikte --revenue-basis; ya da çok fazla istek.Adı adapty analytics catalog ile düzeltin. --json kullanıldığında hata, API’nin hata kodunu da içerir. Çok fazla istek için bkz. Limitler.

Komut referansı

Her veri komutu şu flag’leri alır:

FlagGerekliAçıklama
--appEvetUygulama UUID’si, adapty apps list komutundan alınır.
--date-fromEvetDönemin ilk günü (dahil), YYYY-MM-DD formatında.
--date-toEvetDönemin son günü (dahil). --date-from değerinden önce olamaz.
--filterHayırdimension=value[,value]. Belirtilen boyutun verilen değerlerden birine sahip olduğu verileri tutar. Birden fazla boyuta göre filtrelemek için bu flag’i tekrarlayın. Değer içindeki virgül için \, yazın. Boş değer de geçerli bir değerdir: country= ülkesi olmayan verileri tutar.
--timezoneHayırGünlerin IANA saat dilimi, örneğin Europe/Berlin. Belirtilmezse uygulamanın saat dilimi kullanılır.
--csvHayırİnsan tarafından okunabilir tablo yerine CSV tablo yazdırır. --json ile birlikte kullanılamaz.

Her komut bunlara kendi bayraklarını ekler.

analytics catalog

Uygulamanın analitiğinin neler cevaplayabileceğini listeler: her komutun seçenekleri, gruplandırmaları ve filtreleri; her grafiğin birimi; her dönüşüm; ve her filtre boyutu.

BayrakZorunluAçıklama
--appEvetadapty apps list komutundan alınan uygulama UUID’si.

analytics values

Bir filtre boyutunun uygulama için aldığı değerleri listeler. Her value, --filter <dimension>=<value> parametresinin kabul ettiği değerin tam olarak aynısıdır.

BayrakZorunluAçıklama
--appEvetadapty apps list komutundan alınan Uygulama UUID’si.
--dimensionEvetadapty analytics catalog komutundan alınan bir filtre boyutu.

analytics chart

Bir grafik okur: tüm dönem için değer, noktalar ve gruplar.

BayrakZorunluAçıklama
--chartEvetadapty analytics catalog içinden bir grafik adı; örneğin revenue veya mrr.
--group-byHayırKatalogdan bu grafiğe ait bir gruplandırma.
--granularityHayırBir noktanın uzunluğu: day, week, month (varsayılan), quarter veya year.
--revenue-basisHayırgross (varsayılan), proceeds veya net. Yalnızca para gösteren grafikler için.
--compare-fromHayırKarşılaştırılacak dönemin ilk günü. --compare-to gerektirir.
--compare-toHayırKarşılaştırılacak dönemin son günü. --compare-from gerektirir.

analytics conversion

Bir dönüşüm okur: her nokta ve grup için oranı yüzde olarak, bölündüğü iki sayıyla birlikte.

BayrakZorunluAçıklama
--conversionEvetadapty analytics catalog içinden bir dönüşüm adı; örneğin trial-paid veya install-paid.
--group-byHayırKatalogdan bir gruplama seçeneği.
--granularityHayırBir noktanın uzunluğu: day (varsayılan), week, month, quarter veya year.
--compare-fromHayırKarşılaştırılacak dönemin ilk günü. --compare-to ile birlikte kullanılması gerekir.
--compare-toHayırKarşılaştırılacak dönemin son günü. --compare-from ile birlikte kullanılması gerekir.

Dönem dönüşüm içermediğinde, --json çıktısındaki meta.recommended_period değeri dönüşüm içeren bir dönemi işaret edebilir.

analytics funnel

Funnel’ı okur: kurulumdan yenilemelere kadar her adımdaki sayıyı gösterir.

BayrakGerekliAçıklama
--group-byHayırKatalogdan bir gruplama.

analytics retention

Retention verisini okur: her dönemde kalan aboneler.

BayrakGerekliAçıklama
--group-byHayırKatalogdan bir gruplama.
--use-trialHayırİlk ücretli dönem yerine denemeden itibaren say.

analytics ltv

LTV’yi okur: her yenileme veya günden sonra ödeme yapan kullanıcı başına gelir.

FlagZorunluAçıklama
--group-byHayırKatalogdan bir gruplama.
--revenue-basisHayırgross (varsayılan), proceeds veya net.
--period-typeHayırrenewals (varsayılan) yenileme başına sayar. days kurulumdan itibaren gün başına sayar.
--renewal-daysHayır--period-type days ile sayılacak günler; virgülle ayrılmış, artan sırada, örneğin 7,30,90. Yalnızca --period-type days ile kullanılır.

analytics cohort

Kurulum kohortlarını okur: her kohortun yenileme veya güne göre gelirini, abonelerini, ortalamalarını ve tahminlerini içerir. Her kohort bir satırdır ve başlangıç tarihi onun key’idir. Kohortlar gruplandırılamaz.

BayrakZorunluAçıklama
--granularityHayırBir kohortun uzunluğu: day, week, month (varsayılan), quarter veya year.
--revenue-basisHayırgross (varsayılan), proceeds veya net.
--period-typeHayırrenewals (varsayılan) her yenileme başına sayar. days kurulumdan bu yana geçen gün başına sayar.
--renewal-daysHayır--period-type days ile sayılacak günler, virgülle ayrılmış, artan sırada. Yalnızca --period-type days ile kullanılır.

Sırada ne var