يوضّح هذا الدليل كيفية نقل عملية الدمج من RegionsService في Content API for Shopping إلى RegionsService ضمن واجهة Accounts الفرعية لواجهة برمجة التطبيقات.
تتيح لك خدمة "المناطق" تحديد مناطق جغرافية مخصّصة لحالات استخدام، مثل إلغاء الأسعار والشحن على مستوى منطقة معيّنة. يمكنك استخدام المناطق مع خدمات مثل RegionalInventory وShippingSettings.
الاختلافات الرئيسية
- بنية واجهة برمجة التطبيقات: أصبحت خدمة "المناطق" الآن جزءًا من واجهة برمجة التطبيقات الفرعية
Accountsفي Merchant API (على سبيل المثال،merchantapi.googleapis.com/accounts/v1/...). - أسماء الموارد: تستخدم Merchant API أسماء الموارد (
accounts/{account}/regions/{region}) بدلاً من المَعلمتَين المنفصلتَينmerchant_idوregion_idفي مسار عنوان URL لعمليات Get وUpdate وDelete. - التوافق مع AIP: تتّبع طرق Merchant API أنماط اقتراح تحسين واجهة برمجة التطبيقات العادية (مثل استخدام
parentفي List/Create، وnameفي Get/Delete، والاستخدام العاديupdate_mask). - أنواع برامج التضمين: الحقول التي كانت تستخدم
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 | الوصف |
|---|---|---|---|
| نقطة النهاية | https://shoppingcontent.googleapis.com |
https://merchantapi.googleapis.com |
تغيير النطاق الأساسي |
| الحصول على المسار | /content/v2.1/{merchant_id}/regions/{region_id} |
/accounts/v1/{name=accounts/*/regions/*} |
تستخدم Merchant 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} (سلسلة، جزء من سلسلة name) |
ابحث عن رقم تعريف المنطقة المضمّن في سلسلة اسم المورد، مثل accounts/{account}/regions/{region}. |
| اسم المورد | لا يتم استخدامه بشكل صارم للطلبات. | name: accounts/{account}/regions/{region} |
المعرّف العادي لطلبات Get/Update/Delete. |
| اسم الأهل | لا يتم استخدامه بشكل صارم للطلبات. | parent: accounts/{account} |
المعرّف العادي لطلبات القائمة/الإنشاء. |
الموارد
طرأت تغييرات بسيطة على بنية المورد Region:
| السلعة | Content API for Shopping | Merchant API | الوصف |
|---|---|---|---|
| معرّف المورد | region_id (سلسلة)، 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 (الإخراج فقط) |
تمت إزالة نوع وحدة التغليف. |
الطُرق
غيِّر استخدامك للطرق على النحو التالي:
| السلعة | Content API for Shopping | Merchant API | الوصف |
|---|---|---|---|
| Get Region | 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 (الرد) ورسائل البروتوكول المخزَّنة مؤقتًا المستخدَمة لتقديم طلبات إلى واجهة برمجة التطبيقات، مثل CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequest وListRegionsRequest.
|
| رقم تعريف المنطقة | region_id |
region (جزء من name)، region_id |
مدمَج في name لمعظم الحسابات، وحقل region_id منفصل في CreateRegionRequest يؤثّر ذلك في Region
(الرد) ورسائل البروتوكول المخزّن المؤقت المستخدَمة لتقديم طلبات إلى واجهة برمجة التطبيقات، مثل
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. |