# Update user profile

Update user's profile

Endpoint: PUT /authn2/v0/user/{user_id}
Version: 1.0.0
Security: apiKey

## Path parameters:

  - `enterprise_id` (string, required)
    Enterprise ID

  - `user_id` (string, required)
    AuthN User Id. The authn_user_id from the Get Users response.

## Request fields (application/json):

  - `first_name` (string, required)

## Response 200 fields (application/json):

  - `id` (integer)

  - `username` (string)

  - `email` (string)

  - `first_name` (string)

  - `last_name` (string)

  - `full_name` (string)

  - `is_staff` (boolean)

  - `is_superuser` (boolean)

  - `is_active` (boolean)

  - `profile` (object)

  - `profile.id` (integer)

  - `profile.enterprise_user_id` (string)

  - `profile.authn_user_id` (string)

  - `profile.authn_connection_id` (string)

  - `profile.authz_role_id` (string)

  - `profile.role` (string)
    Enum: "Shoonya Admin", "Enterprise Admin", "Enterprise User", "Viewer", "Group Admin", "Group Viewer"

  - `profile.enterprise` (string)

  - `profile.is_customer` (boolean)

  - `profile.is_endpoint_creator` (boolean)

  - `profile.created_on` (string)

  - `profile.updated_on` (string)

  - `profile.setup_wizard_complete` (boolean)

  - `profile.default_password_changed` (boolean)

  - `profile.is_developer` (boolean)

  - `profile.can_factory_reset` (boolean)

  - `profile.groups` (array)

  - `profile.groups.id` (string)

  - `profile.groups.name` (string)

  - `profile.groups.path` (string)

  - `profile.groups.device_count` (integer)

  - `emm` (object)

  - `emm.id` (integer)

  - `emm.user` (integer)

  - `emm.account_identifier` (string)

  - `emm.account_type` (string)

  - `emm.display_name` (string)

  - `emm.google_user_id` (string)

  - `emm.google_enterprise` (integer)

  - `emm.is_active` (boolean)

  - `emm.created_on` (string)

  - `emm.updated_on` (string)

  - `emm.authentication_token` (object)

  - `emm.authentication_token.id` (integer)

  - `emm.authentication_token.token` (string)

  - `emm.authentication_token.is_active` (boolean)

  - `emm.authentication_token.updated_on` (string)

  - `last_login` (string)

  - `token` (string)

  - `has_emm` (boolean)

  - `is_email_verified` (boolean)

## Response 400 fields (application/json):

  - `status` (integer)
    Either 'status' or 'code' will be present, but not both.

  - `code` (integer)
    Either 'status' or 'code' will be present, but not both.

  - `error` (string)
    Either 'error' or 'errors' will be present, but not both.

  - `errors` (array)
    Either 'error' or 'errors' will be present, but not both.

  - `message` (string)

## Response 401 fields (application/json):

  - `status` (integer)
    Either 'status' or 'code' will be present, but not both.

  - `code` (integer)
    Either 'status' or 'code' will be present, but not both.

  - `error` (string)
    Either 'error' or 'errors' will be present, but not both.

  - `errors` (array)
    Either 'error' or 'errors' will be present, but not both.

  - `message` (string)

## Response 403 fields (application/json):

  - `status` (integer)
    Either 'status' or 'code' will be present, but not both.

  - `code` (integer)
    Either 'status' or 'code' will be present, but not both.

  - `error` (string)
    Either 'error' or 'errors' will be present, but not both.

  - `errors` (array)
    Either 'error' or 'errors' will be present, but not both.

  - `message` (string)


