8 Copyright (C) The Arvados Authors. All rights reserved.
10 SPDX-License-Identifier: CC-BY-SA-3.0
13 API endpoint base: @https://{{ site.arvados_api_host }}/arvados/v1/users@
17 Example UUID: @zzzzz-tpzed-0123456789abcde@
21 Users represent individuals with access to the Arvados cluster.
23 Each User has, in addition to the "Common resource fields":{{site.baseurl}}/api/resources.html:
25 table(table table-bordered table-condensed).
26 |_. Attribute|_. Type|_. Description|_. Example|
28 |username|string|The username used for the user's git repositories and virtual machine logins. Usernames must start with a letter, and contain only alphanumerics. When a new user is created, a default username is set from their e-mail address. Only administrators may change the username.||
31 |identity_url|string|||
35 |writable_by|array|List of UUID strings identifying Groups and other Users that can modify this User object. This will include the user's owner_uuid and, for administrators and users requesting their own User object, the requesting user's UUID.||
39 See "Common resource methods":{{site.baseurl}}/api/methods.html for more information about @create@, @delete@, @get@, @list@, and @update@.
41 Required arguments are displayed in %{background:#ccffcc}green%.
49 table(table table-bordered table-condensed).
50 |_. Argument |_. Type |_. Description |_. Location |_. Example |
55 Get the user associated with the provided API token.
59 table(table table-bordered table-condensed).
60 |_. Argument |_. Type |_. Description |_. Location |_. Example |
64 Delete an existing User.
68 table(table table-bordered table-condensed).
69 |_. Argument |_. Type |_. Description |_. Location |_. Example |
70 {background:#ccffcc}.|uuid|string|The UUID of the User in question.|path||
74 table(table table-bordered table-condensed).
75 |_. Argument |_. Type |_. Description |_. Location |_. Example |
76 {background:#ccffcc}.|uuid|string||path||
80 Gets a User's metadata by UUID.
84 table(table table-bordered table-condensed).
85 |_. Argument |_. Type |_. Description |_. Location |_. Example |
86 {background:#ccffcc}.|uuid|string|The UUID of the User in question.|path||
92 See "common resource list method.":{{site.baseurl}}/api/methods.html#index
96 Get the user record for the "system user.":{{site.baseurl}}/api/permission-model.html#system
100 table(table table-bordered table-condensed).
101 |_. Argument |_. Type |_. Description |_. Location |_. Example |
105 Update attributes of an existing User.
109 table(table table-bordered table-condensed).
110 |_. Argument |_. Type |_. Description |_. Location |_. Example |
111 {background:#ccffcc}.|uuid|string|The UUID of the User in question.|path||
112 |user|object|The new attributes.|query||
116 Set up a user. Adds the user to the "All users" group. Enables the user to invoke @activate@. See "user management":{{site.baseurl}}/admin/user-management.html for details.
120 table(table table-bordered table-condensed).
121 |_. Argument |_. Type |_. Description |_. Location |_. Example |
122 {background:#ccffcc}.|uuid|string|The UUID of the User in question.|query||
126 Check that a user has is set up and has signed all the user agreements. If so, activate the user. Users can invoke this for themselves. See "user agreements":{{site.baseurl}}/admin/user-management.html#user_agreements for details.
130 table(table table-bordered table-condensed).
131 |_. Argument |_. Type |_. Description |_. Location |_. Example |
132 {background:#ccffcc}.|uuid|string|The UUID of the User in question.|query||
136 Remove the user from the "All users" group and deactivate the user. See "user management":{{site.baseurl}}/admin/user-management.html for details.
140 table(table table-bordered table-condensed).
141 |_. Argument |_. Type |_. Description |_. Location |_. Example |
142 {background:#ccffcc}.|uuid|string|The UUID of the User in question.|path||
146 Transfer ownership of data from the "old" user account to the "new" user account. When @redirect_to_new_user@ is @true@ this also causes logins to the "old" account to be redirected to the "new" account. The "old" user account that was redirected becomes invisible in user listings.
148 See "Merge user accounts":{{site.baseurl}}/admin/link-accounts.html , "Reassign user data ownership":{{site.baseurl}}/admin/reassign-ownership.html and "Linking alternate login accounts":{{site.baseurl}}/user/topics/link-accounts.html for examples of how this method is used.
150 Must supply either @new_user_token@ (the currently authorized user will be the "old" user), or both @new_user_uuid@ and @old_user_uuid@ (the currently authorized user must be an admin).
154 table(table table-bordered table-condensed).
155 |_. Argument |_. Type |_. Description |_. Location |_. Example |
156 |new_user_token|string|A valid token for the "new" user|query||
157 |new_user_uuid|uuid|The uuid of the "new" account|query||
158 |old_user_uuid|uuid|The uuid of the "old" account|query||
159 |new_owner_uuid|uuid|The uuid of a project to which objects owned by the "old" user will be reassigned.|query||
160 |redirect_to_new_user|boolean|If true, also redirect login and reassign authorization credentials from "old" user to the "new" user|query||
164 Create a new API token based on username/password credentials. Returns an "API client authorization":api_client_authorizations.html object containing the API token, or an "error object.":../requests.html#errors
166 Valid credentials are determined by the choice of "configured login backend.":{{site.baseurl}}/install/setup-login.html
168 Note: this endpoint cannot be used with login backends that use web-based third party authentication, such as Google or OpenID Connect.
172 table(table table-bordered table-condensed).
173 |_. Argument |_. Type |_. Description |_. Location |_. Example |
174 {background:#ccffcc}.|username|string|The username.|body||
175 {background:#ccffcc}.|password|string|The password.|body||