# Jobs
URL: https://docs.datarobot.com/en/docs/api/reference/sdk/jobs.html

# Job

### class datarobot.models.Job

Tracks asynchronous work being done within a project

- Variables:

#### classmethod get(project_id, job_id)

Fetches one job.

- Parameters:
- Returns: job – The job
- Return type: Job
- Raises: AsyncFailureError – Querying this resource gave a status code other than 200 or 303

#### cancel()

Cancel this job. If this job has not finished running, it will be
removed and canceled.

#### get_result(params=None)

- Parameters: params ( dict or None ) – Query parameters to be added to request to get results.

> [!NOTE] Notes
> For featureEffects, source param is required to define source,
> otherwise the default is training.

- Returns:result– Return type depends on the job type
: - for model jobs, a Model is returned
  - for predict jobs, a pandas.DataFrame (with predictions) is returned
  - for featureImpact jobs, a list of dicts by default (seewith_metadataparameter of theFeatureImpactJobclass and itsget()method).
  - for primeRulesets jobs, a list of Rulesets
  - for primeModel jobs, a PrimeModel
  - for primeDownloadValidation jobs, a PrimeFile
  - for predictionExplanationInitialization jobs, a PredictionExplanationsInitialization
  - for predictionExplanations jobs, a PredictionExplanations
  - for featureEffects, a FeatureEffects.
*Return type:object*Raises:*JobNotFinished– If the job is not finished, the result is not available.
*AsyncProcessUnsuccessfulError– If the job errored or was aborted

#### get_result_when_complete(max_wait=600, params=None)

- Parameters:
- Returns: result – Return type is the same as would be returned by Job.get_result.
- Return type: object
- Raises:

#### refresh()

Update this object with the latest job data from the server.

#### wait_for_completion(max_wait=600)

Waits for job to complete.

- Parameters: max_wait ( Optional[int] ) – How long to wait for the job to finish.
- Return type: None

### class datarobot.models.TrainingPredictionsJob

#### classmethod get(project_id, job_id, model_id=None, data_subset=None)

Fetches one training predictions job.

The resulting [TrainingPredictions](https://docs.datarobot.com/en/docs/api/reference/sdk/training_predictions.html#datarobot.models.training_predictions.TrainingPredictions) object will be annotated with model_id and data_subset.

- Parameters:
- Returns: job – The job
- Return type: TrainingPredictionsJob

#### refresh()

Update this object with the latest job data from the server.

#### cancel()

Cancel this job. If this job has not finished running, it will be
removed and canceled.

#### get_result(params=None)

- Parameters: params ( dict or None ) – Query parameters to be added to request to get results.

> [!NOTE] Notes
> For featureEffects, source param is required to define source,
> otherwise the default is training.

- Returns:result– Return type depends on the job type
: - for model jobs, a Model is returned
  - for predict jobs, a pandas.DataFrame (with predictions) is returned
  - for featureImpact jobs, a list of dicts by default (seewith_metadataparameter of theFeatureImpactJobclass and itsget()method).
  - for primeRulesets jobs, a list of Rulesets
  - for primeModel jobs, a PrimeModel
  - for primeDownloadValidation jobs, a PrimeFile
  - for predictionExplanationInitialization jobs, a PredictionExplanationsInitialization
  - for predictionExplanations jobs, a PredictionExplanations
  - for featureEffects, a FeatureEffects.
*Return type:object*Raises:*JobNotFinished– If the job is not finished, the result is not available.
*AsyncProcessUnsuccessfulError– If the job errored or was aborted

#### get_result_when_complete(max_wait=600, params=None)

- Parameters:
- Returns: result – Return type is the same as would be returned by Job.get_result.
- Return type: object
- Raises:

#### wait_for_completion(max_wait=600)

Waits for job to complete.

- Parameters: max_wait ( Optional[int] ) – How long to wait for the job to finish.
- Return type: None

### class datarobot.models.ShapMatrixJob

#### classmethod get(project_id, job_id, model_id=None, dataset_id=None)

Fetches one SHAP matrix job.

- Parameters:
- Returns: job – The job
- Return type: ShapMatrixJob
- Raises: AsyncFailureError – Querying this resource gave a status code other than 200 or 303

#### refresh()

Update this object with the latest job data from the server.

- Return type: None

#### cancel()

Cancel this job. If this job has not finished running, it will be
removed and canceled.

#### get_result(params=None)

- Parameters: params ( dict or None ) – Query parameters to be added to request to get results.

> [!NOTE] Notes
> For featureEffects, source param is required to define source,
> otherwise the default is training.

- Returns:result– Return type depends on the job type
: - for model jobs, a Model is returned
  - for predict jobs, a pandas.DataFrame (with predictions) is returned
  - for featureImpact jobs, a list of dicts by default (seewith_metadataparameter of theFeatureImpactJobclass and itsget()method).
  - for primeRulesets jobs, a list of Rulesets
  - for primeModel jobs, a PrimeModel
  - for primeDownloadValidation jobs, a PrimeFile
  - for predictionExplanationInitialization jobs, a PredictionExplanationsInitialization
  - for predictionExplanations jobs, a PredictionExplanations
  - for featureEffects, a FeatureEffects.
*Return type:object*Raises:*JobNotFinished– If the job is not finished, the result is not available.
*AsyncProcessUnsuccessfulError– If the job errored or was aborted

#### get_result_when_complete(max_wait=600, params=None)

- Parameters:
- Returns: result – Return type is the same as would be returned by Job.get_result.
- Return type: object
- Raises:

#### wait_for_completion(max_wait=600)

Waits for job to complete.

- Parameters: max_wait ( Optional[int] ) – How long to wait for the job to finish.
- Return type: None

### class datarobot.models.FeatureImpactJob

Custom Feature Impact job to handle different return value structures.

The original implementation had just the the data and the new one also includes some metadata.

In general, we aim to keep the number of Job classes low by just utilizing the job_type
attribute to control any specific formatting; however in this case when we needed to support
a new representation with the _same_ job_type, customizing the behavior of
_make_result_from_location allowed us to achieve our ends without complicating the
_make_result_from_json method.

#### classmethod get(project_id, job_id, with_metadata=False)

Fetches one job.

- Parameters:
- Returns: job – The job
- Return type: Job
- Raises: AsyncFailureError – Querying this resource gave a status code other than 200 or 303

#### cancel()

Cancel this job. If this job has not finished running, it will be
removed and canceled.

#### get_result(params=None)

- Parameters: params ( dict or None ) – Query parameters to be added to request to get results.

> [!NOTE] Notes
> For featureEffects, source param is required to define source,
> otherwise the default is training.

- Returns:result– Return type depends on the job type
: - for model jobs, a Model is returned
  - for predict jobs, a pandas.DataFrame (with predictions) is returned
  - for featureImpact jobs, a list of dicts by default (seewith_metadataparameter of theFeatureImpactJobclass and itsget()method).
  - for primeRulesets jobs, a list of Rulesets
  - for primeModel jobs, a PrimeModel
  - for primeDownloadValidation jobs, a PrimeFile
  - for predictionExplanationInitialization jobs, a PredictionExplanationsInitialization
  - for predictionExplanations jobs, a PredictionExplanations
  - for featureEffects, a FeatureEffects.
*Return type:object*Raises:*JobNotFinished– If the job is not finished, the result is not available.
*AsyncProcessUnsuccessfulError– If the job errored or was aborted

#### get_result_when_complete(max_wait=600, params=None)

- Parameters:
- Returns: result – Return type is the same as would be returned by Job.get_result.
- Return type: object
- Raises:

#### refresh()

Update this object with the latest job data from the server.

#### wait_for_completion(max_wait=600)

Waits for job to complete.

- Parameters: max_wait ( Optional[int] ) – How long to wait for the job to finish.
- Return type: None

---
