Google Cloud Storage
Google Cloud Storage entegrasyonunu etkinleştirerek abonelik olaylarını ve paywall ziyaret verilerini Google Cloud Storage bucket’ınızda merkezi bir konumda güvenle saklayabilirsiniz.
Her gün UTC 04:00’te Adapty, bir önceki günün verilerini içeren .csv dosyalarını bucket’larınıza yükler. event verilerini, paywall visit verilerini veya her ikisini almak isteyip istemediğinizi seçebilirsiniz. Bu verileri istediğiniz zaman, istediğiniz zaman aralığı için manuel olarak da dışa aktarabilirsiniz.
Entegrasyonu kurmak için Google Cloud konsolunuzda bir bucket erişim anahtarı oluşturun ve bunu Adapty ayarlarınıza ekleyin.
Yükleme zamanlaması ve süresi
Adapty, verileri her 24 saatte bir UTC 04:00’de Google Cloud Storage’a yükler.
Dosyalar, bir önceki takvim gününde (UTC) oluşturulan etkinliklerin verilerini içerir. 8 Mart’ta yüklenen dosya, 7 Mart’ta 00:00:00 ile 23:59:59 UTC arasında oluşturulan tüm etkinlikleri içerir.
Kuyruktaki toplam dosya sayısına ve kişisel olarak talep ettiğiniz veri miktarına bağlı olarak işlem birkaç saate kadar sürebilir. Adapty ilk yüklemede geçmiş verileri de ekliyorsa, sonraki günlük yüklemelerden daha uzun sürer.
Google Cloud Storage entegrasyonunu kurma
Yazma erişimine sahip geçerli bir Google Cloud hizmet hesabı anahtarına ihtiyacınız var. Oluşturmak için kimlik bilgileri oluşturma bölümündeki adımları izleyin.
Etkinlikler ve paywall ziyaretleri için farklı kimlik bilgileriyle farklı bucket’lar kullanabilirsiniz. Ancak kimlik bilgilerinden herhangi biri geçersizse her iki yükleme de başarısız olur.
Integrations -> Google Cloud Storage sayfasına gidin ve ilgili sekmeyi açın (Events veya Paywall visits). Entegrasyonu etkinleştirin.
Google Cloud hizmet hesabı anahtarınızı içeren dosyayı yükleyin. Hedef bucket ve klasörü belirtin. Değişikliklerinizi kaydedin.
Etkinlik verileri için isteğe bağlı ayarlar
Rapora dahil edilecek etkinlikleri belirleyebilir ve etkinlikler için özel isimler ayarlayabilirsiniz. Mevcut etkinliklerin tam listesi için etkinlikler makalesine bakın.
| Ad | Varsayılan | Açıklama |
|---|---|---|
| Exclude historical events | true | Adapty SDK’yı uygulamanıza entegre etmeden önce gerçekleşen etkinliklere ait bilgileri hariç tutar. Analitik platformunuz Adapty’yi kullanmaya başlamadan önce abonelik etkinlikleri aldıysa bu seçenek yinelenen etkinliklerin gönderilmesini engeller. Pratik örnekBir kullanıcı 10 Ocak’ta aylık abonelik satın aldı. Uygulamanızın 1 Mart güncellemesi Adapty SDK’yı ilk kez içeriyordu. |
| Include events without profile | false | Bir kullanıcı profiliyle ilişkilendirilmemiş veya belirli bir kullanıcıya hemen atanamayan işlemleri dahil eder. Bunlar, Adapty SDK kurulmadan önce yapılan satın almalar veya sunucu bildirimleri aracılığıyla alınan işlemler olabilir. |
| Send user attributes | false | Özel kullanıcı özniteliklerini (kullanıcı verileri ve uygulama kullanım verileri gibi) dahil eder. OneSignal planınız 10’dan fazla etiketi destekliyorsa bu seçeneği seçin. Etiket limitinin aşılması hatalara yol açabilir. |
Google Cloud Storage kimlik bilgileri oluşturma
Bu kılavuz, Google Cloud Platform Console’da gerekli kimlik bilgilerini oluşturmanıza yardımcı olur.
Adapty’nin ham veri raporlarını belirlediğiniz bucket’a yükleyebilmesi için hizmet hesabı anahtarı ve ilgili bucket’a yazma erişimi gereklidir. Hizmet hesabı anahtarını sağlayarak ve bucket’a yazma erişimi vererek Adapty’nin ham veri raporlarını platformunuzdan depolama ortamınıza güvenli ve verimli bir şekilde aktarmasına izin vermiş olursunuz.
Yalnızca Service Account HMAC key yetkilendirmesini desteklediğimizi unutmayın. Google Cloud Storage’a düzgün erişim sağlamak için Service Account HMAC key’inize “Storage Object Viewer”, “Storage Legacy Bucket Writer” ve “Storage Object Creator” rollerinin eklenmiş olması zorunludur.
- İlk adım olarak Google Cloud hesabınızın IAM bölümüne gidin ve ilgili projeyi seçin ya da yeni bir proje oluşturun.
-
Ardından ”+ CREATE SERVICE ACCOUNT” düğmesine tıklayarak Adapty için yeni bir hizmet hesabı oluşturun.
-
İlk adımdaki alanları doldurun; erişim izinleri sonraki aşamada verilecektir. Bu sayfa hakkında daha fazla bilgi için belgeleri okuyabilirsiniz.
-
Özel JSON anahtarı oluşturmak ve indirmek için KEYS bölümüne gidin ve “ADD KEY” düğmesine tıklayın.
-
DETAILS bölümünde yeni oluşturulan hizmet hesabıyla ilişkili E-posta değerini bulun ve kopyalayın. Bu bilgi, hesabı yetkilendirmek ve bucket’a yazma izni vermek için sonraki adımlarda gerekli olacaktır.
-
Google Cloud Storage’ın Buckets sayfasına gidin, mevcut bir bucket’ı seçin veya Adapty’den gelen Etkinlik ya da Ziyaret Verisi raporlarını depolamak için yeni bir bucket oluşturun. Ardından PERMISSIONS bölümüne gidin ve GRANT ACCESS seçeneğini tıklayın.
-
PERMISSIONS bölümüne beşinci adımda aldığınız hizmet hesabının e-posta adresini girin, Storage Object Creator rolünü seçin ve değişiklikleri uygulamak için SAVE’e tıklayın.
Bucket adını ileride kullanmak üzere not edin.
Manuel veri dışa aktarma
Adapty, Google Cloud Storage’a otomatik etkinlik verisi dışa aktarmanın yanı sıra manuel dosya dışa aktarma işlevi de sunar. Bu özellikle etkinlik verileri için belirli bir zaman aralığı seçebilir ve GCS bucket’ınıza manuel olarak aktarabilirsiniz. Bu sayede hangi verileri ne zaman dışa aktaracağınız üzerinde daha fazla kontrol sahibi olursunuz.
Belirtilen tarih aralığı, A Tarihi 00:00:00 UTC’den B Tarihi 23:59:59 UTC’ye kadar oluşturulan etkinlikleri dışa aktarmak için kullanılır.
Veri yapısı
Adapty, verileri tablo formatında dışa aktarmak için .csv dosyaları kullanır.
Etkinlik içeriği zaman içinde büyüyebilir; bizim veya birlikte çalıştığımız üçüncü tarafların eklediği yeni verilerle genişleyebilir. İşleyen kodunuzun yeterince esnek olduğundan ve yapının tamamına değil belirli alanlara dayandığından emin olun.
Etkinlikler
Raporlarınıza dahil edilen etkinlik listesini değiştirebilirsiniz.
Adapty, diğer para birimlerini USD’ye currencylayer.com döviz kuru üzerinden çevirir (her 8 saatte bir güncellenir). Kur, işlem anında sabitlenir — sonraki değişiklikler dönüşüm sonucunu etkilemez.
| Sütun | Açıklama |
|---|---|
| profile_id | Adapty kullanıcı ID’si. |
| event_type | Küçük harfli event adı. Event türlerini öğrenmek için Events bölümüne bakın. |
| event_datetime | ISO 8601 tarihi. |
| transaction_id | Satın alma veya yenileme gibi bir işleme ait benzersiz tanımlayıcı. |
| original_transaction_id | Orijinal satın alma işleminin tanımlayıcısı. |
| subscription_expires_at | Aboneliğin sona erme tarihi. Genellikle gelecekte bir tarih olur. |
| environment | Sandbox veya Production olabilir. |
| revenue_usd | USD cinsinden gelir. Boş olabilir. |
| proceeds_usd | USD cinsinden net kazanç. Boş olabilir. |
| net_revenue_usd | USD cinsinden net gelir (vergiler sonrası). Boş olabilir. |
| tax_amount_usd | USD cinsinden vergi olarak kesilen tutar. Boş olabilir. |
| revenue_local | Yerel para biriminde gelir. Boş olabilir. |
| proceeds_local | Yerel para biriminde net kazanç. Boş olabilir. |
| net_revenue_local | Yerel para biriminde net gelir (vergiler sonrası). Boş olabilir. |
| tax_amount_local | Yerel para biriminde vergi olarak kesilen tutar. Boş olabilir. |
| customer_user_id | Geliştirici kullanıcı ID’si. Örneğin kullanıcı UUID’niz, e-postanız veya başka bir ID olabilir. Ayarlanmamışsa null döner. |
| store | app_store veya play_store olabilir. |
| product_id | Apple App Store, Google Play Store veya Stripe’taki ürün ID’si. 12 aylık taahhüt planı için değer <product_id>:monthly şeklindedir. |
| base_plan_id | Google Play Store’daki temel plan ID’si veya Stripe’taki fiyat ID’si. |
| developer_id | İşlemin gerçekleştiği paywallın geliştirici (SDK) ID’si. |
| ab_test_name | İşlemin gerçekleştiği A/B testinin adı. Çapraz placement A/B testi için tek bir placement’taki testin adı (<test name> child-N). Çapraz placement testini tüm placement’lar genelinde gruplamak için ab_test_id kullanın. |
| ab_test_revision | İşlemin gerçekleştiği A/B testinin revizyonu. |
| paywall_name | İşlemin gerçekleştiği paywallın adı. Bir flow için paywall ekranının ID’si (scr_...). Flow adı flow_name alanındadır. |
| paywall_revision | İşlemin gerçekleştiği paywallın revizyonu. |
| profile_country | Adapty tarafından IP’ye göre belirlenen profil ülkesi. |
| install_date | Yüklemenin gerçekleştiği ISO 8601 tarihi. |
| idfv | iOS cihazlarda identifierForVendor |
| idfa | iOS cihazlarda advertisingIdentifier |
| advertising_id | Android İşletim Sistemi tarafından atanan ve reklamverenlerinin kullanıcının cihazını benzersiz şekilde tanımlamak için kullanabileceği benzersiz kod |
| ip_address | Cihaz IP’si (IPv4 veya IPv6 olabilir, mevcut olduğunda IPv4 tercih edilir). Cihazın IP’si her değiştiğinde güncellenir |
| cancellation_reason | Kullanıcının aboneliği iptal etme nedeni. Olası değerler: iOS & Android — voluntarily_cancelled, billing_error, refund Yalnızca iOS — price_increase, product_was_not_available, unknown, upgraded Yalnızca Android — new_subscription_replace, cancelled_by_developer |
| android_app_set_id | AppSetId — para kazanmayan reklam kullanım senaryoları için cihaz başına, geliştirici hesabı başına, kullanıcı tarafından sıfırlanabilir benzersiz ID. |
| android_id | Android 8.0 (API düzeyi 26) ve daha yüksek sürümlerde, uygulama imzalama anahtarı, kullanıcı ve cihazın her kombinasyonu için benzersiz olan 64 bitlik bir sayı (onaltılık dize olarak ifade edilir). Daha fazla ayrıntı için Android geliştirici belgelerine bakın. |
| device | Son kullanıcıya görünen cihaz model adı. |
| currency | İşlemin 3 harfli para birimi kodu (ISO-4217). |
| store_country | Apple/Google store tarafından belirlenen profil ülkesi. |
| attribution_source | Attribution kaynağı. |
| attribution_network_user_id | Attribution kaynağı tarafından kullanıcıya atanan ID. |
| attribution_status | organic, non_organic veya unknown olabilir. |
| attribution_channel | Pazarlama kanalı adı. |
| attribution_campaign | Pazarlama kampanyası adı. |
| attribution_ad_group | Attribution reklam grubu. |
| attribution_ad_set | Attribution reklam seti. |
| attribution_creative | Attribution kreatif anahtar kelimesi. |
| attributes | Özel kullanıcı özelliklerinin JSON’ı. Mobil uygulamanızdan gönderilmek üzere ayarladığınız özel özellikler buraya dahil edilecektir. Göndermek için Integrations -> Webhooks sayfasındaki Send User Attributes seçeneğini etkinleştirin. |
| integration_ids | Bir profille ilişkili tüm entegrasyon ID’leri. Sözlük biçiminde. Örnek: {‘mixpanel_user_id’: ‘mixpanelUserId-test’, ‘facebook_anonymous_id’: ‘facebookAnonymousId-test’} |
| variation_id | İşlemin gerçekleştiği paywallın benzersiz ID’si. Bir flow için A/B testi varyantının değil, flow içindeki paywall ekranının ID’si. |
| flow_id | İşlemin gerçekleştiği flow’un ID’si. |
| flow_name | İşlemin gerçekleştiği flow’un adı. |
| flow_variation_id | Bu placement’taki flow varyantının ID’si; SDK’daki flow.variationId ile aynıdır. |
| ab_test_id | İşlemin gerçekleştiği A/B testinin ID’si. Çapraz placement A/B testi için her placement’ta aynıdır. |
| ab_test_variant_id | İşlemin gerçekleştiği A/B testi varyantının ID’si. İşlemleri test varyantına göre ayırmak için kullanın. |
| ab_test_variant_name | A/B testi varyantının adı. |
| ab_test_parent_name | Çapraz placement A/B testinin adı. Diğer A/B testleri için boştur. |
Flow ve A/B testi sütunları, dosyanın son sütunlarıdır. Adapty bu sütunları dışa aktarma sırasında hesapladığından, A/B testini, varyantı veya flow’u yeniden adlandırdıysanız dışa aktarımdaki ad daha önceki bir webhook olayındaki addan farklı olabilir. Her A/B testi türünde her sütunun ne tuttuğunu görmek için Flow ve A/B testi alanları bölümüne bakın.
Paywall ziyaretleri
| Sütun | Açıklama |
|---|---|
| profile_id | Adapty kullanıcı kimliği. |
| customer_user_id | Geliştirici kullanıcı kimliği. Örneğin kullanıcı UUID’niz, e-postanız veya başka bir kimlik olabilir. Ayarlanmadıysa null. |
| profile_country | Apple/Google mağazası tarafından belirlenen profil ülkesi. |
| install_date | Kurulumun gerçekleştiği ISO 8601 tarih formatı. |
| store | app_store veya play_store olabilir. |
| paywall_showed_at | Paywallın müşteriye gösterildiği tarih. |
| developer_id | İşlemin gerçekleştiği paywallın geliştirici (SDK) kimliği. |
| ab_test_name | İşlemin gerçekleştiği A/B testinin adı. |
| ab_test_revision | İşlemin gerçekleştiği A/B testinin revizyonu. |
| paywall_name | İşlemin gerçekleştiği paywallın adı. |
| paywall_revision | İşlemin gerçekleştiği paywallın revizyonu. |
Sorun giderme
Adapty, yükleme başlamadan önce erişim anahtarlarınızın geçerliliğini kontrol eder. Google Cloud Storage anahtarlarınızdan yalnızca biri geçersizse bile Adapty yüklemeyi iptal eder ve hata fırlatır.
Yüklemelerin kesintisiz devam etmesi için anahtarlarınızı süresi dolmadan önce yenileyin. Etkinlikler için anahtarı güncellediyseniz paywall ziyaretleri için de güncellemeyi unutmayın; ya da tam tersi.