במדריך הזה מוסבר איך להעביר את השילוב מ-RegionsService ב-Content API for Shopping אל RegionsService ב-Accounts sub-API.
השירות Regions מאפשר להגדיר אזורים גיאוגרפיים מותאמים אישית לתרחישי שימוש כמו תמחור אזורי ושינוי הגדרות משלוח. אפשר להשתמש באזורים עם שירותים כמו RegionalInventory ו-ShippingSettings.
ההבדלים העיקריים
- מבנה ה-API: שירות האזורים הוא עכשיו חלק מ-
Accountssub-API ב-Merchant API (לדוגמה,merchantapi.googleapis.com/accounts/v1/...). - שמות משאבים: ב-Merchant API נעשה שימוש בשמות משאבים (
accounts/{account}/regions/{region}) במקום בפרמטרים נפרדיםmerchant_idו-region_idבנתיב כתובת ה-URL לפעולות Get, Update ו-Delete. - תאימות ל-AIP: השיטות של Merchant API פועלות לפי דפוסי API Improvement Proposal סטנדרטיים (למשל, שימוש ב-
parentעבור List/Create, ב-nameעבור Get/Delete ושימוש סטנדרטי ב-update_mask). - סוגי wrapper: שדות שהשתמשו בעבר ב-
google.protobuf.StringValueאו ב-google.protobuf.BoolValueב-Content API, משתמשים עכשיו בשדות רגילים שלoptionalב-Merchant API. - תכונות חדשות:
- ב-Merchant API נוסף סוג
RadiusAreaבמשאבRegionלצורך הגדרת אזורים על סמך רדיוס סביב נקודה (בהתחלה עם הגדרת חשיפהTRUST_TESTER). - יש שיטות לביצוע פעולות בכמות גדולה –
BatchCreateRegions, BatchUpdateRegions,BatchDeleteRegions.
- ב-Merchant API נוסף סוג
- טיפול בשגיאות: קודי שגיאות והודעות מספקים משוב ספציפי יותר.
בקשות
כך משתנים דפוסי הבקשות:
| פריט | Content API for Shopping | Merchant API | תיאור |
|---|---|---|---|
| נקודת קצה (endpoint) | https://shoppingcontent.googleapis.com |
https://merchantapi.googleapis.com |
דומיין הבסיס משתנה. |
| קבלת נתיב | /content/v2.1/{merchant_id}/regions/{region_id} |
/accounts/v1/{name=accounts/*/regions/*} |
ב-Merchant API נעשה שימוש ב-sub-API accounts ובמשאב name. |
| נתיב לרשימה | /content/v2.1/{merchant_id}/regions |
/accounts/v1/{parent=accounts/*}/regions |
ב-Merchant API משתמשים ב-parent כדי לציין את החשבון. |
| יצירת נתיב | /content/v2.1/{merchant_id}/regions |
/accounts/v1/{parent=accounts/*}/regions |
Merchant API משתמש ב-parent. region_id הוא שדה בגוף הבקשה. |
| נתיב עדכון | /content/v2.1/{merchant_id}/regions/{region_id} |
/accounts/v1/{name=accounts/*/regions/*} |
שם המשאב ב-Merchant API הוא חלק מאובייקט region בגוף הבקשה. |
| מחיקת הנתיב | /content/v2.1/{merchant_id}/regions/{region_id} |
/accounts/v1/{name=accounts/*/regions/*} |
נעשה שימוש במשאב name. |
מזהים
כדי לשנות את השימוש במזהים, צריך לבצע את הפעולות הבאות:
| פריט | Content API for Shopping | Merchant API | תיאור |
|---|---|---|---|
| חשבון | merchant_id (מספר שלם) |
account (מספר שלם, חלק ממחרוזת name או parent) |
מחפשים את מזהה החשבון שמוטמע במחרוזת של שם המשאב, לדוגמה, accounts/{account}. |
| אזור | region_id (מחרוזת) |
{region} (string, חלק מהמחרוזת name) |
מחפשים את מזהה האזור שמוטמע במחרוזת של שם המשאב, לדוגמה, accounts/{account}/regions/{region}. |
| שם משאב | הוא לא משמש רק לבקשות. | name: accounts/{account}/regions/{region} |
מזהה סטנדרטי לבקשות Get, Update ו-Delete. |
| שם ההורה | הוא לא משמש רק לבקשות. | parent: accounts/{account} |
מזהה רגיל לבקשות List/Create. |
משאבים
יש שינויים קלים במבנה של משאב Region:
| פריט | Content API for Shopping | Merchant API | תיאור |
|---|---|---|---|
| מזהה המשאב | region_id (מחרוזת), merchant_id (מספר שלם 64 ביט) |
name (מחרוזת): accounts/{account}/regions/{region} |
ב-Merchant API משתמשים בשדה name יחיד כמזהה המשאב. |
display_name |
google.protobuf.StringValue |
optional string |
הוסר סוג של יחידת עיטוף. |
radius_area |
לא זמין (N/A) | RadiusArea |
הסוג החדש הזה מגדיר אזורים לפי רדיוס. החבילה כוללת
region_code, lat_lng, radius,
radius_units. כברירת מחדל, החשיפה מוגבלת.
|
regional_inventory_eligible |
google.protobuf.BoolValue (פלט בלבד) |
optional bool (פלט בלבד) |
הוסר סוג של יחידת עיטוף. |
shipping_eligible |
google.protobuf.BoolValue (פלט בלבד) |
optional bool (פלט בלבד) |
הוסר סוג של יחידת עיטוף. |
Methods
כדי לשנות את השימוש בשיטות:
| פריט | Content API for Shopping | Merchant API | תיאור |
|---|---|---|---|
| קבלת אזור | GetRegion |
GetRegion |
הבקשה משתמשת ב-name. |
| יצירת אזור | CreateRegion |
CreateRegion |
הבקשה מקבלת את parent מכתובת ה-URL, בעוד שגוף הבקשה כולל את האובייקט region ואת region_id.
|
| עדכון האזור | UpdateRegion |
UpdateRegion |
הבקשה משתמשת ב-region (שחייב לכלול region.name) וב-update_mask.
|
| מחיקת האזור | DeleteRegion
|
DeleteRegion
|
הבקשה משתמשת ב-name.
|
| רשימת אזורים | ListRegions |
ListRegions |
הבקשה משתמשת ב-parent. ההתנהגות של page_size ושל page_token זהה.
|
| יצירה באצווה | לא רלוונטי | BatchCreateRegions |
זו שיטה חדשה. |
| עדכון בכמות גדולה | לא רלוונטי | BatchUpdateRegions |
זו שיטה חדשה. |
| מחיקה של כמה קבצים בבת אחת | לא רלוונטי | BatchDeleteRegions |
זו שיטה חדשה. |
שדות ששמם שונה
| פריט | Content API for Shopping | Merchant API | תיאור |
|---|---|---|---|
| מספר חשבון | merchant_id |
account (חלק מ-name או מ-parent) |
משולב במחרוזות של משאב name. השינוי הזה משפיע על הודעות Region (תגובה) ו-protobuf שמשמשות ליצירת בקשות API, כמו CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequest ו-ListRegionsRequest.
|
| מזהה אזור | region_id |
region (חלק מ-name), region_id |
משולב ב-name ברוב המקרים, שדה region_id נפרד ב-CreateRegionRequest. השינוי הזה משפיע על Region
(תגובה) ועל הודעות protobuf שמשמשות ליצירת בקשות API, כמו
CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequest
ו-ListRegionsRequest.
|
| שם האזור (פלט) | region_id
|
name
|
שדה המזהה הראשי בתגובה הוא עכשיו המשאב המלא name. הפעולה הזו תשפיע על Region.
|
| השם המוצג | display_name |
display_name |
הסוג השתנה מ-StringValue ל-optional string.
הפעולה הזו תשפיע על Region.
|
| סימונים של עמידה בדרישות | ...eligible |
...eligible |
הסוג השתנה מ-BoolValue ל-optional bool.
הפעולה הזו תשפיע על Region.
|
| עדכון המסכה | update_mask |
update_mask |
Region נתיבי שדות. הפעולה הזו תשפיע על UpdateRegionRequest. |