QannasAPI

La salle des machines

← qannasapi.com

Une clé. Tout le catalogue. Un reçu sur chaque réponse.

QannasAPI est l’API unifiée de données du web public qui alimente les jobs clé en main de notre page d’accueil. Un POST, un jeton bearer, une enveloppe JSON — personnes, entreprises, contacts, sites web, SERP, publicités, cartes et les petites annonces du Golfe. Estimez n’importe quel appel gratuitement, ne payez que les résultats, et lisez le montant exact facturé dans les headers de réponse.

Crédits offerts une seule fois · les clés qk_test_ ne facturent jamais · un appel sans résultat renvoie data: null et facture 0

Pas développeur ? Les jobs de notre page d’accueil exécutent ces mêmes endpoints — sans écrire de code.

Aperçu

Ce que vous obtenez derrière une seule clé

La plomberie qu’une équipe data devrait sinon construire et maintenir — déjà derrière le même jeton bearer.

Une clé, une facture, un schéma

Chaque action renvoie la même enveloppe : { status, request_id, data }. Le code écrit pour votre premier appel fonctionne encore au dix-millième.

Facturation au succès

Un appel sans résultat renvoie HTTP 200 avec data: null et X-Credits-Charged: 0. Les pannes en amont ne sont jamais facturées et peuvent être relancées sans risque.

Des estimations gratuites sur tout

POST /v1/data/{action}:estimate chiffre le coût en crédits et ne facture rien. Les workflows acceptent aussi dry_run: true.

Workflows côté serveur

Six jobs chaînés s’exécutent de notre côté avec une facturation au succès étape par étape — un appel au lieu de cinq, et vous ne payez que les étapes qui ont produit des données.

Démarrage rapide

Premier appel en trois étapes

Pas de proxies à faire tourner, pas de navigateurs headless à surveiller, pas de parsers à réparer.

  1. 1. Créez une cléCréez un espace de travail, confirmez votre e-mail, puis créez une clé qk_live_ ou qk_test_. Chaque requête porte Authorization: Bearer.
  2. 2. Estimez gratuitementPOST /v1/data/{action}:estimate renvoie le coût en crédits de l’appel que vous vous apprêtez à faire et ne facture rien.
  3. 3. Lancez l’appelLa même enveloppe à chaque fois. Lisez X-Credits-Charged et X-Credits-Balance dans les headers de réponse pour savoir exactement ce que cela a coûté.
estimate-then-call.sh
# 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":{...}}

Les clés qk_test_ ne débitent aucun crédit et sont soumises à un quota par espace de travail. Les chaînes touchant une source payante renvoient des fixtures déterministes ; les chaînes entièrement de première partie peuvent renvoyer des données en direct.

MCP & agents

Un serveur MCP hébergé, en lecture seule à périmètre défini

Le même catalogue, exposé aux agents IA via Streamable HTTP JSON-RPC 2.0 — y compris les six workflows, chacun avec un devis dry_run gratuit.

Endpoint

POSThttps://api.qannasapi.com/mcp

Streamable HTTP · JSON-RPC 2.0 · 34 tools · 13 read-only scopes

34 outils à périmètre défini

28 outils de données et d’utilisation plus les 6 outils de workflow. Appelez tools/list pour découvrir l’ensemble actuel pour votre jeton plutôt que de vous fier à une liste copiée.

Lecture seule par construction

Les 13 périmètres sont tous en lecture. Il n’existe aucun périmètre d’écriture à retenir — un jeton peut consulter des informations et ne peut jamais rien modifier, envoyer ou supprimer.

Des jetons en refus par défaut

Les jetons qm_ sont affichés une seule fois, stockés sous forme d’empreinte SHA-256, créés par les propriétaires et administrateurs de l’espace de travail, et révoqués instantanément (la requête suivante échoue).

Coût rapporté dans la réponse

Chaque résultat d’outil porte _credits_charged et _credits_balance, pour qu’un agent puisse dire à l’utilisateur ce qu’un appel a coûté sans requête supplémentaire.

Authentification : lisez ceci avant de planifier une intégration

L’endpoint MCP accepte actuellement un jeton bearer statique — il n’y a pas encore d’OAuth, même si c’est sur la feuille de route. En pratique, cela signifie que tout client disposant d’un champ d’en-tête personnalisé peut se connecter dès aujourd’hui, tandis que les annuaires de connecteurs hébergés exigeant un flux de connexion OAuth ne le peuvent pas encore. Nous ne désignons aucun client comme pris en charge tant qu’il n’a pas passé nos propres tests de validation en staging.

Lacunes connues — listées délibérément

  • Les curseurs delta (since_cursor / track_delta) sont réservés au REST et ne sont pas transmis aux outils MCP.
  • Les contacts vérifiés par consensus, les petites annonces et les signaux de recrutement sont réservés au REST. Les workflows d’agents y accèdent via une recette, pas via un appel d’outil.
  • Les appels MCP dépensent toujours de vrais crédits — il n’existe pas de bac à sable avec clé de test sur le chemin des jetons qm_.

Tout client MCP dont les réglages acceptent une URL et un en-tête personnalisé peut se connecter : nom d’en-tête Authorization, valeur Bearer suivie de votre jeton. Des configurations à copier-coller pour chaque client sont publiées au fur et à mesure que chacun passe nos tests de validation.

SDK & outillage

Générez un client, ou lisez simplement la spécification

Le document OpenAPI 3.1 est le contrat ; tout le reste en est généré.

OpenAPI 3.1

La spécification publique complète, hébergée sur ce site et prête à être pointée par un générateur.

Référence interactive

Chaque endpoint, schéma et exemple, consultable — avec les corps de requête que vous enverrez réellement.

Collections Postman

La collection API plus les collections de recettes, générées à partir de la même spécification pour qu’elles ne puissent pas diverger.

Adaptateurs d’automatisation

Les nœuds et connecteurs pour les plateformes d’automatisation courantes sont construits ; les publications sur les marketplaces sont en cours.

Tarifs & mesure

Vous pouvez auditer chaque facturation depuis la réponse

Des crédits, des prix publics par action, et trois headers qui vous disent exactement où vous en êtes.

Des headers sur chaque appel de données

X-Credits-Charged, X-Credits-Balance et X-Price-Book. Pas de rapprochement en fin de mois, pas de devinettes.

Prix par résultat sur les recherches

Les recherches facturent par contact trouvé, pas par tentative. Une recherche plus large coûte plus cher parce qu’elle renvoie davantage.

Évaluation gratuite

Une dotation de crédits offerte une seule fois à l’inscription, plus des clés qk_test_ qui ne facturent jamais et sont soumises à un quota par espace de travail.

Volume et enterprise

Grilles de prix personnalisées, paliers de limites de débit supérieurs et plafonds de dépense provisionnés pour les équipes qui opèrent à grande échelle.

Fiabilité

Jugez-nous sur nos chiffres

Des taux de réussite publiés

GET /v1/public/hit-rates renvoie des statistiques anonymisées et protégées par cohorte sur la fréquence à laquelle nous renvoyons réellement des données. Aucune clé requise.

Les estimations ne coûtent rien

Chiffrez n’importe quelle action ou n’importe quel workflow avant de le lancer, aussi souvent que vous le souhaitez, pour zéro crédit.

Des échecs honnêtes

Une chaîne non routée renvoie 501 not_implemented plutôt qu’un résultat vide plausible — et les erreurs en amont ne sont jamais facturées.

Commencez par une estimation gratuite.

Créez une clé, chiffrez un appel, et constatez tout le contrat par vous-même avant de dépenser un crédit.