حساب‌های آزمایشی در «میانای برنامه‌سازی کاربردی بازرگان»

ویژگی «حساب‌های آزمایشی Merchant API» فضایی امن و مجزا برای آزمایش کامل یکپارچه‌سازی‌ها قبل‌از استقرار آن‌ها در محیط زنده فراهم می‌کند. بااستفاده از حساب‌های آزمایشی جعبه شنی، می‌توانید با فراخوانی‌های API آزمایش کنید، کد را اعتبارسنجی کنید، و مشکلات احتمالی را در مراحل اولیه چرخه توسعه شناسایی کنید، بدون اینکه بر داده‌های تولید تأثیر بگذارید، عملیات‌های بی‌درنگ را مختل کنید، یا ناخواسته خط‌مشی‌های Merchant Center را نقض کنید.

پیش‌نیازها

قبل‌از اینکه بتوانید حساب‌های آزمایشی ایجاد و استفاده کنید، مطمئن شوید الزامات زیر را برآورده کرده باشید:

  • حساب Merchant Center: باید حساب Merchant Center داشته باشید.
  • دسترسی به Merchant API: باید کاربر ثبت‌شده در Merchant API باشید.

مزایای حساب‌های آزمایشی

استفاده از حساب‌های آزمایشی چندین مزیت کلیدی دارد:

  • راه‌اندازی ساده: راه‌اندازی حساب آزمایشی فرایندی با پیچیدگی پایین است که به شما امکان می‌دهد به‌سرعت آزمایش ویژگی‌ها و یکپارچه‌سازی‌های خود را شروع کنید.
  • یکپارچگی و ایمنی داده‌ها: داده‌های تولید محافظت‌شده باقی می‌مانند و خطر نقض خط‌مشی در حساب‌های تولید ازبین می‌رود.
  • کارایی آزمایش: می‌توانید طیف گسترده‌ای از سناریوهای متنوع و موقعیت‌های حاشیه‌ای را بدون بار نگهداری حساب تولید موازی برای اهداف آزمایشی آزمایش کنید.
  • اعتبارسنجی فوری پیشنهاد ویژه: از معافیت خودکار از ادعای مالکیت و درستی‌سنجی صفحه اصلی برای حساب‌های آزمایشی استفاده کنید تا درج پیشنهاد ویژه را به‌سرعت آزمایش کنید. پیشنهادهای ویژه به‌طور پیش‌فرض برای حساب‌های آزمایشی تأیید می‌شوند.
  • شبیه‌سازی واقع‌گرایانه: محیط رفتار تولید را برای عملکردهای حیاتی مانند بارگذاری محصول و مدیریت موجودی منعکس می‌کند و اطمینان می‌دهد که نتایج آزمایش قابل اعتماد هستند.
  • انتقال‌های روان‌تر میانای برنامه‌سازی کاربردی: حساب‌های آزمایشی با امکان اعتبارسنجی هم‌زمان، انتقال مطمئن و یکپارچه‌ای را برای کسانی که از «میانای برنامه‌سازی کاربردی محتوا» به «میانای برنامه‌سازی کاربردی بازرگان» یا از یک نسخه میانای برنامه‌سازی کاربردی به نسخه دیگر منتقل می‌شوند تسهیل می‌کنند.

نحوه ایجاد حساب‌های آزمایشی

حساب‌های آزمایشی بااستفاده از روش سفارشی خاصی در Merchant API ایجاد می‌شوند.

از روش accounts.createTestAccount استفاده کنید:

  POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}:createTestAccount
  Content-Type: application/json
  Authorization: Bearer {ACCESS_TOKEN}"

  {
    "account_name": "{TEST_ACCOUNT_NAME}",
    "time_zone": {
      "id": "America/Los_Angeles"
    },
    "language_code": "en-US"
  }

جایگزین کردن موارد زیر:

  • ‫ACCOUNT_ID: شناسه Merchant Center شما.
  • ‫ACCESS_TOKEN: کد مجوز برای برقراری تماس با میانای برنامه‌سازی کاربردی
  • TEST_ACCOUNT_NAME: نام حساب آزمایشی. توصیه می‌کنیم از نام‌های معناداری استفاده کنید که نشان دهد برای آزمایش استفاده می‌شوند. برای مثال، کلمه test را در نام حساب آزمایشی داشته باشید.

فیلدهای زیر هنگام ایجاد حساب آزمایشی الزامی است:

  • time_zone: منطقه زمانی گزارش‌دهی و نمایش برای حساب.
  • language_code: کد زبان BCP-47 برای حساب، مثل en-US.

تماس موفق منبع حساب را برمی‌گرداند که شامل accountId منحصربه‌فرد حساب آزمایشی جدید و نام منبع است:

  {
    "name": "accounts/{TEST_ACCOUNT_ID}",
    "accountId": "{TEST_ACCOUNT_ID}",
    "accountName": "{TEST_ACCOUNT_NAME}",
    "adultContent": false,
    "testAccount": true,
    "timeZone": {
      "id": "America/Los_Angeles"
    },
    "languageCode": "en-US"
  }

نمونه‌های کد زیر نحوه ایجاد حساب آزمایشی را نشان می‌دهد:

جاوا

import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.accounts.v1.Account;
import com.google.shopping.merchant.accounts.v1.AccountsServiceClient;
import com.google.shopping.merchant.accounts.v1.AccountsServiceSettings;
import com.google.shopping.merchant.accounts.v1.CreateTestAccountRequest;
import com.google.type.TimeZone;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;

/**
 * This class demonstrates how to create a new Merchant Center test account.
 *
 * <p>For more information refer to:
 * https://developers.google.com/merchant/api/guides/accounts/test-accounts
 */
public class CreateTestAccountSample {

  // Method to create a test account.
  public static void createTestAccount(Config config, String newAccountName) throws Exception {

    // Obtains OAuth token based on the user's configuration.
    GoogleCredentials credential = new Authenticator().authenticate();

    // Creates service settings using the credentials retrieved above.
    AccountsServiceSettings accountsServiceSettings =
        AccountsServiceSettings.newBuilder()
            .setCredentialsProvider(FixedCredentialsProvider.create(credential))
            .build();

    // Calls the API and catches and prints any network failures/errors.
    try (AccountsServiceClient accountsServiceClient =
        AccountsServiceClient.create(accountsServiceSettings)) {

      // The test account to be created.
      Account account =
          Account.newBuilder()
              .setAccountName(newAccountName)
              .setTimeZone(TimeZone.newBuilder().setId("Europe/Zurich"))
              .setLanguageCode("en-US")
              .build();

      // Creates parent to identify where to insert the account.
      String parent = String.format("accounts/%s", config.getAccountId());

      // Create the request message.
      CreateTestAccountRequest request =
          CreateTestAccountRequest.newBuilder().setParent(parent).setAccount(account).build();

      System.out.println("Sending Create Test Account request:");
      Account response = accountsServiceClient.createTestAccount(request);

      System.out.println("Created Test Account below:");
      System.out.println(response);
    } catch (Exception e) {
      System.err.println("Error during test account creation:");
      e.printStackTrace();
    }
  }

  // Main method to run the sample.
  public static void main(String[] args) throws Exception {
    Config config = Config.load();

    // This is the name of the new test account to be created.
    String newAccountName = "MyNewTestShop";

    createTestAccount(config, newAccountName);
  }
}

cURL

curl -X POST \
"https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/:createTestAccount" \
-H "Authorization: Bearer {ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
 "account_name": "{TEST_ACCOUNT_NAME}",
 "time_zone": {
   "id": "America/Los_Angeles"
   },
 "language_code": "en-US"
}'

حساب‌های آزمایشی و حساب‌های فرعی پیشرفته

روش accounts.createTestAccount همیشه حساب آزمایشی مستقل ایجاد می‌کند. برای راه‌اندازی سلسله مراتب حساب پیشرفته برای آزمایش:

  1. بااستفاده از accounts.createTestAccount، حساب آزمایشی مستقلی ایجاد کنید.
  2. با دنبال کردن راهنمایی‌های تبدیل به تنظیم حساب پیشرفته در مقاله «مرکز راهنمایی»، آن حساب آزمایشی مستقل را به حساب پیشرفته در Merchant Center تبدیل کنید.
  3. با تماس گرفتن accounts.createAndConfigure و مشخص کردن حساب آزمایش پیشرفته به‌عنوان accountAggregation ارائه‌دهنده، حساب‌های فرعی آزمایشی دیگری را در حساب آزمایش پیشرفته ایجاد کنید. هر حساب فرعی که تحت حساب ارائه‌دهنده آزمایشی ایجاد شود به‌طور خودکار به‌عنوان حساب آزمایشی (testAccount: true) ایجاد می‌شود.

محدودیت‌ها

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

  • تعداد حساب‌های آزمایشی: می‌توانید حداکثر ۵ حساب آزمایشی برای هر «حساب Google» ایجاد کنید. تعداد حساب‌های آزمایشی در حد پیش‌فرض شما برای حساب‌های Merchant Center در هر «حساب Google» محاسبه می‌شود.
  • ادغام با سهمیه‌های Merchant API: از دیدگاه سهمیه API، ‫Merchant API حساب‌های آزمایشی را به‌عنوان حساب‌های تولید درنظر می‌گیرد. حساب‌های آزمایشی مشمول همان سهمیه‌های حساب‌های تولید هستند. افزایش سهمیه برای حساب‌های آزمایشی امکان‌پذیر نیست.
  • تبدیل حساب و حساب‌های پیشرفته: نمی‌توانید یک حساب معمولی (فعال) را—چه مستقل و چه حساب پیشرفته—به حساب آزمایشی تبدیل کنید، یا حساب آزمایشی را به حساب فعال تبدیل کنید. علاوه‌براین، نمی‌توانید مستقیماً حساب آزمایشی پیشرفته‌ای با accounts.createTestAccount ایجاد کنید. ابتدا یک حساب آزمایشی مستقل بسازید و سپس آن را به حساب پیشرفته تبدیل کنید.
  • بدون ارائه عمومی: داده‌های ارسال‌شده به حساب آزمایشی هرگز در هیچ پلاتفرم Google، مانند «جستجو» یا آگهی‌های Shopping، منتشر نخواهد شد.
  • نقطه‌های پایانی محدودشده: هنگام استفاده از برخی ویژگی‌ها، مانند موارد زیر، نمی‌توانید از حساب‌های آزمایشی استفاده کنید:
  • محدودیت‌های پیونددهی: نمی‌توانید حساب‌های آزمایشی را به دیگر حساب‌های Google Ads یا «نمایه کسب‌وکار Google» پیوند دهید.
  • بدون ثبت‌نام برای حساب‌های آزمایشی: نمی‌توانید برای حساب‌های آزمایشی ثبت‌نام انجام دهید.

روال‌های مطلوب

توصیه می‌کنیم هنگام استفاده از حساب‌های آزمایشی، برخی‌از روال‌های مطلوب را دنبال کنید:

  • توسعه «جعبه شنی-اول»: همیشه ویژگی‌های یکپارچه‌سازی جدید را در حساب آزمایشی قبل‌از اعمال آن‌ها در محیط تولید خود اعتبارسنجی کنید.
  • آزمایش یکپارچگی خودکار: از حساب‌های آزمایشی به‌عنوان محیط‌های پایدار برای اجرای آزمون‌های پس‌رفت خودکار استفاده کنید.
  • نام‌گذاری حساب آزمایشی: از account_name برای اشاره به هدف هر حساب آزمایشی، مانند «آزمایش انتقال» یا «حساب آزمایشی یکپارچه‌سازی»، استفاده کنید.