NuevoVer cómo
Inicio/Tutoriales/Gestionar contactos con la CLI de FirstSales
Desarrollador y CLI

Gestionar contactos con la CLI de FirstSales

Crea, lee, actualiza y elimina contactos, listas y etiquetas desde la línea de comandos — creaciones idempotentes, importaciones masivas, exportaciones y borrados deliberados con alcance a un org y workspace.

8 min de lectura·Avanzado·7 pasos
  1. 1

    Lista y lee contactos

    Todo está delimitado por una organización y un workspace. Comienza en modo de solo lectura — lista contactos, luego obtén uno por ID:

    firstsales contacts list --org ORG_ID --workspace WS_ID --json
    firstsales contacts get --org ORG_ID --workspace WS_ID --contact CONTACT_ID
  2. 2

    Crea y actualiza un contacto

    Crea con una clave de idempotencia para que los reintentos no dupliquen; actualizar aplica un parche solo a los campos que envíes:

    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. 3

    Organiza con listas

    Las listas de contactos son cómo segmentas a quién le envía una campaña. Crea, renombra y elimina listas desde la 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. 4

    Gestiona etiquetas en masa

    Las etiquetas son rótulos libres a través de los contactos. Puedes renombrar (lo que fusiona) o eliminar una etiqueta en todos los lugares donde aparece — eliminarla es destructivo, así que requiere --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. 5

    Importación masiva

    Envía un lote de contactos con un trabajo de importación. Apúntalo a una lista; la plataforma deduplica por correo en el servidor, así que reimportar a las mismas personas no crea copias:

    firstsales contact-imports create --org ORG_ID --workspace WS_ID \
      --data-file ./leads.json \
      --idempotency-key import-2026-01
  6. 6

    Exporta lo que filtraste

    Lista tus trabajos de exportación / recupera contactos como CSV para reportes o respaldo:

    firstsales contact-exports list --org ORG_ID --workspace WS_ID
  7. 7

    Elimina con cuidado

    Eliminar un contacto es destructivo y requiere --confirm. Prefiere dejar que la limpieza suprima automáticamente las direcciones malas en lugar de eliminarlas permanentemente — la eliminación es definitiva:

    firstsales contacts delete --org ORG_ID --workspace WS_ID \
      --contact CONTACT_ID --confirm

Consejos de experto

Atajos aprendidos a fuerza de experiencia para mantener el precalentamiento en curso.

1

Segmenta con listas, etiqueta con tags

Las listas deciden a quién le envía una campaña; las etiquetas son rótulos transversales para filtrar. Usa ambas — un contacto puede estar en una lista y llevar muchas etiquetas.

2

La importación es idempotente y deduplicada

La deduplicación en el servidor por correo significa que volver a ejecutar una importación no duplicará tu lista. Aun así pasa --idempotency-key para que el propio trabajo no se cree dos veces.

3

No elimines permanentemente para suprimir

Para dejar de enviarle a alguien, deja que la limpieza lo marque como sucio o confía en el estado rebotado/desuscrito — esos se excluyen automáticamente. Reserva contacts delete --confirm para una eliminación genuina.

4

rename fusiona etiquetas

Renombrar una etiqueta a un nombre existente las fusiona. Útil para limpiar 'founder' vs 'founders' — pero no es reversible, así que revisa el nombre destino primero.

Preguntas frecuentes

¿Cómo están delimitados los contactos?

Por una organización y un workspace. Cada comando de contacto lleva --org y --workspace; los mismos IDs de contacto no se resuelven en otro workspace.

¿Cómo evito contactos duplicados al importar?

Las importaciones deduplican por correo en el servidor, así que reimportar a las mismas personas las agrega a la lista sin crear copias. Pasa --idempotency-key para que el propio trabajo de importación también sea seguro de reintentar.

¿Cuál es la diferencia entre listas y etiquetas?

Las listas definen la audiencia a la que le envía una campaña; las etiquetas son rótulos libres para filtrar y segmentar. Un contacto pertenece a listas y puede llevar muchas etiquetas.

¿Cómo elimino una etiqueta en todos lados?

contact-tags delete --confirm la elimina de todos los contactos, y contact-tags rename fusiona una etiqueta en otra. Ambas son destructivas, así que eliminar requiere --confirm.

¿Puedo exportar mis contactos?

Sí — usa contact-exports para recuperar contactos como CSV. En la app, la exportación refleja tu filtro/selección actual; vía la API trabajas con trabajos de exportación.

¿Debería eliminar los contactos que rebotan?

Generalmente no. Los contactos rebotados, desuscritos y marcados por la limpieza (sucios) se excluyen automáticamente de los envíos, así que rara vez hace falta eliminarlos. Elimina permanentemente solo cuando realmente quieras que el registro desaparezca, y requiere --confirm.

¿Listo para ponerlo en práctica?

Comienza tu prueba de FirstSales y lanza un buzón precalentado y autenticado en minutos.

Empieza por $1