---
title: "POST /stages/identification/"
method: POST
path: "/stages/identification/"
tags: ["stages"]
---

# POST /stages/identification/

`POST /stages/identification/`

IdentificationStage Viewset

## Request body

- IdentificationStageRequest — IdentificationStage Serializer
  - `name` string, required
  - `user_fields` UserFieldsEnum[] — Fields of the user object to match against. (Hold shift to select multiple options)
  - `password_stage` string, uuid, nullable — When set, shows a password field, instead of showing the password field as separate step.
  - `captcha_stage` string, uuid, nullable — When set, adds functionality exactly like a Captcha stage, but baked into the Identification stage.
  - `case_insensitive_matching` boolean — When enabled, user fields are matched regardless of their casing.
  - `show_matched_user` boolean — When a valid username/email has been entered, and this option is enabled, the user's username and avatar will be shown. Otherwise, the text that the user entered will be shown
  - `enrollment_flow` string, uuid, nullable — Optional enrollment flow, which is linked at the bottom of the page.
  - `recovery_flow` string, uuid, nullable — Optional recovery flow, which is linked at the bottom of the page.
  - `passwordless_flow` string, uuid, nullable — Optional passwordless flow, which is linked at the bottom of the page.
  - `sources` string[] — Specify which sources should be shown.
  - `show_source_labels` boolean
  - `pretend_user_exists` boolean — When enabled, the stage will succeed and continue even when incorrect user info is entered.
  - `enable_remember_me` boolean — Show the user the 'Remember me on this device' toggle, allowing repeat users to skip straight to entering their password.
  - `webauthn_stage` string, uuid, nullable — When set, and conditional WebAuthn is available, allow the user to use their passkey as a first factor.

## Response `201`

- IdentificationStage — IdentificationStage Serializer
  - `pk` string, uuid, required
  - `name` string, required
  - `component` string, required — Get object type so that we know how to edit the object
  - `verbose_name` string, required — Return object's verbose_name
  - `verbose_name_plural` string, required — Return object's plural verbose_name
  - `meta_model_name` string, required — Return internal model name
  - `flow_set` FlowSet[], required
    - `pk` string, uuid, required
    - `policybindingmodel_ptr_id` string, uuid, required
    - `name` string, required
    - `slug` string, required — Visible in the URL.
    - `title` string, required — Shown as the Title in Flow pages.
    - `designation` 'authentication' | 'authorization' | 'invalidation' | 'enrollment' | 'unenrollment' | 'recovery' | 'stage_configuration', required
    - `background_url` string, required — Get the URL to the background image
    - `policy_engine_mode` 'all' | 'any'
    - `compatibility_mode` boolean — Enable compatibility mode, increases compatibility with password managers on mobile devices.
    - `export_url` string, required — Get export URL for flow
    - `layout` 'stacked' | 'content_left' | 'content_right' | 'sidebar_left' | 'sidebar_right' | 'sidebar_left_frame_background' | 'sidebar_right_frame_background'
    - `denied_action` 'message_continue' | 'message' | 'continue'
  - `user_fields` UserFieldsEnum[] — Fields of the user object to match against. (Hold shift to select multiple options)
  - `password_stage` string, uuid, nullable — When set, shows a password field, instead of showing the password field as separate step.
  - `captcha_stage` string, uuid, nullable — When set, adds functionality exactly like a Captcha stage, but baked into the Identification stage.
  - `case_insensitive_matching` boolean — When enabled, user fields are matched regardless of their casing.
  - `show_matched_user` boolean — When a valid username/email has been entered, and this option is enabled, the user's username and avatar will be shown. Otherwise, the text that the user entered will be shown
  - `enrollment_flow` string, uuid, nullable — Optional enrollment flow, which is linked at the bottom of the page.
  - `recovery_flow` string, uuid, nullable — Optional recovery flow, which is linked at the bottom of the page.
  - `passwordless_flow` string, uuid, nullable — Optional passwordless flow, which is linked at the bottom of the page.
  - `sources` string[] — Specify which sources should be shown.
  - `show_source_labels` boolean
  - `pretend_user_exists` boolean — When enabled, the stage will succeed and continue even when incorrect user info is entered.
  - `enable_remember_me` boolean — Show the user the 'Remember me on this device' toggle, allowing repeat users to skip straight to entering their password.
  - `webauthn_stage` string, uuid, nullable — When set, and conditional WebAuthn is available, allow the user to use their passkey as a first factor.

## Other responses

- `400`
- `403`

---

[API](https://skmtc.dev/goauthentik/apis/authentik.md) · [All operations](https://skmtc.dev/goauthentik/apis/authentik/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/goauthentik/authentik/revisions/4e42e86021d7/schema)
