> ## Documentation Index
> Fetch the complete documentation index at: https://www.posted.cc/llms.txt
> Use this file to discover all available pages before exploring further.

# Complete passkey authentication

> Verifies AuthenticationResponseJSON, consumes the challenge, and either creates a session or renews recent authentication.

No signed-in session is required. Endpoint-specific tokens, setup secrets or challenges may still be required.

Verifies AuthenticationResponseJSON, consumes the challenge, and either creates a session or renews recent authentication.

[Request conventions](/api-reference/overview) · [API keys](/api-keys) · [MCP connections](/mcp-connections)


## OpenAPI

````yaml api-reference/openapi.json POST /api/auth/passkeys/authenticate/verify
openapi: 3.1.0
info:
  title: Posted HTTP API
  version: 0.2.0
  description: >-
    All registered application, account, OAuth, MCP transport and health
    endpoints. Publishing and draft request schemas come from the shared runtime
    validators. Replace the example server with your installation. Documentation
    uses simple request examples and does not execute live publishing requests.
servers:
  - url: https://posted-api.example.com
security: []
paths:
  /api/auth/passkeys/authenticate/verify:
    post:
      tags:
        - Passkeys and recovery
      summary: Complete passkey authentication
      description: >-
        Verifies AuthenticationResponseJSON, consumes the challenge, and either
        creates a session or renews recent authentication.


        No signed-in session is required. Endpoint-specific tokens, setup
        secrets or challenges may still be required.
      operationId: post_api_auth_passkeys_authenticate_verify
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                challengeId:
                  type: string
                  pattern: ^[A-Za-z0-9_-]{43}$
                response:
                  type: object
                  propertyNames:
                    type: string
                  additionalProperties: {}
                  description: WebAuthn AuthenticationResponseJSON from the browser
              required:
                - challengeId
                - response
              additionalProperties: false
      responses:
        '200':
          description: >-
            Successful response. Examples are illustrative; field values vary by
            record.
          content:
            application/json:
              schema:
                type: object
                properties:
                  user:
                    type: object
                    properties:
                      id:
                        type: string
                      name:
                        type: string
                      email:
                        type: string
                      role:
                        type: string
                      timeZone:
                        type: string
                      emailVerified:
                        type: boolean
                      dateFormat:
                        type: string
                      timeFormat:
                        type: string
                      notificationPreferences:
                        type: object
                        properties:
                          assignments:
                            type: boolean
                          mentions:
                            type: boolean
                        additionalProperties: true
                      passkeyCount:
                        type: integer
                    additionalProperties: true
                  workspace:
                    type: object
                    properties:
                      id:
                        type: string
                      name:
                        type: string
                      createdAt:
                        type: string
                    additionalProperties: true
                additionalProperties: true
              example:
                user:
                  id: 66666666-6666-4666-8666-666666666666
                  name: Alex Morgan
                  email: alex@example.test
                  role: member
                  timeZone: UTC
                  emailVerified: true
                  dateFormat: day-short-month-year
                  timeFormat: 24-hour
                  notificationPreferences:
                    assignments: true
                    mentions: true
                  passkeyCount: 0
                workspace:
                  id: 55555555-5555-4555-8555-555555555555
                  name: Studio team
                  createdAt: '2027-01-18T09:30:00.000Z'
        default:
          description: >-
            Request failure. Inspect code, message and requestId; respect
            Retry-After on HTTP 429.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security: []
components:
  schemas:
    Error:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - code
            - message
            - requestId
          properties:
            code:
              type: string
            message:
              type: string
            requestId:
              type: string

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.