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

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

مرحله 1. به عنوان یک توسعه دهنده ثبت نام کنید

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

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

  • با اختصاص نقش API developer به یک کاربر، یک مخاطب فنی برای حساب Merchant Center شما ایجاد می کند. این به Google امکان می‌دهد به‌روزرسانی‌های مهم را به‌طور خاص درباره 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"
  ]
}

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

هنگام ثبت نام:

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

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

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

نقش API_DEVELOPER برای دریافت اعلان‌های مهم لازم است، اما حداقل مجوزها را در Merchant Center دارد. برای اینکه این کاربر بتواند تماس‌های API دیگری انجام دهد یا تنظیمات را در رابط کاربری Merchant Center مدیریت کند، باید نقش‌های دیگری مانند 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 بدهید.

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

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

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} را با شناسه حساب Merchant Center که ایجاد کردید جایگزین کنید.

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

{
  "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 را کپی کنید. برای قرار دادن محصول به آن نیاز خواهید داشت.

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

مرحله 4. یک محصول را وارد کنید

پس از ایجاد منبع داده، سعی کنید محصولی را در آن وارد کنید. با ارائه 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 استفاده کنید. همچنین می توانید از رابط کاربری Merchant Center برای مشاهده این محصول استفاده کنید. مشاهده اطلاعات محصول خود را ببینید.