---
title: "Register new user with application"
method: POST
path: "/register"
---

# Register new user with application

`POST /register`

## Query parameters

- `next` string

## Request body

- Register
  - `email` string, required — user identifier. This is by default an email address, but can be any (unique) field that is part of the User model and is defined in the __SECURITY_USER_IDENTITY_ATTRIBUTES__ configuration variable. It will also match against numeric User model fields.
  - `password` string, required — Password

## Response `200`

Register response

- DefaultJsonResponse
  - `meta` object, required
    - `code` integer, required — Http status code
  - `response` object, required
    - `user` object — By default an empty dictionary is returned. However by overriding _User::get_security_payload()_ any attributes of the User model can be returned.
    - `csrf_token` string — Session CSRF token

## Other responses

- `302` — Successful registration with form data body.
- `400` — Errors while validating registration form

---

[API](https://skmtc.net/pallets-eco/apis/flask-security-external-api.md) · [All operations](https://skmtc.net/pallets-eco/apis/flask-security-external-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/pallets-eco/flask-security-external-api/versions/5ee7c28d6e1e/schema)
