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

***********************
list_contact_references
***********************



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

  

  This API is in preview release for Amazon Connect and is subject to change.

   

  For the specified ``referenceTypes``, returns a list of references associated with the contact. *References* are links to documents that are related to a contact, such as emails, attachments, or URLs.

  

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


  **Request Syntax**
  ::

    response = client.list_contact_references(
        InstanceId='string',
        ContactId='string',
        ReferenceTypes=[
            'URL'|'ATTACHMENT'|'CONTACT_ANALYSIS'|'NUMBER'|'STRING'|'DATE'|'EMAIL'|'EMAIL_MESSAGE'|'EMAIL_MESSAGE_PLAIN_TEXT',
        ],
        NextToken='string'
    )
    
  :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.

    

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

    The identifier of the initial contact.

    

  
  :type ReferenceTypes: list
  :param ReferenceTypes: **[REQUIRED]** 

    The type of reference.

    

  
    - *(string) --* 

    

  :type NextToken: string
  :param NextToken: 

    The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

     

    .. warning::

       

      This is not expected to be set, because the value returned in the previous response is always null.

      

    

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

    
    ::

      {
          'ReferenceSummaryList': [
              {
                  'Url': {
                      'Name': 'string',
                      'Value': 'string'
                  },
                  'Attachment': {
                      'Name': 'string',
                      'Value': 'string',
                      'Status': 'AVAILABLE'|'DELETED'|'APPROVED'|'REJECTED'|'PROCESSING'|'FAILED',
                      'Arn': 'string'
                  },
                  'EmailMessage': {
                      'Name': 'string',
                      'Arn': 'string'
                  },
                  'EmailMessagePlainText': {
                      'Name': 'string',
                      'Arn': 'string'
                  },
                  'String': {
                      'Name': 'string',
                      'Value': 'string'
                  },
                  'Number': {
                      'Name': 'string',
                      'Value': 'string'
                  },
                  'Date': {
                      'Name': 'string',
                      'Value': 'string'
                  },
                  'Email': {
                      'Name': 'string',
                      'Value': 'string'
                  }
              },
          ],
          'NextToken': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **ReferenceSummaryList** *(list) --* 

        Information about the flows.

        
        

        - *(dict) --* 

          Contains summary information about a reference. ``ReferenceSummary`` contains only one non null field between the URL and attachment based on the reference type.

          .. note::    This is a Tagged Union structure. Only one of the     following top level keys will be set: ``Url``, ``Attachment``, ``EmailMessage``, ``EmailMessagePlainText``, ``String``, ``Number``, ``Date``, ``Email``.     If a client receives an unknown member it will     set ``SDK_UNKNOWN_MEMBER`` as the top level key,     which maps to the name or tag of the unknown     member. The structure of ``SDK_UNKNOWN_MEMBER`` is     as follows::

                    'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}


        
          

          - **Url** *(dict) --* 

            Information about the reference when the ``referenceType`` is ``URL``. Otherwise, null.

            
            

            - **Name** *(string) --* 

              Identifier of the URL reference.

              
            

            - **Value** *(string) --* 

              A valid URL.

              
        
          

          - **Attachment** *(dict) --* 

            Information about the reference when the ``referenceType`` is ``ATTACHMENT``. Otherwise, null.

            
            

            - **Name** *(string) --* 

              Identifier of the attachment reference.

              
            

            - **Value** *(string) --* 

              The location path of the attachment reference.

              
            

            - **Status** *(string) --* 

              Status of the attachment reference type.

              
            

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

              The Amazon Resource Name (ARN) of the attachment reference.

              
        
          

          - **EmailMessage** *(dict) --* 

            Information about the reference when the referenceType is ``EMAIL_MESSAGE``. Otherwise, null.

            
            

            - **Name** *(string) --* 

              The name of the email message reference

              
            

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

              The Amazon Resource Name (ARN) of the email message reference

              
        
          

          - **EmailMessagePlainText** *(dict) --* 

            Information about the reference when the referenceType is ``EMAIL_MESSAGE``. Otherwise, null.

            
            

            - **Name** *(string) --* 

              The name of the email message reference

              
            

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

              The Amazon Resource Name (ARN) of the email message reference

              
        
          

          - **String** *(dict) --* 

            Information about a reference when the ``referenceType`` is ``STRING``. Otherwise, null.

            
            

            - **Name** *(string) --* 

              Identifier of the string reference.

              
            

            - **Value** *(string) --* 

              A valid string.

              
        
          

          - **Number** *(dict) --* 

            Information about a reference when the ``referenceType`` is ``NUMBER``. Otherwise, null.

            
            

            - **Name** *(string) --* 

              Identifier of the number reference.

              
            

            - **Value** *(string) --* 

              A valid number.

              
        
          

          - **Date** *(dict) --* 

            Information about a reference when the ``referenceType`` is ``DATE``. Otherwise, null.

            
            

            - **Name** *(string) --* 

              Identifier of the date reference.

              
            

            - **Value** *(string) --* 

              A valid date.

              
        
          

          - **Email** *(dict) --* 

            Information about a reference when the ``referenceType`` is ``EMAIL``. Otherwise, null.

            
            

            - **Name** *(string) --* 

              Identifier of the email reference.

              
            

            - **Value** *(string) --* 

              A valid email address.

              
        
      
    
      

      - **NextToken** *(string) --* 

        If there are additional results, this is the token for the next set of results.

         

        .. warning::

           

          This is always returned as null in the response.

          

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

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

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

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

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

  