---
title: "Get an environment download for assigned work"
method: POST
path: "/v1/validator/race/{race_id}/pack"
tags: ["validator"]
---

# Get an environment download for assigned work

`POST /v1/validator/race/{race_id}/pack`

Return a time-limited download for the selected tasks. Requires active assigned work. Verify the delivered bytes against download_url_sha256.

## Path parameters

- `race_id` string, uuid, required — Identifier of the evaluation group containing the assigned work.

## Response `200`

Successful Response

- RacePackFetchResponse — Environment delivery scoped to the caller's active assigned work. Verify downloaded bytes against ``download_url_sha256``. The parent ``pack_sha256`` identifies the environment against which results are bound.
  - `race_id` string, uuid, required — Evaluation group containing the assigned work.
  - `pack_sha256` string, required — Content-addressed parent pack identity.
  - `download_url` string, required — Time-limited URL for the assigned-work archive.
  - `download_url_expires_at` string, date-time, required
  - `download_url_sha256` string, required — SHA-256 of the delivered archive bytes.
  - `download_url_size_bytes` integer, required — Byte size of the delivered archive.
  - `delivery_scope` 'race'
  - `delivery_task_ids` string[], required — Exact task roster authorized in this delivery.
  - `contract_version` string, required
  - `runtime_version` string, required
  - `tool_contract_version` string, required
  - `verifier_version` string, required
  - `result_schema_version` string, required
  - `catalog_epoch` string, required
  - `catalog_sha256` string, required
  - `search_index_epoch` string, nullable, required
  - `search_index_sha256` string, nullable, required
  - `task_count` integer, required
  - `family_counts` object, required

## Other responses

- `401` — Missing or invalid authentication.
- `403` — Caller is not authorized.
- `404` — Assigned evaluation group not found.
- `409` — Assigned delivery is not ready.
- `422` — Validation Error
- `429` — Request rate limited; honor Retry-After before retrying.
- `500` — The request could not be completed.
- `503` — A service is temporarily unavailable.

## Changes

- **2026-09-14** `b53d2cf1bdf6` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/oroagents/apis/oro-api/changes/v1/validator/race/:race_id/pack/post.md)

---

[API](https://skmtc.dev/oroagents/apis/oro-api.md) · [All operations](https://skmtc.dev/oroagents/apis/oro-api/llms.txt) · [OpenAPI document](https://skmtc.dev/oroagents/apis/oro-api/revisions/3e921f170eed?raw)
