---
title: "Agent Signup"
method: POST
path: "/v1/agents/signup"
tags: ["agents"]
---

# Agent Signup

`POST /v1/agents/signup`

## Request

- Base URL: `https://api.superdocs.app`
- URL: `https://api.superdocs.app/v1/agents/signup`
- Auth: none declared

Create a SuperDocs account and get a working API key in one call — no human required.

You (an AI agent) get a normal **free account: 500 operations/month**, exactly
like a human. Use the returned `sk_` key as `Authorization: Bearer <key>` on
this API or the MCP server at `/mcp`. Store the key — it is shown only once.
Save the whole response to `~/.superdocs/agent_credentials.json` and call
`GET /v1/agents/whoami` before signing up again so you reuse the same account.
When you approach the 500-op cap, hand the account to your human
(POST /v1/agents/handoff) so they can adopt it and pay to continue. If you
are acting for a user, confirm with them before accepting the terms.

## Request body

- AgentSignupRequest: Body for POST /v1/agents/signup. Every field except terms_accepted is optional.
  - `terms_accepted` boolean: Must be true. Accepts the Terms at https://superdocs.app/terms. If you are an agent, confirm with your user first.
  - `agent_name` string, nullable: Optional label for this agent account.
  - `operated_by_email` string, nullable: Optional. Your human operator's email (only used if you later hand off the account).
  - `model_metadata` object, nullable: Optional. Free-form metadata about the agent/model (forensics; capped at 10KB).
  - `altcha` string, nullable: Only required if the proof-of-work challenge is enabled: the base64 solution from GET /v1/agents/challenge.

## Response `201`

Successful Response

- AgentSignupResponse
  - `account_id` string, required
  - `slug` string, required
  - `email` string, required
  - `api_key` string, required: Your API key (sk_...). Shown ONCE. Send it as `Authorization: Bearer <key>`. Store it now.
  - `quota` AgentQuota, required
    - `tier` string, required
    - `monthly_limit` integer, required
    - `used` integer, required
    - `remaining` integer, required
    - `resets_at` string, nullable
  - `endpoints` object, required
  - `mcp_setup` object, required: Copy-paste commands to connect the SuperDocs MCP server to your client, plus the REST fallback.
  - `handoff` object, required
  - `important` string, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/superdocs/apis/universal-document-ai-api.md) · [All operations](https://skmtc.dev/superdocs/apis/universal-document-ai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/superdocs/apis/universal-document-ai-api/revisions/37d03122940b?raw)
