사용자 및 액세스 관리 마이그레이션
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
쇼핑용 Content API에서는 Account
리소스의 필드를 사용하여 사용자와 액세스 권한을 관리했습니다. Merchant API는 이를 User
라는 전용 리소스와 해당 메서드 (create, delete, get, list, path)로 대체합니다. 자세한 내용은 계정 액세스 제어를 참고하세요.
주요 차이점
Content API for Shopping과 비교할 때 Merchant API는 사용자 관리에 다음과 같은 이점을 제공합니다.
- 전용 리소스: 판매자 센터 계정에 액세스할 수 있는 사용자와 해당 사용자가 할 수 있는 작업을 더 세부적이고 직접적인 방식으로 관리할 수 있습니다.
- 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
상태가 됩니다. 이를 통해 Content API for Shopping에서는 사용할 수 없었던 사용자의 상태에 대한 API 가시성이 제공됩니다.
## 요청 추가
Merchant 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}
다음 표에서는 Content API for Shopping과 Merchant API의 요청 URL을 비교합니다.
요청 설명 |
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 |
accounts/{account} 의 account |
사용자 식별자 |
AccountUser 객체 내 email_address |
accounts/{account}/users/{email} 의 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 enum의 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 ). |
달리 명시되지 않는 한 이 페이지의 콘텐츠에는 Creative Commons Attribution 4.0 라이선스에 따라 라이선스가 부여되며, 코드 샘플에는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 Google Developers 사이트 정책을 참조하세요. 자바는 Oracle 및/또는 Oracle 계열사의 등록 상표입니다.
최종 업데이트: 2025-08-08(UTC)
[null,null,["최종 업데이트: 2025-08-08(UTC)"],[],[],null,["# Migrate user and access management\n\nIn Content API for Shopping, you managed users and their access rights with a\nfield in the `Account` resource. Merchant API replaces this with the dedicated\nresource named\n[`User`](/merchant/api/reference/rest/accounts_v1/accounts.users) and\ncorresponding methods (create, delete, get, list, path). For more information,\nsee [Control access to your\naccount](/merchant/api/guides/accounts/control-access).\n\nKey differences\n---------------\n\nCompared to Content API for Shopping, Merchant API offers the following\nadvantages for user management:\n\n- **Dedicated resource**: This provides a more granular and direct way to control who can access your Merchant Center account and what they can do.\n- **RESTful resource names** : In Merchant API, identify `User` resources by a full resource name, for example, `accounts/12345/users/example@example.com`.\n- **`me` alias** : You can use the alias `me` in place of an email address in the resource name to refer to the authenticated user, for example, `accounts/12345/users/me`.\n- **Consolidated access rights** : Merchant API consolidates boolean access fields from Content API (for example, `admin`, `reportingManager`) into a single, repeatable`access_rights` field.\n- **User invitation and verification** : Merchant API introduces an explicit user state (`PENDING` or `VERIFIED`). When you create a new user, they are in a `PENDING` state until they accept the invitation. This provides API visibility into the user's status, which was not available in the Content API for Shopping. Add ## Requests\n\nMerchant API uses the following request URLs to manage users:\n\n- `GET /accounts/v1/accounts/{account}/users/{email}`\n- `GET /accounts/v1/accounts/{account}/users`\n- `POST /accounts/v1/accounts/{account}/users`\n- `PATCH /accounts/v1/accounts/{account}/users/{email}`\n- `DELETE /accounts/v1/accounts/{account}/users/{email}`\n\nThe following table compares the request URLs between the Content API for\nShopping and Merchant API.\n\n| Request description | Content API for Shopping | Merchant API |\n|--------------------------|---------------------------------------------------------|---------------------------------------------------------|\n| Get users for an account | `GET {api_version}/{merchantId}/accounts/{accountId}` | `GET {api_version}/accounts/{account}/users` |\n| Create a user | `PATCH {api_version}/{merchantId}/accounts/{accountId}` | `POST {api_version}/accounts/{account}/users` |\n| Update a user | `PATCH {api_version}/{merchantId}/accounts/{accountId}` | `PATCH {api_version}/accounts/{account}/users/{email}` |\n| Delete a user | `PATCH {api_version}/{merchantId}/accounts/{accountId}` | `DELETE {api_version}/accounts/{account}/users/{email}` |\n\nIdentifiers\n-----------\n\nThe following table compares the identifiers used in requests between the\nContent API for Shopping and Merchant API.\n\n| Identifier description | Content API for Shopping | Merchant API |\n|------------------------|-------------------------------------------------|-----------------------------------------------|\n| Account identifier | `accountId` | `account` in `accounts/{account}` |\n| User identifier | `email_address` within the `AccountUser` object | `email` in `accounts/{account}/users/{email}` |\n\nMethods\n-------\n\nThe following table compares the methods between the Content API for Shopping\nand Merchant API.\n\n| Content API for Shopping | Merchant API | Availability \\& notes |\n|--------------------------|----------------------------------------------------------------------------------|------------------------------------|\n| `accounts.update` | [`users.create`](/merchant/api/reference/rest/accounts_v1/accounts.users/create) | Creates a new user for an account. |\n| `accounts.get` | [`users.get`](/merchant/api/reference/rest/accounts_v1/accounts.users/get) | Retrieves a single user. |\n| `accounts.get` | [`users.list`](/merchant/api/reference/rest/accounts_v1/accounts.users/list) | Lists all users for an account. |\n| `accounts.update` | [`users.update`](/merchant/api/reference/rest/accounts_v1/accounts.users/update) | Updates a user's access rights. |\n| `accounts.update` | [`users.delete`](/merchant/api/reference/rest/accounts_v1/accounts.users/delete) | Deletes a user from an account. |\n\nDetailed field changes\n----------------------\n\nUpdate your use of fields as follows:\n\n| Content API for Shopping | Merchant API | Description |\n|---------------------------------------------------------------------------------------------|-----------------------------------------------------|---------------------------------------------------------------------------------------------------------------|\n| `users` (repeated `AccountUser`) | `users` (repeated `User`) | The `User` resource is now a top-level resource with its own service. |\n| `AccountUser.email_address` | `CreateUserRequest.user_id` and part of `User.name` | The user's email address is now part of the resource name. Specify it in the `user_id` field during creation. |\n| `AccountUser.admin` | `access_rights: \"ADMIN\"` | Merchant API replaces the boolean `admin` field by the `ADMIN` value in the `access_rights` enum. |\n| `AccountUser.order_manager`, `AccountUser.payments_manager`, `AccountUser.payments_analyst` | `access_rights: \"STANDARD\"` | Merchant API replaces these roles to `STANDARD` access right. |\n| `AccountUser.reporting_manager` | `access_rights: \"PERFORMANCE_REPORTING\"` | The `reporting_manager` role is now the `PERFORMANCE_REPORTING` access right. |\n| `AccountUser.read_only` | `access_rights: \"READ_ONLY\"` | The `read_only` role is now the `READ_ONLY` access right. |\n| Not available | `User.name` | Contains the full resource name of the user, for example, `accounts/{account}/users/{email}`. |\n| Not available | `User.state` | Indicates the status of the user's invitation, either `PENDING` or `VERIFIED`. |"]]