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

Passwordless

Operations

SMS

Operations

Set phone number for a user

Request

Assign a new phone number to a user and optionally trigger a verification code.

By default, the system sends an SMS verification code to the provided phone number. To skip verification (e.g., for internal setup), set the verify field to false.

Request body must include:

  • phoneNumber: The new phone number to assign to the user. Must follow international format.
  • verify (optional): Whether to send an SMS verification code. Defaults to true if not provided.

Use this endpoint to set or update a user's phone number, with optional control over verification.

Bodyapplication/jsonrequired
phoneNumberstringrequired

New phone number

verifyboolean

Should send verification code, default is true

Default true
curl -i -X POST \
  https://api.frontegg.com/identity/resources/users/phone-numbers/v1 \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "phoneNumber": "string",
    "verify": true
  }'

Responses

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

Pre-verify user's phone number

Request

Send a one-time code (OTC) to the specified phone number to initiate verification.

This endpoint is used to pre-verify a phone number before associating it with a user account. It sends an SMS-based one-time code to the provided number.

Request body must include:

  • phoneNumber: The phone number to verify, in international format.

Use this endpoint to validate ownership of a phone number by sending a one-time code for user input during onboarding or account setup.

Bodyapplication/jsonrequired
phoneNumberstringrequired

New phone number

curl -i -X POST \
  https://api.frontegg.com/identity/resources/users/phone-numbers/v1/preverify \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "phoneNumber": "string"
  }'

Responses

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

Verify creation of phone number for user

Request

Verify a user's phone number using a one-time code (OTC) that was sent via SMS.

This is the final step in the phone number verification process. After initiating verification via the pre-verification route, use this endpoint to confirm the phone number by submitting the OTC and code.

Request body must include:

  • otcToken: The token issued when the OTC was sent.
  • code: The one-time code the user received on their phone.

Use this endpoint to validate the user's ownership of the phone number and complete the verification process.

Bodyapplication/jsonrequired
otcTokenstringrequired

OTC token

codestringrequired

Code that was sent to the user

curl -i -X POST \
  https://api.frontegg.com/identity/resources/users/phone-numbers/v1/verify \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "otcToken": "string",
    "code": "string"
  }'

Responses

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