---
title: "Account Signup"
method: POST
path: "/api/account/signup"
---

# Account Signup

`POST /api/account/signup`

## Request

- Base URL: `https://opwhcervi3.execute-api.ca-central-1.amazonaws.com`
- URL: `https://opwhcervi3.execute-api.ca-central-1.amazonaws.com/api/account/signup`
- Auth: none required

Creates an account and returns a bearer session token. No entitlement or trial is granted; signup is rate-limited, persists account state, and attempts to send a welcome email.

## Request body

- AccountSignupRequest
  - `address` AccountAddress, required
    - `city` string, required
    - `country` string, required
    - `postal` string, required
    - `street` string, required
  - `business_name` string, required
  - `contact_name` string, nullable
  - `email` string, required
  - `industrial_sector` 'discrete_mfg' | 'automotive' | 'process' | 'pharma' | 'food_bev' | 'energy' | 'other', required
  - `password` string, required
  - `src` string, nullable

## Response `200`

Successful Response

- AccountAuthResponse
  - `account` AccountPublicView, required
    - `address` AccountAddress, required
      - `city` string, required
      - `country` string, required
      - `postal` string, required
      - `street` string, required
    - `api_keys` AccountApiKeyView[]
      - `created_at` string, required
      - `id` string, required
      - `label` string, required
      - `prefix` string, required
      - `revoked` boolean, required
    - `api_keys_notice` string
    - `business_name` string, required
    - `contact_name` string, nullable
    - `created_at` string, required
    - `email` string, required
    - `entitlements` object[]
    - `id` string, required
    - `industrial_sector` 'discrete_mfg' | 'automotive' | 'process' | 'pharma' | 'food_bev' | 'energy' | 'other', required
  - `token` string, required

## Other responses

- `422`: Validation Error
- `429`: The applicable rate or quota limit has been reached. `quota_exceeded` names the limit in `scope` (for example `free_quota`: the free Advisor's 10 questions this month). `pro_allowance_exhausted`: the dxpert Pro monthly allowance, shared by the Advisor and every agent, is used up; service resumes when it renews (`resets_at`). There is no overage and nothing extra to buy.

---

[API](https://skmtc.dev/dxpert/apis/dxpert-ai-api.md) · [All operations](https://skmtc.dev/dxpert/apis/dxpert-ai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/dxpert/apis/dxpert-ai-api/revisions/460f1c8c53d1?raw)
