Adapty Geliştirici CLI için Ads Manager komutları
Bu makale, Adapty CLI’daki her Ads Manager komutunu argümanları, bayrakları ve kabul edilen değerleriyle listeler. Ads Manager komutları adapty asa konusu altında yer alır.
Ön koşullar, güvenli yazma uygulamaları ve göreve dayalı örnekler için bkz. CLI’dan Ads Manager’ı Yönetme.
Bu komutlar, bağlı bir Apple Ads hesabı ve aktif bir Ads Manager aboneliği gerektirir. Her ikisini de kontrol etmek için adapty asa whoami komutunu çalıştırın. CLI’ın geri kalanı için komut referansına bakın.
Global flag’ler
Bu flag’ler tüm Ads Manager komutlarında kullanılabilir.
| Flag | Açıklama |
|---|---|
--json | Biçimlendirilmiş metin yerine JSON olarak çıktı ver |
--help | Komut yardımını göster |
Tüm list komutları sayfalama flag’lerini de kabul eder:
| Flag | Varsayılan | Açıklama |
|---|---|---|
--page | 1 | Sayfa numarası |
--page-size | 100 | Sayfa başına öğe sayısı (maks: 1000) |
Ads Manager sayfaları CLI’ın geri kalanına kıyasla daha büyüktür. Küçük sayfalar üzerinde döngü kurmak yerine tek bir büyük sayfa tercih edin.
Hesabınızda değişiklik yapan tüm komutlar şu flag’leri kabul eder:
| Bayrak | Açıklama |
|---|---|
--yes, -y | Onay istemeden uygula. Çıktı yönlendirildiğinde veya --json kullanıldığında zorunludur |
--idempotency-key | Bu yazma işlemi için sabit anahtar. Aynı anahtar ve gövdeyle 24 saat içinde yapılan tekrar, değişikliği yeniden uygulamak yerine saklanan sonucu döndürür |
Ads Manager komutları --app bayrağı almaz. Kapsam, token’ınızın ait olduğu şirkettir. --app, bazı list komutlarında yalnızca filtre olarak bulunur. segments komutları bu kuralın istisnasıdır: orada --app, segmentin ait olduğu Adapty uygulamasını belirtir.
Liste filtreleri
Filtreler, görüntülenen sayfayı değil sorgunun kendisini daraltır. Filtresiz bir keywords list komutu hesaptaki tüm anahtar kelimeleri sayfalandırarak getirir; bu nedenle her okumayı ihtiyaç duyduğunuz düzeyde kapsamlandırın.
| Filtre | Kabul eden |
|---|---|
--campaign-group | campaigns, ad-groups, keywords, negative-keywords, search-terms, ads, creatives, product-pages |
--app | campaigns, ad-groups, keywords, negative-keywords, search-terms, creatives, product-pages |
--campaign | ad-groups, keywords, negative-keywords, search-terms, ads |
--ad-group | keywords, negative-keywords, search-terms, ads |
--status | campaigns, ad-groups, ads (ENABLED veya PAUSED), keywords (ACTIVE veya PAUSED) |
--search | campaigns, ad-groups, keywords, negative-keywords, search-terms, ads. Ada göre büyük/küçük harf duyarsız alt dize eşleşmesi |
adapty asa apps list, orgs list, automations list ve automations runs herhangi bir filtre almaz. Yalnızca sayfalama bayraklarını kabul eder.
--campaign-group, --app, --campaign ve --ad-group seçenekleri, ilgili list komutunun yazdırdığı UUID’leri alır ve her biri tekrarlanabilir:
adapty asa keywords list --ad-group <ad-group-id> --ad-group <other-ad-group-id>
Başka bir şirkete ait bir ID hiçbir şeyle eşleşmez; bu durumda hata döndürmek yerine sayfa boş gelir.
Hesap
adapty asa whoami
Şirketi, Ads Manager erişiminin nasıl sağlandığını ve Apple Ads’in bağlı olup olmadığını gösterir.
adapty asa whoami
Bu komutu önce çalıştırın. Diğer tüm komutların ön koşullarının karşılanıp karşılanmadığını raporlar.
adapty asa connect
Bir Apple Ads hesabını Adapty’ye bağlayın.
adapty asa connect
Bu komut bir Apple yetkilendirme bağlantısı yazdırır ve Apple hesabın bağlandığını bildirene kadar bekler.
| Bayrak | Varsayılan | Açıklama |
|---|---|---|
--wait / --no-wait | --wait | Apple Ads’in bağlandığını bildirmesini bekler. --no-wait hemen geri döner |
--timeout | 300 | Tarayıcı adımı için beklenecek saniye sayısı |
adapty asa orgs list
Şirketinizde kullanılabilir kampanya gruplarını (Apple Ads organizasyonları) listeleyin.
adapty asa orgs list
Her satır iki tanımlayıcı içerir ve bunlar birbirinin yerine kullanılamaz:
| Alan | Kullanıldığı yer |
|---|---|
internal_id | campaigns create üzerinde --org tarafından ve liste filtresi olarak --campaign-group tarafından alınan UUID |
org_id | campaigns bulk-create üzerinde --org-id tarafından alınan Apple’ın sayısal organizasyon ID’si. --org ve --campaign-group bunu kabul etmez |
--org yalnızca campaigns create komutunda mevcuttur. Hiçbir listeleme komutu bunu kabul etmez.
Her satır aynı zamanda bir payment_model içerir. Bu değer LOC olduğunda, organizasyon kredi satırı bazında faturalandırılır ve bu organizasyondaki her kampanyanın --invoice-* flag’lerine ihtiyacı vardır.
Sayfalandırma flag’lerini kabul eder.
adapty asa apps list
Apple Ads’de tanıtılan uygulamaları listeler.
adapty asa apps list
Her satır iki tanımlayıcı içerir ve bunlar birbirinin yerine kullanılamaz:
| Alan | Kullanım amacı |
|---|---|
internal_id | --app’in liste filtresi olarak aldığı UUID |
adam_id | Apple’ın sayısal App Store ID’si; campaigns create ve product-pages sync komutlarında --adam-id tarafından alınır |
Sayfalandırma flag’lerini kabul eder.
Kampanyalar
adapty asa campaigns list
Kampanyaları listeler. Yalnızca meta veri döndürür — performans rakamlarını asa metrics ile okuyun.
adapty asa campaigns list --app <app-id> --status PAUSED
Sayfalama bayraklarını ve --campaign-group, --app, --search ile --status liste filtrelerini kabul eder.
adapty asa campaigns get
Belirli bir kampanyanın ayrıntılarını alır.
adapty asa campaigns get <campaign-id>
| Argüman | Açıklama |
|---|---|
campaign-id | Kampanya kimliği (UUID) |
adapty asa campaigns create
Bir kampanya oluşturun.
adapty asa campaigns create --org <campaign-group-id> --name "Winter push" --adam-id 123456 --country US --daily-budget 50
| Bayrak | Gerekli | Açıklama |
|---|---|---|
--org | Evet | Kampanya grubu ID’si (UUID). Bkz. orgs list |
--name | Evet | Kampanya adı |
--adam-id | Evet | App Store uygulama ID’si (adam_id) |
--country | Evet | Ülke veya bölge kodu. Birden fazla için tekrarlayın: --country US --country CA |
--daily-budget | Evet | Günlük bütçe, düz tutar olarak; örneğin 50 veya 12.50 |
--budget | Hayır | Toplam ömür boyu bütçe |
--target-cpa | Hayır | Hedef edinim başına maliyet. --daily-budget değerinden düşük olmalıdır |
--currency | Hayır | Bu çağrıdaki tutarlar için para birimi kodu. Varsayılan: USD |
--bidding-strategy | Hayır | MANUAL_CPT veya MAX_CONVERSIONS. Apple varsayılanı: MANUAL_CPT |
--ad-channel-type | Hayır | SEARCH veya DISPLAY. Varsayılan: SEARCH |
--billing-event | Hayır | TAPS veya IMPRESSIONS. Varsayılan: TAPS |
--supply-source | Hayır | Tedarik kaynağı, tekrarlanabilir. Varsayılan: APPSTORE_SEARCH_RESULTS |
--status | Hayır | Başlangıç durumu: ENABLED veya PAUSED |
--invoice-advertiser | Kredi hattı | Faturalama Seçenekleri: reklamveren adı |
--invoice-order-number | Kredi hattı | Faturalama Seçenekleri: sipariş numarası |
--invoice-contact-name | Kredi hattı | Faturalama Seçenekleri: alıcı iletişim adı |
--invoice-contact-email | Kredi hattı | Faturalama Seçenekleri: alıcı iletişim e-postası |
--invoice-billing-email | Kredi hattı | Faturalama Seçenekleri: fatura iletişim e-postası |
payment_model değeri LOC olan bir organizasyon, kredi limitiyle faturalandırılır ve Apple, bu organizasyonun her kampanyasında Faturalama Seçenekleri gerektirir. Tüm beş --invoice-* bayrağını tek bir çağrıda geçirin — eksik set, istek gönderilmeden önce reddedilir. Bkz. Kredi limiti için Faturalama Seçeneklerini Ayarlama.
Yanıt, serving_status ve serving_state_reasons içerir. Bir kampanya oluşturulmuş olsa bile yayınlanmayabilir: MAX_CONVERSIONS kampanyası bir otomatik reklam grubu bekler; kredi limitli kampanya ise Faturalama Seçeneklerini bekler. Her iki durumda da komut, nedeni ve çözüm sağlayan komutu yazdırır.
adapty asa campaigns update
Mevcut bir kampanyayı günceller.
adapty asa campaigns update <campaign-id> --daily-budget 80 --status PAUSED
| Argüman | Açıklama |
|---|---|
campaign-id | Kampanya ID’si (UUID) |
| Bayrak | Açıklama |
|---|---|
--name | Yeni kampanya adı |
--status | ENABLED veya PAUSED |
--country | Ülke listesini değiştirir. Birden fazla için tekrarlayın |
--daily-budget | Yeni günlük bütçe |
--budget | Yeni toplam yaşam boyu bütçe |
--target-cpa | Yeni hedef edinim başı maliyet |
--bidding-strategy | MANUAL_CPT veya MAX_CONVERSIONS |
--currency | Bu çağrıdaki tutarlar için para birimi kodu. Varsayılan: USD |
--invoice-advertiser | Faturalama Seçenekleri: reklamveren adı |
--invoice-order-number | Faturalama Seçenekleri: sipariş numarası |
--invoice-contact-name | Faturalama Seçenekleri: alıcı iletişim adı |
--invoice-contact-email | Faturalama Seçenekleri: alıcı iletişim e-postası |
--invoice-billing-email | Faturalama Seçenekleri: fatura iletişim e-postası |
En az bir bayrak gereklidir.
Beş --invoice-* bayrağı birlikte kullanılır ve depolanan Faturalama Seçeneklerini bir küme olarak değiştirir; bu nedenle yalnızca birini değiştirmek istediğinizde bile beşini de geçirmeniz gerekir. Eksik küme, istek gönderilmeden önce reddedilir.
adapty asa campaigns bulk-create
Kampanyalar, reklam grupları, anahtar kelimeler, negatif anahtar kelimeler ve reklamlardan oluşan tüm kampanya yapısını tek bir işlemde oluşturun.
adapty asa campaigns bulk-create --file structure.json
JSON yazmak yerine native bir Apple Ads toplu şablonunu dönüştürün:
adapty asa campaigns bulk-create --from-file Campaign_And_Adgroup_Template.xlsx --org-id 1234567
| Bayrak | Varsayılan | Açıklama |
|---|---|---|
--file | — | Kampanya yapısını içeren JSON dosyası veya standart girdiden okumak için - |
--from-file | — | Sunucuda dönüştürülecek Apple Ads toplu şablonu: Campaign_And_Adgroup_Template.xlsx veya bir keywords .csv |
--org-id | — | Apple’ın sayısal organizasyon kimliği (org_id). Bkz. orgs list. --from-file ile birlikte zorunludur |
--preview | — | --from-file ile birlikte: dönüştürülen yapıyı yazdırır ve durur. Hiçbir şey oluşturulmaz |
--wait / --no-wait | --wait | İşlem tamamlanana kadar yoklama yapar. --no-wait işlem kimliğini yazdırır ve geri döner |
--poll-interval | 5 | İlerleme yoklamaları arasındaki saniye cinsinden süre |
--timeout | 900 | İşlemin tamamlanması için beklenecek maksimum saniye |
Tam olarak --file ve --from-file seçeneklerinden biri gereklidir.
Yapı, en üst düzeyde kampanya grubunu adlandırır ve diğer her şeyi içine yerleştirir:
{
"campaign_group_id": 555777,
"campaigns": [
{
"payload": {
"name": "US Search",
"adam_id": 123456,
"countries_or_regions": ["US"],
"daily_budget_amount": { "amount": "100", "currency": "USD" },
"status": "ENABLED",
"ad_channel_type": "SEARCH",
"billing_event": "TAPS",
"supply_sources": ["APPSTORE_SEARCH_RESULTS"]
},
"ad_groups": [
{
"payload": { "name": "Brand", "start_time": "2026-08-01T00:00:00Z", "status": "ENABLED" },
"keywords": [{ "text": "meditation app", "match_type": "BROAD" }]
}
]
}
]
}
campaign_group_id, Apple’ın sayısal organizasyon kimliğini alır; bunun yerine UUID geçirmek için campaign_group_internal_id kullanın. payload içeren bir düğüm oluşturulur. Mevcut bir varlığı id’siyle adlandıran düğüm bir anchor’dır — mevcut bir kampanyaya reklam grubu eklemek için bunu kullanın; aynı işlemde varlığı değiştirmek için update_payload ekleyin. Her kampanya ad_groups içine, her reklam grubu ise keywords, negative_keywords ve ads içine yerleştirilir. Bir kampanya, kampanya düzeyindekiler için doğrudan negative_keywords de alır.
Yapının tamamı herhangi bir şey oluşturulmadan önce doğrulanır ve bir ret, her geçersiz düğümü listeler. --from-file ile dönüştürme sorunları sayfa, satır ve sütunla birlikte raporlanır; dönüştürme uyarıları gönderimi durdurmaz, ancak dönüştürme hataları iptal eder. Göndermeden önce komut, yapının kaç kampanya, reklam grubu, anahtar kelime, negatif anahtar kelime ve reklam içerdiğini bildirir ve onay ister.
Komut ardından işlemi yoklar ve üç son durumdan biri gerçekleşene kadar ilerlemeyi yazdırır:
| Durum | Anlam |
|---|---|
success | Tüm nesneler oluşturuldu |
partial | Bazı nesneler oluşturulamadı. Her hata Apple’ın hata mesajıyla birlikte yazdırılır |
failed | İşlem başarısız oldu ve komut sıfır dışı bir değerle çıkış yaptı |
İşlem --timeout saniye sonra tamamlanmamışsa, komut geri döner ve daha sonra çalıştırmak için bulk-status çağrısını yazdırır.
adapty asa campaigns bulk-status
Bir toplu işlemin ilerleme durumunu gösterir: durum, nesne sayıları ve nesne başına log.
adapty asa campaigns bulk-status <operation-id>
| Argüman | Açıklama |
|---|---|
operation-id | campaigns bulk-create tarafından yazdırılan işlem kimliği (UUID) |
status alanı pending, running, success, partial veya failed değerini alır. counts bloğu toplam içinden kaç nesnenin uygulandığını, başarısız olduğunu ve beklemede olduğunu raporlar.
Sayfalandırma bayraklarını kabul eder.
Reklam grupları
adapty asa ad-groups list
Reklam gruplarını listeler. Yalnızca meta veri döndürür — performans rakamlarını okumak için asa metrics kullanın.
adapty asa ad-groups list --campaign <campaign-id>
Sayfalama flaglerini ve --campaign-group, --app, --campaign, --search ve --status liste filtrelerini kabul eder.
adapty asa ad-groups get
Belirli bir reklam grubu için ayrıntıları alır.
adapty asa ad-groups get <ad-group-id>
| Argüman | Açıklama |
|---|---|
ad-group-id | Reklam grubu kimliği (UUID) |
adapty asa ad-groups create
Bir kampanyada reklam grubu oluşturur.
adapty asa ad-groups create --campaign <campaign-id> --name "Brand terms" --default-bid 1.20
| Bayrak | Zorunlu | Açıklama |
|---|---|---|
--campaign | Evet | Kampanya ID’si (UUID) |
--name | Evet | Reklam grubu adı |
--default-bid | --automated belirtilmezse zorunlu | Varsayılan teklif, düz tutar olarak, örneğin 1.20 |
--cpa-goal | Hayır | Edinim başına maliyet hedefi |
--pricing-model | Hayır | CPC veya CPM. Apple her reklam grubunda birini gerektirir. Varsayılan: CPC |
--start-time | Hayır | Zamanlama başlangıcı (YYYY-MM-DD). Varsayılan: bugün |
--end-time | Hayır | Zamanlama bitişi (YYYY-MM-DD) |
--automated-keywords / --no-automated-keywords | Hayır | Apple’ın anahtar kelimeleri otomatik eklemesine izin ver |
--automated | Hayır | MAX_CONVERSIONS kampanyasının gerektirdiği otomatik reklam grubunu oluştur |
--currency | Hayır | Bu çağrıdaki tutarlar için para birimi kodu. Varsayılan: USD |
--status | Hayır | Başlangıç durumu: ENABLED veya PAUSED |
--automated, reklam grubunu otomatik anahtar kelimelere dahil eder; bu nedenle --automated-keywords ile birlikte kullanılamaz. Apple, otomatik reklam grubunu kendisi zamanlar ve etkin tutar; bu yüzden --start-time ve --status PAUSED reddedilir — bunun yerine kampanyayı duraklatın. Bkz. Max Conversions kampanyası oluşturma.
adapty asa ad-groups update
Mevcut bir reklam grubunu günceller.
adapty asa ad-groups update <ad-group-id> --default-bid 1.50 --status PAUSED
| Argüman | Açıklama |
|---|---|
ad-group-id | Reklam grubu ID’si (UUID) |
| Bayrak | Açıklama |
|---|---|
--name | Yeni reklam grubu adı |
--status | ENABLED veya PAUSED |
--default-bid | Yeni varsayılan teklif |
--cpa-goal | Yeni edinim başı maliyet hedefi |
--start-time | Zamanlama başlangıcı (YYYY-MM-DD) |
--end-time | Zamanlama bitişi (YYYY-MM-DD) |
--automated-keywords / --no-automated-keywords | Apple’ın anahtar kelime eklemesine izin ver |
--currency | Bu çağrıdaki tutarlar için para birimi kodu. Varsayılan: USD |
En az bir bayrak zorunludur. Üst kampanya sunucu tarafında çözümlenir ve hiçbir zaman iletilmez.
Anahtar Kelimeler
Anahtar kelime komutları, çağrı başına en fazla 100 öğelik gruplar halinde uygulanır. Kontrol paneli eşdeğeri için Anahtar kelimeleri yönet bölümüne bakın.
adapty asa keywords list
Hedefleme anahtar kelimelerini listeler. Performans verilerini okumak için asa metrics komutunu kullanın.
adapty asa keywords list --ad-group <ad-group-id> --status ACTIVE
Sayfalama bayraklarını ve --campaign-group, --app, --campaign, --ad-group, --search ile --status liste filtrelerini kabul eder. --ad-group ile filtreleyin — filtre olmadan bu, konudaki en geniş kapsamlı okumadır.
adapty asa keywords recommend
Uygulamalarınızdan biri için hazır bir anahtar kelime havuzu edinin. Bunlar, kontrol panelinde bir kampanya kurduğunuzda Ads Manager’ın kullandığı havuzlarla aynıdır.
adapty asa keywords recommend --adam-id <adam-id> --type generic --country US
| Bayrak | Gerekli | Açıklama |
|---|---|---|
--adam-id | Evet | asa apps list komutundan alınan uygulamanızın Apple App Store ID’si (adam_id) |
--type | Evet | brand, generic veya competitor |
--country | Hayır | İki harfli ISO ülke kodu. Birden fazla ülke için tekrarlayın. Varsayılan: havuzdaki tüm ülkeler |
--type bayrağı havuzu seçer:
| Tür | Anahtar Kelimeler |
|---|---|
brand | Uygulamanızın marka terimleri, yazım varyantları ve markayı içeren organik terimler. Çıktı ayrıca marka terimlerinin kendisini de listeler |
generic | Uygulamanızın ve en iyi organik rakiplerinin sıralandığı, tüm bilinen marka terimleri çıkarılmış, markasız terimler. relevance_tier: top_organic, uygulamanızın organik ilk 10’da zaten yer aldığı terimleri işaretler |
competitor | AI Growth Advisor içinde uygulama için seçilen her rakibin marka terimleri; rakip başına bir havuz. Rakip seçilene kadar boş kalır |
Her anahtar kelime; ülke, popülerlik, puan ve medyan organik sıralama bilgileriyle birlikte gelir. Anahtar kelimelerin teklif veya eşleşme türü yoktur. Bunları kendiniz seçin, ardından anahtar kelimeleri asa keywords add ile ekleyin.
Kullanmadan önce havuzun status değerini kontrol edin:
| Durum | Anlamı |
|---|---|
ready | Havuz oluşturuldu |
building | Havuz hâlâ oluşturuluyor. Yaklaşık bir dakika sonra tekrar deneyin |
empty | Havuz oluşturuldu ancak anahtar kelime yok |
failed | Oluşturma başarısız oldu. Daha sonra tekrar deneyin |
İlk brand veya generic çağrısı, istek sırasında havuzu oluşturur ve onlarca saniye sürebilir. Bu komut, şirket başına dakikada 10 çağrı kotasına sahiptir ve aynı anda şirket başına yalnızca bir brand veya generic derleme çalışabilir. Bu süre içindeki ikinci bir derleme isteği, Retry-After: 5 başlığıyla birlikte 429 cli_analytics_busy döndürür.
adapty asa keywords add
Bir reklam grubuna hedefleme anahtar kelimeleri ekleyin.
adapty asa keywords add --ad-group <ad-group-id> --text "running shoes" --text "trail shoes" --bid 1.20
Bunun yerine anahtar kelimeleri bir dosyadan okuyun, her satırda bir tane:
adapty asa keywords add --ad-group <ad-group-id> --from-file keywords.txt
| Flag | Gerekli | Açıklama |
|---|---|---|
--ad-group | Evet | Reklam grubu ID’si (UUID). Kampanya buradan çözümlenir |
--text | Evet, --from-file kullanılmıyorsa | Anahtar kelime metni. Birden fazlası için tekrarlayın |
--from-file | Hayır | Her satırda bir anahtar kelime içeren dosya. --text değerleriyle birleştirilebilir |
--bid | Hayır | Anahtar kelime başına teklif miktarı |
--match-type | Hayır | BROAD veya EXACT. Varsayılan: BROAD |
--currency | Hayır | Bu çağrıdaki tutarlar için para birimi kodu. Varsayılan: USD |
--status | Hayır | ACTIVE veya PAUSED. Varsayılan: ACTIVE |
Geçersiz bir ID, Apple çağrılmadan önce tüm toplu işlemi başarısız kılar. Apple yine de tek tek anahtar kelimeleri reddedebilir ve her red, nedeniyle birlikte raporlanır.
adapty asa keywords update
Bir veya daha fazla anahtar kelimenin teklifi, durumu, metni veya eşleşme türünü değiştirin.
adapty asa keywords update <keyword-id> <keyword-id> --bid 2.00 --status PAUSED
| Argüman | Açıklama |
|---|---|
keyword-id | Anahtar kelime ID’si (UUID). Birden fazlasını ekstra argüman olarak geçirin |
| Flag | Açıklama |
|---|---|
--bid | Yeni teklif |
--status | ACTIVE veya PAUSED |
--match-type | BROAD veya EXACT |
--text | Yeni anahtar kelime metni. Yalnızca tek bir anahtar kelime için geçerlidir |
--currency | Bu çağrıdaki tutarlar için para birimi kodu. Varsayılan: USD |
Geçirilen her ID için tek bir değişiklik uygulanır.
Negatif anahtar kelimeler
adapty asa negative-keywords list
Negatif anahtar kelimeleri listele. ad_group_id alanı boş olan satırlar kampanya düzeyindedir.
adapty asa negative-keywords list --campaign <campaign-id>
| Flag | Açıklama |
|---|---|
--campaign-level-only | Yalnızca kampanya düzeyindeki satırları göster |
Sayfalama flag’lerini ve --campaign-group, --app, --campaign, --ad-group ve --search liste filtrelerini kabul eder.
adapty asa negative-keywords add
Bir reklam grubuna veya kampanyaya negatif anahtar kelimeler ekleyin.
adapty asa negative-keywords add --ad-group <ad-group-id> --text free
Bunları bir kampanyanın tüm reklam gruplarına uygulayın:
adapty asa negative-keywords add --campaign <campaign-id> --all-ad-groups --text free
| Bayrak | Zorunlu | Açıklama |
|---|---|---|
--ad-group | --ad-group veya --campaign’den biri | Reklam grubu ID’si (UUID). Kampanya buradan çözümlenir |
--campaign | --ad-group veya --campaign’den biri | Kampanya ID’si (UUID) |
--text | Evet | Anahtar kelime metni. Birden fazla için tekrarlayın |
--all-ad-groups | Hayır | Kampanyanın kendisi yerine tüm reklam gruplarına uygular. --campaign gerektirir |
--match-type | Hayır | BROAD veya EXACT. Varsayılan: EXACT |
--status | Hayır | ACTIVE veya PAUSED. Varsayılan: ACTIVE |
--ad-group ve --campaign birbirini dışlar. Yalnızca birini belirtin.
Arama terimleri
adapty asa search-terms list
Reklamlarınızı tetikleyen arama terimlerini listeler. Yeni anahtar kelimeler ve negatif anahtar kelimeler bulmak için kullanın.
adapty asa search-terms list --ad-group <ad-group-id> --date-from 2026-07-01 --date-to 2026-07-31
| Flag | Varsayılan | Açıklama |
|---|---|---|
--date-from | Bugün | Raporlama döneminin başlangıcı (YYYY-MM-DD) |
--date-to | Bugün | Raporlama döneminin sonu (YYYY-MM-DD) |
Sayfalama flag’lerini ve --campaign-group, --app, --campaign, --ad-group ile --search liste filtrelerini kabul eder.
Her arama terimi satırı, performans metriklerinin yanı sıra Apple’ın o terim için sunduğu içgörüleri de taşır:
| Alan | Değer |
|---|---|
impression_share_all, impression_share_first | Herhangi bir reklam konumunda veya ilk reklam konumundaki gösterim payı |
impression_midpoint_all, impression_midpoint_first | Tek bir yüzde olarak gösterim payı |
rank_all, rank_first | Uygulamanızın söz konusu terim için diğer uygulamalar arasındaki sıralaması; herhangi bir reklam konumu veya ilk konum için |
search_popularity | 1 ile 5 arasında arama popülaritesi |
Her alan, Apple’ın ilgili terim için veri bulunmadığında null olur. Apple’ın bu değerleri nasıl tanımladığını görmek için Insights bölümüne bakın.
Bu komut, asa metrics ile aynı analitik havuzunu paylaşır. Bkz. Hatalar.
Reklamlar
adapty asa ads list
Reklamları listeler. serving_state_reasons alanı, bir reklamın neden yayınlanmadığını açıklar.
adapty asa ads list --ad-group <ad-group-id>
Sayfalama bayraklarını ve --campaign-group, --campaign, --ad-group, --search ve --status liste filtrelerini kabul eder. Bu listede --app filtresi yoktur, çünkü reklamlar reklam gruplarına aittir.
adapty asa ads get
Belirli bir reklamın ayrıntılarını alır.
adapty asa ads get <ad-id>
| Argüman | Açıklama |
|---|---|
ad-id | Reklam ID (UUID) |
adapty asa ads create
Bir reklam grubunda reklam oluşturur.
adapty asa ads create --ad-group <ad-group-id> --creative-id 4321 --name "Summer ad"
| Flag | Zorunlu | Açıklama |
|---|---|---|
--ad-group | Evet | Reklam grubu ID’si (UUID). Kampanya buradan çözümlenir |
--creative-id | Evet | Apple kreatif ID’si. Bkz. creatives list |
--name | Evet | Reklam adı |
--status | Hayır | Başlangıç durumu: ENABLED veya PAUSED |
adapty asa ads update
Mevcut bir reklamı günceller.
adapty asa ads update <ad-id> --status PAUSED
| Argüman | Açıklama |
|---|---|
ad-id | Reklam ID’si (UUID) |
| Flag | Açıklama |
|---|---|
--name | Yeni reklam adı |
--status | ENABLED veya PAUSED |
En az bir flag gereklidir. Kreatif ve üst reklam grubu oluşturma sırasında sabitlenir.
Görseller
adapty asa creatives list
Yeni reklamlar için mevcut creative’leri listeler.
adapty asa creatives list --app <app-id>
Burada döndürülen creative_id, ads create için --creative-id değeridir.
Sayfalama bayraklarını ve --campaign-group ile --app liste filtrelerini kabul eder.
Ürün sayfaları
adapty asa product-pages list
Uygulamalarınızda mevcut olan özel ürün sayfalarını listeleyin.
adapty asa product-pages list --app <app-id>
Sayfalama bayraklarını ve --campaign-group ile --app liste filtrelerini kabul eder.
adapty asa product-pages sync
App Store Connect’teki özel ürün sayfalarını yeniler.
adapty asa product-pages sync --adam-id 123456
| Flag | Açıklama |
|---|---|
--adam-id | Yenilemeyi tek bir uygulamayla sınırlar. Her uygulamayı kapsamak için atlayın |
Yenileme hemen gerçekleştirilmez, sıraya alınır ve komut Sync queued. mesajıyla bunu onaylar. Aynı yenileme zaten devam ediyorsa bunun yerine Already running; nothing new was queued. mesajı görüntülenir.
Segmentler
Bu komutlar, Apple Ads kampanyalarından, reklam gruplarından veya anahtar kelimelerden Adapty segmentleri oluşturur; tıpkı Ads Manager içindeki Create segment from… işlevi gibi. Belirli bir kampanyadan gelen kullanıcılara farklı bir paywall göstermek için bu segmentleri placement’larda ve A/B testlerinde kitle olarak kullanabilirsiniz.
Her segment, seçtiğiniz varlıkların Apple ID’leri üzerinde tek bir attribution filtresi içerir. CLI bu ID’leri kendisi arar; bu nedenle siz yalnızca list komutlarının yazdırdığı UUID’leri geçersiniz.
Diğer adapty asa komutlarının aksine, bunlar --app alır: segmentin ait olduğu Adapty uygulamasının ID’si, adapty apps list komutundan alınır. --idempotency-key desteklenmez. Ülke veya yükleme tarihi gibi başka filtreler içeren segmentler için adapty segments create komutunu kullanın.
adapty asa segments create
Kampanyalardan, reklam gruplarından veya anahtar kelimelerden bir segment oluşturun.
adapty asa segments create --app <app-id> --campaign <campaign-id>
adapty asa segments create --app <app-id> --ad-group <ad-group-id> --keyword <keyword-id> --keyword <other-keyword-id>
| Bayrak | Zorunlu | Açıklama |
|---|---|---|
--app | Evet | Adapty uygulama ID’si (UUID) |
--campaign | Bir varlık türü | Kampanya ID’si (UUID). Tekrarlanabilir |
--ad-group | Bir varlık türü | Reklam grubu ID’si (UUID). Tekrarlanabilir. --keyword ile birlikte kullanırken tam olarak bir tane girin: anahtar kelimeleri içeren reklam grubu |
--keyword | Bir varlık türü | Anahtar kelime ID’si (UUID). Tekrarlanabilir. Bir --ad-group gerektirir |
--title | Hayır | Segment başlığı. Varsayılan olarak Ads Manager formatını kullanır, örneğin [ASA] Campaign: <name> |
--description | Hayır | Segment açıklaması. Varsayılan olarak Ads Manager formatını kullanır |
Her segmenti tek bir varlık türünden oluşturun. --campaign ile --ad-group ya da --campaign ile --keyword birlikte kullanıldığında, herhangi bir istek gönderilmeden önce çıkış kodu 2 ile hata verir. Aynı türden birden fazla varlık, bunlardan herhangi birindeki kullanıcılarla eşleşen tek bir segment oluşturur.
Başka bir başlığa ihtiyaç duymadığınız sürece varsayılan başlığı kullanın. Ads Manager kendi segmentlerini [ASA] önekiyle tanır ve asa segments list yalnızca bu öneke sahip segmentleri listeler.
Yanıt, id ve filters dahil tüm segmenti içerir. profile_count başlangıçta 0 olarak gelir ve Adapty, segment oluşturulduktan sonra bunu yeniden hesaplar.
adapty asa segments update
Mevcut bir segmentin kampanyalarını, reklam gruplarını veya anahtar kelimelerini değiştirir.
adapty asa segments update <segment-id> --app <app-id> --campaign <campaign-id> --campaign <other-campaign-id>
| Argüman | Açıklama |
|---|---|
segment-id | Segment ID’si (UUID), asa segments list veya adapty segments list komutundan alınır |
asa segments create komutuyla aynı flag’leri alır. Segmentin filtresi, ilettiğiniz öğelerle değiştirilir. --title veya --description flag’lerini geçmediğiniz sürece başlık ve açıklama olduğu gibi kalır.
adapty asa segments list
Apple Ads varlıklarından oluşturulan segmentleri listeler — başlığı [ASA] ile başlayanlar.
adapty asa segments list --app <app-id> --campaign <campaign-id>
| Bayrak | Zorunlu | Açıklama |
|---|---|---|
--app | Evet | Adapty uygulama ID’si (UUID) |
--campaign | Hayır | Yalnızca bu kampanyadan oluşturulan segmentleri getirir (UUID) |
--ad-group | Hayır | Yalnızca bu reklam grubundan oluşturulan segmentleri getirir (UUID) |
--campaign veya --ad-group parametresinden yalnızca birini geçin, ikisini birden değil. Aynı kampanya için ikinci bir segment oluşturmaktan kaçınmak amacıyla, asa segments create komutundan önce bu komutu çalıştırın: boş bir sonuç, kampanyanın henüz segmenti olmadığı anlamına gelir.
Bu komut, uygulamanın ilk 100 segmentini okur.
Otomasyonlar
CLI, verdiğiniz kural JSON’ını saklar; tek istisna: Add as keyword eyleminin ayarları flag’lerden gelir. Her kural türünün ne yaptığını öğrenmek için Otomasyonlar bölümüne, bir kural dosyası oluşturma konusunda ise Otomasyon kurallarını çalıştırma bölümüne bakın.
Anahtar kelime olarak ekleme eylem bayrakları
automations create ve automations update, bir add-as-keyword-to eylemi için actions[0].params ayarlayan bir dizi bayrağı paylaşır — arama terimi kuralında Add as keyword, anahtar kelime kuralında Add as keyword to…. Bunlardan herhangi birini geçirmek, params nesnesinin tamamının yerini alır; dolayısıyla bu eylem için elle yazılmış JSON’a gerek yoktur.
| Bayrak | JSON alanı | Açıklama |
|---|---|---|
--target-ad-group | targets.internal_ids | Anahtar kelimeyi alan reklam grubu (UUID), tekrarlanabilir. Hedef reklam grubu olmayan bir kural hiçbir şey yapmaz |
--match-type | match_type | BROAD veya EXACT |
--cpt-bid-type | cpt_bid.type | Yeni anahtar kelimenin teklifinin nereden geleceği: ad_group_default_bid, set_to, search_term_current_cpt veya keyword_current_bid |
--cpt-bid | cpt_bid.value | set_to ile teklifin kendisi. search_term_current_cpt veya keyword_current_bid ile kopyalanan teklife uygulanacak yüzde farkı. ad_group_default_bid ile kabul edilmez |
--negate | negate | Arama terimini aynı zamanda negatif anahtar kelime olarak ekler; kendi ad-group veya kendi campaign içinde. --no-negate hiçbirini bırakmaz. Yalnızca arama terimi kuralları |
--skip-enable-duplicates | skip_enable_duplicate_keywords | Hedef reklam grubunda zaten mevcut olan bir anahtar kelimeyi etkinleştirmek yerine atlar. Yalnızca arama terimi kuralları |
--pause-original | pause_in_original_ad_group | Kaynak anahtar kelimeyi kendi reklam grubunda duraklatır. Yalnızca anahtar kelime kuralları |
--cpt-bid-type ve --match-type için varsayılan değer yoktur, dolayısıyla kural dosyasında kendi params alanı bulunmuyorsa her ikisi de zorunludur.
Bu dört bayraktan bazıları, kuralın operate_with alanına göre farklılık gösterir: --negate, --no-negate ve --skip-enable-duplicates bir search-term kuralına, --pause-original ise bir targeting-keyword kuralına aittir. Yanlış gruba ait bir bayrak kullanılırsa çıkış kodu 2 ile birlikte geçerli bayrakların listesi döndürülür.
Bu action’ın params değerlerini her zaman flag’lerden alın; farklı bir action içeren rule’dan almayın. API, params değerlerini adlandırılmış bir varyanta göre değil, şekline göre çözümler; bu nedenle başka bir action’a ait bir anahtar, API’nin o action’ı seçmesine ve geri kalanını atmasına yol açar — 200 döndürür ve herhangi bir reklam grubuna anahtar kelime eklemeyen bir rule kaydeder.
adapty asa automations list
Otomasyon kurallarını listeler. status alanı aktif için 1, durdurulmuş için 0 değerini alır.
adapty asa automations list
Sayfalandırma bayraklarını kabul eder.
adapty asa automations get
Belirli bir otomasyon kuralını, koşulları ve eylemlerini dahil ederek getirir.
adapty asa automations get <automation-id>
| Argument | Description |
|---|---|
automation-id | Otomasyon kuralı ID’si (UUID) |
adapty asa automations create
Bir JSON kural dosyasından otomasyon kuralı oluşturur.
adapty asa automations create --file rule.json
| Flag | Açıklama |
|---|---|
--file | Kural gövdesini içeren JSON dosyası veya standart girdiden okumak için - |
--run-now | Kural kaydedildikten hemen sonra ilk çalıştırmayı sıraya alır |
--file zorunludur ve dosya tam olarak bir aksiyon içermelidir: API, kural başına bir aksiyon ve bir koşul tutar.
Ayrıca actions[0].params alanını doldurmak veya geçersiz kılmak için add-as-keyword action flags parametrelerini de kabul eder:
adapty asa automations create --file rule.json --target-ad-group <ad-group-id> --match-type EXACT --cpt-bid-type search_term_current_cpt --negate ad-group
adapty asa automations update
Bir otomasyon kuralını değiştirin: durdurun, yeniden adlandırın veya kuralın bazı bölümlerini değiştirin.
adapty asa automations update <automation-id> --stop
| Argüman | Açıklama |
|---|---|
automation-id | Otomasyon kuralı ID’si (UUID) |
| Bayrak | Açıklama |
|---|---|
--start | Kuralı etkinleştir |
--stop | Kuralı durdur ve bir sonraki çalışmasını temizle |
--name | Yeni kural adı |
--file | Değiştirilecek bölümleri içeren JSON dosyası ya da standart girdiden okumak için - |
--start ve --stop birbirini dışlar. Buraya iletilen bir dosya internal_id içermemelidir.
add-as-keyword action flags parametrelerini de kabul eder. Bunlardan birini geçirmek çağrıyı bir okuma-değiştirme-yazma işlemine dönüştürür: CLI kuralı okur, actions[0].params’ı yeniden oluşturur ve tüm actions listesini geri gönderir; çünkü API actions’ı birleştirmek yerine tamamen değiştirir. Okuma ile yazma arasında kontrol panelinde yapılan bir düzenlemenin üzerine yazılır.
An update with an action flag also repairs a rule whose stored params carry the shape of another action. The params are rebuilt from scratch, so only the stored keys that fit add-as-keyword-to are kept and everything else has to come from a flag.
adapty asa automations run
Bir otomasyon kuralını program dışında tek seferlik çalıştırır.
adapty asa automations run <automation-id> --dry-run
| Argüman | Açıklama |
|---|---|
automation-id | Otomasyon kuralı ID’si (UUID) |
| Bayrak | Açıklama |
|---|---|
--dry-run | Kuralı değerlendirir ve Apple Ads’te herhangi bir değişiklik yapmadan sonucu kaydeder |
Çalıştırma kuyruğa alınır ve komut bir çalıştırma ID’si yazdırır. Sonucu automations runs ile okuyun.
adapty asa automations runs
Bir otomasyon kuralının geçmiş çalışmalarını, deneme çalışmaları (dry run) dahil olmak üzere listeler.
adapty asa automations runs <automation-id>
| Argüman | Açıklama |
|---|---|
automation-id | Otomasyon kuralı kimliği (UUID) |
Sayfalandırma bayraklarını kabul eder.
Metrikler
adapty asa metrics
Bir tarih aralığında hesabın herhangi bir düzeyi için metrikleri sorgulayın.
adapty asa metrics --entity campaign --date-from 2026-07-01 --date-to 2026-07-31
| Bayrak | Zorunlu | Açıklama |
|---|---|---|
--entity | Evet | Raporlanacak öğe: campaign, ad-group, keyword veya ad |
--date-from | Evet | Dönem başlangıcı (YYYY-MM-DD) |
--date-to | Evet | Dönem sonu (YYYY-MM-DD) |
--metric | Evet | Metrik adı, tekrarlanabilir |
--app | Hayır | Yalnızca bu uygulamalar için rapor oluşturur. Tekrarlanabilir |
--campaign | Hayır | Yalnızca bu kampanyalar için rapor oluşturur. Tekrarlanabilir |
--ad-group | Hayır | Yalnızca bu reklam grupları için rapor oluşturur. Tekrarlanabilir |
--group-by | Hayır | Satırları country, day, week, month, quarter veya year değerlerine göre gruplandırır. Tekrarlanabilir |
--by-days | Hayır | Kohort metrikleri için yenileme penceresi (gün cinsinden), tekrarlanabilir. Çağrı başına en fazla 16 değer. Kontrol paneli varsayılanları için belirtmeyin |
--order-by | Hayır | Sıralama yapılacak metrik veya alan |
--order-by-day | Hayır | Bu yenileme penceresindeki kohort metriğine göre sırala. --by-days değerlerinden biri olmalıdır |
--order | Hayır | asc veya desc. Varsayılan: desc |
Sayfalama bayraklarını kabul eder. Liste filtrelerinden yalnızca --app, --campaign ve --ad-group seçeneklerini alır; --search ve --status yoktur. Raporu başka bir şeye göre daraltmak için satırları kapsamlı bir list komutundan gelen ID’lerle eşleştirin.
Her satır, sunucuda toplanan ve --order-by ile sıralanan tek bir varlıktır. Dolayısıyla ilk-N sorusu tek bir çağrıdır — sonuçlar arasında sayfa sayfa gezinip toplamak yerine --order-by ve --page-size N ayarlarını kullanın:
adapty asa metrics --entity campaign --date-from 2026-07-01 --date-to 2026-07-31 --order-by spend --page-size 5
--metric, Ads Manager’ın takip ettiği metrik adlarını kontrol paneli adlandırmasıyla alır; örneğin spend, taps veya gross_roas. Tam liste ve her birinin nasıl hesaplandığı için Metrikler bölümüne bakın. Var olmayan bir ad, hata mesajında geçerli adlar listelenerek başarısız olur.
--entity keyword ile birlikte --metric, yalnızca keyword’e özgü metrikleri de kabul eder. Apple, impression share ve sıralamayı hem herhangi bir reklam pozisyonu hem de ilk reklam pozisyonu için raporladığından, her biri iki versiyonda gelir: _all ve _first. Apple’ın bunları nasıl tanımladığını görmek için Insights bölümüne bakın.
| Metrik | Değer |
|---|---|
impression_midpoint_all, impression_midpoint_first | Raporlama dönemi boyunca gösterim payı, yüzde olarak |
rank_all, rank_first | Uygulamanızın anahtar kelime için diğer uygulamalara kıyasla sıralaması. --date-from ve --date-to değerlerinden bağımsız olarak en güncel değer |
search_popularity | 1’den 5’e kadar arama popülerliği |
Rapor verisi bulunmayan bir anahtar kelime bu metrikler için 0 döndürür. CLI 0.9.2 sürümünden itibaren bu isimler rank ve impression_midpoint yerini almaktadır.
Her metrik, sayfa kesilmeden önce tüm entity seviyesinde hesaplandığından, kataloğun tamamını değil yalnızca ihtiyacınız olan sütunları isteyin. subscribers ve paid_subscribers, entity başına benzersiz profilleri sayar; bu da sıradan bir spend-and-installs çağrısına kıyasla yaklaşık on yedi kat daha maliyetlidir. arppu ve arpas ise bunlardan türetildiğinden aynı durum geçerlidir. Herhangi bir --entity seviyesinde bu dört isim için çağrıyı daraltmak amacıyla --campaign veya --ad-group belirtmeniz gerekir:
adapty asa metrics --entity keyword --date-from 2026-07-01 --date-to 2026-07-31 --metric arpas --campaign <campaign-id>
Bu iki filtreden biri olmadan çağrı 422 cli_metric_scope_too_wide hatasıyla başarısız olur. Kapsam daraltmak, herhangi bir metrik çağrısını hızlandırmanın en ucuz yoludur; çünkü maliyet, sayfa boyutundan değil toplanan varlık sayısından kaynaklanır.
Raporlama süresinin uzunluğu, en küçük --group-by değeriyle sınırlandırılır. Daha uzun bir dönem için rapor almak istiyorsanız, isteği birden fazla çağrıya bölmek yerine gruplama ayrıntısını kaba tutun:
En küçük --group-by | Maksimum süre |
|---|---|
day | 28 gün |
| Dönem gruplandırması yok | 90 gün |
week | 180 gün |
month ve daha kaba | 365 gün |
Gün bazlı veri en fazla dört haftalık dönemi kapsar. Daha uzun bir süre için week granülaritesini kullanın; bu seçenek tek bir çağrıyla yarım yıla kadar veri getirir.
Her sayfa, 5000 döküm satırıyla sınırlıdır; bir satır, bir varlık × ülke × dönem kombinasyonuna karşılık gelir. Bu sınırı aşan bir sayfa 422 cli_response_too_large hatasıyla başarısız olur. Gruplama ayrıntısını azaltın, tarih aralığını daraltın ya da --page-size değerini düşürün. Çağrı day bazında gruplanıyorsa hata mesajı, uygun sayfa boyutunu doğrudan belirtir; bu durumda kendiniz hesaplamaya çalışmak yerine verilen değeri kullanın. metrics overview komutu varlık bazında döküm döndürmediğinden bu sınır ona hiçbir zaman uygulanmaz.
ltv metriği diye bir şey yoktur. Lifetime value, bir kohort metriğidir ve belirli bir yenileme penceresinde okunur; bu nedenle gün-7 veya gün-90 değerini almak için --by-days kullanmanız gerekir:
adapty asa metrics --entity campaign --date-from 2026-07-01 --date-to 2026-07-31 --metric roas --by-days 7 --by-days 90
--order-by-day, satırları bu pencerelerden birine göre sıralar ve tek bir çağrıda gün-90 ROAS’a göre en iyi kampanyaları döndürür.
adapty asa metrics overview
Belirli bir dönem için sorgulama toplamlarını zaman birimine göre gruplandırır.
adapty asa metrics overview --entity campaign --date-from 2026-07-01 --date-to 2026-07-31 --period-unit week
| Bayrak | Zorunlu | Açıklama |
|---|---|---|
--entity | Evet | Raporlanacak öğe: campaign, ad-group, keyword veya ad |
--date-from | Evet | Dönemin başlangıcı (YYYY-MM-DD) |
--date-to | Evet | Dönemin sonu (YYYY-MM-DD) |
--period-unit | Hayır | Gruplama birimi: day, week, month, quarter veya year. Varsayılan: day |
--metric | Hayır | Metrik adı, tekrarlanabilir. Tüm metrikler için belirtmeyin |
--by-days | Hayır | Kohort metrikleri için yenileme penceresi (gün cinsinden), tekrarlanabilir. Çağrı başına en fazla 16 |
Bu komut, tüm varlık düzeyi için toplamları ve dönem başına bir seri döndürür; böylece tek bir çağrıyla “toplam ne kadar harcadım veya kazandım” sorusunu yanıtlar. Sıralama bayrakları ve sayfalama içermez.
Bu komutta --metric, yalnızca kohort köklerini kabul eder — revenue, roas ve arpu — bunların gross_, proceeds_ veya net_ varyantlarını kabul etmez. Yalnızca anahtar kelime metriklerini de kabul etmez.
Raporlama döneminin uzunluğu --period-unit ile sınırlandırılır:
--period-unit | Maksimum süre |
|---|---|
day | 90 gün |
week | 180 gün |
month ve daha kaba | 365 gün |
Rakipler
adapty asa competitors summary
Bir dizi App Store uygulamasının teklif verdiği Apple Ads anahtar kelimelerini özetler. Bu komut, kontrol panelindeki Market Intelligence ile aynı rakip verilerini döndürür.
adapty asa competitors summary --app-ids 1668337467,6503873027
| Flag | Gerekli | Açıklama |
|---|---|---|
--app-ids | Evet | Apple App Store ID’leri (adam_id), virgülle ayrılmış. 1 ile 5 arasında değer |
Raporlama dönemi ve ülke kümesi sunucuda sabittir — son tam ay, tüm ülkeler. Bu komutun dönem, ülke veya sayfalama bayrakları yoktur.
Komut üç blok yazdırır: analize ilişkin toplamlar, performansa göre öne çıkan uygulamalar ve en çok rekabet edilen terimler. Tam sonuç için --json ekleyin; bu aynı zamanda her uygulamanın terimlerini ülkeye göre de ayrıştırır.
Bir uygulama kümesi için ilk çağrı, veriler hazırlanırken onlarca saniye sürebilir. Aynı uygulamalar için sonraki çağrılar daha hızlı döner.
Değişiklik geçmişi
Değişiklik geçmişi, Apple Ads API’sinden canlı olarak gelir. Adapty bunu saklamaz; Apple ise 6 ay boyunca tutar. Bu geçmiş, Apple Ads üzerinde doğrudan yapılan, Apple Destek tarafından gerçekleştirilen veya diğer API araçlarıyla yapılan değişiklikler dahil olmak üzere kuruluştaki her değişikliği kapsar.
adapty asa change-history list
Bir Apple Ads organizasyonunda yapılan değişiklikleri, en yeniden en eskiye doğru listeler.
adapty asa change-history list --campaign-group <campaign-group-id> --date-from 2026-10-01 --entity-type Campaign --event-type UPDATE
| Bayrak | Zorunlu | Açıklama |
|---|---|---|
--campaign-group | Evet | Okunacak organizasyon (UUID, orgs list komutundan alınır). Her çağrıda bir organizasyon. Birden fazlası için komutu ayrı ayrı çalıştırın |
--date-from | Hayır | Dönemin başlangıcı (YYYY-MM-DD). Varsayılan: 7 gün önce |
--date-to | Hayır | Dönemin sonu (YYYY-MM-DD). Varsayılan: bugün. Dönem en fazla 14 gün kapsayabilir |
--entity-type | Hayır | Campaign, AdGroup, Keyword, NegativeKeyword, Ad, Creative, LocationGroup, Org veya AdAccount. Tekrarlanabilir. Varsayılan: Org ve AdAccount hariç tüm türler. Org ve AdAccount, diğer türlerle birlikte kullanılamaz |
--event-type | Hayır | CREATE, UPDATE veya DELETE. Tekrarlanabilir |
--user-type | Hayır | Değişikliği yapan kişi: CUSTOMER (Apple Ads’de), CUSTOMER_API (Apple Ads API aracılığıyla) veya APPLE_SUPPORT. Tekrarlanabilir |
--campaign, --ad-group, --entity-id | Hayır | Kampanyanın, reklam grubunun veya değiştirilen varlığın Apple’a ait sayısal kimlikleri. Tekrarlanabilir |
--user | Hayır | Değişikliği yapan kişinin Apple kullanıcı kimliği. Tekrarlanabilir |
--txn | Hayır | Apple işlem kimliği. Tekrarlanabilir |
--fields | Hayır | Her değişikliği, eski ve yeni değerleriyle birlikte değiştirilen alan başına bir satır olacak şekilde genişletir |
Diğer komutların liste filtreleri aksine, --campaign, --ad-group ve --entity-id değişkenlik geçmişi satırlarında yazdırılan Apple’ın sayısal ID’lerini alır — UUID’leri değil. Benzer şekilde, her satırdaki modified_by de bir Apple kullanıcı ID’sidir, e-posta adresi değil.
Her satır bir işlemi temsil eder: kim yaptığını (modified_by, user_type), ne zaman yapıldığını (event_time) ve hangi varlıkların değiştirildiğini gösterir. Her varlık, change-history get için bir detail_id taşır.
--fields ile sayfa boyutu varsayılan olarak 10’dur ve daha büyük bir --page-size reddedilir. 20’den fazla arama gerektiren bir sayfa başarısız olur: filtreleri daraltın ya da --fields seçeneğini bırakıp change-history get ile tek tek değişiklikleri okuyun.
Sayfalama flag’lerini kabul eder. --page × --page-size değeri 1000’i aşamaz.
adapty asa change-history get
Bir işlemdeki bir varlığın alan düzeyindeki değişikliklerini gösterir.
adapty asa change-history get Campaign.444555666.TXN_ID --campaign-group <campaign-group-id>
| Argüman | Açıklama |
|---|---|
detail-id | change-history list komutundan alınan detail_id, EntityType.entityId.txnId biçiminde |
| Bayrak | Zorunlu | Açıklama |
|---|---|---|
--campaign-group | Evet | Değişikliğin ait olduğu organizasyon. Liste satırındaki campaign_group_id alanından alın |
old_values ve new_values ile birlikte her değişen alanı ve entity_metadata içinde varlığın meta verilerini listeler. Apple’ın kaydı olmayan bir detail_id için 404 döner.
Hatalar
| Durum | Kod | Anlam |
|---|---|---|
402 | ads_manager_subscription_required | Şirketin aktif bir Ads Manager aboneliği yok |
403 | cli_ad_account_unreadable | change-history organizasyonu okuyamıyor: Apple Ads token’ı iptal edilmiş, organizasyon artık bağlı değil veya Apple erişimi reddetti |
404 | — | Varlık mevcut değil ya da başka bir şirkete ait |
409 | cli_idempotency_in_progress | Aynı idempotency anahtarıyla bir yazma işlemi hâlâ devam ediyor |
422 | cli_idempotency_key_reuse | Aynı idempotency anahtarı farklı bir istek gövdesiyle kullanıldı |
422 | cli_metric_scope_too_wide | --campaign veya --ad-group belirtilmeden profil sayma metriği istendi |
422 | cli_response_too_large | Bir metrics sayfası 5000 satır dökümü sınırını aşacak |
429 | cli_analytics_busy | Analytics havuzu meşgul ya da şirkete ait başka bir anahtar kelime havuzu derlemesi hâlâ çalışıyor. Bekleme süresi Retry-After başlığında yer alıyor |
429 | cli_cooldown_active | Çok fazla reddedilen istek token’ı bekleme süresine aldı |
429 | cli_upstream_rate_limited | Apple bir change-history isteğini hız sınırına tabi tuttu. Apple’ın bekleme süresi Retry-After başlığında yer alıyor |
504 | cli_read_timeout | Bir change-history isteği 50 saniyeden uzun sürdü. Dönemi veya filtreleri daraltın |
Metrikler ve arama terimleri listesi, şirket başına tek bir analitik bütçeyi paylaşır: dakikada 5 çağrı ve her 10 saniyede en fazla 2 çağrı. change-history ise kendi bütçesine sahiptir: dakikada 30 çağrı, her 10 saniyede en fazla 5 çağrı ve şirket başına aynı anda yalnızca bir istek. 5 dakika içinde 20 reddedilen istek, önce 5 dakika, ardından 30 dakika, sonra 3 saat olmak üzere kademeli bir bekleme sürecini başlatır. Bekleme süresi boyunca tekrar denemek bu süreyi uzatmaz; ancak asıl çözüm, isteği tekrarlamak yerine hatalı isteği düzeltmektir.
CLI, kısa bekleme sürelerini sizin adınıza yönetir. Bir cool-down olmayan 429 hatasında, Retry-After değeri 60 saniye veya daha azsa komut bu süre kadar bekler ve bir kez daha dener; bekleme süresi standart hataya raporlanır.