---
title: "Poll for the evaluation result"
method: GET
path: "/v1/quality-evaluations/{job_id}"
tags: ["QualityEvaluation"]
---

# Poll for the evaluation result

`GET /v1/quality-evaluations/{job_id}`

## Request

- Base URL: `https://api.deepl.com`
- URL: `https://api.deepl.com/v1/quality-evaluations/{job_id}`
- Auth: API key in header `Authorization`

Returns the current state of a quality evaluation. While the evaluation is in progress the response carries only status information; once it completes, the response carries the full report.

Evaluations are requested with `enable_quality_evaluation` on [`POST /v2/document`](/api-reference/document/upload-and-translate-a-document). There is no public endpoint for starting one.

## Path parameters

- `job_id` string, required

## Response `200`

Polling result. The response shape depends on the `status` field. `done` carries the full report; `error` carries error details.

- union
  - QualityEvaluationDone
    - `job_id` string, required
    - `status` 'done', required
    - `segments` QualityEvaluationSegment[], required: One entry per evaluated segment of the document, in reading order.
      - `segment_index` integer, required: Zero-based index of this segment within the document, in reading order.
      - `segment_score` number, float, required: Quality score for this segment, where 0 is lowest and 100 is highest.
      - `source` string: The segment's source text as the evaluation read it. `source_spans` are offsets into this text. Omitted when the text is unavailable. See [Segment text](/api-reference/quality-evaluations/poll#segment-text).
      - `target` string: The segment's translated text as the evaluation read it. `target_spans` are offsets into this text. Omitted when the text is unavailable. See [Segment text](/api-reference/quality-evaluations/poll#segment-text).
      - `applied_glossary_term_pairs` QualityEvaluationAppliedGlossaryTermPair[]: Glossary term pairs applied to this segment when the document was translated, so you can tell which customizations were in play where an issue was reported. Omitted when no term pair was applied.
        - `source_term` string, required: The source term, as defined in the glossary.
        - `target_term` string, required: The target term, as applied to the translation.
        - `ranges` QualityEvaluationSpan[], required: Spans in `target` where the target term was applied, using the same convention as `source_spans` and `target_spans`. See [Span ranges](/api-reference/quality-evaluations/poll#span-ranges).
          - `start` integer, required: Inclusive start index. A 0-based Unicode code-point offset.
          - `end` integer, required: Exclusive end index. A 0-based Unicode code-point offset.
      - `errors` QualityEvaluationIssue[], required: Quality issues identified in this segment. Empty if no issues were found.
        - `type` 'Accuracy' | 'Fluency' | 'Style' | 'Miscellaneous' | 'InternalTQEError', required: Top-level category of the issue. See [Type and sub-type values](/api-reference/quality-evaluations/poll#type-and-sub-type-values).
        - `sub_type` 'Addition' | 'Omission' | 'Mistranslation' | 'Over-translation' | 'Under-translation' | 'Untranslated text' | 'Punctuation' | 'Spelling' | 'Grammar' | 'Grammatical register' | 'Inconsistency' | 'Character encoding' | 'Awkward' | 'Inconsistent style' | 'SegmentTooLarge', required: Finer-grained category within `type`. See [Type and sub-type values](/api-reference/quality-evaluations/poll#type-and-sub-type-values).
        - `severity` 'Critical' | 'Major' | 'Minor', required: How serious the issue is. See [Severity values](/api-reference/quality-evaluations/poll#severity-values).
        - `explanation` string, required: Description of the issue. May span multiple sentences.
        - `source_spans` QualityEvaluationSpan[], required: Spans on the segment's source text where this issue applies. Empty if no source-side highlight. See [Span ranges](/api-reference/quality-evaluations/poll#span-ranges).
          - `start` integer, required: Inclusive start index. A 0-based Unicode code-point offset.
          - `end` integer, required: Exclusive end index. A 0-based Unicode code-point offset.
        - `target_spans` QualityEvaluationSpan[], required: Spans on the segment's target text where this issue applies. Empty if no target-side highlight. See [Span ranges](/api-reference/quality-evaluations/poll#span-ranges).
          - `start` integer, required: Inclusive start index. A 0-based Unicode code-point offset.
          - `end` integer, required: Exclusive end index. A 0-based Unicode code-point offset.
  - QualityEvaluationFailed
    - `job_id` string, required
    - `status` 'error', required
    - `error` object, required
      - `code` string, required: Machine-readable error code. Currently always `evaluation_failed`.
      - `message` string, required: Error message.

## Other responses

- `202`: The evaluation is still running. Continue polling after the time suggested by the `Retry-After` header.
- `400`: The `job_id` is not a well-formed identifier.
- `404`: No evaluation exists for this `job_id`, it belongs to another account, or it has expired. See [Report retention](/api-reference/quality-evaluations/poll#report-retention).
- `429`: Too many requests. Please wait and resend your request.

## Changes

- **2026-11-03** `c7c91cfac5c0`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/deepl/apis/deepl-api-documentation/changes/v1/quality-evaluations/:job_id/get.md)

---

[API](https://skmtc.dev/deepl/apis/deepl-api-documentation.md) - [All operations](https://skmtc.dev/deepl/apis/deepl-api-documentation/llms.txt) - [OpenAPI document](https://skmtc.dev/deepl/apis/deepl-api-documentation/revisions/c7c91cfac5c0?raw)
