Huawei Reports API

Ece Aydın
Huawei Developers - Türkiye
4 min readDec 29, 2020

Herkese merhaba. Bu yazımda sizlere AppGallery Connect API’ın özelliklerinden biri olan Reports API’yı anlatacağım. Reports API’ı daha iyi anlamak için öncelikle AppGallery Connect API nedir daha yakından inceleyelim.

AppGallery Connect API, AppGallery Connect tarafından sağlanan hizmetleri özelleştirmek veya süreç otomasyonunu uygulamak için kullanılabilen RESTful API’ları sağlayarak iş verimliliğinizi arttıran bir servistir. Publishing API, Reports API, Project Management API, Comments API ve Product Management System (PMS) API olmak üzere beş alanda servis vermektedir.

Reports API nedir ve ne için kullanılır?

İndirme ve yükleme, rezervasyon yapma, kullanıcı grubu ödülü verme, yeni gelen ve kalıcı olan kullanıcı, uygulama içi ödeme yapma, ücretli indirme, kupon haraketliliği ve kurulum hatası verileri gibi rapor verileri dahil olmak üzere AppGallery’deki çoğu raporu sorgulamak için Reports API’yi kullanabilirsiniz.

Reports API nasıl kullanılır?

Tarih aralığını belirlemeniz ve API aracılığıyla raporları sorgulamak için bir filtre eklemeniz gerekir. Reports API, CSV veya Excel dosyaları olarak bir sorgu sonucu sağlayacaktır.

Reports API’ye dayalı bir uygulama geliştirme süreci :

1. Rapor verilerini görüntüleyin

Bir uygulamanın raporunu almadan önce, uygulamanın ilgili rapor verilerinin AppGallery Connect’te mevcut olduğundan ve uygulamanın yayınlanmış ve tanıtılmış olduğundan emin olmalısınız. AppGallery Connect’te mevcut rapor verilerini sorgulamak için aşağıdaki adımları uygulayın:

  • Uygulamanızı listede bulun ve uygulama adını tıklayın.
  • Sol üstte bir analiz türü sekmesi seçin ve sayfadaki Dağıtım Analizi (Distribution Analysis) , İşlem Analizi (Operations Analysis) ve Kalite Analizi (Quality Analysis) gibi rapor verilerini görüntüleyin.

2. Rapor indirme URL’ini alma

Rapor CSV veya Excel dosyasının indirme URL’sini almak için Reports API’i çağırmanız gerekir.

Şu anda, Reports API’ı tarafından işlenen İndirme ve Kurulum, Uygulama İçi Ödeme, Ücretli İndirme ve Kurulum Hatası Verileri olmak üzere 4 tür Rapor İndirme URL’i bulunmaktadır.

  • İndirme ve Kurulum Raporu (Download and Installation Report) : CSV dosyasının URL’sini almak için kullanılır.
  • Uygulama İçi Ödeme Raporu (In-app Payment Report) : CSV veya Excel dosyasının URL’sini almak için kullanılır.
  • Ücretli İndirme Raporu (Paid Download Report) : CSV dosyasının URL’sini almak için kullanılır.
  • Kurulum Hatası Veri Raporu (Installation Failure Data Report) : CSV dosyasının URL’sini almak için kullanılır.

Not: Reports API’yı çağırmadan önce, bir API istemcisinin oluşturulduğundan ve token’ın alındığından emin olun.

★ Ben bu yazıda sizlere Ücretli İndirme Raporu’nun (Paid Download Report) kullanımını göstereceğim ancak diğer raporlama yöntemlerinin kullanımları da oldukca benzerdir.

Ücretli İndirme Raporu (Paid Download Report)

Kısıtlamalar : Güvenlik zaafiyetlerini önlemek için, ücretli indirme raporundaki bir uygulama adının özel bir karakter (+, -, @, =) içermesi durumundan kaçınılır, ancak bu gibi durumlarda kaçınma kuralı uygulanır. Bu kurala göre, \ t kaçınılmak istenen karakter dizesinin önüne eklenir ve ardından tüm karakter dizesi çift tırnak işareti (“) içine alınır.

URL

https://{domain}/api/report/distribution-operation-quality/v1/orderDetailExport/{appId}

  • Çin için domain adı: connect-api.cloud.huawei.com
  • Avrupa için domain adı: connect-api-dre.cloud.huawei.com
  • Asya Pasifik için domain adı: connect-api-dra.cloud.huawei.com
  • Rusya için domain adı: connect-api-drru.cloud.huawei.com

Input Parametreleri

▹client_id String(header)

Müşteri Kimliği. Müşteri kimliği oluşturmakla ilgili ayrıntılı bilgi için API İstemcisi Oluşturma sayfasını inceleyebilirsiniz.

▹oauth2Token String(header)

Kimlik doğrulama bilgileri.

▹Authorization String(header)

Yetkilendirmede için yetkilendirme bilgileri: $ {access_token} formatında kullanılır. Bu formatta access_token, token alınırken elde edilir .

▹appId String(path)

Uygulama kimliği. Uygulama kimliği oluşturmakla ilgili ayrıntılı bilgi için Uygulama Bilgilerini Sorgulama sayfasını inceleyebilirsiniz.

▹language String(query)

Sorgu dili. Rapor başlığı farklı dillerde görüntülenir. Yalnızca basitleştirilmiş Çince (zh-CN), İngilizce (en-US) ve Rusça (ru-RU) desteklenmektedir.

▹queryType integer(query)

Sorgu tarihi türü. 0 : satın alma tarihine göre sorgulama 1 : geri ödeme tarihine göre sorgulama

▹startTime String(query) & endTime String(query)

UTC saatine göre sorgu başlangıç/bitiş ​​zamanı. Biçim YYYYAAGG şeklindedir. startTime ile EndTime aralığı maksimum 180 gün olarak verilebilir.

▹filterCondition List<String>(query)

Filtreleme koşulu. countryId , orderID ve orderStatus için filtrelemeler desteklenmektedir . Ayrıca bu filtrelerin kombinasyonları da desteklenmektedir ancak countryId filtresi mandatory biçimindedir. Filtre countryId olduğunda, tek seferde yalnızca bir ülke / bölgenin verileri sorgulanabilir.

URL örneği: & filterCondition = countryId & filterCondition = orderID

▹filterConditionValue List<String>(query)

Filtrenin değeri. Örneğin, filtre countryId ise , bu parametrenin değeri ülke / bölge kodlarından oluşan bir dize dizisidir. Her sorgu sırasında dizideki yalnızca bir değer, örneğin TR kullanılabilir.

Filtre orderID ise , bu parametrenin değeri bir sipariş kimliğidir, örneğin 44rRFFrereere3343 .

Filtre orderStatus ise, seçenekler 0 (ödenmiş), 1 (iade edilmiş), 2 (ödeme başarısız), 3 (iade başarısız) ve 5 (geri ödeme) olabilir.

Birden çok filtre geçilirse , karşılık gelen filtrelerle aynı sırada düzenlenmiş aynı sayıda filterConditionValue parametresi gerekir. URL örneği: filterConditionValue = CN & filterConditionValue = 44rRFFrereere3343

Output Parametreleri

▹fileURL String

CSV dosyasını saklama yolu.

▹ret String

Sonuç kodunu ve açıklamayı {“kod”: retcode, “msg”: “description”} biçiminde içeren JSON karakter dizesi. retcode sonuç kodunu, description ise sonuç kodu açıklamasını belirtir.

Geliştirme Basamakları

  1. Raporunuz için sabit parametreleri tanımlayın.

2. AppGallery Connect API’sini çağırmak için, önceden aşağıdaki modlardan birini kullanarak AppGallery Connect sunucusundan yetki almanız gerekir:

  • AppGallery Connect’te oturum açın ve Users and permissions’ı seçin .
  • Api Key > AppGalleryConnect API adımlarını takip ederek Create’e tıklayın.
  • Customized client name adını tanımlatın, ilgili Rolleri ayarlayın ve Confirm’e tıklayın .
  • İstemci (client) başarıyla oluşturulduktan sonra, Client ID ve Key bilgilerinizi projenize ekleyerek Token’nınızı çağırın.

3. Son olarak raporu indirme URL’ini edinin.

3. Raporu indirin

Rapor indirme URL’sini aldıktan sonra, URL’den rapor CSV veya Excel kaydını doğrudan indirebilirsiniz. Belge, ayrıntılı rapor verilerini içerir.

--

--