Gerencie Contatos com a CLI do FirstSales
Faça CRUD de contatos, listas e tags pela linha de comando — criações idempotentes, importações em massa, exportações e exclusões deliberadas com escopo de org e workspace.
- 1
Liste e leia contatos
Tudo é limitado a uma organização e a um workspace. Comece apenas lendo — liste contatos, depois busque um pelo ID:
firstsales contacts list --org ORG_ID --workspace WS_ID --json firstsales contacts get --org ORG_ID --workspace WS_ID --contact CONTACT_ID - 2
Crie e atualize um contato
Crie com uma chave de idempotência para que novas tentativas não dupliquem; a atualização aplica patch apenas nos campos que você enviar:
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
Organize com listas
Listas de contatos são como você segmenta para quem uma campanha envia. Crie, renomeie e exclua listas pela 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
Gerencie tags em massa
Tags são rótulos livres entre contatos. Você pode renomear (o que faz uma fusão) ou excluir uma tag em todos os lugares onde ela aparece — a exclusão é destrutiva, então exige
--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
Importação em massa
Envie um lote de contatos com um job de importação. Aponte para uma lista; a plataforma remove duplicatas por e-mail no servidor, então reimportar as mesmas pessoas não vai criar cópias:
firstsales contact-imports create --org ORG_ID --workspace WS_ID \ --data-file ./leads.json \ --idempotency-key import-2026-01 - 6
Exporte o que você filtrou
Liste seus jobs de exportação / recupere contatos como CSV para relatórios ou backup:
firstsales contact-exports list --org ORG_ID --workspace WS_ID - 7
Exclua com cuidado
Remover um contato é destrutivo e exige
--confirm. Prefira deixar a limpeza suprimir automaticamente endereços ruins em vez de excluir permanentemente — a exclusão é definitiva:firstsales contacts delete --org ORG_ID --workspace WS_ID \ --contact CONTACT_ID --confirm
Dicas de especialista
Atalhos conquistados na prática que mantêm o aquecimento nos trilhos.
Segmente com listas, rotule com tags
Listas decidem para quem uma campanha envia; tags são rótulos transversais para filtragem. Use os dois — um contato pode estar em uma lista e carregar várias tags.
A importação é idempotente e sem duplicação
A remoção de duplicatas por e-mail no servidor significa que rodar uma importação de novo não vai dobrar sua lista. Ainda assim, passe --idempotency-key para que o próprio job não seja criado duas vezes.
Não exclua permanentemente para suprimir
Para parar de enviar e-mail a alguém, deixe a limpeza marcá-lo como sujo ou confie no status de bounce/descadastrado — ambos excluem automaticamente. Reserve contacts delete --confirm para uma remoção genuína.
renomear funde tags
Renomear uma tag para um nome já existente as funde. Útil para arrumar 'founder' vs 'founders' — mas não é reversível, então confira o nome de destino antes.
Perguntas frequentes
Como os contatos são delimitados?
A uma organização e um workspace. Todo comando de contato leva --org e --workspace; os mesmos IDs de contato não vão resolver em um workspace diferente.
Como evito contatos duplicados na importação?
As importações removem duplicatas por e-mail no servidor, então reimportar as mesmas pessoas as adiciona à lista sem criar cópias. Passe --idempotency-key para que o próprio job de importação também seja seguro para repetir.
Qual é a diferença entre listas e tags?
Listas definem o público para quem uma campanha envia; tags são rótulos livres para filtragem e segmentação. Um contato pertence a listas e pode carregar várias tags.
Como eu removo uma tag de todos os lugares?
contact-tags delete --confirm a remove de todos os contatos, e contact-tags rename funde uma tag em outra. Ambas são destrutivas, então a exclusão exige --confirm.
Posso exportar meus contatos?
Sim — use contact-exports para recuperar contatos como CSV. No app, a exportação reflete seu filtro/seleção atual; via API você trabalha com jobs de exportação.
Devo excluir contatos que sofrem bounce?
Geralmente não. Contatos com bounce, descadastrados e sinalizados pela limpeza (sujos) são automaticamente excluídos dos envios, então a exclusão raramente é necessária. Exclua permanentemente só quando você realmente quiser que o registro desapareça, e isso exige --confirm.
Pronto para colocar isso em prática?
Comece seu teste do FirstSales e lance uma caixa de e-mail aquecida e autenticada em minutos.
Comece por $1