Báo cáo truy vấn

Report chứa kết quả của một bản phân tích gói ứng dụng, bao gồm cả các hoạt động kiểm tra tính tuân thủ và kết quả theo dõi 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 chỉ có các trường nameresultsUri được trả về theo mặc định. Để trả về một tập hợp các trường khác, hãy liệt kê rõ rà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ú pháp dấu chấm hoặc đặt các trườ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ể sử dụng đệ quy dấu ngoặc đơn như trong:

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

Nhờ đó, các biểu thức sẽ 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. 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ạ cho trường (field mask) cho 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 mà phương thức List trả về bằng cách truyền một biểu thức lọc bằng cách sử dụng tham số truy vấn URL filter.

Sau đây là một số ví dụ:

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

Tính năng lọc theo các đường dẫn trường này không được hỗ trợ:

  • 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

Xem AIP-160 để tìm hiểu cách tạo thêm biểu thức lọc.

Lọ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 chuyển một biểu thức lọc sử dụng tham số truy vấn URL checksFilter. Chỉ các lượt kiểm tra khớp với biểu thức 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ợ.

Sau đây là một số ví dụ:

Cụm từ Đầu ra
state = FAILED Chỉ bao gồm các 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 những lượt kiểm tra không thành công liên quan đến GDRP.
regionCodes:CA Chỉ bao gồm những séc liên quan đến khu vực Canada.
state = FAILED AND severity = PRIORITY Chỉ bao gồm các lượt kiểm tra mức độ ưu tiên không thành công.

Tính năng lọc theo các đường dẫn trường này không được hỗ trợ:

  • 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

Xem AIP-160 để tìm hiểu cách tạo thêm biểu thức 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 điều 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ề nextPageToken khi có thêm kết quả cần tìm nạp:

{
  "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.