:doc:`DeadlineCloud <../../deadline>` / Client / search_tasks

************
search_tasks
************



.. py:method:: DeadlineCloud.Client.search_tasks(**kwargs)

  

  Searches for tasks.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/deadline-2023-10-12/SearchTasks>`_  


  **Request Syntax**
  ::

    response = client.search_tasks(
        farmId='string',
        queueIds=[
            'string',
        ],
        jobId='string',
        filterExpressions={
            'filters': [
                {
                    'dateTimeFilter': {
                        'name': 'string',
                        'operator': 'EQUAL'|'NOT_EQUAL'|'GREATER_THAN_EQUAL_TO'|'GREATER_THAN'|'LESS_THAN_EQUAL_TO'|'LESS_THAN'|'ANY_EQUALS'|'ALL_NOT_EQUALS',
                        'dateTime': datetime(2015, 1, 1)
                    },
                    'parameterFilter': {
                        'name': 'string',
                        'operator': 'EQUAL'|'NOT_EQUAL'|'GREATER_THAN_EQUAL_TO'|'GREATER_THAN'|'LESS_THAN_EQUAL_TO'|'LESS_THAN'|'ANY_EQUALS'|'ALL_NOT_EQUALS',
                        'value': 'string'
                    },
                    'searchTermFilter': {
                        'searchTerm': 'string',
                        'matchType': 'FUZZY_MATCH'|'CONTAINS'
                    },
                    'stringFilter': {
                        'name': 'string',
                        'operator': 'EQUAL'|'NOT_EQUAL'|'GREATER_THAN_EQUAL_TO'|'GREATER_THAN'|'LESS_THAN_EQUAL_TO'|'LESS_THAN'|'ANY_EQUALS'|'ALL_NOT_EQUALS',
                        'value': 'string'
                    },
                    'stringListFilter': {
                        'name': 'string',
                        'operator': 'EQUAL'|'NOT_EQUAL'|'GREATER_THAN_EQUAL_TO'|'GREATER_THAN'|'LESS_THAN_EQUAL_TO'|'LESS_THAN'|'ANY_EQUALS'|'ALL_NOT_EQUALS',
                        'values': [
                            'string',
                        ]
                    },
                    'groupFilter': {'... recursive ...'}
                },
            ],
            'operator': 'AND'|'OR'
        },
        sortExpressions=[
            {
                'userJobsFirst': {
                    'userIdentityId': 'string'
                },
                'fieldSort': {
                    'sortOrder': 'ASCENDING'|'DESCENDING',
                    'name': 'string'
                },
                'parameterSort': {
                    'sortOrder': 'ASCENDING'|'DESCENDING',
                    'name': 'string'
                }
            },
        ],
        itemOffset=123,
        pageSize=123
    )
    
  :type farmId: string
  :param farmId: **[REQUIRED]** 

    The farm ID of the task.

    

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

    The queue IDs to include in the search.

    

  
    - *(string) --* 

    

  :type jobId: string
  :param jobId: 

    The job ID for the task search.

    

  
  :type filterExpressions: dict
  :param filterExpressions: 

    The search terms for a resource.

    

  
    - **filters** *(list) --* **[REQUIRED]** 

      The filters to use for the search.

      

    
      - *(dict) --* 

        The type of search filter to apply.

        .. note::    This is a Tagged Union structure. Only one of the     following top level keys can be set: ``dateTimeFilter``, ``parameterFilter``, ``searchTermFilter``, ``stringFilter``, ``stringListFilter``, ``groupFilter``. 

      
        - **dateTimeFilter** *(dict) --* 

          Filters based on date and time.

          

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

            The name of the date-time field to filter on.

            

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

            The type of comparison to use to filter the results.

            

          
          - **dateTime** *(datetime) --* **[REQUIRED]** 

            The date and time.

            

          
        
        - **parameterFilter** *(dict) --* 

          Filters by parameter.

          

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

            The name of the parameter to filter on.

            

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

            The type of comparison to use to filter results.

            

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

            The parameter's value.

            

          
        
        - **searchTermFilter** *(dict) --* 

          Filters by a specified search term.

          

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

            The term to search for.

            

          
          - **matchType** *(string) --* 

            Specifies how Deadline Cloud matches your search term in the results. If you don't specify a ``matchType`` the default is ``FUZZY_MATCH``.

             

            
            * ``FUZZY_MATCH`` - Matches if a portion of the search term is found in the result.
             
            * ``CONTAINS`` - Matches if the exact search term is contained in the result.
            

            

          
        
        - **stringFilter** *(dict) --* 

          Filters by a string.

          

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

            The field name to search.

            

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

            The type of comparison to use for this search.

            

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

            The string to search for.

            

          
        
        - **stringListFilter** *(dict) --* 

          Filters by a list of strings.

          

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

            The field name to search.

            

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

            The type of comparison to use for this search.

            

          
          - **values** *(list) --* **[REQUIRED]** 

            The list of string values to search for.

            

          
            - *(string) --* 

            
        
        
        - **groupFilter** *(dict) --* 

          Filters by group.

          

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

      The operators to include in the search.

      

    
  
  :type sortExpressions: list
  :param sortExpressions: 

    The search terms for a resource.

    

  
    - *(dict) --* 

      The resources to search.

      .. note::    This is a Tagged Union structure. Only one of the     following top level keys can be set: ``userJobsFirst``, ``fieldSort``, ``parameterSort``. 

    
      - **userJobsFirst** *(dict) --* 

        Options for sorting a particular user's jobs first.

        

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

          The user's ID.

          

        
      
      - **fieldSort** *(dict) --* 

        Options for sorting by a field.

        

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

          The sort order for the field.

          

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

          The name of the field.

          

        
      
      - **parameterSort** *(dict) --* 

        Options for sorting by a parameter.

        

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

          The sort order for the parameter.

          

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

          The parameter name to sort by.

          

        
      
    

  :type itemOffset: integer
  :param itemOffset: **[REQUIRED]** 

    The offset for the search results.

    

  
  :type pageSize: integer
  :param pageSize: 

    Specifies the number of results to return.

    

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

    
    ::

      {
          'tasks': [
              {
                  'taskId': 'string',
                  'stepId': 'string',
                  'jobId': 'string',
                  'queueId': 'string',
                  'runStatus': 'PENDING'|'READY'|'ASSIGNED'|'STARTING'|'SCHEDULED'|'INTERRUPTING'|'RUNNING'|'SUSPENDED'|'CANCELED'|'FAILED'|'SUCCEEDED'|'NOT_COMPATIBLE',
                  'targetRunStatus': 'READY'|'FAILED'|'SUCCEEDED'|'CANCELED'|'SUSPENDED'|'PENDING',
                  'parameters': {
                      'string': {
                          'int': 'string',
                          'float': 'string',
                          'string': 'string',
                          'path': 'string',
                          'chunkInt': 'string'
                      }
                  },
                  'failureRetryCount': 123,
                  'startedAt': datetime(2015, 1, 1),
                  'endedAt': datetime(2015, 1, 1),
                  'updatedAt': datetime(2015, 1, 1),
                  'updatedBy': 'string',
                  'latestSessionActionId': 'string'
              },
          ],
          'nextItemOffset': 123,
          'totalResults': 123
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **tasks** *(list) --* 

        Tasks in the search.

        
        

        - *(dict) --* 

          The details of a task search.

          
          

          - **taskId** *(string) --* 

            The task ID.

            
          

          - **stepId** *(string) --* 

            The step ID.

            
          

          - **jobId** *(string) --* 

            The job ID.

            
          

          - **queueId** *(string) --* 

            The queue ID.

            
          

          - **runStatus** *(string) --* 

            The run status of the task.

            
          

          - **targetRunStatus** *(string) --* 

            The run status that the task is being updated to.

            
          

          - **parameters** *(dict) --* 

            The parameters to search for.

            
            

            - *(string) --* 
              

              - *(dict) --* 

                The data types for the task parameters.

                .. note::    This is a Tagged Union structure. Only one of the     following top level keys will be set: ``int``, ``float``, ``string``, ``path``, ``chunkInt``.     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'}


              
                

                - **int** *(string) --* 

                  A signed integer represented as a string.

                  
                

                - **float** *(string) --* 

                  A double precision IEEE-754 floating point number represented as a string.

                  
                

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

                  A UTF-8 string.

                  
                

                - **path** *(string) --* 

                  A file system path represented as a string.

                  
                

                - **chunkInt** *(string) --* 

                  A range (for example 1-10) or selection of specific (for example 1,3,7,8,10) integers represented as a string.

                  
            
        
      
          

          - **failureRetryCount** *(integer) --* 

            The number of times that the task failed and was retried.

            
          

          - **startedAt** *(datetime) --* 

            The date and time the resource started running.

            
          

          - **endedAt** *(datetime) --* 

            The date and time the resource ended running.

            
          

          - **updatedAt** *(datetime) --* 

            The date and time the resource was updated.

            
          

          - **updatedBy** *(string) --* 

            The user or system that updated this resource.

            
          

          - **latestSessionActionId** *(string) --* 

            The latest session action ID for the task.

            
      
    
      

      - **nextItemOffset** *(integer) --* 

        The next item offset for the search results.

        
      

      - **totalResults** *(integer) --* 

        The total number of results in the search.

        
  
  **Exceptions**
  
  *   :py:class:`DeadlineCloud.Client.exceptions.AccessDeniedException`

  
  *   :py:class:`DeadlineCloud.Client.exceptions.InternalServerErrorException`

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

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

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

  