Crea una lista de contactos verificada en una sola llamada
Lo que vas a construir: una lista verificada de personas en empresas que encajan con tus filtros, mediante el flujo lead-list del lado del servidor — primero cotizado, luego ejecutado y después exportado como CSV.
| Sección | Flujos del lado del servidor |
|---|---|
| Acciones usadas | POST /v1/data/workflows/lead-list:estimatePOST /v1/data/workflows/lead-list |
| Créditos | 7 por persona encontrada (peor caso) |
| Compatible con clave de prueba | No — necesita una clave real |
| Tiempo estimado | ~15 min |
| Requisitos previos | Una clave qk_live_ con saldo de créditos. Esta receta toca fuentes de pago, así que una clave de prueba devuelve datos fijos en lugar de resultados reales. |
Qué encadena el flujo
Por cada persona corren tres pasos de nuestro lado: encontrar candidatos que encajen con tus filtros, encontrar la dirección de correo y verificar esa dirección. Envías una petición en vez de orquestar tres, y cada paso solo se cobra cuando produce algo.
# Discover what is available to your key rather than
# trusting a list copied from a page.
curl https://api.qannasapi.com/v1/data/workflows \
-H "Authorization: Bearer $QANNAS_API_KEY"Cotízalo con dry_run
Envía el cuerpo del flujo con dry_run: true y obtienes el desglose de créditos por paso sin ejecutar nada. Este es el número contra el que presupuestar — asume que cada paso tiene éxito para cada persona.
curl -X POST https://api.qannasapi.com/v1/data/workflows/lead-list \
-H "Authorization: Bearer $QANNAS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"inputs": {"industry": "logistics", "country": "AE"},
"limit": 25,
"dry_run": true
}'
# < X-Credits-Charged: 0 # the quote is freeEjecútalo
Quita dry_run y envía el mismo cuerpo. Pon format en csv si quieres un fichero en vez de JSON; markdown también está disponible. La respuesta lleva las mismas cabeceras de créditos que cualquier otra llamada, así que puedes conciliar la ejecución con la cotización de inmediato.
# Same body, without dry_run. format: json | csv | markdown
curl -X POST https://api.qannasapi.com/v1/data/workflows/lead-list \
-H "Authorization: Bearer $QANNAS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"inputs": {"industry": "logistics", "country": "AE"},
"limit": 25,
"format": "csv"
}'
# < X-Credits-Charged: 138 # reconcile this against the quoteRefresca por delta
Activa track_delta en la primera ejecución y pasa el cursor devuelto como since_cursor en la siguiente para recibir solo lo que cambió. Ten en cuenta que el delta es un filtro sobre lo que recibes, no un descuento sobre lo que pagas.
# Run one: ask for a cursor.
curl -X POST https://api.qannasapi.com/v1/data/search/people \
-H "Authorization: Bearer $QANNAS_API_KEY" \
-d '{"query": "logistics AE", "track_delta": true}'
# Run two: receive only what changed.
# NOTE: delta filters what you RECEIVE. It is not a discount.
curl -X POST https://api.qannasapi.com/v1/data/search/people \
-H "Authorization: Bearer $QANNAS_API_KEY" \
-d '{"query": "logistics AE", "since_cursor": "cur_..."}'Resumen
| Patrón | Cómo |
|---|---|
| Cotizar | POST /v1/data/workflows/lead-list con dry_run: true |
| Ejecutar | El mismo cuerpo, sin dry_run |
| Pasos encadenados | búsqueda → buscar correo → verificar, facturado por paso |
| Formato de salida | format: json | csv | markdown |
| Refresco incremental | track_delta en la primera ejecución, since_cursor después |
| Forma del coste | Por persona encontrada, no por persona solicitada |
Lista para producción
- Cotiza con dry_run antes de cada ejecución programada, no solo la primera.
- Presupuesta contra el techo; concilia contra X-Credits-Charged.
- Guarda el cursor de delta con la lista, no en memoria de la aplicación.
- Revierifica las direcciones periódicamente — la entregabilidad se degrada.
Siguientes pasos
Ejecuta primero la estimación. No cuesta nada y aplica exactamente la misma aritmética que el contador.