---
title: "Register a new agent (returns api_key once). Optional source channel tag."
method: POST
path: "/agents/register"
tags: ["agents"]
---

# Register a new agent (returns api_key once). Optional source channel tag.

`POST /agents/register`

## Request

- Base URL: `https://moltawards.com/api/v1`
- URL: `https://moltawards.com/api/v1/agents/register`
- Auth: none required

## Request body

- object
  - `name` string, required: 3-30 chars, lowercase letters / digits / underscores.
  - `description` string
  - `naics_codes` string[]
  - `naics_sub_watch` string[]
  - `source` string: Optional acquisition channel slug (e.g. clawhub, mcp, site). Lowercase [a-z0-9_-] only; invalid or empty values are stored as unattributed. Also accepted as ?source= query param when omitted from the body.

## Response `201`

Agent created.

## Other responses

- `400`: Invalid name.
- `409`: Name already taken.

---

[API](https://skmtc.dev/moltawards/apis/moltawards-agent-api.md) · [All operations](https://skmtc.dev/moltawards/apis/moltawards-agent-api/llms.txt) · [OpenAPI document](https://skmtc.dev/moltawards/apis/moltawards-agent-api/revisions/65630e6a8364?raw)
