:doc:`MigrationHubOrchestrator <../../migrationhuborchestrator>` / Client / get_workflow_step

*****************
get_workflow_step
*****************



.. py:method:: MigrationHubOrchestrator.Client.get_workflow_step(**kwargs)

  

  Get a step in the migration workflow.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/GetWorkflowStep>`_  


  **Request Syntax**
  ::

    response = client.get_workflow_step(
        workflowId='string',
        stepGroupId='string',
        id='string'
    )
    
  :type workflowId: string
  :param workflowId: **[REQUIRED]** 

    The ID of the migration workflow.

    

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

    The ID of the step group.

    

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

    The ID of the step.

    

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

    
    ::

      {
          'name': 'string',
          'stepGroupId': 'string',
          'workflowId': 'string',
          'stepId': 'string',
          'description': 'string',
          'stepActionType': 'MANUAL'|'AUTOMATED',
          'owner': 'AWS_MANAGED'|'CUSTOM',
          'workflowStepAutomationConfiguration': {
              'scriptLocationS3Bucket': 'string',
              'scriptLocationS3Key': {
                  'linux': 'string',
                  'windows': 'string'
              },
              'command': {
                  'linux': 'string',
                  'windows': 'string'
              },
              'runEnvironment': 'AWS'|'ONPREMISE',
              'targetType': 'SINGLE'|'ALL'|'NONE'
          },
          'stepTarget': [
              'string',
          ],
          'outputs': [
              {
                  'name': 'string',
                  'dataType': 'STRING'|'INTEGER'|'STRINGLIST'|'STRINGMAP',
                  'required': True|False,
                  'value': {
                      'integerValue': 123,
                      'stringValue': 'string',
                      'listOfStringValue': [
                          'string',
                      ]
                  }
              },
          ],
          'previous': [
              'string',
          ],
          'next': [
              'string',
          ],
          'status': 'AWAITING_DEPENDENCIES'|'SKIPPED'|'READY'|'IN_PROGRESS'|'COMPLETED'|'FAILED'|'PAUSED'|'USER_ATTENTION_REQUIRED',
          'statusMessage': 'string',
          'scriptOutputLocation': 'string',
          'creationTime': datetime(2015, 1, 1),
          'lastStartTime': datetime(2015, 1, 1),
          'endTime': datetime(2015, 1, 1),
          'noOfSrvCompleted': 123,
          'noOfSrvFailed': 123,
          'totalNoOfSrv': 123
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

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

        The name of the step.

        
      

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

        The ID of the step group.

        
      

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

        The ID of the migration workflow.

        
      

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

        The ID of the step.

        
      

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

        The description of the step.

        
      

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

        The action type of the step. You must run and update the status of a manual step for the workflow to continue after the completion of the step.

        
      

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

        The owner of the step.

        
      

      - **workflowStepAutomationConfiguration** *(dict) --* 

        The custom script to run tests on source or target environments.

        
        

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

          The Amazon S3 bucket where the script is located.

          
        

        - **scriptLocationS3Key** *(dict) --* 

          The Amazon S3 key for the script location.

          
          

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

            The script location for Linux.

            
          

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

            The script location for Windows.

            
      
        

        - **command** *(dict) --* 

          The command required to run the script.

          
          

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

            Command for Linux.

            
          

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

            Command for Windows.

            
      
        

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

          The source or target environment.

          
        

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

          The servers on which to run the script.

          
    
      

      - **stepTarget** *(list) --* 

        The servers on which a step will be run.

        
        

        - *(string) --* 
    
      

      - **outputs** *(list) --* 

        The outputs of the step.

        
        

        - *(dict) --* 

          The output of a step.

          
          

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

            The name of the step.

            
          

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

            The data type of the output.

            
          

          - **required** *(boolean) --* 

            Determine if an output is required from a step.

            
          

          - **value** *(dict) --* 

            The value of the output.

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


          
            

            - **integerValue** *(integer) --* 

              The integer value.

              
            

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

              The string value.

              
            

            - **listOfStringValue** *(list) --* 

              The list of string value.

              
              

              - *(string) --* 
          
        
      
    
      

      - **previous** *(list) --* 

        The previous step.

        
        

        - *(string) --* 
    
      

      - **next** *(list) --* 

        The next step.

        
        

        - *(string) --* 
    
      

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

        The status of the step.

        
      

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

        The status message of the migration workflow.

        
      

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

        The output location of the script.

        
      

      - **creationTime** *(datetime) --* 

        The time at which the step was created.

        
      

      - **lastStartTime** *(datetime) --* 

        The time at which the workflow was last started.

        
      

      - **endTime** *(datetime) --* 

        The time at which the step ended.

        
      

      - **noOfSrvCompleted** *(integer) --* 

        The number of servers that have been migrated.

        
      

      - **noOfSrvFailed** *(integer) --* 

        The number of servers that have failed to migrate.

        
      

      - **totalNoOfSrv** *(integer) --* 

        The total number of servers that have been migrated.

        
  
  **Exceptions**
  
  *   :py:class:`MigrationHubOrchestrator.Client.exceptions.ThrottlingException`

  
  *   :py:class:`MigrationHubOrchestrator.Client.exceptions.AccessDeniedException`

  
  *   :py:class:`MigrationHubOrchestrator.Client.exceptions.InternalServerException`

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

  