The field name that the tenant ID will be taken from under app metadata
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.
- EU Regionhttps://api.frontegg.com/identity/resources/migrations/v1/auth0
- US Regionhttps://api.us.frontegg.com/identity/resources/migrations/v1/auth0
- CA Regionhttps://api.ca.frontegg.com/identity/resources/migrations/v1/auth0
- AU Regionhttps://api.au.frontegg.com/identity/resources/migrations/v1/auth0
- Frontegg sub-domain for use with user tokenshttps://app-xxx.frontegg.com/identity/resources/migrations/v1/auth0
- cURL
- JavaScript
- Python
- GO
- Payload
curl -i -X POST \
https://api.frontegg.com/identity/resources/migrations/v1/auth0 \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"domain": "string",
"clientId": "string",
"secret": "string",
"tenantIdFieldName": "string",
"isTenantIdOnUserMetadata": true
}'The password hash. For SCrypt should include the salt and key seperated by the salt separator
Stringified JSON Hashing config for the migrated password. For SCrypt should be formatted as { saltSeparator, N, r, p, keyLen }. For FirebaseScrypt should be formatted as { memCost, rounds, saltSeparator, signerKey }
phoneNumber can be used both for login with SMS and for MFA This auto-enrolls the user in MFA, prompting them at first login (regardless of tenant/vendor MFA settings). The required format is an area code + number, no spaces. For example: "+16037184056" The number must be unique
Role ids of the migrated users. If not provided, the user will be assigned the default roles
The username of the user. If not provided, the email is required. Maximum length is 255 characters.
- EU Regionhttps://api.frontegg.com/identity/resources/migrations/v1/local
- US Regionhttps://api.us.frontegg.com/identity/resources/migrations/v1/local
- CA Regionhttps://api.ca.frontegg.com/identity/resources/migrations/v1/local
- AU Regionhttps://api.au.frontegg.com/identity/resources/migrations/v1/local
- Frontegg sub-domain for use with user tokenshttps://app-xxx.frontegg.com/identity/resources/migrations/v1/local
- cURL
- JavaScript
- Python
- GO
- Payload
curl -i -X POST \
https://api.frontegg.com/identity/resources/migrations/v1/local \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"tenantId": "string",
"name": "string",
"profilePictureUrl": "string",
"passwordHash": "string",
"passwordHashType": "bcrypt",
"passwordHashConfig": "string",
"authenticatorAppMfaSecret": "string",
"phoneNumber": "string",
"phoneNumberType": "auth",
"provider": "local",
"metadata": "string",
"roleIds": [],
"vendorMetadata": "string",
"externalId": "string",
"username": "string",
"email": "string",
"verifyUser": false
}'{ "id": "string", "email": "string", "name": "string", "profilePictureUrl": "string", "sub": "string", "verified": true, "mfaEnrolled": true, "mfaBypass": true, "phoneNumber": "string", "roles": [ { … } ], "permissions": [ { … } ], "provider": "string", "tenantId": "string", "tenantIds": [ "string" ], "activatedForTenant": true, "isLocked": true, "tenants": [ { … } ], "invisible": true, "superUser": true, "metadata": "string", "vendorMetadata": "string", "externalId": "string", "createdAt": "2019-08-24T14:15:22Z", "lastLogin": "2019-08-24T14:15:22Z", "groups": [ {} ], "subAccountAccessAllowed": true, "managedBy": "frontegg" }
Request
Migrate users in bulk into your environment.
Provide an array of users in the request body. Each user object must include the user's email and tenantId, which specifies the user's parent account. You can include additional fields as needed to store more information. If you need to store custom data, use the metadata property.
The password hash. For SCrypt should include the salt and key seperated by the salt separator
Stringified JSON Hashing config for the migrated password. For SCrypt should be formatted as { saltSeparator, N, r, p, keyLen }. For FirebaseScrypt should be formatted as { memCost, rounds, saltSeparator, signerKey }
phoneNumber can be used both for login with SMS and for MFA This auto-enrolls the user in MFA, prompting them at first login (regardless of tenant/vendor MFA settings). The required format is an area code + number, no spaces. For example: "+16037184056" The number must be unique
Role ids of the migrated users. If not provided, the user will be assigned the default roles
The username of the user. If not provided, the email is required. Maximum length is 255 characters.
- EU Regionhttps://api.frontegg.com/identity/resources/migrations/v1/local/bulk
- US Regionhttps://api.us.frontegg.com/identity/resources/migrations/v1/local/bulk
- CA Regionhttps://api.ca.frontegg.com/identity/resources/migrations/v1/local/bulk
- AU Regionhttps://api.au.frontegg.com/identity/resources/migrations/v1/local/bulk
- Frontegg sub-domain for use with user tokenshttps://app-xxx.frontegg.com/identity/resources/migrations/v1/local/bulk
- cURL
- JavaScript
- Python
- GO
- Payload
curl -i -X POST \
https://api.frontegg.com/identity/resources/migrations/v1/local/bulk \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"users": [
{
"tenantId": "string",
"name": "string",
"profilePictureUrl": "string",
"passwordHash": "string",
"passwordHashType": "bcrypt",
"passwordHashConfig": "string",
"authenticatorAppMfaSecret": "string",
"phoneNumber": "string",
"phoneNumberType": "auth",
"provider": "local",
"metadata": "string",
"roleIds": [],
"vendorMetadata": "string",
"externalId": "string",
"username": "string",
"email": "string",
"verifyUser": false
}
]
}'{ "migrationId": "string" }