Instances

Confirm passkey pairing code

Final step of passkey pairing. After the `pair.passkey_confirmation` webhook delivers the verification code, show it to the user; once they confirm it matches the one on their phone, call this endpoint to finish the handshake. Pairing then completes and the `pair.success` webhook fires. The body is optional — pass `device_id` to target a specific device.

POST
/passkey/confirmation

Final step of passkey pairing. After the pair.passkey_confirmation webhook delivers the verification code, show it to the user; once they confirm it matches the one on their phone, call this endpoint to finish the handshake. Pairing then completes and the pair.success webhook fires. The body is optional — pass device_id to target a specific device.

Authorization

bearerAuth
AuthorizationBearer <token>

Per-user API token (UUID v4) sent as Authorization: Bearer <token>. Identifies the tenant and user.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/passkey/confirmation" \  -H "Content-Type: application/json" \  -d '{    "device_id": "wuts-device-001"  }'
{  "success": true,  "data": {    "status": "passkey_confirmed",    "device_id": "wuts-device-001",    "next": "wait for the pair.success webhook"  }}
{  "success": false,  "error": "device already paired"}
{  "success": false,  "error": "unauthorized"}
{  "success": false,  "error": "no active pairing session — start pairing via /qr or /paircode and wait for the pair.passkey_request webhook"}
{  "success": false,  "error": "failed to send passkey confirmation: websocket disconnected"}