> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cognite.com/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Cognite Data Fusion (CDF) is an industrial DataOps platform. Prefer English docs unless the user asks for another locale.
> Follow /_llms/ index links recursively until you reach page URLs ending in .md. Fetch those Markdown twins instead of HTML.
> For REST APIs, default to calendar version 20230101 (stable). Use 20230101-beta or 20230101-alpha only if the user is on a preview API. Cite paths under /api-reference/concepts/<version>/ and the Cdf-Version header. Prefer the Python SDK (cognite-sdk) unless the user is in JavaScript/TypeScript.
> Start here by task: platform overview /cdf/index.md; data modeling /cdf/dm/index.md; data integration /cdf/integration/index.md; access /cdf/access/index.md; CDF Toolkit /cdf/deploy/cdf_toolkit/index.md; REST quickstart /dev/quickstart.md; Python SDK https://cognite-sdk-python.readthedocs-hosted.com/en/stable/; Atlas AI /cdf/atlas_ai/concepts/index.md; Flows apps /cdf/flows/index.md; MCP and IDE setup /dev/guides/ide_ai_integration.md.
> For implementation work, also load /skill.md.

# Get Job DLQ Messages

> Lists dead letter queue messages for a job. Requires `hostedExtractors:READ` and `rawAcl:READ`. See [Dead letter queue](/api-reference/concepts/20230101/hosted-extractors-jobs#dead-letter-queue).



## OpenAPI

````yaml https://storage.googleapis.com/cognitedata-api-docs/dist/20230101-alpha.json get /hostedextractors/jobs/dlq
openapi: 3.1.0
info:
  title: Cognite API
  description: >-
    Reference documentation for the Cognite Data Fusion (CDF) API. See the [API
    introduction](/api-reference/concepts/20230101/api-description) and [API
    changelog](/api-reference/changelog).
  version: v1
  contact:
    name: Cognite Support
    url: https://support.cognite.com
    email: support@cognite.com
servers:
  - url: https://{cluster}.cognitedata.com/api/v1/projects/{project}
    description: The URL for the CDF cluster to connect to
    variables:
      cluster:
        enum:
          - api
          - az-tyo-gp-001
          - az-eastus-1
          - az-power-no-northeurope
          - westeurope-1
          - asia-northeast1-1
          - gc-dsm-gp-001
        default: api
        description: The CDF cluster to connect to
      project:
        default: publicdata
        description: The CDF project name.
security:
  - oidc-token:
      - https://{cluster}.cognitedata.com/.default
  - oauth2-client-credentials:
      - https://{cluster}.cognitedata.com/.default
  - oauth2-open-industrial-data:
      - https://api.cognitedata.com/.default
  - oauth2-auth-code:
      - https://{cluster}.cognitedata.com/.default
tags:
  - name: Token
  - name: Advanced joins
  - name: Assets
  - name: Data Modeling
    x-uri-format-fragments:
      - resource: Space
        uri-fragment: models/{space}
      - resource: Data Model
        uri-fragment: models/{space}/datamodel/{externalId}/{version}
      - resource: View
        uri-fragment: models/{space}/view/{externalId}/{version}
      - resource: Container
        uri-fragment: models/{space}/container/{externalId}
      - resource: Node
        uri-fragment: models/{space}/node/{externalId}
      - resource: Edge
        uri-fragment: models/{space}/edge/{externalId}
  - name: Streams
  - name: Records
  - name: Events
  - name: Files
  - name: Functions
  - name: Function calls
  - name: Function schedules
  - name: Function Apps
  - name: Function App Calls
  - name: Function App MCP
  - name: 3D
  - name: Time series
  - name: Data point subscriptions
  - name: Synthetic Time Series
  - name: Raw
    x-uri-format-fragments:
      - resource: Database
        uri-fragment: raw/{dbName}
      - resource: Table
        uri-fragment: raw/{dbName}/{tableName}
  - name: Groups
  - name: Projects
  - name: Security categories
  - name: Data sets
  - name: Limits
  - name: Metering
  - name: Sequences
  - name: Labels
  - name: Relationships
  - name: Entity matching
  - name: Entity matching pipelines
  - name: Diagram parsing
  - name: Vision
  - name: Agents
  - name: Skills
  - name: Project Configuration
  - name: Models
  - name: Chat Completions
  - name: Cognite AI
  - name: Documents
  - name: Document preview
    x-displayName: Preview
  - name: Geospatial
  - name: SessionsInternal
  - name: Sessions
  - name: Extraction Pipelines
  - name: Extraction Pipelines Runs
  - name: Extraction Pipelines Config
  - name: Extractors
  - name: Transformations
  - name: Transformation Jobs
  - name: Transformation Schedules
  - name: Transformation Notifications
  - name: Query
  - name: Schema
  - name: Transformation External Data Sources
  - name: Annotations
  - name: User profiles
  - name: Workflows
  - name: Workflow versions
  - name: Workflow executions
  - name: Tasks
  - name: Workflow triggers
  - name: Sources
  - name: Jobs
  - name: Destinations
  - name: Mappings
  - name: Previews
  - name: Postgres Gateway Users
  - name: Postgres Gateway Tables
  - name: SAP Instances
  - name: SAP Endpoints
  - name: Schema Mappings
  - name: Writeback Requests
  - name: Simulators
  - name: Simulator Integrations
  - name: Simulator Routines
  - name: Simulator Models
  - name: Simulation Runs
  - name: Simulator Logs
  - name: Units
  - name: Unit Systems
  - name: Application Data Storage
  - name: Location Filters
  - name: User Preferences
  - name: User History
  - name: Search Config
  - name: Organizations
  - name: Applications
  - name: Integrations
  - name: Integration Tasks
  - name: Integration Actions
  - name: Integration Configuration
  - name: Integration Errors
  - name: Principals
  - name: Signals
  - name: Data products
paths:
  /hostedextractors/jobs/dlq:
    get:
      tags:
        - Jobs
      summary: Get Job DLQ Messages
      description: >-
        Lists dead letter queue messages for a job. Requires
        `hostedExtractors:READ` and `rawAcl:READ`. See [Dead letter
        queue](/api-reference/concepts/20230101/hosted-extractors-jobs#dead-letter-queue).
      operationId: get_job_dlq_messages
      parameters:
        - in: query
          name: job
          required: true
          schema:
            type: string
            title: Job
          description: External ID of the job to return DLQ messages for.
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/Cursor'
        - in: query
          name: minLastUpdatedTime
          required: false
          schema:
            $ref: '#/components/schemas/EpochTimestamp'
          description: >-
            Only return messages last updated at or after this time, in
            milliseconds since epoch. Must not be greater than
            `maxLastUpdatedTime`.
        - in: query
          name: maxLastUpdatedTime
          required: false
          schema:
            $ref: '#/components/schemas/EpochTimestamp'
          description: >-
            Only return messages last updated at or before this time, in
            milliseconds since epoch.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Items_DlqMessage_'
          description: List of retrieved DLQ messages and an optional cursor.
        '400':
          $ref: '#/components/responses/400ErrorResponse'
          description: >-
            Response for a failed request. This includes the case where the dead
            letter queue is not enabled for the job.
        '422':
          $ref: '#/components/responses/ValidationError'
components:
  parameters:
    Limit:
      name: limit
      description: >-
        Limits the number of results to be returned. The maximum results
        returned by the server is 1000 even if you specify a higher limit.
      in: query
      schema:
        type: integer
        default: 100
        minimum: 1
        maximum: 1000
    Cursor:
      name: cursor
      description: >
        Cursor for paging through results. In general, if a response contains a
        `nextCursor`

        property, it means that there may be more results, and you should pass
        that value as the

        `cursor` parameter in the next request.


        Note that the cursor may or may not be encrypted, but either way, it is
        not intended to be

        decoded. Its internal structure is not a part of the public API, and may
        change without

        notice. You should treat it as an opaque string and not attempt to craft
        your own cursors.
      in: query
      schema:
        type: string
        example: 4zj0Vy2fo0NtNMb229mI9r1V3YG5NBL752kQz1cKtwo
  schemas:
    EpochTimestamp:
      description: >-
        The number of milliseconds since 00:00:00 Thursday, 1 January 1970,
        Coordinated Universal Time (UTC), minus leap seconds.
      type: integer
      minimum: 0
      format: int64
      example: 1730204346000
    Items_DlqMessage_:
      additionalProperties: false
      properties:
        items:
          items:
            $ref: '#/components/schemas/DlqMessage'
          title: Items
          type: array
        nextCursor:
          type: string
          title: Next cursor
          description: Cursor for pagination, present only when more messages exist.
      required:
        - items
      title: DlqMessageList
      type: object
    DlqMessage:
      additionalProperties: false
      properties:
        key:
          title: Key
          type: string
          description: The row key. Empty if the underlying row has no key.
        columns:
          title: Columns
          type: object
          properties:
            timestamp:
              type: string
              description: RFC 3339 time the failure was recorded.
            jobId:
              type: integer
              description: >-
                Internal numeric ID of the job, stored with the message. List
                messages with the `job` query parameter (the job external ID).
            mappingExternalId:
              type:
                - string
                - 'null'
              description: External ID of the mapping used by the job, if any.
            rawPayload:
              type:
                - string
                - 'null'
              description: Base64-encoded raw message payload.
            decodedPayload:
              type:
                - string
                - 'null'
              description: UTF-8 decoded payload when the raw bytes are valid UTF-8.
            error:
              type: string
              description: The error message describing the failure.
            errorCategory:
              type: string
              description: >-
                A stable snake_case category of the failure. Current values are
                `payload_deserialization`, `output_conversion`,
                `transform_expression`, `timestamp_format`, `number_conversion`,
                `data_type_conversion`, `missing_field`, `protobuf_decode`,
                `csv_parse`, `xml_parse`, `decompression`,
                `unsupported_configuration`, and `skip`. New categories may be
                added, so do not treat this list as exhaustive.
            metadata:
              type:
                - string
                - 'null'
              description: Source-specific context such as topic, offset, or partition.
          required:
            - timestamp
            - jobId
            - error
            - errorCategory
          additionalProperties: true
          description: >-
            The columns of the DLQ row, returned as stored. The API does not
            validate them, so other columns may be present.
      required:
        - key
        - columns
      title: DlqMessage
      type: object
    Error:
      type: object
      required:
        - code
        - message
      description: Cognite API error.
      properties:
        code:
          type: integer
          description: HTTP status code.
          format: int32
          example: 401
        message:
          type: string
          description: Error message.
          example: Could not authenticate.
        missing:
          type: array
          description: List of lookup objects that do not match any results.
          items:
            type: object
            additionalProperties: true
        duplicated:
          type: array
          description: List of objects that are not unique.
          items:
            type: object
            additionalProperties: true
    ValidationErrorContent:
      type: object
      required:
        - code
        - message
      description: Cognite API error.
      properties:
        code:
          type: integer
          description: HTTP status code.
          format: int32
          example: 422
        message:
          type: string
          description: Error message.
          example: 'Extra inputs are not permitted: type'
  responses:
    400ErrorResponse:
      description: The response for a bad request.
      content:
        application/json:
          schema:
            type: object
            required:
              - error
            properties:
              error:
                $ref: '#/components/schemas/Error'
          example:
            error:
              code: 400
              message: '`null` values aren''t allowed.'
    ValidationError:
      description: Validation Error
      content:
        application/json:
          schema:
            type: object
            required:
              - error
            properties:
              error:
                $ref: '#/components/schemas/ValidationErrorContent'
  securitySchemes:
    oidc-token:
      type: http
      scheme: bearer
      bearerFormat: OpenID Connect or OAuth2 token
      description: >-
        Access token issued by the CDF project's configured identity provider.
        Access token must be an OpenID Connect token, and the project must be
        configured to accept OpenID Connect tokens. Use a header key of
        'Authorization' with a value of 'Bearer $accesstoken'. The token can be
        obtained through any flow supported by the identity provider.
    oauth2-client-credentials:
      type: oauth2
      description: >-
        Access token issued by the CDF project's configured identity provider.
        Access token must be an OpenID Connect token, and the project must be
        configured to accept OpenID Connect tokens. Use a header key of
        'Authorization' with a value of 'Bearer $accesstoken'. The token can be
        obtained through any flow supported by the identity provider.
      flows:
        clientCredentials:
          tokenUrl: https://your-idps.token.url/
          scopes:
            default: https://{cluster}.cognitedata.com/.default
    oauth2-open-industrial-data:
      type: oauth2
      description: >-
        Auth flow for Open Industrial Data. Get your client secret from
        https://hub.cognite.com/open-industrial-data-211.
      flows:
        clientCredentials:
          tokenUrl: >-
            https://login.microsoftonline.com/48d5043c-cf70-4c49-881c-c638f5796997/oauth2/v2.0/token
          scopes:
            default: https://api.cognitedata.com/.default
    oauth2-auth-code:
      type: oauth2
      description: >-
        Access token issued by the CDF project's configured identity provider.
        Access token must be an OpenID Connect token, and the project must be
        configured to accept OpenID Connect tokens. Use a header key of
        'Authorization' with a value of 'Bearer $accesstoken'. The token can be
        obtained through any flow supported by the identity provider.
      flows:
        authorizationCode:
          authorizationUrl: https://your-idps.authorization.url/
          tokenUrl: https://your-idps.token.url/
          scopes:
            default: https://{cluster}.cognitedata.com/.default

````