تقارير طلبات البحث

تحتوي السمة Report على نتيجة تحليل واحد لحِزمة التطبيق وتشمل عمليات التحقّق من الامتثال ونتائج مراقبة البيانات. يمكن الوصول آليًا إلى جميع البيانات المقدمة من خلال صفحتَي الامتثال ومراقبة البيانات في Checks Console من خلال التقارير.

توفّر Checks API طريقتَين عاديتَين Get وList للوصول إلى التقارير:

اختيار الحقول المطلوب عرضها

بما أنّ التقارير تحتوي على الكثير من البيانات، لا يتم عرض سوى الحقلَين name وresultsUri تلقائيًا. لعرض مجموعة مختلفة من الحقول، أدرِجها صراحةً في مَعلمة طلب البحث لعنوان URL fields.

مثال:

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:

جلب

التعبير الناتج
* تعرض جميع الحقول.
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 المتداخلة.

فلترة التقارير

يمكنك فلترة التقارير التي تعرضها طريقة List من خلال تمرير تعبير فلتر باستخدام مَعلمة طلب البحث لعنوان URL filter.

وفي ما يلي بعض الأمثلة:

التعبير الناتج
appBundle.releaseType = PRE_RELEASE لا تعرض سوى تقارير حِزم التطبيقات التجريبية.
appBundle.releaseType = PUBLIC لا تعرض سوى تقارير حِزم التطبيقات العامة.
appBundle.codeReferenceId = abc123 عرض التقارير التي يكون فيها codeReferenceId يساوي abc123.

الفلترة حسب مسارات الحقول التالية غير متاحة:

  • 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

راجع AIP-160 لمعرفة كيفية إنشاء المزيد من تعبيرات التصفية.

فلترة عمليات التحقّق ضمن التقارير

يمكنك فلترة عمليات التحقّق ضمن التقارير من خلال تمرير تعبير فلتر باستخدام مَعلمة طلب البحث لعنوان URL checksFilter. يتم فقط تضمين عمليات التحقق التي تتطابق مع تعبير الفلتر في الاستجابة. ويمكن استخدام هذه المَعلمة في الطريقتَين List وGet على حدّ سواء.

وفي ما يلي بعض الأمثلة:

التعبير الناتج
state = FAILED ولا يشمل سوى عمليات التحقق التي تعذّر إكمالها.
citations.type:GDPR ولا يتضمّن سوى عمليات التحقّق ذات الصلة باللائحة العامة لحماية البيانات.
state = FAILED AND citations.type:GDPR لا يتضمن سوى عمليات التحقق التي تعذّر إجراؤها والمرتبطة بـ GDRP.
regionCodes:CA لا يشمل ذلك سوى عمليات التحقّق المرتبطة بمنطقة كندا.
state = FAILED AND severity = PRIORITY لا يتم تضمين سوى عمليات التحقّق من الأولوية التي تعذّر إكمالها.

الفلترة حسب مسارات الحقول التالية غير متاحة:

  • 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

راجع AIP-160 لمعرفة كيفية إنشاء المزيد من تعبيرات التصفية.

تقسيم النتائج على عدّة صفحات

وفقًا للإعدادات التلقائية، تعرض الطريقة List تقريرَين (10) كحدّ أقصى. ويمكنك تغيير ذلك من خلال ضبط مَعلمة طلب البحث لعنوان URL pageSize. الحد الأقصى للقيمة هو 50.

تعرض الطريقة List خطأ nextPageToken عندما يكون هناك المزيد من النتائج لجلبها:

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

مرِّر هذا الرمز المميّز إلى الإجراء List باستخدام مَعلمة طلب البحث لعنوان URL pageToken لاسترجاع الصفحة التالية من النتائج.