---
title: "GET alias of POST /v1/signup/start — same handler, same validation, same JSON. Begin an agent-driven signup by passing the email in the query string; Bubbles emails a verification code and returns a signup_session. Per-IP throttled."
method: GET
path: "/v1/signup/start"
---

# GET alias of POST /v1/signup/start — same handler, same validation, same JSON. Begin an agent-driven signup by passing the email in the query string; Bubbles emails a verification code and returns a signup_session. Per-IP throttled.

`GET /v1/signup/start`

## Request

- Base URL: `https://api.usebubbles.com`
- URL: `https://api.usebubbles.com/v1/signup/start`
- Auth: none required

## Query parameters

- `email` string

## Response `200`

Success.

- SignupStartResponse: POST /v1/signup/start response — a verification code was emailed. The response is identical whether or not an account already exists (it never reveals whether the email is registered before the code is verified).
  - `next_step` 'verify', required: The next call to make.
  - `agent_context` string, required: Agent-facing guidance for this step: what happened, what to tell the user, and what to ask/call next.
  - `relay_to_user` string, required: Plain-language text for the agent to show the user.
  - `signup_session` string, required: Opaque token to pass to the next step.

## Other responses

- `400`: A query parameter or request body was malformed (invalid_request).
- `500`: An unexpected server error occurred (internal_error).

---

[API](https://skmtc.dev/usebubbles/apis/bubbles-public-api.md) - [All operations](https://skmtc.dev/usebubbles/apis/bubbles-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/usebubbles/apis/bubbles-public-api/revisions/31570f5d4b05?raw)
