:doc:`Connect <../../connect>` / Client / describe_user

*************
describe_user
*************



.. py:method:: Connect.Client.describe_user(**kwargs)

  

  Describes the specified user. You can `find the instance ID in the Amazon Connect console <https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html>`__ (it’s the final part of the ARN). The console does not display the user IDs. Instead, list the users and note the IDs provided in the output.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DescribeUser>`_  


  **Request Syntax**
  ::

    response = client.describe_user(
        UserId='string',
        InstanceId='string'
    )
    
  :type UserId: string
  :param UserId: **[REQUIRED]** 

    The identifier of the user account.

    

  
  :type InstanceId: string
  :param InstanceId: **[REQUIRED]** 

    The identifier of the Amazon Connect instance. You can `find the instance ID <https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html>`__ in the Amazon Resource Name (ARN) of the instance.

    

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

    
    ::

      {
          'User': {
              'Id': 'string',
              'Arn': 'string',
              'Username': 'string',
              'IdentityInfo': {
                  'FirstName': 'string',
                  'LastName': 'string',
                  'Email': 'string',
                  'SecondaryEmail': 'string',
                  'Mobile': 'string'
              },
              'PhoneConfig': {
                  'PhoneType': 'SOFT_PHONE'|'DESK_PHONE',
                  'AutoAccept': True|False,
                  'AfterContactWorkTimeLimit': 123,
                  'DeskPhoneNumber': 'string',
                  'PersistentConnection': True|False
              },
              'DirectoryUserId': 'string',
              'SecurityProfileIds': [
                  'string',
              ],
              'RoutingProfileId': 'string',
              'HierarchyGroupId': 'string',
              'Tags': {
                  'string': 'string'
              },
              'AutoAcceptConfigs': [
                  {
                      'Channel': 'VOICE'|'CHAT'|'TASK'|'EMAIL',
                      'AutoAccept': True|False,
                      'AgentFirstCallbackAutoAccept': True|False
                  },
              ],
              'AfterContactWorkConfigs': [
                  {
                      'Channel': 'VOICE'|'CHAT'|'TASK'|'EMAIL',
                      'AfterContactWorkConfig': {
                          'AfterContactWorkTimeLimit': 123
                      },
                      'AgentFirstCallbackAfterContactWorkConfig': {
                          'AfterContactWorkTimeLimit': 123
                      }
                  },
              ],
              'PhoneNumberConfigs': [
                  {
                      'Channel': 'VOICE'|'CHAT'|'TASK'|'EMAIL',
                      'PhoneType': 'SOFT_PHONE'|'DESK_PHONE',
                      'PhoneNumber': 'string'
                  },
              ],
              'PersistentConnectionConfigs': [
                  {
                      'Channel': 'VOICE'|'CHAT'|'TASK'|'EMAIL',
                      'PersistentConnection': True|False
                  },
              ],
              'VoiceEnhancementConfigs': [
                  {
                      'Channel': 'VOICE'|'CHAT'|'TASK'|'EMAIL',
                      'VoiceEnhancementMode': 'VOICE_ISOLATION'|'NOISE_SUPPRESSION'|'NONE'
                  },
              ],
              'LastModifiedTime': datetime(2015, 1, 1),
              'LastModifiedRegion': 'string'
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **User** *(dict) --* 

        Information about the user account and configuration settings.

        
        

        - **Id** *(string) --* 

          The identifier of the user account.

          
        

        - **Arn** *(string) --* 

          The Amazon Resource Name (ARN) of the user account.

          
        

        - **Username** *(string) --* 

          The user name assigned to the user account.

          
        

        - **IdentityInfo** *(dict) --* 

          Information about the user identity.

          
          

          - **FirstName** *(string) --* 

            The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted.

            
          

          - **LastName** *(string) --* 

            The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted.

            
          

          - **Email** *(string) --* 

            The email address. If you are using SAML for identity management and include this parameter, an error is returned.

            
          

          - **SecondaryEmail** *(string) --* 

            The user's secondary email address. If you provide a secondary email, the user receives email notifications - other than password reset notifications - to this email address instead of to their primary email address.

             

            Pattern: ``(?=^.{0,265}$)[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,63}``

            
          

          - **Mobile** *(string) --* 

            The user's mobile number.

            
      
        

        - **PhoneConfig** *(dict) --* 

          Information about the phone configuration for the user.

          
          

          - **PhoneType** *(string) --* 

            The phone type.

            
          

          - **AutoAccept** *(boolean) --* 

            The Auto accept setting.

            
          

          - **AfterContactWorkTimeLimit** *(integer) --* 

            The After Call Work (ACW) timeout setting, in seconds. This parameter has a minimum value of 0 and a maximum value of 2,000,000 seconds (24 days). Enter 0 if you don't want to allocate a specific amount of ACW time. It essentially means an indefinite amount of time. When the conversation ends, ACW starts; the agent must choose Close contact to end ACW.

             

            .. note::

              

              When returned by a ``SearchUsers`` call, ``AfterContactWorkTimeLimit`` is returned in milliseconds.

              

            
          

          - **DeskPhoneNumber** *(string) --* 

            The phone number for the user's desk phone.

            
          

          - **PersistentConnection** *(boolean) --* 

            The persistent connection setting for the user.

            
      
        

        - **DirectoryUserId** *(string) --* 

          The identifier of the user account in the directory used for identity management.

          
        

        - **SecurityProfileIds** *(list) --* 

          The identifiers of the security profiles for the user.

          
          

          - *(string) --* 
      
        

        - **RoutingProfileId** *(string) --* 

          The identifier of the routing profile for the user.

          
        

        - **HierarchyGroupId** *(string) --* 

          The identifier of the hierarchy group for the user.

          
        

        - **Tags** *(dict) --* 

          The tags.

          
          

          - *(string) --* 
            

            - *(string) --* 
      
    
        

        - **AutoAcceptConfigs** *(list) --* 

          The list of auto-accept configuration settings for each channel.

          
          

          - *(dict) --* 

            Configuration settings for auto-accept for a specific channel.

            
            

            - **Channel** *(string) --* 

              The channel for this auto-accept configuration. Valid values: VOICE, CHAT, TASK, EMAIL.

              
            

            - **AutoAccept** *(boolean) --* 

              Indicates whether auto-accept is enabled for this channel. When enabled, available agents are automatically connected to contacts from this channel.

              
            

            - **AgentFirstCallbackAutoAccept** *(boolean) --* 

              Indicates whether auto-accept is enabled for agent-first callbacks. This setting only applies to the VOICE channel.

              
        
      
        

        - **AfterContactWorkConfigs** *(list) --* 

          The list of after contact work (ACW) timeout configuration settings for each channel.

          
          

          - *(dict) --* 

            Configuration settings for after contact work (ACW) timeout for a specific channel.

            
            

            - **Channel** *(string) --* 

              The channel for this ACW timeout configuration. Valid values: VOICE, CHAT, TASK, EMAIL.

              
            

            - **AfterContactWorkConfig** *(dict) --* 

              The ACW timeout settings for this channel.

              
              

              - **AfterContactWorkTimeLimit** *(integer) --* 

                The ACW timeout duration in seconds. Minimum: 1 second. Maximum: 2,000,000 seconds (24 days). Enter 0 for indefinite ACW time.

                
          
            

            - **AgentFirstCallbackAfterContactWorkConfig** *(dict) --* 

              The ACW timeout settings for agent-first callbacks. This setting only applies to the VOICE channel.

              
              

              - **AfterContactWorkTimeLimit** *(integer) --* 

                The ACW timeout duration in seconds. Minimum: 1 second. Maximum: 2,000,000 seconds (24 days). Enter 0 for indefinite ACW time.

                
          
        
      
        

        - **PhoneNumberConfigs** *(list) --* 

          The list of phone number configuration settings for each channel.

          
          

          - *(dict) --* 

            Configuration settings for phone type and phone number.

            
            

            - **Channel** *(string) --* 

              The channel for this phone number configuration. Only ``VOICE`` is supported for this data type.

              
            

            - **PhoneType** *(string) --* 

              The phone type. Valid values: SOFT_PHONE, DESK_PHONE.

              
            

            - **PhoneNumber** *(string) --* 

              The phone number for the user's desk phone.

              
        
      
        

        - **PersistentConnectionConfigs** *(list) --* 

          The list of persistent connection configuration settings for each channel.

          
          

          - *(dict) --* 

            Configuration settings for persistent connection for a specific channel.

            
            

            - **Channel** *(string) --* 

              Configuration settings for persistent connection. Only ``VOICE`` is supported for this data type.

              
            

            - **PersistentConnection** *(boolean) --* 

              Indicates whether persistent connection is enabled. When enabled, the agent's connection is maintained after a call ends, enabling subsequent calls to connect faster.

              
        
      
        

        - **VoiceEnhancementConfigs** *(list) --* 

          The list of voice enhancement configuration settings for each channel.

          
          

          - *(dict) --* 

            Configuration settings for voice enhancement.

            
            

            - **Channel** *(string) --* 

              The channel for this voice enhancement configuration. Only ``VOICE`` is supported for this data type.

              
            

            - **VoiceEnhancementMode** *(string) --* 

              The voice enhancement mode.

              
        
      
        

        - **LastModifiedTime** *(datetime) --* 

          The timestamp when this resource was last modified.

          
        

        - **LastModifiedRegion** *(string) --* 

          The Amazon Web Services Region where this resource was last modified.

          
    
  
  **Exceptions**
  
  *   :py:class:`Connect.Client.exceptions.InvalidRequestException`

  
  *   :py:class:`Connect.Client.exceptions.InvalidParameterException`

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

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

  
  *   :py:class:`Connect.Client.exceptions.InternalServiceException`

  