@@ -63,6 +63,65 @@ const PASSKEY_REGISTRATION_FINISH_POST = {
6363const PASSKEYS_API_DOCS = {
6464 PASSKEY_REGISTRATION_START_POST ,
6565 PASSKEY_REGISTRATION_FINISH_POST ,
66+ PASSKEYS_GET : {
67+ ...TAGS_PASSKEYS ,
68+ description : '/passkeys' ,
69+ notes : [
70+ dedent `
71+ 🔒 Authenticated with session token (verified)
72+
73+ Returns the list of passkeys registered for the authenticated user.
74+ The \`publicKey\` and \`signCount\` fields are intentionally excluded
75+ from the response as they are internal implementation details.
76+
77+ **Response:** Array of passkey metadata objects, each containing
78+ \`credentialId\`, \`name\`, \`createdAt\`, \`lastUsedAt\`, \`transports\`, and \`prfEnabled\`.
79+ ` ,
80+ ] ,
81+ } ,
82+ PASSKEY_CREDENTIAL_DELETE : {
83+ ...TAGS_PASSKEYS ,
84+ description : '/passkey/{credentialId}' ,
85+ notes : [
86+ dedent `
87+ 🔒 Authenticated with MFA JWT (scope: mfa:passkey)
88+
89+ Deletes the passkey identified by \`credentialId\` (base64url-encoded).
90+ The service validates that the passkey exists and belongs to the
91+ authenticated user. Returns 404 if the passkey is not found or is
92+ not owned by the user.
93+
94+ **Params:**
95+ - \`credentialId\` (string, required) — base64url-encoded credential ID
96+
97+ **Security event:** \`account.passkey.removed\` is recorded on success.
98+ ` ,
99+ ] ,
100+ } ,
101+ PASSKEY_CREDENTIAL_PATCH : {
102+ ...TAGS_PASSKEYS ,
103+ description : '/passkey/{credentialId}' ,
104+ notes : [
105+ dedent `
106+ 🔒 Authenticated with MFA JWT (scope: mfa:passkey)
107+
108+ Renames the passkey identified by \`credentialId\` (base64url-encoded).
109+ The new name must be 1–255 characters and non-empty after trimming.
110+ The service validates that the passkey exists and belongs to the
111+ authenticated user. Returns 404 if the passkey is not found or is
112+ not owned by the user.
113+
114+ **Params:**
115+ - \`credentialId\` (string, required) — base64url-encoded credential ID
116+
117+ **Request body:**
118+ - \`name\` (string, required) — new display name (1–255 chars)
119+
120+ **Response:** Updated passkey metadata including \`credentialId\`, \`name\`,
121+ \`createdAt\`, \`lastUsedAt\`, \`transports\`, and \`prfEnabled\`.
122+ ` ,
123+ ] ,
124+ } ,
66125} ;
67126
68127export default PASSKEYS_API_DOCS ;
0 commit comments