Un elemento Report
contiene il risultato di una singola analisi dell'app bundle e include i controlli di conformità e i risultati del monitoraggio dei dati. È possibile accedere a quasi tutti i dati offerti tramite le pagine Conformità e Monitoraggio dei dati della console Checks in modo programmatico tramite i report.
L'API Checks offre metodi Get
e List
standard per accedere ai report:
Seleziona i campi da restituire
Poiché i report contengono molti dati, per impostazione predefinita vengono restituiti solo i campi name
e resultsUri
. Per restituire un insieme diverso di campi, elencali in modo esplicito nel parametro di query dell'URL fields
.
Esempio:
GET https://checks.googleapis.com/v1alpha/accounts/123/apps/456/reports/789?fields=name,checks(type,state)
Resi:
{
"name": "accounts/123/apps/456/reports/789",
"checks": [
{
"type": "PRIVACY_POLICY_UPDATE_DATE_RECENT",
"state": "PASSED"
},
...
]
}
I campi nidificati possono essere elencati utilizzando la sintassi dei punti o racchiudendoli tra parentesi.
Ad esempio:
fields=checks.type,checks.state
è equivalente a
fields=checks(type,state)
Le parentesi possono essere utilizzate in modo ricorsivo, ad esempio:
fields=checks(type,state,evidence(permissions,sdks))
Ciò consente di creare espressioni più concise.
Il valore del parametro di query fields
è noto anche come maschera di campo. Per scoprire di più, consulta Mascherine per i campi.
Di seguito sono riportati altri esempi di maschere per i campi per i metodi Get
e List
:
Get
Espressione | Output |
---|---|
* |
Restituisce tutti i campi. |
name,checks |
Restituisce name e tutti i campi nidificati di checks . |
name,checks(type,state) |
Restituisce name , checks.type e checks.state . |
name,dataMonitoring |
Restituisce name e tutti i campi nidificati di dataMonitoring . |
Elenco
Espressione | Output |
---|---|
* |
Restituisce tutti i campi. |
reports(name,checks) |
Restituisce name e tutti i campi nidificati di checks . |
reports(name,checks(type,state)) |
Restituisce name , checks.type e checks.state . |
reports(name,dataMonitoring) |
Restituisce name e tutti i campi nidificati di dataMonitoring . |
Filtra report
Puoi filtrare i report restituiti dal metodo List
passando un'espressione di filtro con il parametro di query dell'URL filter
.
Ecco alcuni esempi:
Espressione | Output |
---|---|
appBundle.releaseType = PRE_RELEASE |
Restituisce solo report relativi ad app bundle pre-release. |
appBundle.releaseType = PUBLIC |
Restituisce solo report di app bundle pubblici. |
appBundle.codeReferenceId = abc123 |
Restituisce i report in cui codeReferenceId è uguale a abc123 . |
Il filtro in base a questi percorsi di campo non è supportato:
checks.evidence.dataTypes.dataTypeEvidence.endpoints.attributedSdks.sdk.id
checks.evidence.dataTypes.dataTypeEvidence.endpoints.endpointDetails.endpoint.domain
checks.evidence.dataTypes.dataTypeEvidence.privacyPolicyTexts.policyFragment.htmlContent
checks.evidence.privacyPolicyTexts.policyFragment.htmlContent
checks.evidence.sdkIssues.sdk.id
dataMonitoring.dataTypes.dataTypeEvidence.endpoints.attributedSdks.sdk.id
dataMonitoring.dataTypes.dataTypeEvidence.endpoints.endpointDetails.endpoint.domain
dataMonitoring.dataTypes.dataTypeEvidence.privacyPolicyTexts.policyFragment.htmlContent
dataMonitoring.dataTypes.dataTypeEvidence.privacyPolicyTexts.policyFragment.sourceUri
dataMonitoring.permissions.metadata.lastDetectedAppVersion
resultsUri
Per scoprire come creare altre espressioni di filtro, consulta AIP-160.
Filtra i controlli all'interno dei report
Puoi filtrare i controlli all'interno dei report passando un'espressione di filtro con il
parametro di query dell'URL checksFilter
. Nella risposta vengono inclusi solo i controlli che corrispondono
all'espressione di filtro. Questo parametro è supportato dai metodi List
e Get
.
Ecco alcuni esempi:
Espressione | Output |
---|---|
state = FAILED |
Sono inclusi solo i controlli non superati. |
citations.type:GDPR |
Sono inclusi solo i controlli relativi al GDPR. |
state = FAILED AND citations.type:GDPR |
Sono inclusi solo i controlli non superati relativi al GDRP. |
regionCodes:CA |
Sono inclusi solo i controlli relativi alla regione del Canada. |
state = FAILED AND severity = PRIORITY |
Sono inclusi solo i controlli di priorità non superati. |
Il filtro in base a questi percorsi di campo non è supportato:
evidence.dataTypes.dataTypeEvidence.endpoints.attributedSdks.sdk.id
evidence.dataTypes.dataTypeEvidence.endpoints.endpointDetails.endpoint.domain
evidence.dataTypes.dataTypeEvidence.privacyPolicyTexts.policyFragment.htmlContent
evidence.privacyPolicyTexts.policyFragment.htmlContent
evidence.sdkIssues.sdk.id
Per scoprire come creare altre espressioni di filtro, consulta AIP-160.
Impaginazione
Per impostazione predefinita, il metodo List
restituisce al massimo 10
report. Per modificare questa impostazione, puoi impostare il parametro di query dell'URL pageSize
. Il valore massimo è 50
.
Il metodo List
restituisce un nextPageToken
quando ci sono più risultati da recuperare:
{
"reports": [
...
],
"nextPageToken": "CAEQ0ITI8K7ngAMaIDY3MThjNjQ3NGZmNzBhZGI4NWI5NjAyN2ViZmQ5MWVh"
}
Passa questo token al metodo List
utilizzando il parametro di query dell'URL pageToken
per recuperare la pagina successiva dei risultati.