:doc:`SWF <../../swf>` / Client / list_workflow_types

*******************
list_workflow_types
*******************



.. py:method:: SWF.Client.list_workflow_types(**kwargs)

  

  Returns information about workflow types in the specified domain. The results may be split into multiple pages that can be retrieved by making the call repeatedly.

   

  **Access Control**

   

  You can use IAM policies to control this action's access to Amazon SWF resources as follows:

   

  
  * Use a ``Resource`` element with the domain name to limit the action to only specified domains.
   
  * Use an ``Action`` element to allow or deny permission to call this action.
   
  * You cannot use an IAM policy to constrain this action's parameters.
  

   

  If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's ``cause`` parameter is set to ``OPERATION_NOT_PERMITTED``. For details and example IAM policies, see `Using IAM to Manage Access to Amazon SWF Workflows <https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html>`__ in the *Amazon SWF Developer Guide*.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/swf-2012-01-25/ListWorkflowTypes>`_  


  **Request Syntax**
  ::

    response = client.list_workflow_types(
        domain='string',
        name='string',
        registrationStatus='REGISTERED'|'DEPRECATED',
        nextPageToken='string',
        maximumPageSize=123,
        reverseOrder=True|False
    )
    
  :type domain: string
  :param domain: **[REQUIRED]** 

    The name of the domain in which the workflow types have been registered.

    

  
  :type name: string
  :param name: 

    If specified, lists the workflow type with this name.

    

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

    Specifies the registration status of the workflow types to list.

    

  
  :type nextPageToken: string
  :param nextPageToken: 

    If ``NextPageToken`` is returned there are more results available. The value of ``NextPageToken`` is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return a ``400`` error: " ``Specified token has exceeded its maximum lifetime``".

     

    The configured ``maximumPageSize`` determines how many results can be returned in a single call.

    

  
  :type maximumPageSize: integer
  :param maximumPageSize: 

    The maximum number of results that are returned per call. Use ``nextPageToken`` to obtain further pages of results.

    

  
  :type reverseOrder: boolean
  :param reverseOrder: 

    When set to ``true``, returns the results in reverse order. By default the results are returned in ascending alphabetical order of the ``name`` of the workflow types.

    

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

    
    ::

      {
          'typeInfos': [
              {
                  'workflowType': {
                      'name': 'string',
                      'version': 'string'
                  },
                  'status': 'REGISTERED'|'DEPRECATED',
                  'description': 'string',
                  'creationDate': datetime(2015, 1, 1),
                  'deprecationDate': datetime(2015, 1, 1)
              },
          ],
          'nextPageToken': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 

      Contains a paginated list of information structures about workflow types.

      
      

      - **typeInfos** *(list) --* 

        The list of workflow type information.

        
        

        - *(dict) --* 

          Contains information about a workflow type.

          
          

          - **workflowType** *(dict) --* 

            The workflow type this information is about.

            
            

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

              The name of the workflow type.

               

              .. note::

                

                The combination of workflow type name and version must be unique with in a domain.

                

              
            

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

              The version of the workflow type.

               

              .. note::

                

                The combination of workflow type name and version must be unique with in a domain.

                

              
        
          

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

            The current status of the workflow type.

            
          

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

            The description of the type registered through  RegisterWorkflowType.

            
          

          - **creationDate** *(datetime) --* 

            The date when this type was registered.

            
          

          - **deprecationDate** *(datetime) --* 

            If the type is in deprecated state, then it is set to the date when the type was deprecated.

            
      
    
      

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

        If a ``NextPageToken`` was returned by a previous call, there are more results available. To retrieve the next page of results, make the call again using the returned token in ``nextPageToken``. Keep all other arguments unchanged.

         

        The configured ``maximumPageSize`` determines how many results can be returned in a single call.

        
  
  **Exceptions**
  
  *   :py:class:`SWF.Client.exceptions.OperationNotPermittedFault`

  
  *   :py:class:`SWF.Client.exceptions.UnknownResourceFault`

  