code: public static String replaceAzkabanJob(String sessionId, String azkabanProjectId,
        AzkabanProjectConfig azkabanProjectConfig) throws IOException {
      log.info("Replacing zip for Azkaban project: " + azkabanProjectConfig.getAzkabanProjectName());
  
      // Create zip file
      String zipFilePath = createAzkabanJobZip(azkabanProjectConfig);
      log.info("Zip file path: " + zipFilePath);
  
      // Replace the zip file on Azkaban
      String projectId = AzkabanAjaxAPIClient.replaceAzkabanProject(sessionId, zipFilePath, azkabanProjectConfig);
      log.info("Project Id: " + projectId);
  
      return projectId;
    }
docs: *
  Replace project on Azkaban based on Azkaban config. This includes preparing the zip file and uploading it to
  Azkaban, setting permissions and schedule.
  @param sessionId Session Id.
  @param azkabanProjectId Project Id.
  @param azkabanProjectConfig Azkaban Project Config.
  @return Project Id.
  @throws IOException