La sala de máquinas
← qannasapi.comUna clave. Todo el catálogo. Un comprobante en cada respuesta.
QannasAPI es la API unificada de datos de la web pública que está debajo de los trabajos llave en mano de nuestra portada. Un POST, un token bearer, un sobre JSON — personas, empresas, contactos, sitios web, SERP, anuncios, mapas y los clasificados del Golfo. Estima cualquier llamada gratis, paga solo por resultados y lee el cargo exacto en los headers de la respuesta.
Créditos gratis, una sola vez · Las claves qk_test_ nunca facturan · Sin resultado devuelve data: null y cobra 0
¿No eres desarrollador? Los trabajos de nuestra portada ejecutan estos mismos endpoints — sin necesidad de código.
Resumen
Qué obtienes detrás de una clave
La infraestructura que un equipo de datos tendría que construir y mantener — ya detrás del mismo token bearer.
Una clave, una factura, un esquema
Cada acción devuelve el mismo sobre: { status, request_id, data }. El código que escribes para tu primera llamada sigue funcionando en la diezmilésima.
Facturación solo por resultados
Una llamada que no devuelve resultado es HTTP 200 con data: null y X-Credits-Charged: 0. Los fallos de origen nunca se facturan y se pueden reintentar sin riesgo.
Estimaciones gratis en todo
POST /v1/data/{action}:estimate cotiza el costo en créditos y no cobra nada. Los workflows también aceptan dry_run: true.
Workflows del lado del servidor
Seis trabajos encadenados se ejecutan de nuestro lado con facturación solo por resultados por paso — una llamada en lugar de cinco, y pagas solo por los pasos que produjeron datos.
Quickstart
Primera llamada en tres pasos
Sin proxies que rotar, sin navegadores headless que vigilar, sin parsers que reparar.
- 1. Crea una claveCrea un espacio de trabajo, confirma tu correo electrónico y luego crea una clave qk_live_ o qk_test_. Cada solicitud lleva Authorization: Bearer.
- 2. Estima gratisPOST /v1/data/{action}:estimate devuelve el costo en créditos de la llamada que estás por hacer y cobra cero.
- 3. LlamaEl mismo sobre cada vez. Lee X-Credits-Charged y X-Credits-Balance en los headers de la respuesta para saber exactamente cuánto costó.
# 1 — what will this cost? (free)
curl -X POST https://api.qannasapi.com/v1/data/contacts/find-email:estimate \
-H "Authorization: Bearer $QANNAS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"query": "Jane Doe, Acme Logistics"}'
# 2 — run it. Same envelope, every time.
curl -X POST https://api.qannasapi.com/v1/data/contacts/find-email \
-H "Authorization: Bearer $QANNAS_API_KEY" \
-d '{"query": "Jane Doe, Acme Logistics"}'
# < 200 OK
# < X-Credits-Charged: 5
# < X-Credits-Balance: 95
# {"status":"OK","request_id":"...","data":{...}}Las claves qk_test_ cuestan cero créditos y están sujetas a la cuota del espacio de trabajo. Las cadenas que tocan una fuente de pago devuelven fixtures deterministas; las cadenas totalmente de primera parte pueden devolver datos en vivo.
MCP y agentes
Un servidor MCP alojado, de solo lectura y con alcance limitado
El mismo catálogo, expuesto a agentes de IA sobre Streamable HTTP JSON-RPC 2.0 — incluidos los seis workflows, cada uno con una cotización dry_run gratuita.
Endpoint
POSThttps://api.qannasapi.com/mcp
Streamable HTTP · JSON-RPC 2.0 · 34 tools · 13 read-only scopes
34 herramientas con alcance limitado
28 herramientas de datos y de uso más las 6 herramientas de workflows. Llama a tools/list para descubrir el conjunto vigente para tu token en lugar de confiar en una lista copiada.
Solo lectura por construcción
Los 13 alcances son de lectura. No hay alcance de escritura que retener — un token puede consultar cosas y nunca puede cambiar, enviar ni eliminar nada.
Tokens con denegación por defecto
Los tokens qm_ se muestran una sola vez, se almacenan como un digest SHA-256, los crean los propietarios y administradores del espacio de trabajo y se revocan al instante (la siguiente solicitud falla).
Reporte de costos dentro de la respuesta
Cada resultado de herramienta lleva _credits_charged y _credits_balance, así que un agente puede decirle al usuario cuánto costó una llamada sin una segunda solicitud.
Autenticación: lee esto antes de planear una integración
El endpoint MCP actualmente acepta un token bearer estático — todavía no hay OAuth, aunque está en la hoja de ruta. En la práctica eso significa que cualquier cliente con un campo de header personalizado se conecta hoy, mientras que los directorios de conectores alojados que exigen un flujo de inicio de sesión OAuth aún no pueden. No declaramos un cliente como compatible hasta que ha superado nuestra propia prueba de humo en staging.
Limitaciones conocidas — listadas a propósito
- Los cursores delta (since_cursor / track_delta) son solo REST y no se exponen a través de las herramientas MCP.
- Los contactos verificados por consenso, los anuncios de clasificados y las señales de contratación son solo REST. Los workflows de agentes llegan a ellos a través de una receta, no de una llamada a herramienta.
- Las llamadas MCP siempre gastan créditos reales — no hay sandbox de claves de prueba en la ruta de tokens qm_.
Cualquier cliente MCP cuya configuración acepte una URL más un header personalizado se conectará: nombre del header Authorization, valor Bearer seguido de tu token. Las configuraciones listas para copiar y pegar de clientes individuales se publican a medida que cada uno supera nuestra prueba de humo.
SDKs y herramientas
Genera un cliente, o simplemente lee la especificación
El documento OpenAPI 3.1 es el contrato; todo lo demás se genera a partir de él.
OpenAPI 3.1
La especificación pública completa, alojada en este sitio y lista para apuntarle un generador.
Referencia interactiva
Cada endpoint, esquema y ejemplo, navegable — con los cuerpos de solicitud que realmente vas a enviar.
Colecciones de Postman
La colección de la API más las colecciones de recetas, generadas desde la misma especificación para que no puedan desincronizarse.
Adaptadores de automatización
Los nodos y conectores para las plataformas de automatización más comunes están construidos; los listados en los marketplaces están en curso.
Recetarios
Recetas resueltas con aritmética real de créditos
Cada una muestra la estimación, la secuencia de llamadas y lo que realmente cuesta.
Estima antes de llamar
01Cotiza gratis el coste exacto en créditos de cualquier acción antes de ejecutarla.
Lee las cabeceras de créditos
02Audita cada cargo directamente en la respuesta, sin conciliación a fin de mes.
Gestiona resultados vacíos y reintentos
03Distingue un resultado vacío de un fallo y reintenta solo lo que es seguro reintentar.
Crea una lista de contactos
04Buscar, encontrar el correo, verificarlo — una llamada en vez de tres, facturada por paso.
Limpia una lista de correos
05Verifica una lista por lotes y recupera un informe de degradación, sin montar tu propia cola.
Conecta un cliente MCP
06Apunta un agente al servidor MCP alojado y deja que cotice su trabajo antes de hacerlo.
Los cursores delta filtran lo que recibes; no lo descuentan. Una verificación que no devuelve nada nuevo sigue sin cobrar nada, porque no se encontró nada.
Precios y medición
Puedes auditar cada cargo desde la respuesta
Créditos, precios públicos por acción y tres headers que te dicen exactamente en qué punto estás.
Headers en cada llamada de datos
X-Credits-Charged, X-Credits-Balance y X-Price-Book. Sin conciliación a fin de mes, sin adivinanzas.
Precio por resultado en las búsquedas
Las búsquedas cobran por contacto encontrado, no por intento. Una búsqueda más grande cuesta más porque devuelve más.
Evaluación gratuita
Una asignación única de créditos al registrarte, más claves qk_test_ que nunca facturan y están sujetas a la cuota del espacio de trabajo.
Volumen y enterprise
Listas de precios personalizadas, niveles de límite de tasa más altos y topes de gasto aprovisionados para equipos que operan a escala.
Fiabilidad
Júzganos por nuestros números
Tasas de éxito publicadas
GET /v1/public/hit-rates devuelve estadísticas anonimizadas y protegidas por cohortes sobre la frecuencia con la que realmente devolvemos datos. Sin clave necesaria.
Las estimaciones no cuestan nada
Cotiza cualquier acción o workflow antes de ejecutarlo, tantas veces como quieras, por cero créditos.
Fallos honestos
Una cadena sin ruta devuelve 501 not_implemented en lugar de un resultado vacío verosímil — y los errores de origen nunca se cobran.
Empieza con una estimación gratis.
Crea una clave, cotiza una llamada y comprueba todo el contrato por ti mismo antes de gastar un crédito.