在 Content API for Shopping 中,您可以使用 Account 资源中的某个字段来管理用户及其访问权限。Merchant API 使用名为 User 的专用资源和相应的方法(create、delete、get、list、path)替换了此资源。如需了解详情,请参阅控制对您账号的访问权限。
主要差异
与 Content API for Shopping 相比,Merchant API 在用户管理方面具有以下优势:
- 专用资源:这种方式可更精细、更直接地控制哪些人可以访问您的 Merchant Center 账号以及他们可以执行哪些操作。
- RESTful 资源名称:在 Merchant API 中,通过完整资源名称(例如
accounts/12345/users/example@example.com)来标识User资源。 me别名:您可以在资源名称中使用别名me代替电子邮件地址来指代经过身份验证的用户,例如accounts/12345/users/me。- 整合的访问权限:Merchant API 将 Content API 中的布尔值访问权限字段(例如
admin、reportingManager)整合为一个可重复的access_rights字段。 - 用户邀请和验证:Merchant API 引入了明确的用户状态(
PENDING或VERIFIED)。创建新用户后,在用户接受邀请之前,他们处于PENDING状态。这样一来,API 就可以了解用户的状态,而 Content API for Shopping 无法做到这一点。 添加 ## 请求
Merchant API 使用以下请求网址来管理用户:
GET /accounts/v1/accounts/{account}/users/{email}GET /accounts/v1/accounts/{account}/usersPOST /accounts/v1/accounts/{account}/usersPATCH /accounts/v1/accounts/{account}/users/{email}DELETE /accounts/v1/accounts/{account}/users/{email}
下表比较了 Content API for Shopping 与 Merchant API 之间的请求网址。
| 请求说明 | Content API for Shopping | Merchant 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 for Shopping 和 Merchant API 中请求所使用的标识符。
| 标识符说明 | Content API for Shopping | Merchant API |
|---|---|---|
| 账号标识符 | accountId |
account(在 accounts/{account} 中) |
| 用户标识符 | AccountUser 对象中的 email_address |
email(在 accounts/{account}/users/{email} 中) |
方法
下表比较了 Content API for Shopping 和 Merchant API 的方法。
| Content API for Shopping | Merchant API | 适用范围和备注 |
|---|---|---|
accounts.update |
users.create |
为账号创建新用户。 |
accounts.get |
users.get |
检索单个用户。 |
accounts.get |
users.list |
列出账号的所有用户。 |
accounts.update |
users.update |
更新用户的访问权限。 |
accounts.update |
users.delete |
从账号中删除用户。 |
详细的字段更改
按如下所示更新字段的使用方式:
| Content API for Shopping | Merchant API | 说明 |
|---|---|---|
users(重复 AccountUser) |
users(重复 User) |
User 资源现在是具有自己服务的顶级资源。 |
AccountUser.email_address |
CreateUserRequest.user_id 和 User.name 的一部分 |
用户的电子邮件地址现在是资源名称的一部分。在创建时,在 user_id 字段中指定该值。 |
AccountUser.admin |
access_rights: "ADMIN" |
Merchant API 将布尔值 admin 字段替换为 access_rights 枚举中的 ADMIN 值。 |
AccountUser.order_manager、AccountUser.payments_manager、AccountUser.payments_analyst |
access_rights: "STANDARD" |
Merchant 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。 |