Passer au contenu principal
Importez ou mettez à jour des utilisateurs en masse via le tableau de bord OneSignal en utilisant un fichier CSV ou la saisie manuelle. Les cas d’utilisation courants incluent la migration d’utilisateurs depuis une autre plateforme, la mise à jour des informations utilisateur et l’organisation des utilisateurs avec des Tags et des Segments.
Vous pouvez également mettre à jour ou créer des utilisateurs via l’API REST.

Import CSV

Utilisez un fichier CSV pour importer ou mettre à jour des adresses email, des numéros de téléphone, des identifiants externes, des Tags, la langue, le fuseau horaire, le pays et plus encore.

Exigences du CSV

Assurez-vous que votre fichier .csv respecte les exigences suivantes :
  • Encodage UTF-8 (sans BOM)
  • Pas de caractères non imprimables (pas de caractères spéciaux ou non-ASCII)
  • En-têtes de colonnes propres et uniques
  • Taille de fichier inférieure à 150 Mo (environ 2 millions de lignes)
  • Au moins un identifiant parmi les suivants :
    • external_id — Recommandé. Identifie les Utilisateurs à travers tous les Abonnements.
    • email — Requis pour créer de nouveaux abonnements email. Voir Validation d’adresse e-mail pour plus d’informations.
    • phone_number — Requis pour créer de nouveaux abonnements SMS.
    • subscription_id — Recommandé uniquement si vous suivez déjà les IDs d’abonnement OneSignal sur votre backend.
Un seul identifiant de chaque type est autorisé par ligne. Pour associer plusieurs emails ou numéros au même utilisateur, utilisez des lignes séparées partageant le même external_id.
  • Incluez external_id pour dédupliquer les utilisateurs. Assurez-vous qu’il correspond à l’ID utilisé dans la méthode SDK login — sinon il sera réinitialisé lorsque l’utilisateur ouvrira l’application.
  • Pour modifier le statut d’abonnement, la ligne doit inclure email, phone_number ou subscription_id. external_id seul ne suffit pas.
  • subscription_id ne lie ni ne fusionne les abonnements. Utilisez external_id pour ajouter de nouveaux emails ou numéros de téléphone à un utilisateur existant.

Colonnes CSV disponibles

external_id
Toute valeur alphanumérique unique
Voir ID externe pour plus d’informations.
email
Adresses email valides
Crée un abonnement email. Dédupliqué si déjà présent.
phone_number
Numéros de téléphone valides
Utilisez le format E.164 comme +15555551234. Crée un abonnement SMS.
subscription_id
UUID v4 attribué par OneSignal
Recommandé uniquement si vous suivez déjà les ID d’abonnement OneSignal sur votre backend.
subscribed
`yes`, `no`
Définit le statut d’abonnement. Nécessite email, phone_number ou subscription_id dans la même ligne — ne peut pas être utilisé avec external_id seul.
suppressed
`true`, `false`
false retire l’email des listes de suppression.
timezone_id
Fuseaux horaires au format IANA TZ
Voir IANA TZ.
country
Codes ISO 3166-2 à 2 caractères
language
Codes ISO 639-1 à 2 caractères
Voir ISO 639-1.
data tags
Valeurs alphanumériques
Jusqu’à 1 000 tags. Utilisez les en-têtes de colonne comme clés. Voir Tags.

Limites et restrictions des tags

Les limites de plan des tags s’appliquent par utilisateur, pas par application. Par exemple, si votre plan autorise 20 tags par utilisateur et qu’un utilisateur en a déjà 19, vous ne pouvez en ajouter qu’1 de plus — même si l’application peut avoir des clés de tag illimitées.
  • Utilisez le flux de travail Mises à jour en masse des tags pour exporter des utilisateurs, effacer les valeurs de tags indésirables et réimporter avec l’option de suppression activée.
  • Évitez les espaces dans les clés de tag — utilisez des underscores à la place.
Clés de tag réservées et restreintes Les clés de tag suivantes sont réservées et ne doivent pas être utilisées :
  • “user”
  • “subscription”
  • “message”
  • “template”
  • “app”
  • “org”
  • “custom_data”
  • “dynamic_content”
Si vous avez accidentellement défini l’une d’elles comme clé de tag, supprimez-la via l’API de mise à jour des utilisateurs. Écrasements et suppressions de tags Lors d’une importation CSV :
  • Les tags inclus dans votre CSV sont écrasés avec la valeur fournie.
  • Les tags non inclus dans votre CSV restent inchangés dans le dossier utilisateur.
Si un tag est encore présent après l’importation, vérifiez que :
  • La colonne d’en-tête contient la clé du tag.
  • La ligne ne contient aucune valeur.
  • Vous avez sélectionné l’option “Supprimer les tags avec des valeurs vides” dans l’écran de révision.
Autres sources d’ajout de tags Si des tags supprimés réapparaissent après l’importation, une intégration peut les réécrire automatiquement. Les sources courantes incluent :
  • Segment
  • HubSpot
  • Journeys
  • Méthodes de tagging du SDK
  • APIs personnalisées ou pipelines ETL
Examinez les mappages d’intégration et les déclencheurs d’événements pour vous assurer qu’ils ne remplacent pas vos modifications CSV.

Importer des tags depuis une seule colonne

Au lieu d’utiliser des en-têtes de colonne séparés pour chaque clé de tag, vous pouvez définir un seul en-tête tags, chaque ligne utilisateur contenant une carte JSON de toutes les paires clé-valeur entre guillemets. Ceci est particulièrement utile si vous avez précédemment exporté un CSV avec des tags et souhaitez le réimporter sans reformatage. Exemple d’en-tête :
external_id,email,tags
Exemples de lignes : Les tags doivent être formatés comme un objet JSON entre guillemets.
userA,example@email.com,"{""level"":""30"",""Color"":""teal""}"
Lors de l’import, OneSignal convertit automatiquement chaque paire clé-valeur en tags distincts pour l’enregistrement d’abonnement. Exemple : Suppression de tags en masse Pour supprimer des tags en masse, exportez vos données actuelles, videz les valeurs des tags et réimportez le CSV avec l’option de suppression activée.
1

Exportez vos données

  • Accédez à Audience > Abonnements dans le tableau de bord OneSignal. Activez uniquement les colonnes ID externe, ID d’abonnement et Tags (et optionnellement Email ou Numéro de téléphone).
  • Cliquez sur Exporter pour exporter le CSV.
Sélectionner les colonnes affichables pour l'export
2

Videz les valeurs des tags à supprimer

Ouvrez le CSV exporté dans un éditeur de texte et définissez les valeurs de chaque tag à supprimer comme une chaîne vide.Par exemple, une ligne avec des valeurs de tag avant édition :
Ligne avant édition
userA,example@email.com,"{""level"":""30"",""color"":""teal""}"
La même ligne après avoir vidé les valeurs des tags :
Ligne après avoir vidé les valeurs des tags
userA,example@email.com,"{""level"":"""",""color"":""""}"
Cela supprimera les tags level et color de l’utilisateur.
3

Réimportez le CSV avec l'option de suppression

  • Prenez le CSV modifié et importez-le.
  • Sur l’écran de Révision, sélectionnez Oui pour Supprimer les tags avec des valeurs vides. OneSignal supprime les tags avec des valeurs vides lors de l’importation.
Écran de révision avec l'option de suppression des tags avec des valeurs vides
Pour supprimer uniquement des tags spécifiques, videz les valeurs de ces tags et laissez les autres inchangés. Seules les valeurs vides sont supprimées lorsque l’option de suppression est activée.
Besoin d’aide ?

Validation des adresses e-mail

La validation des adresses e-mail détecte les problèmes courants dans les adresses e-mail avant qu’elles n’atteignent votre audience. Elle signale les fautes de frappe, les domaines invalides, les adresses basées sur des rôles et les services d’e-mail jetables qui pourraient augmenter votre taux de rebond ou nuire à votre réputation d’expéditeur.

Validation des adresses e-mail

Validez les adresses e-mail lors de l’importation CSV et en masse pour réduire les rebonds et protéger votre réputation d’expéditeur.

Utiliser l’IA pour vérifier votre CSV avant d’importer

Si vous avez des erreurs ou des questions sur le formatage de votre CSV, vous pouvez décrire votre problème à un outil d’IA (comme Claude, ChatGPT ou similaire) pour nettoyer ou reconstruire automatiquement votre fichier avant de l’importer à nouveau.
Testez toujours avec un petit échantillon (5-10 lignes) avant d’importer des milliers d’enregistrements.
Exemple de prompt IA pour supprimer les tags indésirables
Je veux supprimer tous les tags sauf "user_name" de ce CSV.

Merci de :
1. Ne garder que la colonne de tag "user_name".
2. Supprimer toutes les autres colonnes de tags.
3. Formater le CSV pour qu'il corresponde aux exigences d'importation OneSignal de ce document :
   https://documentation.onesignal.com/docs/en/import

Voici mon CSV :
[COLLER LE CSV]

Étapes d’importation

Accédez à Audience > Importer et cliquez sur Lancer l’importateur CSV.
1

Téléchargez votre CSV

Sélectionnez votre fichier CSV préparé.
Écran de téléchargement du fichier CSV dans le tableau de bord OneSignal
2

Mapper les champs

OneSignal mappe automatiquement vos en-têtes CSV aux propriétés connues. Vérifiez les mappages avant de confirmer — utilisez external_id, email, phone_number et/ou subscription_id comme identifiants, pas comme tags.
Pour ajouter un nouvel email ou numéro de téléphone à un utilisateur existant, vous devez utiliser external_id. N’utilisez pas subscription_id — cela ne liera ni ne fusionnera les abonnements.
Écran de mappage des champs montrant les en-têtes de colonnes mappés aux propriétés OneSignal
Si OneSignal détecte des problèmes de format, corrigez le CSV et retéléchargez (recommandé) ou décochez la colonne affectée pour ignorer son importation.
3

Réviser et confirmer

L’écran de révision vous permet de :
  • Créer automatiquement un segment — Ajoute un tag à chaque utilisateur importé et crée un segment correspondant. Tenez compte des limites de votre forfait.
  • Supprimer les tags avec des valeurs vides — Supprime tout tag dont la valeur est vide dans le CSV. Utile pour nettoyer les tags indésirables et rester dans les limites de votre forfait.
  • Configurer la validation des adresses e-mail — Configurez les paramètres de validation des adresses e-mail pour réduire les rebonds et protéger votre réputation d’expéditeur.
Par exemple, pour le CSV suivant :
external_id,tag1,tag2
UserA,,"tag2value"
UserB,"tag1value",
Avec “Supprimer les tags avec des valeurs vides” activé, tag1 est supprimé de UserA et tag2 est supprimé de UserB.
Écran de révision avec options pour créer un segment et supprimer les tags vides
Cliquez sur Confirmer et importer. Un écran d’état affiche la progression.
L’importation a commencé. Vous recevrez un email de confirmation de contact@onesignal.com lorsqu’elle sera terminée.

Confirmation par email

Une fois l’import terminé, vous recevrez un email de confirmation de contact@onesignal.com avec les données suivantes. Un seul Utilisateur peut avoir plusieurs Abonnements (ex. email + push), donc les comptes d’abonnements peuvent être supérieurs au nombre de lignes. Enregistrement(s) d’abonnement ajouté(s) — Nouveaux Abonnements email ou SMS créés. 0 signifie qu’aucun identifiant unique email ou phone_number n’a été trouvé. Enregistrement(s) d’abonnement modifié(s)Abonnements dont les données ont changé (tags, propriétés, etc.). Exemple : 10 ID externes liés chacun à 20 abonnements = 200 enregistrements modifiés. Mises à jour d’abonnement ignoréesAbonnements ignorés pour la raison indiquée. Si la raison est “dépassement de la limite de tags de votre application”, supprimez des tags et réimportez ou mettez à niveau votre forfait. Non importé — Lignes qui n’ont pas été mises à jour ou importées. Causes courantes : l’external_id ne correspond à aucun abonnement existant, ou l’email/phone_number existe déjà sans nouvelles données à définir. Nouveau segment créé — Le nom du segment si vous avez sélectionné cette option.
Email de confirmation affichant les comptes d'abonnements ajoutés, modifiés, ignorés et non importés
Dans l’exemple ci-dessus :
  • 100 abonnements ont été créés à partir d’adresses email ou numéros de téléphone uniques qui n’existaient pas dans l’application.
  • 37,814 abonnements ont été mis à jour (pas le nombre d’Utilisateurs — chaque utilisateur peut avoir plusieurs abonnements).
  • 621,852 lignes n’ont pas été importées car leurs ID externes ne correspondaient pas à des utilisateurs existants, ou les emails/numéros de téléphone existaient déjà sans nouvelles données.
Les Segments comptent uniquement les Abonnements abonnés. Les abonnements désabonnés sont mis à jour par l’import mais ne sont pas reflétés dans les comptes de segments. Des améliorations de la segmentation sont en cours.

Historique des imports CSV

Vous pouvez voir l’historique des imports dans Audience > Importer > CSV > Voir les imports précédents (veuillez noter que les imports effectués à l’aide de notre précédent processus d’import CSV monocanal ne seront pas inclus dans cette liste).

API REST

Pour importer et mettre à jour des utilisateurs et abonnements via notre API REST :

Saisie manuelle

Accédez à Audience > Abonnements > Flèche à côté de Mettre à jour/Importer des utilisateurs > Ajouter manuellement des emails pour ouvrir une nouvelle fenêtre où vous pouvez ajouter l’email d’un utilisateur individuel et tous les tags de données que vous souhaitez associer à cet utilisateur.

FAQ

Combien de temps prend une importation CSV ?

La durée dépend de la taille du fichier. La plupart des importations se terminent en quelques minutes. Vous recevez un email de contact@onesignal.com lorsque l’importation est terminée — ajoutez cette adresse à vos contacts pour vous assurer de la recevoir.

Puis-je annuler une importation CSV ?

Non. Il n’y a pas de fonction d’annulation intégrée pour les importations CSV. Si vous devez annuler des modifications, préparez un nouveau CSV avec les valeurs correctes et réimportez-le. Pour les suppressions de tags, utilisez le flux de travail de Suppression de tags en masse.

Pourquoi les décomptes de mon segment ne correspondent-ils pas aux lignes de mon CSV ?

Les Segments ne comptent que les Abonnements abonnés. Les abonnements désabonnés sont mis à jour par l’importation mais ne sont pas reflétés dans les décomptes de segments.

Pourquoi mon importation affiche-t-elle “non importé” pour certaines lignes ?

Les lignes sont ignorées lorsque l’external_id ne correspond à aucun abonnement existant dans l’application, ou lorsque l’email ou le phone_number existe déjà sans nouvelles données à définir. Consultez la section Confirmation par email pour plus de détails sur chaque statut.

Pourquoi les tags supprimés continuent-ils à revenir ?

Une intégration ou un appel SDK peut réajouter les tags après votre importation. Les sources courantes incluent Segment, HubSpot, Journeys, les méthodes de tagging SDK et les API personnalisées. Vérifiez vos mappages d’intégration et les déclencheurs d’événements.