code: @DELETE
    @Path("/{host}/jobs/{job}")
    @Produces(APPLICATION_JSON)
    @Timed
    @ExceptionMetered
    public JobUndeployResponse jobDelete(@PathParam("host") final String host,
                                         @PathParam("job") final JobId jobId,
                                         @QueryParam("token") @DefaultValue("") final String token) {
      if (!jobId.isFullyQualified()) {
        throw badRequest(new JobUndeployResponse(INVALID_ID, host, jobId));
      }
      try {
        model.undeployJob(host, jobId, token);
        return new JobUndeployResponse(OK, host, jobId);
      } catch (HostNotFoundException e) {
        throw notFound(new JobUndeployResponse(HOST_NOT_FOUND, host, jobId));
      } catch (JobNotDeployedException e) {
        throw notFound(new JobUndeployResponse(JOB_NOT_FOUND, host, jobId));
      } catch (TokenVerificationException e) {
        throw forbidden(new JobUndeployResponse(FORBIDDEN, host, jobId));
      }
    }
docs: Causes the job identified by its {@link JobId} to be undeployed from the specified host.
  This call will fail if the host is not found or the job is not deployed on the host.
  
  @param host  The host to undeploy from.
  @param jobId The job to undeploy.
  @param token The authorization token.
  
  @return The response.