# Verify WebAuthn Authentication (beta) **POST /v1/auth/webauthn/verify** Verify and complete a WebAuthn credential authentication request. This endpoint requires that a user already exists and the `BeginWebAuthnAuthentication` has been called. Pass in the response from [navigator.credentials.get(options)](https://w3c.github.io/webappsec-credential-management/#dom-credentialscontainer-get) into `public_key_credential` as a JSON object. If you are using the [webauthn-json](https://github.com/github/webauthn-json) library, pass in the response from `let response = await get(options)`. ## HTTP Request `POST /v1/auth/webauthn/verify` ## Returns A successful response returns a `webauthn_credential_id` property and `user_id` property. ## Servers - Production: https://api.moonkey.fun (Production) ## Authentication methods - Authorization ## Parameters ### Body: application/json (object) - **public_key_credential** (object) - **session_expires_in** (number) `Optional` Extend the session expiration time to N minutes from now, must be between 5 to 525600 minutes (365 days). This parameter will create a new session if there is no existing session along with a `session_token` and `session_jwt`. However, if a valid `session_token` or `session_jwt` is sent in, it will extend that session by the minutes specified. If not sent in, no session will be created by default. - **session_token** (string) `Optional` Unique session token to verify. - **session_jwt** (string) `Optional` Unique Session JWT to verify. ## Responses ### 200 OK #### Body: application/json (object) - **user_id** (string) - **webauthn_credential_id** (string) - **session_token** (string) - **session_jwt** (string) - **session** (object) [Powered by Bump.sh](https://bump.sh)