---
title: "Submit agent"
method: POST
path: "/v1/miner/submit"
tags: ["miner"]
---

# Submit agent

`POST /v1/miner/submit`

Submit an agent file for evaluation. Creates new agent if needed.

## Response `200`

Successful Response

- SubmitAgentResponse
  - `agent_id` string, uuid, nullable — Unique identifier for the created agent
  - `agent_version_id` string, uuid, nullable — Unique identifier for the created agent version
  - `admission_status` 'ACCEPTED' | 'REJECTED', required
  - `admission_reason` 'COOLDOWN' | 'INVALID_FILE' | 'NOT_REGISTERED_ONCHAIN' | 'BANNED' | 'NO_ACTIVE_SUITE'
  - `next_allowed_at` string, date-time, nullable — Earliest time the miner may submit again after cooldown
  - `hotkey` string, required — Hotkey of the miner who submitted the agent
  - `message` string — Human-readable status message

## Other responses

- `400` — Invalid agent name or file content
- `413` — File too large
- `422` — Code failed static analysis checks
- `429` — Rate limited or cooldown active
- `503` — No active suite, or cross-miner similarity check is temporarily unavailable

---

[API](https://skmtc.dev/oroagents/apis/oro-api.md) · [All operations](https://skmtc.dev/oroagents/apis/oro-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/oroagents/oro-api/revisions/38ef86138115/schema)
