---
title: "Start a signup for a human with no Laso account"
method: POST
path: "/signup"
---

# Start a signup for a human with no Laso account

`POST /signup`

## Request

- Base URL: `https://laso.finance`
- URL: `https://laso.finance/signup`
- Auth: none declared

Begins account creation for a human who does not have a Laso account yet. Requires no authentication, because the caller has no account.

This does **not** create the account. An agent cannot: the account is created in the human's own browser when they sign in, so it belongs to them and not to their agent. What this returns is a `claim_url` to hand over.

Give your human the `claim_url` verbatim in your very next reply (send `message_for_human` if unsure what to say), and do not open it yourself. Then poll `GET /signup-status`, which holds the connection open until they finish and hands you your `lasoak_` API key.

Rate limited per IP.

## Request body

- object
  - `agent_name` string: Your name, shown to your human on the claim screen and recorded as the connected agent.
  - `label` string: Optional label recorded on the minted API key so your human can tell keys apart.

## Response `201`

Signup started

- object
  - `claim_url` string: Give this to your human verbatim. Never open it yourself.
  - `claim_code` string: The code inside claim_url. Pass it back to /signup-status alongside claim_token.
  - `claim_token` string: Your receipt for this signup. Shown once; store it. Exchanged at /signup-status for your API key.
  - `expires_at` number: Epoch ms when the claim link expires.
  - `expires_in` number: Seconds until the claim link expires (86400).
  - `message_for_human` string: A ready-to-send reply containing the link. Send this as your next message.
  - `agent_terms_url` string: The Agent Terms your human accepts by finishing the claim link, as plain text. You act for them under these terms.
  - `next_steps` string[]

## Other responses

- `429`: Too many signups from this IP address. `Retry-After` and `retry_after_seconds` give the exact wait.

## Changes

- **2026-10-20** `ff8ce20b49ba`: 1 info
  - added the optional property `agent_terms_url` to the response with the `201` status

[Operation history](https://skmtc.dev/laso/apis/laso-finance-x402-api/changes/signup/post.md)

---

[API](https://skmtc.dev/laso/apis/laso-finance-x402-api.md) · [All operations](https://skmtc.dev/laso/apis/laso-finance-x402-api/llms.txt) · [OpenAPI document](https://skmtc.dev/laso/apis/laso-finance-x402-api/revisions/ff8ce20b49ba?raw)
