В Content API для покупок управление пользователями и их правами доступа осуществлялось с помощью поля в ресурсе Account . Merchant API заменяет это специальным ресурсом User и соответствующими методами (create, delete, get, list, path). Для получения дополнительной информации см. раздел «Управление доступом к вашей учетной записи» .
Ключевые отличия
По сравнению с Content API для интернет-магазинов, Merchant API предлагает следующие преимущества для управления пользователями:
- Выделенный ресурс : Это обеспечивает более детальный и прямой способ контроля доступа к вашему аккаунту в Merchant Center и их действий.
- Имена ресурсов RESTful : В API для продавцов ресурсы
Userидентифицируются по полному имени ресурса, например,accounts/12345/users/example@example.com. -
mealias : Вы можете использовать псевдонимmeвместо адреса электронной почты в имени ресурса для ссылки на аутентифицированного пользователя, например,accounts/12345/users/me. - Объединенные права доступа : API продавца объединяет логические поля доступа из API контента (например,
admin,reportingManager) в одно повторяющееся полеaccess_rights. - Приглашение и верификация пользователей : API для продавцов вводит явное состояние пользователя (
PENDINGилиVERIFIED). При создании нового пользователя он находится в состоянииPENDINGдо тех пор, пока не примет приглашение. Это обеспечивает API видимость статуса пользователя, которая не была доступна в Content API для покупок. Добавить ## Запросы
API для продавцов использует следующие URL-адреса запросов для управления пользователями:
-
GET /accounts/v1/accounts/{account}/users/{email} -
GET /accounts/v1/accounts/{account}/users -
POST /accounts/v1/accounts/{account}/users -
PATCH /accounts/v1/accounts/{account}/users/{email} -
DELETE /accounts/v1/accounts/{account}/users/{email}
В таблице ниже приведено сравнение URL-адресов запросов между Content API для покупок и Merchant API.
| Описание запроса | API контента для покупок | API для продавцов |
|---|---|---|
| Привлечь пользователей для учетной записи | GET {api_version}/{merchantId}/accounts/{accountId} | GET {api_version}/accounts/{account}/users |
| Создать пользователя | PATCH {api_version}/{merchantId}/accounts/{accountId} | POST {api_version}/accounts/{account}/users |
| Обновить данные пользователя | PATCH {api_version}/{merchantId}/accounts/{accountId} | PATCH {api_version}/accounts/{account}/users/{email} |
| Удалить пользователя | PATCH {api_version}/{merchantId}/accounts/{accountId} | DELETE {api_version}/accounts/{account}/users/{email} |
Идентификаторы
В следующей таблице сравниваются идентификаторы, используемые в запросах между Content API для покупок и Merchant API.
| Описание идентификатора | API контента для покупок | API для продавцов |
|---|---|---|
| Идентификатор учетной записи | accountId | account в accounts/{account} |
| Идентификатор пользователя | email_address в объекте AccountUser | email in accounts/{account}/users/{email} |
Методы
В следующей таблице сравниваются методы, используемые в Content API для покупок и Merchant API.
| API контента для покупок | API для продавцов | Наличие и примечания |
|---|---|---|
accounts.update | users.create | Создает нового пользователя для учетной записи. |
accounts.get | users.get | Извлекает данные об одном пользователе. |
accounts.get | users.list | Отображает список всех пользователей, связанных с учетной записью. |
accounts.update | users.update | Обновляет права доступа пользователя. |
accounts.update | users.delete | Удаляет пользователя из учетной записи. |
Подробные изменения полей
Измените использование полей следующим образом:
| API контента для покупок | API для продавцов | Описание |
|---|---|---|
users (повторяющийся AccountUser ) | users (повторяющийся User ) | Теперь ресурс User является ресурсом верхнего уровня со своей собственной службой. |
AccountUser.email_address | CreateUserRequest.user_id и часть User.name | Адрес электронной почты пользователя теперь является частью имени ресурса. Укажите его в поле user_id при создании ресурса. |
AccountUser.admin | access_rights: "ADMIN" | API для продавцов заменяет логическое поле admin значением ADMIN из перечисления access_rights . |
AccountUser.order_manager , AccountUser.payments_manager , AccountUser.payments_analyst | access_rights: "STANDARD" | API для продавцов заменяет эти роли на STANDARD право доступа. |
AccountUser.reporting_manager | access_rights: "PERFORMANCE_REPORTING" | Роль reporting_manager теперь соответствует праву доступа PERFORMANCE_REPORTING . |
AccountUser.read_only | access_rights: "READ_ONLY" | Роль read_only теперь соответствует праву доступа READ_ONLY . |
| Нет в наличии | User.name | Содержит полное имя ресурса пользователя, например, accounts/{account}/users/{email} . |
| Нет в наличии | User.state | Указывает статус приглашения пользователя: PENDING или VERIFIED . |