تماس های مستقیم API

در این رویکرد برای تعامل با API فروشنده، درخواست‌های خام را مستقیماً به نقاط انتهایی API، معمولاً از طریق HTTP(S) ارسال می‌کنید. شما به صورت دستی جنبه‌هایی مانند تشکیل بدنه درخواست، تنظیم هدرها (از جمله احراز هویت) و تجزیه پاسخ را مدیریت می‌کنید.

مرحله ۱. ثبت نام به عنوان توسعه‌دهنده

برای استفاده از Merchant API، باید اطلاعات تماس توسعه‌دهنده خود را ثبت کنید.

ثبت نام موارد زیر را انجام می دهد:

  • با اختصاص نقش API developer به یک کاربر، یک مخاطب فنی برای حساب مرکز فروشندگان شما ایجاد می‌کند. این به گوگل اجازه می‌دهد به‌روزرسانی‌های مهم را به‌طور خاص در مورد API و ویژگی‌هایی که توسعه‌دهنده استفاده می‌کند، مانند اطلاعیه‌های خدمات و اطلاعات مربوط به ویژگی‌های جدید، که ممکن است برای افراد غیر توسعه‌دهنده کمتر مورد توجه باشد، ارسال کند.
  • به شما امکان می‌دهد بدون نیاز به ثبت نام چندین بار، با چندین حساب تجاری کار کنید. هنگام ثبت نام، شناسه پروژه Google Cloud که برای تأیید اعتبار در Merchant API استفاده می‌شود، با حساب Merchant Center شما مرتبط می‌شود که دارای مخاطبین فنی ( API developer ) است. به این ترتیب، مادامی که تأیید اعتبار با پروژه ثبت شده Google Cloud انجام شود، می‌توانید به‌روزرسانی‌های مهم را برای همه حساب‌های تجاری که مدیریت می‌کنید، دریافت کنید.

هنگام ثبت نام، پیش نیازها و محدودیت های ذکر شده در بخش ثبت نام را رعایت کنید.

برای ثبت نام با استفاده از متد developerRegistration.registerGcp ، می‌توانید با این مثال شروع کنید و {DEVELOPER_EMAIL} را با آدرس ایمیل مناسب در بدنه درخواست جایگزین کنید.

POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/developerRegistration:registerGcp

{
  "developerEmail": "{DEVELOPER_EMAIL}"
}

یک فراخوانی موفق، منبع DeveloperRegistration را برمی‌گرداند که ارتباط بین پروژه و حساب کاربری شما را تأیید می‌کند.

{
  "name": "accounts/{ACCOUNT_ID}/developerRegistration",
  "gcpIds": [
    "123456789012345"
  ]
}

مرحله ۲. مدیریت مخاطبین و مجوزهای توسعه‌دهنده

وقتی ثبت نام می کنید:

  • اگر آدرس ایمیل متعلق به کاربری در حساب مرکز فروشندگان باشد، به آن کاربر نقش API_DEVELOPER اعطا می‌شود.
  • اگر آدرس ایمیل متعلق به کاربر فعلی نباشد، دعوتنامه‌ای به آن آدرس ارسال می‌شود. گیرنده باید دعوتنامه را بپذیرد تا به عنوان کاربر جدید با نقش API_DEVELOPER اضافه شود.

پس از ثبت نام اولیه، توصیه می‌کنیم چندین توسعه‌دهنده اضافه کنید و به آنها حقوق دسترسی بیشتری اعطا کنید.

مرحله ۲a. مجوزهای اضافی اعطا کنید

نقش API_DEVELOPER برای دریافت اعلان‌های مهم مورد نیاز است، اما در مرکز فروشندگان حداقل مجوزها را دارد. برای اینکه به این کاربر اجازه دهید فراخوانی‌های API دیگری انجام دهد یا تنظیمات را در رابط کاربری مرکز فروشندگان مدیریت کند، باید نقش‌های دیگری مانند STANDARD یا ADMIN را به او اعطا کنید. برای اطلاعات بیشتر، به انواع دسترسی مراجعه کنید.

شما می‌توانید حقوق دسترسی یک کاربر را با متد accounts.users.patch به‌روزرسانی کنید.

مثال زیر نحوه به‌روزرسانی یک کاربر برای اعطای هر دو نقش ADMIN و API_DEVELOPER را نشان می‌دهد. این به آنها اجازه می‌دهد تا حساب را به طور کامل مدیریت کنند و همچنین ارتباطات مرتبط با API را دریافت کنند.

PATCH https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/users/{DEVELOPER_EMAIL}?update_mask=access_rights
{
  "access_rights": [
    "ADMIN",
    "API_DEVELOPER"
  ]
}

مرحله 2b. توسعه‌دهندگان پشتیبان را اضافه کنید

برای جلوگیری از اختلال در دسترسی به API شما در صورت ترک سازمان توسط توسعه‌دهنده اصلی، باید حداقل یک توسعه‌دهنده پشتیبان اضافه کنید.

شما می‌توانید با استفاده از متد accounts.users.create یک کاربر اضافه کنید یا با استفاده از accounts.users.patch آن را به‌روزرسانی کنید. توصیه می‌کنیم به این کاربر هر دو نقش ADMIN و API_DEVELOPER را بدهید.

مرحله ۳. ایجاد یک منبع داده اولیه محصولات

برای درج یک محصول، به یک منبع داده اصلی محصولات نیاز دارید. درخواست زیر نحوه ایجاد یک منبع داده را که می‌توانید برای درج یک محصول در حساب خود استفاده کنید، نشان می‌دهد:

POST https://merchantapi.googleapis.com/datasources/v1/accounts/{ACCOUNT_ID}/dataSources

{
  "primaryProductDataSource": {
    "contentLanguage": "en",
    "countries": [
      "US"
    ],
    "feedLabel": "US"
  },
  "name": "primary-data-source",
  "displayName": "Primary Products Data Source"
}

به جای {ACCOUNT_ID} ، شناسه حساب مرکز فروش که ایجاد کرده‌اید را وارد کنید.

پس از اجرای موفقیت‌آمیز این درخواست، باید پاسخ زیر را مشاهده کنید:

{
  "name": "accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}",
  "dataSourceId": "{DATASOURCE_ID}",
  "displayName": "Primary Products Data Source",
  "primaryProductDataSource": {
    "feedLabel": "US",
    "contentLanguage": "en",
    "countries": [
      "US"
    ],
    "defaultRule": {
      "takeFromDataSources": [
        {
          "self": true
        }
      ]
    }
  },
  "input": "API"
}

مقدار فیلد name را کپی کنید. برای درج محصول به آن نیاز خواهید داشت.

شما می‌توانید این منبع داده را در رابط کاربری مرکز فروشندگان مشاهده کنید. برای اطلاعات بیشتر، به نحوه یافتن تب منابع داده مراجعه کنید.

مرحله ۴. درج محصول

پس از ایجاد منبع داده، سعی کنید یک محصول را در آن وارد کنید. دستور زیر را اجرا کنید و ACCOUNT_ID صحیح را وارد کنید. {DATASOURCE_NAME} را با مقداری که قبلاً کپی کرده‌اید جایگزین کنید.

POST https://merchantapi.googleapis.com/products/v1/accounts/{ACCOUNT_ID}/productInputs:insert?dataSource={DATASOURCE_NAME}
{
  "contentLanguage": "en",
  "feedLabel": "US",
  "name": "Red T-shirt",
  "productAttributes": {
    "gender": "MALE",
    "brand": "New brand"
  },
  "offerId": "tshirt-123"
}

پس از اجرای موفقیت‌آمیز این درخواست، باید پاسخ زیر را مشاهده کنید:

{
  "name": "accounts/{ACCOUNT_ID}/productInputs/en~US~tshirt-123",
  "product": "accounts/{ACCOUNT_ID}/products/en~US~tshirt-123",
  "offerId": "tshirt-123",
  "contentLanguage": "en",
  "feedLabel": "US",
  "productAttributes": {
    "brand": "New brand",
    "gender": "MALE"
  }
}

شناسه محصول برای محصول تازه ایجاد شده en~US~tshirt-123 است. می‌توانید از متد accounts.products.get برای بازیابی جزئیات مربوط به این محصول استفاده کنید. همچنین می‌توانید از رابط کاربری مرکز فروشندگان برای مشاهده این محصول استفاده کنید. برای اطلاعات بیشتر در مورد مشاهده داده‌های محصول خود، به نمای کلی محصولات در مرکز فروشندگان مراجعه کنید.