POST /api/v2/jobs/users-exports
pour créer une tâche qui exporte tous les utilisateurs associés à une connexion, ou tous les utilisateurs du locataire.
Pour une liste des champs de profil utilisateur qui peuvent être importés et exportés, consultez Structure du profil utilisateur.
Lorsque vous créez votre tâche, vous devez fournir ce qui suit :
- ID de la connexion à partir de laquelle vous souhaitez exporter les utilisateurs (facultatif).
- Format du fichier d’exportation (CSV ou compatible JSON).
- Nombre maximum d’enregistrements d’utilisateurs à exporter (facultatif, tous les enregistrements seront exportés si cette information n’est pas fournie).
- Champs associés aux utilisateurs (ID ou nom) que vous voulez inclure dans l’exportation.
Créer le corps d’une demande
(Facultatif) Recherchez leconnection_id
et le nom de domaine de votre locataire Auth0 dans . Créez un nouveau fichier texte avec le corps de la demande suivant :
connection_id
avec votre ID de connexion à la base de données, ou supprimez-le pour exporter tous les utilisateurs du locataire.
Exemple de demande
Permissions requises :read:users
Inclure les métadonnées des utilisateurs dans le fichier CSV exporté
Si vous exportez des données utilisateur au format CSV et que vous souhaitez inclure des informations sur les métadonnées, indiquez chaque champ de métadonnées que vous souhaitez exporter. Vous pouvez exporter jusqu’à 30 champs.Vous ne pouvez pas exporter l’intégralité de
app_metadata
ou de user_metadata
au format CSV. Vous devez préciser explicitement les champs des objets de métadonnées.Pour exporter app_metadata
ou user_metadata
en tant qu’objets uniques, utilisez le format compatible JSON et incluez le champ souhaité dans le paramètre fields
du corps de la requête. Par exemple :{"name":"app_metadata"}
Comme vous ne pouvez exporter que jusqu’à 30 champs, l’utilisation du format JSON est conseillée si les données utilisateur ont de nombreux champs.Dans les fichiers CSV exportés par l’utilisateur, nous mettons en échappement les données de type chaîne conformément aux normes OWASP pour l’atténuation des injections CSV :
- Les caractères à guillemets simples sont précédés d’un caractère à guillemets doubles.
- Chaque chaîne est précédée d’un caractère à guillemets simples.
- Chaque chaîne est entourée de guillemets doubles.
Format compatible JSON
Si vous exportez les données au format compatible JSON, vous ne devez fournir que la propriété racine; vous n’avez pas besoin de nommer chaque propriété interne puisqu’elles seront incluses automatiquement. Les fichiers d’exportation d’Auth0 utilisent le format NDJSON en raison de la taille importante des fichiers d’exportation, tandis que la fonctionnalité d’importation exige un fichier JSON. Avant de pouvoir importer des utilisateurs en utilisant un export généré par Auth0, vous devrez convertir le fichier de NDJSON à JSON en utilisant la bibliothèque de votre choix (telle que jq). Dans ce cas, pour le même exemple que nous avons utilisé précédemment, la requête ressemblerait à ceci :Vérifier le statut de l’exportation
Une fois que vous avez créé votre job pour exporter vos utilisateurs, vous pouvez vérifier son statut en utilisant le point de terminaison Get a Job. Indiquez l’ID de la tâche (que vous avez reçu dans la réponse lors de la création de la tâche). Si vous utilisez l’exemple de demande ci-dessous, remplacez le paramètre fictif{yourJobId}
par la valeur de l’ID.
Permissions requises : create:users
, read:users
, create:passwords_checking_job
Recherche des données d’exportation
Vous pouvez accéder à vos fichiers d’exportation en utilisant l’URL fournie comme valeur du paramètre location. Le nom de votre locataire est également le nom de votre fichier. Par exemple, si votre nom de locataire estauth0docs
, votre fichier sera auth0docs.csv
ou auth0docs.json
. Lorsque vous naviguez vers l’URL, le téléchargement du fichier débutera automatiquement.
Le lien de téléchargement est valable pendant 60 secondes. Si ce délai expire, vous disposez de 24 heures pour l’appeler à nouveau avant que la tâche n’expire.