Regarding the improvements to user export and import with support for user profiles, we’re not entirely sure how customers currently implement their automated workflows for exporting and importing users. For that reason, we’d like to explain the updated implementation so customers can adapt it to their own automation processes.
Export users
1. Review export API (JSON format)
To protect the user data structure, we’ve introduced a new API that flattens users together with their profiles:
POST /v1/users/export/review
Request payload: Same as /v1/users/find-many
Response payload:
{
results: Array<{
id: string; // profileId
profileName: string;
email: string;
username: string;
firstName: string;
lastName: string;
contactEmail: string;
userObjects: string[];
standardOrganization: string;
organizationsAndRoles: TAttributesAndValuesPair[];
scopes: string[];
appPermissions: string[];
authConfigIds: string;
lockedForExternalAuthentication: boolean;
language: string;
inactiveSince: number;
visibility: STANDARD | HIDDEN;
description: string;
logins: Array<{
login: number;
}>;
}>;
page: number;
limit: number;
totalPages: number;
totalResults: number;
}
This endpoint returns the data in JSON format and is intended for programmatic or automated use.
2. CSV export API
POST /v1/users/export/csv
This API remains unchanged and allows downloading users in CSV format, containing the following columns:
Profile Id
Profile Name
Email
User Name
First Name
Last Name
User
Objects
Standard Organization
Org Nodes & Roles
Scopes
App Permissions
Language
Inactive Since
Last Login
Visibility
Description
Locked for External Authentication
Both export options include full user profile information such as Profile Id, profileName, and standardOrganization.
Customers can still export users manually via the User Management UI and import them back using CSV.
For automated workflows, we recommend using /v1/users/export/review to ensure user data is extracted in a structured and consistent way.
Import users The import API remains unchanged from a system perspective. However, we’ve improved input validation to align with the User Management UI — specifically, ensuring that profileName cannot be empty or undefined.