:doc:`CustomerProfiles <../../customer-profiles>` / Client / get_workflow

************
get_workflow
************



.. py:method:: CustomerProfiles.Client.get_workflow(**kwargs)

  

  Get details of specified workflow.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetWorkflow>`_  


  **Request Syntax**
  ::

    response = client.get_workflow(
        DomainName='string',
        WorkflowId='string'
    )
    
  :type DomainName: string
  :param DomainName: **[REQUIRED]** 

    The unique name of the domain.

    

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

    Unique identifier for the workflow.

    

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

    
    ::

      {
          'WorkflowId': 'string',
          'WorkflowType': 'APPFLOW_INTEGRATION',
          'Status': 'NOT_STARTED'|'IN_PROGRESS'|'COMPLETE'|'FAILED'|'SPLIT'|'RETRY'|'CANCELLED',
          'ErrorDescription': 'string',
          'StartDate': datetime(2015, 1, 1),
          'LastUpdatedAt': datetime(2015, 1, 1),
          'Attributes': {
              'AppflowIntegration': {
                  'SourceConnectorType': 'Salesforce'|'Marketo'|'Zendesk'|'Servicenow'|'S3',
                  'ConnectorProfileName': 'string',
                  'RoleArn': 'string'
              }
          },
          'Metrics': {
              'AppflowIntegration': {
                  'RecordsProcessed': 123,
                  'StepsCompleted': 123,
                  'TotalSteps': 123
              }
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

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

        Unique identifier for the workflow.

        
      

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

        The type of workflow. The only supported value is APPFLOW_INTEGRATION.

        
      

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

        Status of workflow execution.

        
      

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

        Workflow error messages during execution (if any).

        
      

      - **StartDate** *(datetime) --* 

        The timestamp that represents when workflow execution started.

        
      

      - **LastUpdatedAt** *(datetime) --* 

        The timestamp that represents when workflow execution last updated.

        
      

      - **Attributes** *(dict) --* 

        Attributes provided for workflow execution.

        
        

        - **AppflowIntegration** *(dict) --* 

          Workflow attributes specific to ``APPFLOW_INTEGRATION`` workflow.

          
          

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

            Specifies the source connector type, such as Salesforce, ServiceNow, and Marketo. Indicates source of ingestion.

            
          

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

            The name of the AppFlow connector profile used for ingestion.

            
          

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

            The Amazon Resource Name (ARN) of the IAM role. Customer Profiles assumes this role to create resources on your behalf as part of workflow execution.

            
      
    
      

      - **Metrics** *(dict) --* 

        Workflow specific execution metrics.

        
        

        - **AppflowIntegration** *(dict) --* 

          Workflow execution metrics for ``APPFLOW_INTEGRATION`` workflow.

          
          

          - **RecordsProcessed** *(integer) --* 

            Number of records processed in ``APPFLOW_INTEGRATION`` workflow.

            
          

          - **StepsCompleted** *(integer) --* 

            Total steps completed in ``APPFLOW_INTEGRATION`` workflow.

            
          

          - **TotalSteps** *(integer) --* 

            Total steps in ``APPFLOW_INTEGRATION`` workflow.

            
      
    
  
  **Exceptions**
  
  *   :py:class:`CustomerProfiles.Client.exceptions.BadRequestException`

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

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

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

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

  