code: public static void scheduleAzkabanProject(String sessionId, String azkabanProjectId,
        AzkabanProjectConfig azkabanProjectConfig)
        throws IOException {
      Map<String, String> params = Maps.newHashMap();
      params.put("ajax", "scheduleFlow");
      params.put("projectName", azkabanProjectConfig.getAzkabanProjectName());
      params.put("flow", azkabanProjectConfig.getAzkabanProjectFlowName());
      params.put("projectId", azkabanProjectId);
      params.put("scheduleTime", getScheduledTimeInAzkabanFormat(LOW_NETWORK_TRAFFIC_BEGIN_HOUR,
          LOW_NETWORK_TRAFFIC_END_HOUR, JOB_START_DELAY_MINUTES));
      params.put("scheduleDate", getScheduledDateInAzkabanFormat());
      params.put("is_recurring", "off");
  
      // Run once OR push down schedule (TODO: Enable when push down is finalized)
      //    if (azkabanProjectConfig.isScheduled()) {
      //      params.put("is_recurring", "on");
      //      params.put("period", "1d");
      //    } else {
      //      params.put("is_recurring", "off");
      //    }
  
      executePostRequest(preparePostRequest(azkabanProjectConfig.getAzkabanServerUrl() + "/schedule", sessionId, params));
    }
docs: *
  Schedule the Azkaban Project to run with a schedule.
  @param sessionId Session Id.
  @param azkabanProjectId Project Id.
  @param azkabanProjectConfig Azkaban Project Config.
  @throws IOException