---
title: "Submit Signup Profile"
method: POST
path: "/api/v1/auth/signup/profile"
tags: ["auth"]
---

# Submit Signup Profile

`POST /api/v1/auth/signup/profile`

Store the caller's questionnaire answers on their own account.

Rate Limited: 10 requests per minute per IP address.

Deliberately NOT gated on the public signup toggle, for the same reason as
the status read beside it: the form shows on the status page mid-setup, and
an operator switching the surface off must not turn a submit that was on
screen into a vanished route. The write annotates the caller's own
existing account and creates nothing, so it does not belong to the
service's toggle-gated entry points — which is also why it writes through
the repository directly rather than growing a service method the derived
entry-point sweeps would rightly demand a gate on.

## Request body

- SignupProfileRequest — The optional getting-to-know-you answers from the status page. Values are the chosen option's label, or the free text typed under "Other" — deliberately not a server-side enum. The option lists live in the client beside the form, and a copied list here would refuse exactly the answers "Other" exists to accept. Lengths and the list size are bounded so the surface cannot store arbitrary payloads.
  - `use_case` string, nullable
  - `property_types` string[]
  - `role` string, nullable

## Response `204`

Successful Response

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/maia-analytics/apis/maia-api.md) · [All operations](https://skmtc.dev/maia-analytics/apis/maia-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/maia-analytics/maia-api/revisions/0c94a4b5a00e/schema)
