---
title: "Hosted WebAuthn registration options (signed-in user adds a passkey)"
method: POST
path: "/auth/passkeys/register/options"
tags: ["Auth"]
---

# Hosted WebAuthn registration options (signed-in user adds a passkey)

`POST /auth/passkeys/register/options`

## Request

- Base URL: `https://api.run402.com`
- URL: `https://api.run402.com/auth/passkeys/register/options`
- Auth: API key in cookie `__Host-Http-r402_session`

Hosted passkey-register ceremony for the cookie-authenticated actor (cookie + double-submit CSRF + same-origin). The user id is derived from the session, never the body. Returns PublicKeyCredentialCreationOptionsJSON.

## Response `200`

WebAuthn registration options.

- object

## Other responses

- `401`: Missing or invalid authentication. Run402-originated JSON bodies use the canonical ErrorEnvelope.

---

[API](https://skmtc.dev/run402/apis/run402-api.md) · [All operations](https://skmtc.dev/run402/apis/run402-api/llms.txt) · [OpenAPI document](https://skmtc.dev/run402/apis/run402-api/revisions/893607557f50?raw)
