---
title: "Read optional first-factor setup choices"
method: POST
path: "/identity/sign_in/factor_setup_options"
tags: ["identity", "customer-session", "customer-session-public"]
---

# Read optional first-factor setup choices

`POST /identity/sign_in/factor_setup_options`

## Request

- Base URL: `https://api.stablesea.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.stablesea.com/identity/sign_in/factor_setup_options`
- Auth: none declared

Read optional passkey setup availability for a live password-proven session. SMS and authenticator setup remain available independently of this optional capability.

## Request body

- IdentitySignInPasskeyInput
  - `session_token` string, required

## Response `200`

OK

- IdentityFactorSetupOptionsOutput
  - `passkey_available` boolean, required

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `429`: Too Many Requests
- `default`: Error response.

## Changes

- **2026-11-03** `d2b235883e5f`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/stablesea/apis/stable-sea-backend/changes/identity/sign_in/factor_setup_options/post.md)

---

[API](https://skmtc.dev/stablesea/apis/stable-sea-backend.md) - [All operations](https://skmtc.dev/stablesea/apis/stable-sea-backend/llms.txt) - [OpenAPI document](https://skmtc.dev/stablesea/apis/stable-sea-backend/revisions/fb17fc318db3?raw)
