Un Report
contiene il risultato di una singola analisi del bundle dell'app e
include i controlli di conformità e i risultati del monitoraggio dei dati. È possibile accedere in modo programmatico tramite i report a quasi tutti i dati offerti tramite le pagine Conformità e Monitoraggio dei dati della Console dei controlli.
L'API Checks fornisce 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 URL fields
.
Esempio:
GET https://checks.googleapis.com/v1alpha/accounts/123/apps/456/reports/789?fields=name,checks(type,state)
Restituisce:
{
"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 con il punto o racchiudendoli tra parentesi.
Ad esempio,
fields=checks.type,checks.state
è equivalente a
fields=checks(type,state)
Le parentesi possono essere utilizzate anche in modo ricorsivo, come in:
fields=checks(type,state,evidence(permissions,sdks))
Ciò consente di rendere le espressioni più concise.
Il valore del parametro di query fields
è noto anche come maschera di campo. Per saperne di più, consulta
Maschere di campo.
Di seguito sono riportati altri esempi di maschere di campo per i metodi Get
e List
:
Aumenta
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
utilizzando il parametro di query URL filter
.
Ecco alcuni esempi:
Espressione | Output |
---|---|
appBundle.releaseType = PRE_RELEASE |
Restituisce solo i report sugli app bundle pre-release. |
appBundle.releaseType = PUBLIC |
Restituisce solo i report degli app bundle pubblici. |
appBundle.codeReferenceId = abc123 |
Restituisce i report in cui codeReferenceId è uguale a abc123 . |
Il filtro per questi percorsi dei campi 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
Consulta AIP-160 per scoprire come creare altre espressioni di filtro.
Filtrare i controlli nei report
Puoi filtrare i controlli all'interno dei report passando un'espressione di filtro utilizzando il
parametro di query URL checksFilter
. Nella risposta sono incluse solo le verifiche che corrispondono all'espressione di filtro. Questo parametro è supportato dai metodi List
e Get
.
Ecco alcuni esempi:
Espressione | Output |
---|---|
state = FAILED |
Include solo i controlli non superati. |
citations.type:GDPR |
Include solo i controlli relativi al GDPR. |
state = FAILED AND citations.type:GDPR |
Include solo i controlli non riusciti relativi al GDPR. |
regionCodes:CA |
Include solo i controlli relativi alla regione del Canada. |
state = FAILED AND severity = PRIORITY |
Include solo i controlli prioritari non riusciti. |
Il filtro per questi percorsi dei campi 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
Consulta AIP-160 per scoprire come creare altre espressioni di filtro.
Impaginazione
Per impostazione predefinita, il metodo List
restituisce al massimo 10
report. Puoi modificare questa impostazione
impostando il parametro di ricerca URL pageSize
. Il valore massimo è 50
.
Il metodo List
restituisce un nextPageToken
quando ci sono altri risultati da
recuperare:
{
"reports": [
...
],
"nextPageToken": "CAEQ0ITI8K7ngAMaIDY3MThjNjQ3NGZmNzBhZGI4NWI5NjAyN2ViZmQ5MWVh"
}
Passa questo token al metodo List
utilizzando il parametro di query URL pageToken
per recuperare la pagina successiva dei risultati.