What jobs are
A job connects a source (sourceId) to a destination (destinationId) and applies a format that controls how incoming data is converted before writing to CDF. The format is required and can be a built-in type (cognite, rockwell, value, sparkplug) or custom, which references a mapping by mappingId.
A mapping is required only when you use the
custom format.Job lifecycle
- Create: Specify a source, destination, format, and any source-specific config (such as a topic filter for MQTT or a path and interval for REST).
- Monitor: Check the job’s
statusfield, which reflects its current observed state (for example,running,connected,connection_error,transform_error). See Hosted extractors overview — Jobs for the full list of states and what each one means. - Update: Modify the source, destination, format, source-specific config, or set
targetStatustorunningorpausedto start or pause the job. - Delete: Remove the job when extraction is no longer required.
Use job logs and metrics to detect failures, diagnose connectivity issues, and ensure data is flowing correctly.
Monitoring extraction
The API provides endpoints to retrieve job logs and metrics. Use these to identify errors and troubleshoot problems with sources or destinations.Dead letter queue
The dead letter queue (DLQ) holds messages a job failed to transform. CDF stores them in CDF RAW. To use it, setdlqEnabled to true in the update jobs request. dlqEnabled is false by default.
GET /hostedextractors/jobs/dlq lists the DLQ messages for a job. It requires hostedExtractors:READ and rawAcl:READ, because the request reads the messages with the caller’s credentials.
- If the DLQ isn’t enabled for the job, the request fails with status 400 and the message
DLQ is not enabled for job '<externalId>'. - If the job doesn’t exist, the request returns 404.
- If RAW rejects the request, the 401 or 403 status passes through to the caller.
- Errors from the underlying storage return 400 (for example, an invalid cursor), 429 (rate limited), 502 (storage unavailable), or 504 (storage timed out).