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

*******************
create_contact_flow
*******************



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

  

  Creates a flow for the specified Amazon Connect instance.

   

  You can also create and update flows using the `Amazon Connect Flow language <https://docs.aws.amazon.com/connect/latest/APIReference/flow-language.html>`__.

  

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


  **Request Syntax**
  ::

    response = client.create_contact_flow(
        InstanceId='string',
        Name='string',
        Type='CONTACT_FLOW'|'CUSTOMER_QUEUE'|'CUSTOMER_HOLD'|'CUSTOMER_WHISPER'|'AGENT_HOLD'|'AGENT_WHISPER'|'OUTBOUND_WHISPER'|'AGENT_TRANSFER'|'QUEUE_TRANSFER'|'CAMPAIGN',
        Description='string',
        Content='string',
        Status='PUBLISHED'|'SAVED',
        Tags={
            'string': 'string'
        }
    )
    
  :type InstanceId: string
  :param InstanceId: **[REQUIRED]** 

    The identifier of the Amazon Connect instance.

    

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

    The name of the flow.

    

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

    The type of the flow. For descriptions of the available types, see `Choose a flow type <https://docs.aws.amazon.com/connect/latest/adminguide/create-contact-flow.html#contact-flow-types>`__ in the *Amazon Connect Administrator Guide*.

    

  
  :type Description: string
  :param Description: 

    The description of the flow.

    

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

    The JSON string that represents the content of the flow. For an example, see `Example flow in Amazon Connect Flow language <https://docs.aws.amazon.com/connect/latest/APIReference/flow-language-example.html>`__.

     

    Length Constraints: Minimum length of 1. Maximum length of 256000.

    

  
  :type Status: string
  :param Status: 

    Indicates the flow status as either ``SAVED`` or ``PUBLISHED``. The ``PUBLISHED`` status will initiate validation on the content. the ``SAVED`` status does not initiate validation of the content. ``SAVED`` | ``PUBLISHED``.

    

  
  :type Tags: dict
  :param Tags: 

    The tags used to organize, track, or control access for this resource. For example, { "Tags": {"key1":"value1", "key2":"value2"} }.

    

  
    - *(string) --* 

    
      - *(string) --* 

      


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

    
    ::

      {
          'ContactFlowId': 'string',
          'ContactFlowArn': 'string',
          'FlowContentSha256': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **ContactFlowId** *(string) --* 

        The identifier of the flow.

        
      

      - **ContactFlowArn** *(string) --* 

        The Amazon Resource Name (ARN) of the flow.

        
      

      - **FlowContentSha256** *(string) --* 

        Indicates the checksum value of the latest published flow content.

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

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

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

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

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

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

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

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

  