Introduction With the User Management API, you can manage the users within your account, such as inviting, retrieving, updating, or removing users. You can also manage user profiles and settings. In addition to the account ID, this API uses the user's IAM ID. The IAM ID is a digital identity that is used to identify a user or service in IBM Cloud. SDKs for Java, Node, Python, and Go are available to make it easier to programmatically access the API from your code. The client libraries that are provided by the SDKs implement best practices for using the API and reduce the amount of code that you need to write. The tab for each language includes code examples that demonstrate how to use the client libraries. For more information about using the SDKs, see the IBM Cloud SDK Common projecthttps://github.com/IBM/ibm-cloud-sdk-common on GitHub. User Management is a platform service, which means that it uses platform management IAM roles to determine access permissions. For information about User Management roles, see Platform management roleshttps://cloud.ibm.com/docs/iam?topic=iam-userrolesplatformroles in the IAM documentation. User account status A user can be in the following states. | State | Description | |-------|-------------| | ACTIVE| An active user state. | | VPNONLY | In this state, the user cannot log in through the IBM Cloud console. | | DISABLEDCLASSICINFRASTRUCTURE | In this state, the user cannot access classic infrastructure SoftLayer resources. | | PROCESSING | This state is a read-only system state. | | PENDING| This state is a read only system state. | | SUSPENDED| In this state, the user has a suspended account. | | ERRORWHILEPROCESSING | This state is caused by an error while creating the user. | | ERRORWHILEDELETING | This state is caused by an error during V3 delete of the user. | | IAMIDINVALID | In this state, the IBMid of this user may no longer exist. | Users with the appropriate User Management IAM role can change a user between the ACTIVE, VPNONLY, and DISABLEDCLASSICINFRASTRUCTURE states. PROCESSING, PENDING, ERRORWHILEPROCESSING, ERRORWHILEDELETING, and IAMIDINVALID states are read-only system states that cannot be updated through the API. The code examples on this tab use the client library that is provided for Java. Maven Method Path Summary GET /v2/accounts/{account_id}/users List users POST /v2/accounts/{account_id}/users Invite users to an account DELETE /v2/accounts/{account_id}/users Remove user from account by user ID or email GET /v2/accounts/{account_id}/users/{iam_id} Get user profile PATCH /v2/accounts/{account_id}/users/{iam_id} Partially update user profile DELETE /v2/accounts/{account_id}/users/{iam_id} Remove user from account POST /v2/users/accept Accept an invitation DELETE /v3/accounts/{account_id}/users/{iam_id} Remove user from account (Asynchronous) POST /v2/accounts/{account_id}/users_bulk_delete Bulk remove users from account GET /v2/accounts/{account_id}/users/{iam_id}/settings Get user settings PATCH /v2/accounts/{account_id}/users/{iam_id}/settings Partially update user settings