В Merchant API есть специальный ресурс Homepage. Этот ресурс предоставляет новые методы управления заявкой на главную страницу, предлагая возможности, выходящие за рамки классического Content API for Shopping.
Чтобы получить доступ к функциям для интернет-магазина, нужно сначала подтвердить право собственности на сайт, а затем заявить права на него в аккаунте. Чтобы завершить настройку, используйте accounts.homepage.claim.
Основные различия
В Merchant API по сравнению с Content API for Shopping внесены следующие изменения, связанные с главной страницей:
- Специальный ресурс. Merchant API предоставляет отдельный ресурс
Homepage(accounts.homepage) для всех операций, связанных с главной страницей. В Content API for Shopping для заявления прав использовался методaccounts.claimwebsite, URL главной страницы (website_url) был частью ресурсаAccount, а статус заявления прав (website_claimed) – частью ресурсаAccountStatus. - Точные методы. Merchant API предлагает специальные методы для:
- Получение сведений о главной странице:
accounts.homepage.getHomepage - Обновите URI главной страницы:
accounts.homepage.updateHomepage. - Заявите права на главную страницу:
accounts.homepage.claim. - Отмена заявления прав на главную страницу:
accounts.homepage.unclaim. В Content API for Shopping для заявления прав использовался методaccounts.claimwebsite, для указания URL (и отмены заявления прав путем указания пустого URL) –accounts.update, а для получения URL и статуса заявления прав –accounts.getиaccountstatuses.getсоответственно.
- Получение сведений о главной странице:
- Централизованная информация. Ресурс
HomepageMerchant API содержит какuri(URL главной страницы), так и статусclaimed. Все методы, работающие с ресурсомHomepage, возвращают этот ресурс, предоставляя немедленную обратную связь о текущем состоянии. В Content API for Shopping методaccounts.claimwebsiteне возвращал обновленный статус, поэтому требовались отдельные вызовы. - Явный отказ. В Content API for Shopping отказ обычно выполнялся путем обновления
Account.website_urlдо пустой строки. В Merchant API есть специальный методhomepage.unclaim. - Перезапись заявки. Оба API поддерживают параметр
overwrite, который позволяет перенести заявку из другого аккаунта, если право собственности подтверждено.
Запросы
В Merchant API используются разные конечные точки RESTful для управления разными аспектами главной страницы.
| Описание запроса | Content API for Shopping | Merchant API |
|---|---|---|
| Как получить сведения о главной странице | accounts.get (Account.website_url), accountstatuses.get (AccountStatus.website_claimed) |
GET /accounts/v1/accounts/{account}/homepage |
| Обновите URI главной страницы | accounts.update (настройка Account.website_url) |
PATCH /accounts/v1/accounts/{account}/homepage |
| Заявите права на главную страницу или подтвердите ее повторно | POST /content/v2.1/{merchantId}/accounts/{accountId}/claimwebsite (выполнено Account.website_url действие с помощью accounts.update) |
POST /accounts/v1/accounts/{account}/homepage:claim |
| Отказ от ответственности на главной странице | accounts.update (задайте для Account.website_url пустую строку) |
POST /accounts/v1/accounts/{account}/homepage:unclaim |
Идентификаторы
В Merchant API упрощена идентификация ресурсов.
| Описание идентификатора | Content API for Shopping | Merchant API |
|---|---|---|
| Идентификатор аккаунта для доступа к ресурсу | merchantId (расширенный аккаунт) и accountId (дочерний аккаунт) в пути |
account (часть поля name, например accounts/{account_id}/homepage) |
| Идентификатор ресурса домашней страницы | Неприменимо (неявно для ресурса Account) |
name: accounts/{account_id}/homepage (идентификатор дочернего ресурса Homepage) |
Методы
Метод accounts.claimwebsite из Content API for Shopping, который был предназначен для заявления прав на сайт, теперь входит в более широкий набор функций ресурса Homepage Merchant API.
| Метод Content API for Shopping | Метод Merchant API | Доступность и примечания |
|---|---|---|
accounts.claimwebsite |
accounts.homepage.claim |
Напрямую инициирует или повторно проверяет заявление прав на сайт. Выполняет действия с uri, ранее заданным с помощью homepage.update. Содержит параметр overwrite. Возвращает ресурс Homepage с текущим статусом uri и claimed. |
accounts.get (Account.website_url), accountstatuses.get (AccountStatus.website_claimed) |
accounts.homepage.getHomepage |
Новый специальный метод для получения текущей главной страницы uri и ее статуса claimed за один вызов. |
accounts.update (чтобы задать Account.website_url) |
accounts.homepage.updateHomepage |
Новый специальный метод для настройки или изменения главной страницы uri. |
accounts.update (в качестве обходного решения для отказа от прав в поле Account.website_url задана пустая строка) |
accounts.homepage.unclaim |
Новый специальный метод, позволяющий явно отказаться от прав на главную страницу. |
Подробные изменения полей
Структура информации на главной странице и доступ к ней значительно изменились. Теперь в Merchant API используется ресурс Homepage.
| Content API for Shopping | Merchant API | Описание |
|---|---|---|
merchantId (параметр пути для accounts.claimwebsite) |
name (параметр пути для методов Homepage, формат: accounts/{account}/homepage) |
Часть account строки name в Merchant API соответствует accountId из Content API for Shopping. |
accountId (параметр пути для accounts.claimwebsite) |
name (параметр пути для методов Homepage, формат: accounts/{account}/homepage) |
Идентификатор аккаунта, для которого настраивается главная страница. |
overwrite (логическое значение в теле ContentAccountsClaimwebsiteRequest и AccountsCustomBatchRequestEntry) |
ClaimHomepageRequest.overwrite (логическое значение в теле запроса homepage.claim) |
Необязательное поле. Если задано значение true, то будут предприняты попытки заявить права на сайт. При этом существующие права другого аккаунта могут быть аннулированы, если запрашивающий аккаунт сможет подтвердить право собственности. |
Account.website_url (поле в ресурсе Account, задается с помощью accounts.update, считывается с помощью accounts.get) |
Homepage.uri (поле в ресурсе Homepage) |
URI (URL) главной страницы магазина. В Merchant API это отдельное поле в ресурсе Homepage. Он задается с помощью accounts.homepage.updateHomepage и возвращается всеми методами Homepage. |
AccountStatus.website_claimed (поле в ресурсе AccountStatus, чтение с помощью accountstatuses.get) |
Homepage.claimed (логическое поле output_only в ресурсе Homepage) |
Указывает, заявлены ли права на uri и подтвержден ли он. Этот статус доступен в ресурсе Homepage, который возвращается всеми связанными с ним методами Merchant API. |
| Н/Д | UpdateHomepageRequest.update_mask (параметр тела запроса accounts.homepage.updateHomepage) |
Необязательная маска поля для homepage.update, указывающая, какие поля (например, uri) ресурса Homepage обновляются. |