# Jobs

Types:

```python
from nemo_platform.types.jobs import (
    ComputeResourceSpec,
    ComputeResources,
    ContainerSpec,
    CPUExecutionProvider,
    CPUExecutionProviderParam,
    CreatePlatformJobRequest,
    DistributedGPUExecutionProvider,
    DistributedGPUExecutionProviderParam,
    DockerJobExecutionProfile,
    DockerJobExecutionProfileConfig,
    DockerJobNetworkConfig,
    DockerJobStorageConfig,
    DockerVolumeMount,
    E2EJobExecutionProfile,
    GPUExecutionProvider,
    GPUExecutionProviderParam,
    ImagePullSecret,
    JobExecutionProfileConfig,
    KubernetesEmptyDirVolume,
    KubernetesJobExecutionProfile,
    KubernetesJobExecutionProfileConfig,
    KubernetesJobStorageConfig,
    KubernetesObjectMetadata,
    KubernetesPersistentVolumeClaim,
    KubernetesVolume,
    KubernetesVolumeMount,
    PlatformJobEnvironmentVariable,
    PlatformJobResponse,
    PlatformJobResponsesPage,
    PlatformJobSecretEnvironmentVariableRef,
    PlatformJobSortField,
    PlatformJobSpec,
    PlatformJobSpecParam,
    PlatformJobStepSpec,
    PlatformJobStepSpecParam,
    PlatformJobsListFilter,
    StepLifecycle,
    SubprocessExecutionProvider,
    SubprocessJobExecutionProfile,
    SubprocessJobExecutionProfileConfig,
    VolcanoJobExecutionProfile,
    VolcanoJobExecutionProfileConfig,
    JobListExecutionProfilesResponse,
)
```

Methods:

- client.jobs.create(\*, workspace, \*\*params) -> PlatformJobResponse
- client.jobs.retrieve(name, \*, workspace) -> PlatformJobResponse
- client.jobs.list(\*, workspace, \*\*params) -> SyncDefaultPagination[PlatformJobResponse]
- client.jobs.delete(name, \*, workspace) -> None
- client.jobs.cancel(name, \*, workspace) -> PlatformJobResponse
- client.jobs.get_logs(name, \*, workspace, \*\*params) -> SyncLogsPagination[PlatformJobLog]
- client.jobs.get_status(name, \*, workspace) -> PlatformJobStatusResponse
- client.jobs.list_execution_profiles() -> JobListExecutionProfilesResponse
- client.jobs.pause(name, \*, workspace) -> PlatformJobResponse
- client.jobs.resume(name, \*, workspace) -> PlatformJobResponse
- client.jobs.update_status_details(name, \*, workspace, \*\*params) -> object

## Results

Types:

```python
from nemo_platform.types.jobs import PlatformJobResultCreateRequest
```

Methods:

- client.jobs.results.create(name, \*, workspace, job, \*\*params) -> PlatformJobResultResponse
- client.jobs.results.retrieve(name, \*, workspace, job) -> PlatformJobResultResponse
- client.jobs.results.list(name, \*, workspace, \*\*params) -> PlatformJobListResultResponse
- client.jobs.results.download(name, \*, workspace, job) -> BinaryAPIResponse

## Steps

Types:

```python
from nemo_platform.types.jobs import (
    PlatformJobStatusUpdateRequest,
    PlatformJobStep,
    PlatformJobStepWithContext,
    PlatformJobStepWithContextsPage,
    PlatformJobStepsListFilter,
)
```

Methods:

- client.jobs.steps.retrieve(name, \*, workspace, job) -> PlatformJobStep
- client.jobs.steps.list(name, \*, workspace, \*\*params) -> SyncDefaultPagination[PlatformJobStepWithContext]
- client.jobs.steps.update_status(name, \*, workspace, job, \*\*params) -> PlatformJobStep

## Tasks

Types:

```python
from nemo_platform.types.jobs import (
    PlatformJobListTaskResponse,
    PlatformJobTask,
    PlatformJobTaskUpdate,
)
```

Methods:

- client.jobs.tasks.retrieve(name, \*, workspace, job, step) -> PlatformJobTask
- client.jobs.tasks.list(name, \*, workspace, job) -> PlatformJobListTaskResponse
- client.jobs.tasks.create_or_update(name, \*, workspace, job, step, \*\*params) -> PlatformJobTask
