Report には、単一のアプリバンドル分析の結果が含まれ、コンプライアンス チェックとデータ モニタリングの結果が含まれます。Checks Console の [コンプライアンス] ページと [データ モニタリング] ページで提供されるデータのほぼすべてに、レポートを通じてプログラムでアクセスできます。
Checks API は、レポートにアクセスするための標準の Get メソッドと List メソッドを提供します。
返すフィールドを選択する
レポートには大量のデータが含まれているため、デフォルトでは name フィールドと resultsUri フィールドのみが返されます。別のフィールドのセットを返すには、fields URL クエリ パラメータで明示的にリストします。
例:
GET https://checks.googleapis.com/v1alpha/accounts/123/apps/456/reports/789?fields=name,checks(type,state)
戻り値:
{
"name": "accounts/123/apps/456/reports/789",
"checks": [
{
"type": "PRIVACY_POLICY_UPDATE_DATE_RECENT",
"state": "PASSED"
},
...
]
}
ネストされたフィールドは、ドット構文を使用するか、かっこで囲んでリストできます。
次に例を示します。
fields=checks.type,checks.state
上記は次と等しくなります。
fields=checks(type,state)
次のように、かっこを再帰的に使用することもできます。
fields=checks(type,state,evidence(permissions,sdks))
これにより、式をより簡潔に記述できます。
fields クエリ パラメータの値は、フィールド マスクとも呼ばれます。詳しくは、フィールド マスクをご覧ください。
以下に、Get メソッドと List メソッドのフィールド マスクの例をいくつか示します。
Get
| 式 | 出力 |
|---|---|
* |
すべてのフィールドを返します。 |
name,checks |
name と checks のすべてのネストされたフィールドを返します。 |
name,checks(type,state) |
name、checks.type、checks.state を返します。 |
name,dataMonitoring |
name と dataMonitoring のすべてのネストされたフィールドを返します。 |
リスト
| 式 | 出力 |
|---|---|
* |
すべてのフィールドを返します。 |
reports(name,checks) |
name と checks のすべてのネストされたフィールドを返します。 |
reports(name,checks(type,state)) |
name、checks.type、checks.state を返します。 |
reports(name,dataMonitoring) |
name と dataMonitoring のすべてのネストされたフィールドを返します。 |
レポートをフィルタ
filter URL クエリ パラメータを使用してフィルタ式を渡すことで、List メソッドが返すレポートをフィルタできます。
次に例を示します。
| 式 | 出力 |
|---|---|
appBundle.releaseType = PRE_RELEASE |
プレリリース版の App Bundle のレポートのみを返します。 |
appBundle.releaseType = PUBLIC |
公開アプリバンドルのレポートのみを返します。 |
appBundle.codeReferenceId = abc123 |
codeReferenceId が abc123 と等しいレポートを返します。 |
次のフィールドパスによるフィルタリングはサポートされていません。
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
フィルタ式を作成する方法については、AIP-160 をご覧ください。
レポート内のチェックをフィルタする
checksFilter URL クエリ パラメータを使用してフィルタ式を渡すことで、レポート内のチェックをフィルタできます。フィルタ式に一致するチェックのみがレスポンスに含まれます。このパラメータは、List メソッドと Get メソッドの両方でサポートされています。
次に例を示します。
| 式 | 出力 |
|---|---|
state = FAILED |
不合格だった検証のみが含まれます。 |
citations.type:GDPR |
GDPR に関連するチェックのみが含まれます。 |
state = FAILED AND citations.type:GDPR |
GDPR に関連する失敗したチェックのみが含まれます。 |
regionCodes:CA |
カナダ リージョンに関連するチェックのみが含まれます。 |
state = FAILED AND severity = PRIORITY |
優先度チェックに失敗した項目のみが含まれます。 |
次のフィールドパスによるフィルタリングはサポートされていません。
evidence.dataTypes.dataTypeEvidence.endpoints.attributedSdks.sdk.idevidence.dataTypes.dataTypeEvidence.endpoints.endpointDetails.endpoint.domainevidence.dataTypes.dataTypeEvidence.privacyPolicyTexts.policyFragment.htmlContentevidence.privacyPolicyTexts.policyFragment.htmlContentevidence.sdkIssues.sdk.id
フィルタ式を作成する方法については、AIP-160 をご覧ください。
ページネーション
デフォルトでは、List メソッドは最大で 10 個のレポートを返します。この動作を変更するには、pageSize URL クエリ パラメータを設定します。最大値は 50 です。
List メソッドは、取得する結果がまだある場合に nextPageToken を返します。
{
"reports": [
...
],
"nextPageToken": "CAEQ0ITI8K7ngAMaIDY3MThjNjQ3NGZmNzBhZGI4NWI5NjAyN2ViZmQ5MWVh"
}
このトークンを pageToken URL クエリ パラメータを使用して List メソッドに渡し、結果の次のページを取得します。