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

***************************
send_project_session_action
***************************



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

  

  Performs a recipe step within an interactive DataBrew session that's currently open.

  

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


  **Request Syntax**
  ::

    response = client.send_project_session_action(
        Preview=True|False,
        Name='string',
        RecipeStep={
            'Action': {
                'Operation': 'string',
                'Parameters': {
                    'string': 'string'
                }
            },
            'ConditionExpressions': [
                {
                    'Condition': 'string',
                    'Value': 'string',
                    'TargetColumn': 'string'
                },
            ]
        },
        StepIndex=123,
        ClientSessionId='string',
        ViewFrame={
            'StartColumnIndex': 123,
            'ColumnRange': 123,
            'HiddenColumns': [
                'string',
            ],
            'StartRowIndex': 123,
            'RowRange': 123,
            'Analytics': 'ENABLE'|'DISABLE'
        }
    )
    
  :type Preview: boolean
  :param Preview: 

    If true, the result of the recipe step will be returned, but not applied.

    

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

    The name of the project to apply the action to.

    

  
  :type RecipeStep: dict
  :param RecipeStep: 

    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 StepIndex: integer
  :param StepIndex: 

    The index from which to preview a step. This index is used to preview the result of steps that have already been applied, so that the resulting view frame is from earlier in the view frame stack.

    

  
  :type ClientSessionId: string
  :param ClientSessionId: 

    A unique identifier for an interactive session that's currently open and ready for work. The action will be performed on this session.

    

  
  :type ViewFrame: dict
  :param ViewFrame: 

    Represents the data being transformed during an action.

    

  
    - **StartColumnIndex** *(integer) --* **[REQUIRED]** 

      The starting index for the range of columns to return in the view frame.

      

    
    - **ColumnRange** *(integer) --* 

      The number of columns to include in the view frame, beginning with the ``StartColumnIndex`` value and ignoring any columns in the ``HiddenColumns`` list.

      

    
    - **HiddenColumns** *(list) --* 

      A list of columns to hide in the view frame.

      

    
      - *(string) --* 

      
  
    - **StartRowIndex** *(integer) --* 

      The starting index for the range of rows to return in the view frame.

      

    
    - **RowRange** *(integer) --* 

      The number of rows to include in the view frame, beginning with the ``StartRowIndex`` value.

      

    
    - **Analytics** *(string) --* 

      Controls if analytics computation is enabled or disabled. Enabled by default.

      

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

    
    ::

      {
          'Result': 'string',
          'Name': 'string',
          'ActionId': 123
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **Result** *(string) --* 

        A message indicating the result of performing the action.

        
      

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

        The name of the project that was affected by the action.

        
      

      - **ActionId** *(integer) --* 

        A unique identifier for the action that was performed.

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

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

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

  