:doc:`FinSpaceData <../../finspace-data>` / Client / update_user

***********
update_user
***********



.. py:method:: FinSpaceData.Client.update_user(**kwargs)

  

  Modifies the details of the specified user. You cannot update the ``userId`` for a user.

  

  .. danger::

        This operation is deprecated and may not function as expected. This operation should not be used going forward and is only kept for the purpose of backwards compatiblity.


  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/UpdateUser>`_  


  **Request Syntax**
  ::

    response = client.update_user(
        userId='string',
        type='SUPER_USER'|'APP_USER',
        firstName='string',
        lastName='string',
        apiAccess='ENABLED'|'DISABLED',
        apiAccessPrincipalArn='string',
        clientToken='string'
    )
    
  :type userId: string
  :param userId: **[REQUIRED]** 

    The unique identifier for the user that you want to update.

    

  
  :type type: string
  :param type: 

    The option to indicate the type of user.

     

    
    * ``SUPER_USER``– A user with permission to all the functionality and data in FinSpace.
     
    * ``APP_USER`` – A user with specific permissions in FinSpace. The users are assigned permissions by adding them to a permission group.
    

    

  
  :type firstName: string
  :param firstName: 

    The first name of the user.

    

  
  :type lastName: string
  :param lastName: 

    The last name of the user.

    

  
  :type apiAccess: string
  :param apiAccess: 

    The option to indicate whether the user can use the ``GetProgrammaticAccessCredentials`` API to obtain credentials that can then be used to access other FinSpace Data API operations.

     

    
    * ``ENABLED`` – The user has permissions to use the APIs.
     
    * ``DISABLED`` – The user does not have permissions to use any APIs.
    

    

  
  :type apiAccessPrincipalArn: string
  :param apiAccessPrincipalArn: 

    The ARN identifier of an AWS user or role that is allowed to call the ``GetProgrammaticAccessCredentials`` API to obtain a credentials token for a specific FinSpace user. This must be an IAM role within your FinSpace account.

    

  
  :type clientToken: string
  :param clientToken: 

    A token that ensures idempotency. This token expires in 10 minutes.

    This field is autopopulated if not provided.

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'userId': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **userId** *(string) --* 

        The unique identifier of the updated user.

        
  
  **Exceptions**
  
  *   :py:class:`FinSpaceData.Client.exceptions.InternalServerException`

  
  *   :py:class:`FinSpaceData.Client.exceptions.ValidationException`

  
  *   :py:class:`FinSpaceData.Client.exceptions.ThrottlingException`

  
  *   :py:class:`FinSpaceData.Client.exceptions.AccessDeniedException`

  
  *   :py:class:`FinSpaceData.Client.exceptions.ResourceNotFoundException`

  
  *   :py:class:`FinSpaceData.Client.exceptions.ConflictException`

  