Authentication and Identity Management

Frontegg offers a comprehensive suite of authentication, user management, and security features to streamline identity management and enhance application security. This section provides an overview of all relevant API endpoints, organized into Authentication, Management, and Self-Service categories.

Authentication Endpoints: Enable secure user login, multi-factor authentication (MFA), passwordless options, and social login integrations, allowing for a flexible and robust sign-in experience.

Management Endpoints: Require environment-level authorization and provide full control over SSO (SAML and OpenID Connect) resources, user roles, permissions, and configurations. These endpoints are designed for administrative use, allowing for centralized identity and access management.

Self-Service Endpoints: Accessible with a user token (JWT), these endpoints empower users to manage their SSO connections and other account settings. Users with the necessary permissions can create, update, or delete SSO configurations directly, ensuring they have the tools to manage their access securely and independently.

Each category in this section helps you configure and extend Frontegg’s capabilities, providing the flexibility to manage user identities, authentication protocols, and access controls as per your application’s needs.

Languages
Servers
EU Region
https://api.frontegg.com/identity/
US Region
https://api.us.frontegg.com/identity/
CA Region
https://api.ca.frontegg.com/identity/
AU Region
https://api.au.frontegg.com/identity/
Frontegg sub-domain for use with user tokens
https://{domain}.frontegg.com/identity/

API token

Operations

General

Operations

MFA

Operations

Verify MFA using webauthn

Request

Verify a multi-factor authentication (MFA) challenge using a WebAuthn device.

This endpoint completes MFA verification using a previously registered WebAuthn device such as a biometric sensor or hardware security key.

Path parameters:

  • deviceId: The unique identifier of the registered WebAuthn device to be verified.

Request body must include:

  • webauthnToken: Token received from the server to initiate the WebAuthn challenge.
  • options: WebAuthn authentication response returned by the browser.
    • id: The credential ID of the WebAuthn device.
    • response: Object containing attestation data from the authenticator.
      • clientDataJSON: Base64-encoded client data.
      • authenticatorData: Base64-encoded data from the authenticator.
      • signature: Signature from the authenticator, proving user presence.
      • userHandle: The user's handle used during registration.
    • recaptchaToken (optional): Token to verify human interaction, if reCAPTCHA is enabled.
    • invitationToken (optional): Used when completing an MFA challenge as part of an invitation flow.
  • mfaToken: Token issued during the initial authentication step.
  • rememberDevice (optional): If set to true, this device will be remembered for future logins to reduce MFA prompts.

Use this endpoint to complete WebAuthn-based MFA verification and confirm the user's identity using a secure hardware or platform authenticator.

Path
deviceIdstringrequired
Bodyapplication/jsonrequired
webauthnTokenstringrequired
optionsobject(AuthenticateUserWebAuthNDto)required
options.​idstringrequired
options.​responseobject(WebAuthNResponse)required
options.​response.​clientDataJSONstringrequired
options.​response.​authenticatorDatastringrequired
options.​response.​signaturestringrequired
options.​response.​userHandlestringrequired
options.​recaptchaTokenstring
options.​invitationTokenstring
mfaTokenstringrequired
rememberDeviceboolean
curl -i -X POST \
  'https://api.frontegg.com/identity/resources/auth/v1/user/mfa/webauthn/{deviceId}/verify' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "webauthnToken": "string",
    "options": {
      "id": "string",
      "response": {
        "clientDataJSON": "string",
        "authenticatorData": "string",
        "signature": "string",
        "userHandle": "string"
      },
      "recaptchaToken": "string",
      "invitationToken": "string"
    },
    "mfaToken": "string",
    "rememberDevice": true
  }'

Responses

Check if remember device allowed

Request

Check whether the 'remember device' feature is allowed for MFA verification.

This endpoint returns whether device remembering is enabled globally or for a specific tenant, based on the request context.

Query parameters:

  • mfaToken: Token generated from the authenticator app or MFA challenge step.

Use this endpoint to determine whether the user should be prompted with the option to remember their device during MFA verification.

Query
mfaTokenstringrequired

MFA token from the response body of the first factor authentication

Headers
frontegg-tenant-idstring

The tenant ID identifier

curl -i -X GET \
  'https://api.frontegg.com/identity/resources/configurations/v1/mfa-policy/allow-remember-device?mfaToken=string' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Bodyapplication/json
object(CheckAllowRememberResponse)
Response
application/json
{}

Enroll authenticator app MFA

Request

Enroll a logged-in user in multi-factor authentication (MFA) for a specific tenant.

This endpoint initiates MFA enrollment on behalf of a user within a specific tenant context.

Use this route to programmatically trigger MFA enrollment, typically as part of an administrative or backend workflow.

Headers
frontegg-user-idstringrequired

The user ID identifier

curl -i -X POST \
  https://api.frontegg.com/identity/resources/users/v1/mfa/authenticator/enroll \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'frontegg-user-id: string'

Responses

Bodyapplication/json
qrCodestringrequired

QR code to be verified by authenticator app

Response
application/json
{ "qrCode": "string" }

Passwordless

Operations

SMS

Operations

Account invitations settings

Operations

Core settings

Operations

Custom social OAuth provider

Operations

Data migration

Operations

Delegation

Operations

Email configuration

Operations

Email templates

Operations

M2M tokens

Operations

MFA configuration

Operations

Permissions categories

Operations

Permissions

Operations

Roles

Operations

SMS configuration

Operations

SMS templates

Operations

Sessions configuration

Operations

User pools

Operations

Users

Operations

Account invitations

Operations

Account roles

Operations

API tokens

Operations

Domain restrictions

Operations

IP restrictions

Operations

Lockout policy

Operations

MFA settings

Operations

Password settings

Operations

Personal tokens

Operations

Sessions management

Operations

User groups

Operations

User management

Operations

User sessions

Operations

Users-applications management

Operations