Обзор API торговых продуктов

На этой странице объясняется, как вы можете загружать свои продукты и управлять ими программно. Используя API торговых продуктов, вы можете вставлять или обновлять продукт в источнике данных, получать продукт из своей учетной записи и удалять продукт из источника данных.

API торговых продуктов содержит два ресурса.

  • productInputs представляет входные части ваших продуктов.
  • products представляют собой обработанные продукты, созданные из входных частей.

productInputs может быть первичным и дополнительным, в зависимости от того, загружается ли он в основной или дополнительный источник данных . Каждый product будет создан из одного основного productInput и любого количества дополнительных productInputs .

Вы можете использовать API торговых продуктов для создания каталогов интернет-магазинов или локальных магазинов. Это продукты, которые могут появляться в нескольких местах покупок . Вы можете использовать ресурс productInputs после того, как создадите свою учетную запись Merchant Center, настроите свой первый источник данных и будете готовы загрузить первоначальный набор продуктов через API.

Хотя продавцы имеют возможность загружать продукты с помощью файла PrimaryProductDataSource , создание и удаление продуктов с помощью Merchant API дает несколько преимуществ. Эти преимущества включают более быстрое время отклика и возможность обновлять продукты в режиме реального времени без необходимости управлять большими файлами. Прежде чем изменения продукта, внесенные вызовами API, отобразятся в базе данных Покупок, может пройти до нескольких часов.

Предварительные условия

Если у вас нет источника данных, создайте его с помощью Merchant DataSources API или Merchant Center.

Если у вас уже есть источник данных, который вы создали с помощью пользовательского интерфейса Merchant Center или API, вы можете использовать API Merchant Products API для добавления своих продуктов. Если вы используете Content API for Shopping для добавления продуктов, обратитесь к руководству по миграции, чтобы понять, как начать работу с API Merchant Products API.

Вы несете ответственность за соблюдение правил в отношении товарной рекламы и размещения бесплатных объявлений . Товарная реклама оставляет за собой право обеспечивать соблюдение этих политик и реагировать соответствующим образом, если мы обнаружим контент или поведение, нарушающее эти политики.

Ресурсы

Ресурс products позволяет получать информацию о продуктах из базы данных покупок .

Ресурс productInput представляет входные данные, которые вы отправляете для продукта. Он также предоставляет методы, позволяющие обновлять или удалять информацию о продукте по одному или сразу по нескольким в пакетном режиме . Ресурс productInput должен иметь следующие поля:

  • channel : канал продукта.
  • offerId : уникальный идентификатор продукта.
  • contentLanguage : двухбуквенный код языка ISO 639-1 для продукта.
  • feedLabel : метка фида для продукта.

Загрузите информацию о продукте в свой аккаунт

Чтобы загрузить данные о продукте в свою учетную запись, используйте метод accounts.productInputs.insert . Необходимо передать уникальный идентификатор основного или дополнительного источника данных .

В следующем образце запроса показано, как вы можете использовать метод accounts.productInputs.insert для загрузки входных данных о продукте в свой торговый аккаунт. В запросе задаются цена доставки и регион, а также пользовательские атрибуты, такие как дата изготовления и размер.

POST https://merchantapi.googleapis.com/products/v1beta/accounts/{ACCOUNT_ID}/productInputs:insert?dataSource={DATASOURCE}

{
  "name": "{PRODUCT_TITLE}",
  "versionNumber": {VERSION_NUMBER},
  "contentLanguage": "{CONTENT_LANGUAGE}",
  "feedLabel": "{FEED_LABEL}",
  "offerId": "{OFFER_ID}",
  "channel": "ONLINE",
  "attributes": {
    "availability": "in stock",
    "imageLink": "{IMAGE_LINK}",
    "link": "{PRODUCT_LINK}",
    "brand": "{BRAND_NAME}",
    "price": {
      "currencyCode": "{CURRENCY_CODE}",
      "amountMicros": {PRICE}
    },
    "color": "red",
    "productWeight": {
      "value": 320,
      "unit": "g"
    },
    "adult": false,
    "shipping": [
      {
        "country": "GB",
        "price": {
          "amountMicros": {SHIPPING_COST},
          "currencyCode": "{CURRENCY_CODE_SHIPPING}"
        },
        "postalCode": "{SHIPPING_POSTALCODE}",
        "service": "",
        "region": "{SHIPPING_REGION}",
        "maxHandlingTime": "{MAX_HANDLING_TIME}",
        "minHandlingTime": "{MIN_HANDLING_TIME}",
        "maxTransitTime": "{MAX_TRANSIT_TIME}",
        "minTransitTime": "{MIN_TRANSIT_TIME}"
      }
    ],
    "gender": "Female"
  },
  "customAttributes": [
    {
      "name": "size",
      "value": "Large"
    },
    {
      "name": "Date of Manufacturing",
      "value": "2024-05-05"
    }
  ]
}

Замените следующее:

  • {ACCOUNT_ID} – уникальный идентификатор вашего аккаунта Merchant Center.
  • {DATASOURCE} : уникальный идентификатор источника данных. Он должен быть в формате accounts/ {ACCOUNT_ID} /dataSources/ {DATASOURCE_ID} .
  • {PRODUCT_TITLE} : название продукта.
  • {VERSION_NUMBER} : номер версии продукта. Необязательный.
  • {CONTENT_LANGUAGE} : двухбуквенный код языка продукта по стандарту ISO 639-1 . Необходимый.
  • {FEED_LABEL} : код территории CLDR для региона, в котором вы хотите продавать продукт. Если значение, указанное для feedLabel , недопустимо, поле targetCountry не заполняется.
  • {OFFER_ID} : уникальный идентификатор продукта. Необходимый.
  • {IMAGE_LINK} : ссылка на изображение продукта на вашем веб-сайте. Необязательный.
  • {PRODUCT_LINK} : ссылка на продукт на вашем веб-сайте. Необязательный.
  • {CURRENCY_CODE} : валюта цены с использованием трехбуквенных сокращений в соответствии со стандартом ISO 4217 . Необязательный.
  • {PRICE} : цена продукта, представленная числом в микронах. Необязательный.
  • {SHIPPING_COST} : фиксированная цена доставки, представленная в виде числа. Необязательный.
  • {SHIPPING_POSTALCODE} : диапазон почтовых индексов, к которому применяется стоимость доставки. Необязательный.
  • {MAX_HANDLING_TIME} : максимальное время обработки в рабочих днях между получением заказа и его отправкой. Необязательный.
  • {MIN_HANDLING_TIME} : минимальное время обработки в рабочих днях между получением заказа и его отправкой. Значение 0 означает, что заказ доставляется в тот же день, когда он был получен. Необязательный.
  • {MAX_TRANSIT_TIME} : максимальное время доставки в рабочих днях между отправкой заказа и доставкой. Необязательный.
  • {MIN_TRANSIT_TIME} : минимальное время доставки в рабочих днях между отправкой заказа и доставкой. Значение 0 означает, что заказ доставляется в тот же день, когда он был отправлен. Необязательный.

Если запрос выполнен успешно, вы увидите следующий ответ:

{
  "name": "{PRODUCT_NAME}",
  "product": "{PRODUCT_ID}",
  "channel": "ONLINE",
  "offerId": "{OFFER_ID}",
  "contentLanguage": "{CONTENT_LANGUAGE}",
  "feedLabel": "{FEED_LABEL}",
  "versionNumber": "{VERSION_NUMBER}",
  "attributes": {
    "link": "{PRODUCT_LINK}",
    "imageLink": "{IMAGE_LINK}",
    "adult": false,
    "availability": "in stock",
    "brand": "{BRAND_NAME}",
    "color": "red",
    "gender": "Female",
    "price": {
      "amountMicros": "{PRICE}",
      "currencyCode": "{CURRENCY_CODE}"
    },
    "shipping": [
      {
        "price": {
          "amountMicros": "{SHIPPING_COST}",
          "currencyCode": "{CURRENCY_CODE}"
        },
        "country": "{SHIPPING_COUNTRY}",
        "region": "{SHIPPING_REGION}",
        "postalCode": "{SHIPPING_POSTALCODE}",
        "minHandlingTime": "{MIN_HANDLING_TIME}",
        "maxHandlingTime": "{MAX_HANDLING_TIME}",
        "minTransitTime": "{MIN_TRANSIT_TIME}",
        "maxTransitTime": "{MAX_TRANSIT_TIME}"
      }
    ],
    "productWeight": {
      "value": 320,
      "unit": "g"
    }
  },
  "customAttributes": [
    {
      "name": "Size",
      "value": "Large"
    },
    {
      "name": "Date of Manufacturing",
      "value": "2024-05-05"
    }
  ]
}

Получите обработанный продукт из своей учетной записи

Чтобы получить обработанный продукт из вашей учетной записи, используйте метод accounts.products.get . После вставки обработанный продукт может появиться через несколько минут.

Вы можете получить имя ресурса обработанного продукта из поля product в ответе accounts.productInputs.insert

Удалить информацию о продукте из своей учетной записи

Чтобы удалить ввод продукта из вашей учетной записи, используйте метод accounts.productInputs.delete . Для удаления продукта с помощью Merchant Products API необходимо передать уникальный идентификатор основного или дополнительного источника данных, которому принадлежит продукт.

Перечислите продукты из вашего аккаунта

Чтобы перечислить обработанные продукты в вашей учетной записи, используйте метод accounts.products.list .