X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/bf7687829f5222375441cf75c7d82d82a4f508c4..7aaf9f22aa646077b4b7fd961d6b731185b88137:/doc/api/methods/users.html.textile.liquid diff --git a/doc/api/methods/users.html.textile.liquid b/doc/api/methods/users.html.textile.liquid index 33f884b6cc..5861ddbf76 100644 --- a/doc/api/methods/users.html.textile.liquid +++ b/doc/api/methods/users.html.textile.liquid @@ -3,17 +3,45 @@ layout: default navsection: api navmenu: API Methods title: "users" - ... +{% comment %} +Copyright (C) The Arvados Authors. All rights reserved. -See "REST methods for working with Arvados resources":{{site.baseurl}}/api/methods.html +SPDX-License-Identifier: CC-BY-SA-3.0 +{% endcomment %} API endpoint base: @https://{{ site.arvados_api_host }}/arvados/v1/users@ -Required arguments are displayed in %{background:#ccffcc}green%. +Object type: @tpzed@ + +Example UUID: @zzzzz-tpzed-0123456789abcde@ +h2. Resource -h2. create +Users represent individuals with access to the Arvados cluster. + +Each User has, in addition to the "Common resource fields":{{site.baseurl}}/api/resources.html: + +table(table table-bordered table-condensed). +|_. Attribute|_. Type|_. Description|_. Example| +|email|string||| +|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.|| +|first_name|string||| +|last_name|string||| +|identity_url|string||| +|is_admin|boolean||| +|prefs|hash||| +|default_owner_uuid|string||| +|is_active|boolean||| +|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.|| + +h2. Methods + +See "Common resource methods":{{site.baseurl}}/api/methods.html for more information about @create@, @delete@, @get@, @list@, and @update@. + +Required arguments are displayed in %{background:#ccffcc}green%. + +h3. create Create a new User. @@ -23,16 +51,16 @@ table(table table-bordered table-condensed). |_. Argument |_. Type |_. Description |_. Location |_. Example | |user|object||query|| -h2. current +h3. current -current users +Get the user associated with the provided API token. Arguments: table(table table-bordered table-condensed). |_. Argument |_. Type |_. Description |_. Location |_. Example | -h2. delete +h3. delete Delete an existing User. @@ -48,7 +76,7 @@ table(table table-bordered table-condensed). |_. Argument |_. Type |_. Description |_. Location |_. Example | {background:#ccffcc}.|uuid|string||path|| -h2. get +h3. get Gets a User's metadata by UUID. @@ -58,44 +86,91 @@ table(table table-bordered table-condensed). |_. Argument |_. Type |_. Description |_. Location |_. Example | {background:#ccffcc}.|uuid|string|The UUID of the User in question.|path|| -h2. list +h3. list List users. +See "common resource list method.":{{site.baseurl}}/api/methods.html#index + +h3. system + +Get the user record for the "system user.":{{site.baseurl}}/api/permission-model.html#system + Arguments: table(table table-bordered table-condensed). |_. Argument |_. Type |_. Description |_. Location |_. Example | -|limit|integer (default 100)|Maximum number of users to return.|query|| -|order|string|Order in which to return matching users.|query|| -|filters|array|Conditions for filtering users.|query|| -h2. show +h3. update -show users +Update attributes of an existing User. Arguments: table(table table-bordered table-condensed). |_. Argument |_. Type |_. Description |_. Location |_. Example | -{background:#ccffcc}.|uuid|string||path|| +{background:#ccffcc}.|uuid|string|The UUID of the User in question.|path|| +|user|object|The new attributes.|query|| -h2. system +h3. setup -system users +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. Arguments: table(table table-bordered table-condensed). |_. Argument |_. Type |_. Description |_. Location |_. Example | +{background:#ccffcc}.|uuid|string|The UUID of the User in question.|query|| -h2. update +h3. activate -Update attributes of an existing User. +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. + +Arguments: + +table(table table-bordered table-condensed). +|_. Argument |_. Type |_. Description |_. Location |_. Example | +{background:#ccffcc}.|uuid|string|The UUID of the User in question.|query|| + +h3. unsetup + +Remove the user from the "All users" group and deactivate the user. See "user management":{{site.baseurl}}/admin/user-management.html for details. Arguments: table(table table-bordered table-condensed). |_. Argument |_. Type |_. Description |_. Location |_. Example | {background:#ccffcc}.|uuid|string|The UUID of the User in question.|path|| -|user|object||query|| + +h3. merge + +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. + +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. + +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). + +Arguments: + +table(table table-bordered table-condensed). +|_. Argument |_. Type |_. Description |_. Location |_. Example | +|new_user_token|string|A valid token for the "new" user|query|| +|new_user_uuid|uuid|The uuid of the "new" account|query|| +|old_user_uuid|uuid|The uuid of the "old" account|query|| +|new_owner_uuid|uuid|The uuid of a project to which objects owned by the "old" user will be reassigned.|query|| +|redirect_to_new_user|boolean|If true, also redirect login and reassign authorization credentials from "old" user to the "new" user|query|| + +h3. authenticate + +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 + +Valid credentials are determined by the choice of "configured login backend.":{{site.baseurl}}/install/setup-login.html + +Note: this endpoint cannot be used with login backends that use web-based third party authentication, such as Google or OpenID Connect. + +Arguments: + +table(table table-bordered table-condensed). +|_. Argument |_. Type |_. Description |_. Location |_. Example | +{background:#ccffcc}.|username|string|The username.|body|| +{background:#ccffcc}.|password|string|The password.|body||