Gérer les contacts avec la CLI FirstSales
CRUD sur les contacts, listes et tags en ligne de commande — créations idempotentes, imports en masse, exports et suppressions volontaires limitées à un org et un workspace.
- 1
Lister et lire les contacts
Tout est rattaché à une organisation et un workspace. Commencez en lecture seule — listez les contacts, puis récupérez-en un par ID :
firstsales contacts list --org ORG_ID --workspace WS_ID --json firstsales contacts get --org ORG_ID --workspace WS_ID --contact CONTACT_ID - 2
Créer et mettre à jour un contact
Créez avec une clé d'idempotence pour éviter les doublons lors des relances ; la mise à jour ne modifie que les champs que vous envoyez :
firstsales contacts create --org ORG_ID --workspace WS_ID \ --data '{"email":"jane@acme.com","first_name":"Jane","company_name":"Acme"}' \ --idempotency-key jane-acme-2026-01 firstsales contacts update --org ORG_ID --workspace WS_ID \ --contact CONTACT_ID --data '{"job_title":"VP Sales"}' - 3
Organiser avec des listes
Les listes de contacts déterminent à qui une campagne envoie ses e-mails. Créez, renommez et supprimez des listes depuis le CLI :
firstsales contact-lists list --org ORG_ID --workspace WS_ID firstsales contact-lists create --org ORG_ID --workspace WS_ID \ --data '{"name":"Q1 SaaS founders"}' firstsales contact-lists update --org ORG_ID --workspace WS_ID \ --list LIST_ID --data '{"name":"Q1 SaaS founders (US)"}' - 4
Gérer les tags en masse
Les tags sont des étiquettes libres appliquées aux contacts. Vous pouvez renommer (ce qui fusionne) ou supprimer un tag partout où il apparaît — la suppression est destructive, elle nécessite donc
--confirm:firstsales contact-tags list --org ORG_ID --workspace WS_ID firstsales contact-tags rename --org ORG_ID --workspace WS_ID \ --data '{"from":"founder","to":"founders"}' firstsales contact-tags delete --org ORG_ID --workspace WS_ID \ --data '{"tag":"stale"}' --confirm - 5
Import en masse
Poussez un lot de contacts via un job d'import. Ciblez une liste ; la plateforme dédoublonne par e-mail côté serveur, donc réimporter les mêmes personnes ne créera pas de doublons :
firstsales contact-imports create --org ORG_ID --workspace WS_ID \ --data-file ./leads.json \ --idempotency-key import-2026-01 - 6
Exporter ce que vous avez filtré
Listez vos jobs d'export / récupérez vos contacts en CSV pour du reporting ou une sauvegarde :
firstsales contact-exports list --org ORG_ID --workspace WS_ID - 7
Supprimer avec discernement
Supprimer un contact est destructif et nécessite
--confirm. Préférez laisser le nettoyage suppresser automatiquement les mauvaises adresses plutôt qu'une suppression définitive — la suppression est permanente :firstsales contacts delete --org ORG_ID --workspace WS_ID \ --contact CONTACT_ID --confirm
Astuces de pro
Des raccourcis chèrement acquis pour garder le préchauffage sur la bonne voie.
Segmentez avec les listes, étiquetez avec les tags
Les listes décident à qui une campagne envoie ; les tags sont des étiquettes transverses pour le filtrage. Utilisez les deux — un contact peut appartenir à une liste et porter de nombreux tags.
L'import est idempotent et dédupliqué
La déduplication par e-mail côté serveur signifie qu'un import relancé ne dupliquera pas votre liste. Passez tout de même --idempotency-key pour que le job d'import lui-même ne soit pas créé deux fois.
Ne supprimez pas définitivement pour suspendre l'envoi
Pour arrêter d'écrire à quelqu'un, laissez le nettoyage le marquer comme dirty ou fiez-vous au statut bounced/unsubscribed — ceux-ci s'excluent automatiquement. Réservez contacts delete --confirm à une véritable suppression.
rename fusionne les tags
Renommer un tag vers un nom existant les fusionne. Pratique pour nettoyer « founder » vs « founders » — mais ce n'est pas réversible, vérifiez donc le nom cible au préalable.
Questions fréquentes
Comment les contacts sont-ils rattachés ?
À une organisation et un workspace. Chaque commande de contact prend --org et --workspace ; les mêmes ID de contact ne se résoudront pas dans un autre workspace.
Comment éviter les doublons de contacts à l'import ?
Les imports dédupliquent par e-mail côté serveur, donc réimporter les mêmes personnes les ajoute à la liste sans créer de doublons. Passez --idempotency-key pour que le job d'import lui-même soit aussi sûr à relancer.
Quelle est la différence entre les listes et les tags ?
Les listes définissent l'audience à laquelle une campagne envoie ; les tags sont des étiquettes libres pour le filtrage et la segmentation. Un contact appartient à des listes et peut porter de nombreux tags.
Comment retirer un tag partout ?
contact-tags delete --confirm le retire de tous les contacts, et contact-tags rename fusionne un tag dans un autre. Les deux sont destructifs, la suppression nécessite donc --confirm.
Puis-je exporter mes contacts ?
Oui — utilisez contact-exports pour récupérer vos contacts en CSV. Dans l'application, l'export reflète votre filtre/sélection actuel ; via l'API, vous travaillez avec des jobs d'export.
Dois-je supprimer les contacts en bounce ?
Généralement non. Les contacts en bounce, désabonnés ou signalés par le nettoyage (dirty) sont automatiquement exclus des envois, la suppression est donc rarement nécessaire. Ne supprimez définitivement que lorsque vous voulez vraiment faire disparaître l'enregistrement, et cela nécessite --confirm.
Prêt à passer à la pratique ?
Démarrez votre essai FirstSales et lancez une boîte mail préchauffée et authentifiée en quelques minutes.
Commencer pour 1 $