Báo cáo truy vấn

Report chứa kết quả của một quy trình phân tích gói ứng dụng duy nhất, bao gồm các quy trình kiểm tra việc tuân thủ và kết quả giám sát dữ liệu. Hầu hết dữ liệu được cung cấp thông qua các trang Tuân thủGiám sát dữ liệu của Checks Console đều có thể được truy cập theo phương thức lập trình thông qua các báo cáo.

Checks API cung cấp các phương thức GetList tiêu chuẩn để truy cập vào báo cáo:

Chọn các trường cần trả về

Vì báo cáo chứa nhiều dữ liệu, nên theo mặc định, chỉ các trường nameresultsUri được trả về. Để trả về một nhóm trường khác, hãy liệt kê rõ ràng các trường đó trong tham số truy vấn URL fields.

Ví dụ:

GET https://checks.googleapis.com/v1alpha/accounts/123/apps/456/reports/789?fields=name,checks(type,state)

Trả về:

{
  "name": "accounts/123/apps/456/reports/789",
  "checks": [
    {
      "type": "PRIVACY_POLICY_UPDATE_DATE_RECENT",
      "state": "PASSED"
    },
    ...
  ]
}

Bạn có thể liệt kê các trường lồng nhau bằng cách sử dụng cú pháp dấu chấm hoặc bằng cách đặt chúng trong dấu ngoặc đơn.

Ví dụ:

fields=checks.type,checks.state

tương đương với

fields=checks(type,state)

Bạn cũng có thể dùng dấu ngoặc đơn một cách đệ quy, chẳng hạn như:

fields=checks(type,state,evidence(permissions,sdks))

Điều này giúp các biểu thức trở nên ngắn gọn hơn.

Giá trị của tham số truy vấn fields còn được gọi là mặt nạ trường. Hãy xem phần Mặt nạ trường để tìm hiểu thêm.

Dưới đây là một số ví dụ khác về mặt nạ trường cho các phương thức GetList:

Get

Cụm từ Đầu ra
* Trả về tất cả các trường.
name,checks Trả về name và tất cả các trường lồng nhau của checks.
name,checks(type,state) Trả về name, checks.typechecks.state.
name,dataMonitoring Trả về name và tất cả các trường lồng nhau của dataMonitoring.

Danh sách

Cụm từ Đầu ra
* Trả về tất cả các trường.
reports(name,checks) Trả về name và tất cả các trường lồng nhau của checks.
reports(name,checks(type,state)) Trả về name, checks.typechecks.state.
reports(name,dataMonitoring) Trả về name và tất cả các trường lồng nhau của dataMonitoring.

Lọc báo cáo

Bạn có thể lọc các báo cáo do phương thức List trả về bằng cách truyền một biểu thức bộ lọc bằng tham số truy vấn URL filter.

Dưới đây là một số ví dụ:

Cụm từ Đầu ra
appBundle.releaseType = PRE_RELEASE Chỉ trả về báo cáo về các gói ứng dụng phát hành trước.
appBundle.releaseType = PUBLIC Chỉ trả về báo cáo về các gói ứng dụng công khai.
appBundle.codeReferenceId = abc123 Trả về những báo cáo có codeReferenceId bằng abc123.

Không hỗ trợ lọc theo các đường dẫn trường sau:

  • 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

Hãy xem AIP-160 để tìm hiểu cách tạo thêm các biểu thức bộ lọc.

Lọc các lượt kiểm tra trong báo cáo

Bạn có thể lọc các lượt kiểm tra trong báo cáo bằng cách truyền một biểu thức bộ lọc bằng tham số truy vấn URL checksFilter. Chỉ những chế độ kiểm tra khớp với biểu thức bộ lọc mới được đưa vào phản hồi. Tham số này được cả phương thức ListGet hỗ trợ.

Dưới đây là một số ví dụ:

Cụm từ Đầu ra
state = FAILED Chỉ bao gồm những lượt kiểm tra không thành công.
citations.type:GDPR Chỉ bao gồm các bước kiểm tra liên quan đến GDPR.
state = FAILED AND citations.type:GDPR Chỉ bao gồm các bước kiểm tra không thành công liên quan đến GDPR.
regionCodes:CA Chỉ bao gồm các bước kiểm tra liên quan đến khu vực Canada.
state = FAILED AND severity = PRIORITY Chỉ bao gồm các lượt kiểm tra ưu tiên không thành công.

Không hỗ trợ lọc theo các đường dẫn trường sau:

  • 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

Hãy xem AIP-160 để tìm hiểu cách tạo thêm các biểu thức bộ lọc.

Phân trang

Theo mặc định, phương thức List sẽ trả về tối đa 10 báo cáo. Bạn có thể thay đổi chế độ này bằng cách đặt tham số truy vấn URL pageSize. Giá trị tối đa là 50.

Phương thức List trả về một nextPageToken khi có nhiều kết quả cần tìm nạp hơn:

{
  "reports": [
    ...
  ],
  "nextPageToken": "CAEQ0ITI8K7ngAMaIDY3MThjNjQ3NGZmNzBhZGI4NWI5NjAyN2ViZmQ5MWVh"
}

Truyền mã thông báo này đến phương thức List bằng cách sử dụng tham số truy vấn URL pageToken để tìm nạp trang kết quả tiếp theo.