Que peut demander votre code sur n’importe quel domaine ?
En une phrase
CrawlCheck pour les développeurs est une API documentée — chaque opération dans un fichier OpenAPI 3.1 avec un exemple complet — qui renvoie sans clé une réponse signée et vérifiable hors ligne sur n’importe quel domaine, ainsi que des volets de mesure comptabilisés, des SDK typés, des clés de signature publiées et une suite de conformité pour quiconque bâtit sur les spécifications ou les implémente.
GET https://crawlcheck.io/api/v1/resolve?domain=example.com
POST https://crawlcheck.io/api/v1/preflightLa réponse signée et la décision de preflight ne nécessitent aucune clé. Une clé ajoute les volets de mesure — analyses, lots, enregistrements machine avec les octets derrière chaque constat, exports OpenTelemetry et PROV, webhooks et une barrière CI — comptabilisés sur un quota publié avec le forfait. Chaque réponse se vérifie hors ligne avec les clés de signature publiées.
Payer ne change jamais une mesure. Démarrage rapide · openapi.json · Conformité
Docs. Spécifications. Clés.
API
Chaque opération, avec un exemple.
La référence est générée depuis le service en production : 274 opérations, chacune avec un exemple complet et la barrière derrière laquelle elle se trouve. Le démarrage rapide amène un agent à sa première décision signée en une minute.
Spécifications
Les contrats derrière la réponse.
Resolve est le protocole ; l’en-tête de reçu, l’agrafe, Resolve par DNS, le verrou d’outils et le protocole d’observateur sont les spécifications contre lesquelles un éditeur implémente. Chacune a un document versionné et une suite de conformité.
Clés
Publiées, renouvelées, vérifiables.
Les clés de signature sont publiées avec leur registre de rotation ; un seul script sans dépendance vérifie hors ligne toute réponse, tout reçu ou tout export. Une clé de licence est créée depuis la page des tarifs et affichée une seule fois ; les quotas et les conditions sont publics.
Clés de signature · Conditions de l’API · Forfaits et quotas
9 opérations dont un agent a besoin, versionnées et maintenues.
Elles restent sous /api/v1 et continuent de répondre au moins 180 jours après l’annonce d’une /api/v2. Les champs stables ne changent que dans une nouvelle version majeure ; tout ce qu’elles renvoient se vérifie hors ligne.
| Pour | Appel | Ce que vous obtenez |
|---|---|---|
| demander | GET /api/v1/resolve | une réponse signée sur un domaine : ce qu’il autorise, sert et déclare, et une décision par action |
| demander | POST /api/v1/resolve | la même chose pour 1 à 100 domaines |
| décider | POST /api/v1/preflight | une décision signée pour une action, avec un reçu à conserver |
| reçu | GET /api/v1/decisions/{sha256} | pour un site : vérifier le reçu qu’un agent présente dans l’en-tête CrawlCheck-Receipt |
| révocation | GET /api/v1/revocations | la liste signée des domaines dont les décisions connect et transact sont révoquées maintenant |
| visiteur | GET /api/v1/visitor | pour un site : cette requête vient-elle vraiment de l’agent qu’elle nomme |
| visiteur | POST /api/v1/visitor | la même chose pour 1 à 100 requêtes |
| mcp | GET /api/v1/mcp/scan | avant de se connecter : les outils qu’un serveur MCP distant liste, analysés contre l’empoisonnement |
| mcp | POST /api/v1/mcp/lock/check | avant chaque session : comparer les outils d’un serveur au lockfile conservé |
Marquées x-core dans /openapi.json · La liste en JSON · Politique de compatibilité
9 documents sur lesquels un éditeur s’appuie pour implémenter.
Chacun est un document versionné ; ce service en est l’implémentation de référence.
- Protocole Resolve
La réponse signée sur un domaine : points d’accès, signature, vérification hors ligne et versionnage. - En-tête de reçu
Comment un agent qui a demandé avant d’agir le prouve au site sur lequel il agit. - Staple
Un site sert sa propre réponse signée, pour qu’un agent la vérifie sans requête supplémentaire. - Resolve par DNS
La réponse signée de chaque domaine sous forme d’enregistrement TXT. - Lockfile d’outils MCP
Fige les outils qu’un opérateur a approuvés sur un serveur MCP ; le client refuse tout changement. - Protocole d’observateur
Faire tourner un observateur indépendant : enregistrer une clé et signer ce que votre réseau a reçu. - Suite d’acceptation du guard
Les cas de test signés que tout guard doit réussir avant qu’un agent n’agisse. - Accord de niveau de service
Objectifs de disponibilité et de latence pour les offres payantes. - Erreurs, sécurité et confidentialité
Ce qui peut échouer, et comment chaque réponse et chaque document signé traitent la sécurité et la confidentialité.
Demander, vérifier et protéger en un appel.
TypeScript et JavaScript
npm i @crawlcheck/sdkVersion 1.5.2 sur npm ; la même archive est servie sur /sdk.
MCP
claude mcp add --transport http crawlcheck https://crawlcheck.io/mcpRéférencé dans le registre MCP officiel sous io.github.emmanuelorta/crawlcheck.
Rien ici n’a besoin d’être cru sur parole.
- Clés de signature
Publiées avec leur historique de rotation. - Le vérificateur
Un seul fichier, sans dépendances ; vérifie hors ligne toute réponse, tout reçu ou export. - Suite de conformité
Les vecteurs de test qu’une implémentation doit réussir. - Le règlement
Chaque code de constat et sa signification.
curl -o bundle.json "https://crawlcheck.io/api/bundle?id=<id>"
curl -O https://crawlcheck.io/crawlcheck-verify.mjs
node crawlcheck-verify.mjs bundle.jsonSHA-256 du vérificateur servi aujourd’hui : b22547e95463d03e1c4177ae6de8ba23c1316629766f0138375edf12d9d77183. Vérifier un enregistrement dans le navigateur →
Publiés avec le forfait.
| Offre | Analyses par mois | Requêtes avec clé par mois |
|---|---|---|
| Developer | 2 000 | 100 000 |
| Growth | 20 000 | 1 000 000 |
| Watch | 500 | 10 000 |
| Agency | 5 000 | 50 000 |
| Network | 20 000 | 250 000 |
La réponse signée, la décision de preflight et l’analyse gratuite ne sont pas décomptées. Offres → · Conditions de l’API → · Politique de compatibilité →
104 des 274 opérations, réparties en 5 volets.
La carte des volets est le sous-ensemble guidé ; le nombre d’opérations et la référence complète sont générés depuis le fichier OpenAPI que le service publie.
| Volet | Opérations | Par exemple |
|---|---|---|
| Décider | 57 opérations · 46 sans clé | GET /api/v1/resolvePOST /api/v1/preflightGET /api/v1/resolve-prefix/{prefix} |
| Mesure | 6 opérations · 3 sans clé | GET /sandboxPOST /api/v1/scanPOST /api/scan |
| Lire | 23 opérations · 9 sans clé | GET /api/v1/reports/{id}GET /r/{id}.jsonGET /r/{id}.raw.json |
| Données | 5 opérations · 5 sans clé | GET /api/public/countsGET /api/corpus/stateGET /api/telemetry |
| Outils | 13 opérations · 9 sans clé | POST /api/tool/verifyGET /api/tool/robotsGET /api/tool/llms |
Tout le reste, en une liste.
Lisible par les machines
- /openapi.json — OpenAPI 3.1
- /.well-known/api-catalog
- Carte de serveur MCP
- /.well-known/crawlcheck.json — le manifeste pour agents, signé
- /llms.txt
- SDK sur npm et PyPI, identiques octet pour octet aux archives servies ici