---
title: "Verify Account Registration"
method: POST
path: "/v1/onboarding/registrations/account/verify"
tags: ["onboarding"]
---

# Verify Account Registration

`POST /v1/onboarding/registrations/account/verify`

## Request

- Base URL: `https://api.4chems.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.4chems.com/v1/onboarding/registrations/account/verify`
- Auth: none required

Verify the emailed 6-digit code (`challenge_id`, `code`) and create the
4chems account. Never guess or retry codes, and never ask the user for a
password.

Anonymous. On a matching code, creates the user (email already verified)
and Keycloak mails a link where the user sets their own password; no
password passes through this API or the agent. Then call
start_device_login to sign in. Answers 409 registration.exists when the
address already has an account, and 503 registration.idp_unavailable on
a Keycloak failure — retry with the same challenge_id and code.

## Request body

- AccountVerifyIn: Request body for POST /v1/onboarding/registrations/account/verify (UC-089).
  - `challenge_id` string, uuid, required
  - `code` string, required

## Response `200`

Successful Response

- AccountCreatedOut
  - `account` 'created', required
  - `next_step` string, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/4chems/apis/platform-api.md) · [All operations](https://skmtc.dev/4chems/apis/platform-api/llms.txt) · [OpenAPI document](https://skmtc.dev/4chems/apis/platform-api/revisions/65e4f7b4dba0?raw)
