@SdkInternalApi
    final CreateIntegrationWorkflowResult executeCreateIntegrationWorkflow(CreateIntegrationWorkflowRequest createIntegrationWorkflowRequest) {

        ExecutionContext executionContext = createExecutionContext(createIntegrationWorkflowRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(Field.ClientExecuteTime);
        Request<CreateIntegrationWorkflowRequest> request = null;
        Response<CreateIntegrationWorkflowResult> response = null;

        try {
            awsRequestMetrics.startEvent(Field.RequestMarshallTime);
            try {
                request = new CreateIntegrationWorkflowRequestProtocolMarshaller(protocolFactory).marshall(super
                        .beforeMarshalling(createIntegrationWorkflowRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
                request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint);
                request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden());
                request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion());
                request.addHandlerContext(HandlerContextKey.SERVICE_ID, "Customer Profiles");
                request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateIntegrationWorkflow");
                request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig);

            } finally {
                awsRequestMetrics.endEvent(Field.RequestMarshallTime);
            }

            HttpResponseHandler<AmazonWebServiceResponse<CreateIntegrationWorkflowResult>> responseHandler = protocolFactory.createResponseHandler(
                    new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false),
                    new CreateIntegrationWorkflowResultJsonUnmarshaller());
            response = invoke(request, responseHandler, executionContext);

            return response.getAwsResponse();

        } finally {

            endClientExecution(awsRequestMetrics, request, response);
        }
    }
<p>
Creates an integration workflow. An integration workflow is an async process which ingests historic data and sets
up an integration for ongoing updates. The supported Amazon AppFlow sources are Salesforce, ServiceNow, and
Marketo.
</p>

@param createIntegrationWorkflowRequest
@return Result of the CreateIntegrationWorkflow operation returned by the service.
@throws BadRequestException
        The input you provided is invalid.
@throws ResourceNotFoundException
        The requested resource does not exist, or access was denied.
@throws AccessDeniedException
        You do not have sufficient access to perform this action.
@throws ThrottlingException
        You exceeded the maximum number of requests.
@throws InternalServerException
        An internal service error occurred.
@sample AmazonCustomerProfiles.CreateIntegrationWorkflow
@see <a href="http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/CreateIntegrationWorkflow"
     target="_top">AWS API Documentation</a>
aws-java-sdk-customerprofiles/src/main/java/com/amazonaws/services/customerprofiles/AmazonCustomerProfilesClient.java