Report מכיל את התוצאה של ניתוח חבילת אפליקציות אחת, וכולל את בדיקות התאימות ואת תוצאות המעקב אחר נתונים. אפשר לגשת באופן פרוגרמטי לרוב הנתונים שמוצגים בדוחות, דרך הדפים תאימות ומעקב אחרי נתונים ב-Checks Console.
ב-Checks API יש את ה-methods הרגילות 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 נקרא גם field mask. מידע נוסף זמין במאמר בנושא Field masks.
בהמשך מופיעות דוגמאות נוספות למסכות שדות לשיטות 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. |
סינון דוחות
כדי לסנן את הדוחות שמוחזרים על ידי ה-method List, מעבירים ביטוי מסנן באמצעות פרמטר השאילתה של כתובת ה-URL filter.
הנה כמה דוגמאות:
| ביטוי | פלט |
|---|---|
appBundle.releaseType = PRE_RELEASE |
הפונקציה מחזירה רק דוחות של חבילות App Bundle בגרסת טרום-הפצה. |
appBundle.releaseType = PUBLIC |
מחזירה רק דוחות של חבילות App Bundle ציבוריות. |
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 דוחות. אפשר לשנות את זה באמצעות הגדרת הפרמטר של שאילתת כתובת ה-URL pageSize. הערך המקסימלי הוא 50.
השיטה List מחזירה nextPageToken כשיש עוד תוצאות לאחזור:
{
"reports": [
...
],
"nextPageToken": "CAEQ0ITI8K7ngAMaIDY3MThjNjQ3NGZmNzBhZGI4NWI5NjAyN2ViZmQ5MWVh"
}
מעבירים את האסימון הזה לשיטה List באמצעות פרמטר השאילתה של כתובת ה-URL pageToken כדי לאחזר את דף התוצאות הבא.