Begin a passkey registration. Returns the WebAuthn creation-options blob.
POST
/account/security/passkeys/register/start
const url = 'https://api.siteqwality.com/account/security/passkeys/register/start';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"label":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.siteqwality.com/account/security/passkeys/register/start \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "label": "example" }'Authorizations
Section titled “Authorizations ”Request Body required
Section titled “Request Body required ” Media type application/json
object
label
required
Human label for the passkey (e.g., “iPhone 15 Pro”). Stored on Stytch alongside the credential so users can identify their devices.
string
Example generated
{ "label": "example"}Responses
Section titled “ Responses ”WebAuthn creation options
Media type application/json
object
public_key_credential_creation_options
required
Opaque JSON string. The browser passes this straight to
navigator.credentials.create() after parsing.
string
Example generated
{ "public_key_credential_creation_options": "example"}Missing or invalid authentication
Endpoint requires a user session
Internal server error
Stytch API call failed