Report, tek bir uygulama paketi analizinin sonucunu içerir ve uygunluk kontrolleri ile veri izleme sonuçlarını kapsar. Checks Console'un Uygunluk ve Veri İzleme sayfalarında sunulan verilerin neredeyse tamamına raporlar aracılığıyla programatik olarak erişilebilir.
Checks API, raporlara erişmek için standart Get ve List yöntemleri sunar:
Hangi alanların döndürüleceğini seçin
Raporlar çok fazla veri içerdiğinden varsayılan olarak yalnızca name ve resultsUri alanları döndürülür. Farklı bir alan grubu döndürmek için bunları fields URL sorgu parametresinde açıkça listeleyin.
Örnek:
GET https://checks.googleapis.com/v1alpha/accounts/123/apps/456/reports/789?fields=name,checks(type,state)
Şunu döndürür:
{
"name": "accounts/123/apps/456/reports/789",
"checks": [
{
"type": "PRIVACY_POLICY_UPDATE_DATE_RECENT",
"state": "PASSED"
},
...
]
}
İç içe yerleştirilmiş alanlar, nokta söz dizimi kullanılarak veya parantez içine alınarak listelenebilir.
Örneğin,
fields=checks.type,checks.state
eş değerdir:
fields=checks(type,state)
Parantezler, aşağıdaki örnekte olduğu gibi yinelemeli olarak da kullanılabilir:
fields=checks(type,state,evidence(permissions,sdks))
Bu sayede ifadeler daha kısa olabilir.
fields sorgu parametresinin değeri alan maskesi olarak da bilinir. Daha fazla bilgi edinmek için Alan maskeleri bölümünü inceleyin.
Aşağıda, Get ve List yöntemleri için daha fazla alan maskesi örneği verilmiştir:
Get
| İfade | Çıkış |
|---|---|
* |
Tüm alanları döndürür. |
name,checks |
name ve checks'nin tüm iç içe alanlarını döndürür. |
name,checks(type,state) |
İadeler name, checks.type ve checks.state. |
name,dataMonitoring |
name ve dataMonitoring'nin tüm iç içe alanlarını döndürür. |
Liste
| İfade | Çıkış |
|---|---|
* |
Tüm alanları döndürür. |
reports(name,checks) |
name ve checks'nin tüm iç içe alanlarını döndürür. |
reports(name,checks(type,state)) |
İadeler name, checks.type ve checks.state. |
reports(name,dataMonitoring) |
name ve dataMonitoring'nin tüm iç içe alanlarını döndürür. |
Raporları filtreleme
List yöntemi tarafından döndürülen raporları, filter URL sorgu parametresini kullanarak bir filtre ifadesi ileterek filtreleyebilirsiniz.
Aşağıda bazı örnekler verilmiştir:
| İfade | Çıkış |
|---|---|
appBundle.releaseType = PRE_RELEASE |
Yalnızca yayın öncesi uygulama paketlerinin raporlarını döndürür. |
appBundle.releaseType = PUBLIC |
Yalnızca herkese açık uygulama paketlerinin raporlarını döndürür. |
appBundle.codeReferenceId = abc123 |
codeReferenceId değerinin abc123 değerine eşit olduğu raporları döndürür. |
Bu alan yollarına göre filtreleme desteklenmez:
checks.evidence.dataTypes.dataTypeEvidence.endpoints.attributedSdks.sdk.idchecks.evidence.dataTypes.dataTypeEvidence.endpoints.endpointDetails.endpoint.domainchecks.evidence.dataTypes.dataTypeEvidence.privacyPolicyTexts.policyFragment.htmlContentchecks.evidence.privacyPolicyTexts.policyFragment.htmlContentchecks.evidence.sdkIssues.sdk.iddataMonitoring.dataTypes.dataTypeEvidence.endpoints.attributedSdks.sdk.iddataMonitoring.dataTypes.dataTypeEvidence.endpoints.endpointDetails.endpoint.domaindataMonitoring.dataTypes.dataTypeEvidence.privacyPolicyTexts.policyFragment.htmlContentdataMonitoring.dataTypes.dataTypeEvidence.privacyPolicyTexts.policyFragment.sourceUridataMonitoring.permissions.metadata.lastDetectedAppVersionresultsUri
Daha fazla filtre ifadesi oluşturmayı öğrenmek için AIP-160'ı inceleyin.
Raporlardaki kontrolleri filtreleme
checksFilter URL sorgu parametresini kullanarak bir filtre ifadesi ileterek raporlardaki kontrolleri filtreleyebilirsiniz. Yanıt yalnızca filtre ifadesiyle eşleşen kontrolleri içerir. Bu parametre hem List hem de Get yöntemleri tarafından desteklenir.
Aşağıda bazı örnekler verilmiştir:
| İfade | Çıkış |
|---|---|
state = FAILED |
Yalnızca başarısız kontrolleri içerir. |
citations.type:GDPR |
Yalnızca GDPR ile ilgili kontrolleri içerir. |
state = FAILED AND citations.type:GDPR |
Yalnızca GDPR ile ilgili başarısız kontrolleri içerir. |
regionCodes:CA |
Yalnızca Kanada bölgesiyle ilgili kontrolleri içerir. |
state = FAILED AND severity = PRIORITY |
Yalnızca başarısız öncelik kontrollerini içerir. |
Bu alan yollarına göre filtreleme desteklenmez:
evidence.dataTypes.dataTypeEvidence.endpoints.attributedSdks.sdk.idevidence.dataTypes.dataTypeEvidence.endpoints.endpointDetails.endpoint.domainevidence.dataTypes.dataTypeEvidence.privacyPolicyTexts.policyFragment.htmlContentevidence.privacyPolicyTexts.policyFragment.htmlContentevidence.sdkIssues.sdk.id
Daha fazla filtre ifadesi oluşturmayı öğrenmek için AIP-160'ı inceleyin.
Sayfalara ayırma
Varsayılan olarak List yöntemi en fazla 10 rapor döndürür. pageSize URL sorgu parametresini ayarlayarak bu durumu değiştirebilirsiniz. Maksimum değer 50'dır.
List yöntemi, getirilecek daha fazla sonuç olduğunda nextPageToken döndürür:
{
"reports": [
...
],
"nextPageToken": "CAEQ0ITI8K7ngAMaIDY3MThjNjQ3NGZmNzBhZGI4NWI5NjAyN2ViZmQ5MWVh"
}
Sonuçların bir sonraki sayfasını getirmek için bu jetonu pageToken URL sorgu parametresini kullanarak List yöntemine iletin.