REST Resource: projects.locations.jobs

Resource: Job

Defines a job to be run by the Cloud Dataflow service. Do not enter confidential information when you supply string values using the API.

JSON representation
{
  "id": string,
  "projectId": string,
  "name": string,
  "type": enum (JobType),
  "environment": {
    object (Environment)
  },
  "steps": [
    {
      object (Step)
    }
  ],
  "stepsLocation": string,
  "currentState": enum (JobState),
  "currentStateTime": string,
  "requestedState": enum (JobState),
  "executionInfo": {
    object (JobExecutionInfo)
  },
  "createTime": string,
  "replaceJobId": string,
  "transformNameMapping": {
    string: string,
    ...
  },
  "clientRequestId": string,
  "replacedByJobId": string,
  "tempFiles": [
    string
  ],
  "labels": {
    string: string,
    ...
  },
  "location": string,
  "pipelineDescription": {
    object (PipelineDescription)
  },
  "stageStates": [
    {
      object (ExecutionStageState)
    }
  ],
  "jobMetadata": {
    object (JobMetadata)
  },
  "startTime": string,
  "createdFromSnapshotId": string,
  "satisfiesPzs": boolean,
  "satisfiesPzi": boolean,
  "runtimeUpdatableParams": {
    object (RuntimeUpdatableParams)
  }
}
Fields
id

string

The unique ID of this job.

This field is set by the Dataflow service when the job is created, and is immutable for the life of the job.

projectId

string

The ID of the Google Cloud project that the job belongs to.

name

string

The user-specified Dataflow job name.

Only one active job with a given name can exist in a project within one region at any given time. Jobs in different regions can have the same name. If a caller attempts to create a job with the same name as an active job that already exists, the attempt returns the existing job.

The name must match the regular expression [a-z]([-a-z0-9]{0,1022}[a-z0-9])?

type

enum (JobType)

The type of Dataflow job.

environment

object (Environment)

The environment for the job.

steps[]

object (Step)

Exactly one of step or stepsLocation should be specified.

The top-level steps that constitute the entire job. Only retrieved with JOB_VIEW_ALL.

stepsLocation

string

The Cloud Storage location where the steps are stored.

currentState

enum (JobState)

The current state of the job.

Jobs are created in the JOB_STATE_STOPPED state unless otherwise specified.

A job in the JOB_STATE_RUNNING state may asynchronously enter a terminal state. After a job has reached a terminal state, no further state updates may be made.

This field might be mutated by the Dataflow service; callers cannot mutate it.

currentStateTime

string (Timestamp format)

The timestamp associated with the current state.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

requestedState

enum (JobState)

The job's requested state. Applies to jobs.update requests.

Set requestedState with jobs.update requests to switch between the states JOB_STATE_STOPPED and JOB_STATE_RUNNING. You can also use jobs.update requests to change a job's state from JOB_STATE_RUNNING to JOB_STATE_CANCELLED, JOB_STATE_DONE, or JOB_STATE_DRAINED. These states irrevocably terminate the job if it hasn't already reached a terminal state.

This field has no effect on jobs.create requests.

executionInfo

object (JobExecutionInfo)

Deprecated.

createTime

string (Timestamp format)

The timestamp when the job was initially created. Immutable and set by the Cloud Dataflow service.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

replaceJobId

string

If this job is an update of an existing job, this field is the job ID of the job it replaced.

When sending a CreateJobRequest, you can update a job by specifying it here. The job named here is stopped, and its intermediate state is transferred to this job.

transformNameMapping

map (key: string, value: string)

The map of transform name prefixes of the job to be replaced to the corresponding name prefixes of the new job.

clientRequestId

string

The client's unique identifier of the job, re-used across retried attempts. If this field is set, the service will ensure its uniqueness. The request to create a job will fail if the service has knowledge of a previously submitted job with the same client's ID and job name. The caller may use this field to ensure idempotence of job creation across retried attempts to create a job. By default, the field is empty and, in that case, the service ignores it.

replacedByJobId

string

If another job is an update of this job (and thus, this job is in JOB_STATE_UPDATED), this field contains the ID of that job.

tempFiles[]

string

A set of files the system should be aware of that are used for temporary storage. These temporary files will be removed on job completion. No duplicates are allowed. No file patterns are supported.

The supported files are:

Google Cloud Storage:

storage.googleapis.com/{bucket}/{object} bucket.storage.googleapis.com/{object}

labels

map (key: string, value: string)

User-defined labels for this job.

The labels map can contain no more than 64 entries. Entries of the labels map are UTF8 strings that comply with the following restrictions:

  • Keys must conform to regexp: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}
  • Values must conform to regexp: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
  • Both keys and values are additionally constrained to be <= 128 bytes in size.
location

string

The regional endpoint that contains this job.

pipelineDescription

object (PipelineDescription)

Preliminary field: The format of this data may change at any time. A description of the user pipeline and stages through which it is executed. Created by Cloud Dataflow service. Only retrieved with JOB_VIEW_DESCRIPTION or JOB_VIEW_ALL.

stageStates[]

object (ExecutionStageState)

This field may be mutated by the Cloud Dataflow service; callers cannot mutate it.

jobMetadata

object (JobMetadata)

This field is populated by the Dataflow service to support filtering jobs by the metadata values provided here. Populated for jobs.list and all jobs.get views SUMMARY and higher.

startTime

string (Timestamp format)

The timestamp when the job was started (transitioned to JOB_STATE_PENDING). Flexible resource scheduling jobs are started with some delay after job creation, so startTime is unset before start and is updated when the job is started by the Cloud Dataflow service. For other jobs, startTime always equals to createTime and is immutable and set by the Cloud Dataflow service.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

createdFromSnapshotId

string

If this is specified, the job's initial state is populated from the given snapshot.

satisfiesPzs

boolean

Reserved for future use. This field is set only in responses from the server; it is ignored if it is set in any requests.

satisfiesPzi

boolean

Output only. Reserved for future use. This field is set only in responses from the server; it is ignored if it is set in any requests.

runtimeUpdatableParams

object (RuntimeUpdatableParams)

This field may ONLY be modified at runtime using the projects.jobs.update method to adjust job behavior. This field has no effect when specified at job creation.

Methods

create

Creates a Cloud Dataflow job.

get

Gets the state of the specified Cloud Dataflow job.

getExecutionDetails

Request detailed information about the execution status of the job.

getMetrics

Request the job status.

list

List the jobs of a project.

snapshot

Snapshot the state of a streaming job.

update

Updates the state of an existing Cloud Dataflow job.