---
title: "Retrieve Evaluator Revision"
method: POST
path: "/evaluators/revisions/retrieve"
tags: ["Evaluators"]
---

# Retrieve Evaluator Revision

`POST /evaluators/revisions/retrieve`

Retrieve one evaluator revision, either directly or via an environment key.

Provide one of:
an evaluator / variant / revision reference (returns that
revision, or the latest revision on the variant or evaluator),
or an environment reference plus `key` (returns the revision
currently pinned to that key). Supplying both forms returns 400.
Pass `resolve=true` to expand embedded references on the
returned payload.

## Request body

- EvaluatorRevisionRetrieveRequest — Body for retrieving one revision, either by direct reference or through an environment key. Provide an evaluator / variant / revision reference, an environment reference (with `key` derived from the evaluator slug by default), or a combination of both. Every reference supplied must agree with the resolved revision; contradictions return HTTP 400.
  - `evaluator_ref` Reference
    - `version` string, nullable
    - `slug` string, nullable
    - `id` string, uuid, nullable
  - `evaluator_variant_ref` Reference
    - `version` string, nullable
    - `slug` string, nullable
    - `id` string, uuid, nullable
  - `evaluator_revision_ref` Reference
    - `version` string, nullable
    - `slug` string, nullable
    - `id` string, uuid, nullable
  - `environment_ref` Reference
    - `version` string, nullable
    - `slug` string, nullable
    - `id` string, uuid, nullable
  - `environment_variant_ref` Reference
    - `version` string, nullable
    - `slug` string, nullable
    - `id` string, uuid, nullable
  - `environment_revision_ref` Reference
    - `version` string, nullable
    - `slug` string, nullable
    - `id` string, uuid, nullable
  - `key` string, nullable — Named deployment key inside the environment revision. Required with environment refs.
  - `resolve` boolean, nullable — When true, resolve embedded references on the returned revision's `data`.

## Response `200`

Successful Response

- EvaluatorRevisionResponse — Envelope for a single evaluator revision.
  - `count` integer — 1 when a revision is returned, 0 otherwise.
  - `evaluator_revision` EvaluatorRevisionOutput
    - `evaluator_variant_slug` string, nullable
    - `workflow_variant_slug` string, nullable
    - `evaluator_slug` string, nullable
    - `workflow_slug` string, nullable
    - `evaluator_variant_id` string, uuid, nullable
    - `workflow_variant_id` string, uuid, nullable
    - `evaluator_id` string, uuid, nullable
    - `workflow_id` string, uuid, nullable
    - `variant_slug` string, nullable
    - `artifact_slug` string, nullable
    - `variant_id` string, uuid, nullable
    - `artifact_id` string, uuid, nullable
    - `author` string, uuid, nullable
    - `date` string, date-time, nullable
    - `message` string, nullable
    - `flags` EvaluatorRevisionFlags
      - `is_application` boolean
      - `is_evaluator` boolean
      - `is_snippet` boolean
      - `is_managed` boolean
      - `is_custom` boolean
      - `is_llm` boolean
      - `is_hook` boolean
      - `is_code` boolean
      - `is_match` boolean
      - `is_feedback` boolean
      - `is_agent` boolean
      - `is_skill` boolean
      - `is_chat` boolean
      - `has_url` boolean
      - `has_script` boolean
      - `has_handler` boolean
      - `is_static` boolean
    - `tags` object, nullable
    - `meta` object, nullable
    - `name` string, nullable
    - `description` string, nullable
    - `created_at` string, date-time, nullable
    - `updated_at` string, date-time, nullable
    - `deleted_at` string, date-time, nullable
    - `created_by_id` string, uuid, nullable
    - `updated_by_id` string, uuid, nullable
    - `deleted_by_id` string, uuid, nullable
    - `version` string, nullable
    - `slug` string, nullable
    - `id` string, uuid, nullable
    - `data` EvaluatorRevisionDataOutput
      - `uri` string, nullable
      - `url` string, nullable
      - `headers` object, nullable
      - `runtime` 'python' | 'typescript' | 'javascript', nullable
      - `script` string, nullable
      - `schemas` JsonSchemasOutput
        - `parameters` object, nullable
        - `inputs` object, nullable
        - `outputs` object, nullable
      - `parameters` object, nullable
  - `resolution_info` ResolutionInfo
    - `references_used` object[], required
    - `depth_reached` integer, required
    - `embeds_resolved` integer, required
    - `errors` string[]
  - `retrieval_info` RetrievalInfo — References actually used to retrieve a revision. For direct retrievals, `references` carries the artifact / variant / revision that was fetched. For environment-backed retrievals, it additionally carries the environment + environment_variant + environment_revision used to look the target up, and `selector` is {the key: path} map inside the environment's references map that selected the target.
    - `references` object
    - `selector` object, nullable

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/agenta-ai/apis/agenta-api.md) · [All operations](https://skmtc.net/agenta-ai/apis/agenta-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/agenta-ai/agenta-api/versions/ea6421d829f1/schema)
