העברת ניהול אזורים
במדריך הזה מוסבר איך להעביר את השילוב מ-RegionsService ב-Content API for Shopping אל RegionsService ב-Accounts sub-API.
שירות האזורים מאפשר להגדיר אזורים גיאוגרפיים מותאמים אישית לתרחישי שימוש כמו שינויים במחירים ובמשלוחים לפי אזור. אפשר להשתמש באזורים עם שירותים כמו 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, part of name string) |
מחפשים את מזהה האזור שמוטמע במחרוזת של שם המשאב, לדוגמה, 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 (string), merchant_id (int64) |
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.
|
| List Regions | 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
(response) ועל הודעות 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. |