Этот документ обновлен.
Перевод (Русский) еще не готов.
Последнее обновление (английский): 4 ноя 2021 г.

API Product Set Collection

С помощью этого API можно создавать подборки, используемые в Магазинах, и добавлять к группе товаров метаданные, такие как изображение обложки и описание. Такие группы товаров затем можно использовать как подборки в Commerce Manager для настройки Магазина на Facebook или в Instagram (в противном случае подборки создаются вручную). Кроме того, готовые группы товаров можно публиковать напрямую, указав ID Магазинов. ID Магазинов можно получить с помощью API для торговли.

Дополнительную информацию о создании подборок в Commerce Manager см. в Справочном центре для бизнеса.

POST (API для создания и обновления)

Создание и обновление групп товаров остается без изменений. Однако мы добавили несколько новых необязательных полей.

ПолеОписание

metadata

Необязательное поле.

Родительский параметр для блока метаданных для подборок.

publish_to_shops

Необязательное поле.

Параметр, который позволяет указать один или несколько shop_id, чтобы напрямую создать или обновить группу товаров и опубликовать в магазинах.

Поля метаданных


ПолеОписание

cover_image_url

Необязательное поле.

URL изображения обложки для подборки.

description

Необязательное поле.

Описание группы товаров для клиента.

external_url

Необязательное поле.

URL подборки. Потребители не видят этот URL. Он используется по умолчанию при создании объявлений, рекламирующих группу товаров.

Поля для публикации в магазинах

Поле publish_to_shops принимает пустой массив или массив параметров, показанный в примере ниже. Если указан пустой массив, для заданной группы товаров отменяется публикация во всех магазинах (если она была опубликована ранее).


ПолеОписание

shop_id

Ожидается значение shop_id, которое можно получить с помощью API для торговли.

Пример — полезные данные

{ 
    "name": "Best sellers",
    "filter": {
      "retailer_id": {
        "is_any": [
          "pid1",
          "pid2"
        ]
      } 
    },
    "metadata": {
      "cover_image_url": "https://foo.com/image.jpg" (https://foo.com/image.jpg%E2%80%9D),
      "external_url": "https://foo.com/best-sellers",
      "description":"Our best selling products"
    }
  "publish_to_shops": [{"shop_id": "shop_id1"}, {"shop_id": "shop_id2"}]
}

Создание группы товаров

Создание группы товаров с метаданными подборки, соответствующими определенным ID товаров:

curl \
  -F "name=Best Sellers" \
  -F "filter={'retailer_id': {'is_any': ['pid1', 'pid2']}}" 
  -F "metadata={'cover_image_url':'https://foo.com/image.jpg', 'external_url':'https://foo.com/best-sellers', 'description':'Our best selling products'}" \
  -F "access_token=<ACCESS_TOKEN>" \
  https://graph.facebook.com/API_VERSION/PRODUCT_CATALOG_ID/product_sets

Обновление группы товаров

Обновление существующей группы товаров с метаданными подборки и публикация в магазинах:

curl \
  -F "name=Updated Best Sellers" \
  -F "metadata={'cover_image_url':'https://foo.com/image_updated.jpg', 'external_url':'https://foo.com/best-sellers-updated', 'description':'Our updated best selling products'}" \
  -F "publish_to_shops=[{'shop_id':'shop_id1'}, {'shop_id':'shop_id2'}]"
  -F "access_token=<ACCESS_TOKEN>" \
  https://graph.facebook.com/API_VERSION/PRODUCT_SET_ID

GET (API для чтения)

В узле GET поле live_metadata возвращает текущие метаданные, опубликованные для определенной группы товаров, в то время как поле latest_metadata возвращает метаданные, отправленные в API последними. Эти поля могут отличаться, если, например, изображение было изменено при обновлении и отклонено для обеспечения целостности.

Все эти поля не используются по умолчанию и должны явно вызываться в API Graph как параметры полей.

ПолеОписание

latest_metadata

Последние отправленные метаданные. Может отличаться от значения поля live_metadata (например, если review_status имеет значение REJECTED).

live_metadata

Текущие опубликованные метаданные для этой группы товаров.

Поля метаданных


ПолеОписание

cover_image_url

URL изображения обложки группы товаров, которое видит клиент.

description

Описание группы товаров, которое видит клиент.

external_url

URL подборки. Потребители не видят этот URL. Он используется по умолчанию при создании объявлений, рекламирующих группу товаров.

integrity_review_status

Статус проверки целостности. Возможные значения: APPROVED, REJECTED, PENDING.

Пример — чтение группы товаров для просмотра опубликованных метаданных:

curl -G \
  -d "access_token=<ACCESS_TOKEN>" \
  https://graph.facebook.com/<API_VERSION>/<PRODUCT_SET_ID>/?fields=id,name,latest_metadata{cover_image_url, description, review_status},live_metadata{cover_image_url, description, review_status}

Ответ:

{ 
    "id": 1234567890,
    "name": "Best sellers",
    "latest_metadata": {
        "cover_image_url": "https://foo.com/some_new_image.jpg" (https://foo.com/image.jpg%E2%80%9D),
        "description":"Our best selling products",
        "integrity_review_status": "REJECTED"
    },
    "live_metadata": {
        "cover_image_url": "https://foo.com/some_good_image.jpg", 
        "description":"Our best selling products",
        "integrity_review_status": "APPROVED"
    }
}

Часто задаваемые вопросы

В. Каково минимальное соотношение сторон изображения обложки?

О. Минимальный размер изображения — 600 x 600 пикселей (однако при таком соотношении недоступна обрезка). При загрузке изображения размером 800 x 800 пикселей и более по умолчанию выбирается квадратный формат. Чтобы добиться наилучших результатов, рекомендуем использовать изображения размером 1 080 x 1 080 пикселей.

В. Каков максимальный размер файла изображения обложки?

О. Максимальный размер файла — 8 МБ.

В. Какие форматы файлов поддерживаются для изображения обложки?

О. Поддерживаются форматы JPG и PNG.

В. Есть ли ограничения на длину описания?

О. Минимальная длина описания не установлена. Максимальная длина — 200 символов.

В. Как отменить публикацию подборки (группы товаров) в Магазинах?

О. Можно воспользоваться API Update и удалить поле shop_id из списка publish_to_shop, где оно было ранее опубликовано. Если указан пустой массив ([]), публикация группы товаров отменяется во всех магазинах.