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

# Get Authenticators

> Get a list of the user's enrolled authenticators.



## OpenAPI

````yaml client-api GET /user-authenticators
openapi: 3.0.0
info:
  description: Authsignal's Client API.
  version: 1.0.0
  title: Client API
  termsOfService: https://www.authsignal.com/legal/terms-of-service
  contact:
    email: hello@authsignal.com
servers:
  - url: https://api.authsignal.com/v1/client
  - url: https://au.api.authsignal.com/v1/client
  - url: https://eu.api.authsignal.com/v1/client
  - url: https://ca.api.authsignal.com/v1/client
security:
  - bearerAuth: []
tags:
  - name: User authenticators
    description: ''
    externalDocs:
      description: Find out more
      url: https://docs.authsignal.com
  - name: SMS
    description: ''
    externalDocs:
      description: Find out more
      url: https://docs.authsignal.com
  - name: WhatsApp
    description: ''
    externalDocs:
      description: Find out more
      url: https://docs.authsignal.com
  - name: Email Magic Link
    description: ''
    externalDocs:
      description: Find out more
      url: https://docs.authsignal.com
  - name: Email OTP
    description: ''
    externalDocs:
      description: Find out more
      url: https://docs.authsignal.com
  - name: Authenticator App
    description: ''
    externalDocs:
      description: Find out more
      url: https://docs.authsignal.com
  - name: Passkeys
    description: ''
    externalDocs:
      description: Find out more
      url: https://docs.authsignal.com
externalDocs:
  description: Find out more about Authsignal
  url: https://docs.authsignal.com
paths:
  /user-authenticators:
    get:
      tags:
        - User authenticators
      summary: Get Authenticators
      description: Get a list of the user's enrolled authenticators.
      operationId: getUserAuthenticators
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UserAuthenticator'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  schemas:
    UserAuthenticator:
      type: object
      properties:
        userAuthenticatorId:
          type: string
        authenticatorType:
          type: string
          enum:
            - OOB
            - OTP
            - SECURITY_KEY
            - PASSKEY
            - PUSH
            - DEVICE
            - PROVIDER
        email:
          type: string
          description: A masked version of the user's email.
        phoneNumber:
          type: string
          description: A masked version of the user's phone number.
        createdAt:
          type: string
          format: date-time
        verifiedAt:
          type: string
          format: date-time
        lastVerifiedAt:
          type: string
          format: date-time
        oobChannel:
          type: string
          enum:
            - EMAIL_MAGIC_LINK
            - EMAIL_OTP
            - SMS
        verificationMethod:
          $ref: '#/components/schemas/VerificationMethod'
        previousSmsChannel:
          type: string
          enum:
            - DEFAULT
            - WHATSAPP
          description: >-
            The channel that was last used by the user to complete an SMS
            challenge.
        webauthnCredential:
          type: object
          properties:
            credentialId:
              type: string
            deviceId:
              type: string
            name:
              type: string
              description: >-
                The name of the passkey. Defaults to `aaguidMapping.name` if
                available.
            aaguid:
              type: string
            aaguidMapping:
              type: object
              properties:
                name:
                  type: string
                  description: >-
                    The name of the credential manager where the passkey is
                    stored e.g. 'iCloud Keychain'.
                svgIconLight:
                  type: string
                  description: >-
                    A base64 encoded light variant SVG icon for the credential
                    manager.
                svgIconDark:
                  type: string
                  description: >-
                    A base64 encoded dark variant SVG icon for the credential
                    manager.
            credentialBackedUp:
              type: boolean
            credentialDeviceType:
              type: string
              enum:
                - singleDevice
                - multiDevice
            authenticatorAttachment:
              type: string
              enum:
                - cross-platform
                - platform
            parsedUserAgent:
              type: object
              properties:
                ua:
                  type: string
                browser:
                  type: object
                  properties:
                    name:
                      type: string
                    version:
                      type: string
                    major:
                      type: string
                device:
                  type: object
                  properties:
                    model:
                      type: string
                    type:
                      type: string
                    vendor:
                      type: string
                engine:
                  type: object
                  properties:
                    name:
                      type: string
                    version:
                      type: string
                os:
                  type: object
                  properties:
                    name:
                      type: string
                    version:
                      type: string
                cpu:
                  type: object
                  properties:
                    architecture:
                      type: string
      required:
        - userAuthenticatorId
        - authenticatorType
        - verificationMethod
        - createdAt
      example:
        userAuthenticatorId: user_authenticator_123
        verificationMethod: PASSKEY
        createdAt: '2024-05-13T04:59:02.640Z'
        lastVerifiedAt: '2024-07-13T02:43:37.640Z'
        verifiedAt: '2024-05-13T04:59:17.640Z'
        isDefault: true
        webauthnCredential:
          credentialId: credential_123
          deviceId: device_123
          name: iCloud Keychain
          aaguid: fbfc3007-154e-4ecc-8c0b-6e020557d7bd
          aaguidMapping:
            name: iCloud Keychain
            svgIconDark: data:image/svg+xml;base64...
            svgIconLight: data:image/svg+xml;base64...
          credentialBackedUp: true
          credentialDeviceType: multiDevice
          authenticatorAttachment: platform
    VerificationMethod:
      type: string
      enum:
        - SMS
        - AUTHENTICATOR_APP
        - EMAIL_MAGIC_LINK
        - EMAIL_OTP
        - PUSH
        - DEVICE
        - SECURITY_KEY
        - PASSKEY
        - VERIFF
        - IPROOV
        - PALM_BIOMETRICS_RR
        - IDVERSE
    ErrorWithCode:
      type: object
      properties:
        error:
          type: string
        errorDescription:
          type: string
        errorCode:
          type: string
      required:
        - error
  responses:
    Unauthorized:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorWithCode'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Use a short-lived token obtained from the Server API's Track Action
        endpoint. The token is valid for 10 minutes and should be passed in the
        Authorization header as 'Bearer {token}'.

````