code: public AzkabanExecuteFlowStatus executeFlowWithOptions(String projectName,
                                                           String flowName,
                                                           Map<String, String> flowOptions,
                                                           Map<String, String> flowParameters) throws AzkabanClientException {
      AzkabanMultiCallables.ExecuteFlowCallable callable =
          AzkabanMultiCallables.ExecuteFlowCallable.builder()
              .client(this)
              .projectName(projectName)
              .flowName(flowName)
              .flowOptions(flowOptions)
              .flowParameters(flowParameters)
              .build();
  
      return runWithRetry(callable, AzkabanExecuteFlowStatus.class);
    }
docs: Execute a flow by providing flow parameters and options. The project and flow should be created first.
  
  @param projectName project name
  @param flowName  flow name
  @param flowOptions  flow options
  @param flowParameters  flow parameters
  
  @return The status object which contains success status and execution id.