:doc:`GlueDataBrew <../../databrew>` / Client / create_recipe

*************
create_recipe
*************



.. py:method:: GlueDataBrew.Client.create_recipe(**kwargs)

  

  Creates a new DataBrew recipe.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/CreateRecipe>`_  


  **Request Syntax**
  ::

    response = client.create_recipe(
        Description='string',
        Name='string',
        Steps=[
            {
                'Action': {
                    'Operation': 'string',
                    'Parameters': {
                        'string': 'string'
                    }
                },
                'ConditionExpressions': [
                    {
                        'Condition': 'string',
                        'Value': 'string',
                        'TargetColumn': 'string'
                    },
                ]
            },
        ],
        Tags={
            'string': 'string'
        }
    )
    
  :type Description: string
  :param Description: 

    A description for the recipe.

    

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

    A unique name for the recipe. Valid characters are alphanumeric (A-Z, a-z, 0-9), hyphen (-), period (.), and space.

    

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

    An array containing the steps to be performed by the recipe. Each recipe step consists of one recipe action and (optionally) an array of condition expressions.

    

  
    - *(dict) --* 

      Represents a single step from a DataBrew recipe to be performed.

      

    
      - **Action** *(dict) --* **[REQUIRED]** 

        The particular action to be performed in the recipe step.

        

      
        - **Operation** *(string) --* **[REQUIRED]** 

          The name of a valid DataBrew transformation to be performed on the data.

          

        
        - **Parameters** *(dict) --* 

          Contextual parameters for the transformation.

          

        
          - *(string) --* 

          
            - *(string) --* 

            
      
    
      
      - **ConditionExpressions** *(list) --* 

        One or more conditions that must be met for the recipe step to succeed.

         

        .. note::

          

          All of the conditions in the array must be met. In other words, all of the conditions must be combined using a logical AND operation.

          

        

      
        - *(dict) --* 

          Represents an individual condition that evaluates to true or false.

           

          Conditions are used with recipe actions. The action is only performed for column values where the condition evaluates to true.

           

          If a recipe requires more than one condition, then the recipe must specify multiple ``ConditionExpression`` elements. Each condition is applied to the rows in a dataset first, before the recipe action is performed.

          

        
          - **Condition** *(string) --* **[REQUIRED]** 

            A specific condition to apply to a recipe action. For more information, see `Recipe structure <https://docs.aws.amazon.com/databrew/latest/dg/recipes.html#recipes.structure>`__ in the *Glue DataBrew Developer Guide*.

            

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

            A value that the condition must evaluate to for the condition to succeed.

            

          
          - **TargetColumn** *(string) --* **[REQUIRED]** 

            A column to apply this condition to.

            

          
        
    
    

  :type Tags: dict
  :param Tags: 

    Metadata tags to apply to this recipe.

    

  
    - *(string) --* 

    
      - *(string) --* 

      


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

    
    ::

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

    

    - *(dict) --* 
      

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

        The name of the recipe that you created.

        
  
  **Exceptions**
  
  *   :py:class:`GlueDataBrew.Client.exceptions.ConflictException`

  
  *   :py:class:`GlueDataBrew.Client.exceptions.ServiceQuotaExceededException`

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

  