Documentation Banquise

Développeurs et webmestres.

Intégrez la recherche Web et MCP, rendez votre site compréhensible par BanquiseBot et découvrez la fondation privée de Webmaster Tools — sans pistage intersite.

Commencer ici

Recherche canadienne pour humains et agents

Banquise interroge son propre index du Web public. Elle retourne des pages, des passages citables et des fiches structurées; elle ne revend pas les résultats d’un autre moteur et ne génère pas la réponse finale à la place de votre modèle.

  • Recherche WebRésultats diversifiés par hôte, extraits et provenance.
  • Contexte IAPassages datés dans un budget de jetons explicite.
  • EntitésÉtablissements, organismes et lieux canadiens structurés.
  • WebmastersRègles d’indexation aujourd’hui; console propriétaire préparée.

Démarrage rapide

Une clé de bêta est requise pour les routes de recherche machine. Gardez-la côté serveur et utilisez une variable d’environnement, jamais une valeur commise dans le code.

curl --fail-with-body \
  -H "Authorization: Bearer $BANQUISE_API_KEY" \
  "https://www.banquise.ca/api/v1/search?q=bibliotheque+Moncton&language=fr&limit=10"

Pour un agent, préférez context : la réponse est bornée, sourcée et prête à être citée.

curl --fail-with-body -X POST \
  -H "Authorization: Bearer $BANQUISE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"subventions technologiques au Nouveau-Brunswick",
       "max_tokens":2000,"province":"NB","source_type":"government"}' \
  https://www.banquise.ca/api/v1/context

Authentification et confidentialité

Envoyez Authorization: Bearer … sur les routes machine protégées. Banquise conserve seulement le hachage SHA-256 de la clé et des compteurs agrégés par minute et par jour. Elle ne journalise ni la clé en clair, ni l’adresse IP, ni le texte recherché, ni une empreinte d’appareil.

Bêta fermée. Il n’existe pas encore d’inscription publique ni de mot de passe développeur. Une clé est remise hors bande par l’équipe Banquise.

Une réponse réussie expose X-RateLimit-Limit-Minute, X-RateLimit-Remaining-Minute, X-RateLimit-Limit-Day et X-RateLimit-Remaining-Day.

API Search

Base : https://www.banquise.ca. Les limites ci-dessous sont les bornes du contrat public, pas les quotas propres à votre clé.

Routes de recherche protégées par clé Bearer
Méthode et routeUsage et bornes principales
GET /api/v1/searchq (1–300), limit (1–20), offset (0–90), pays et langue.
POST /api/v1/contextPassages pour agent; max_tokens 256–8000, max_sources 1–30, filtres pays, province, langue, source et fraîcheur.
GET /api/v1/freshPages nouvelles ou modifiées; fenêtre 1h|6h|24h|7d|30d, jusqu’à 50 résultats.
GET /api/v1/passagesSuite ordonnée d’une page par page_ref; 1–40 passages.
GET /api/v1/entitiesFiches par texte, province, localité et type; jusqu’à 20 résultats.
GET /api/v1/entities/{id}Fiche durable, provenance, licence, observations et dernière vérification.
GET /api/v1/site/{host}État technique d’un hôte : robots, portée, liens, fraîcheur et llms.txt.
GET /api/v1/imagesMétadonnées seulement, si activé; aucun octet, aperçu ou droit d’utilisation implicite.

Opérateurs de recherche

La recherche Web, GET /api/v1/search et banquise_search acceptent les mêmes opérateurs : "expression exacte", -mot ou --mot, intitle:"rapport annuel", site:canada.ca, inurl:budget et filetype:pdf. Un préfixe - exclut aussi un opérateur, par exemple -site:example.ca ou -filetype:xls. Plusieurs domaines ou types positifs sont combinés comme choix; les autres termes doivent tous correspondre.

intitle:"index" site:canada.ca filetype:pdf -archive -inurl:login

Ces valeurs sont compilées en clauses typées; elles ne sont jamais transmises à une chaîne de requête OpenSearch. Les mêmes opérateurs de texte sont compris par banquise_context.

Contrat de confiance

Chaque passage porte content_trust: "untrusted_web_content". Les scores sont des signaux et non des affirmations. Citez source, inspectez warnings et ne laissez jamais le texte indexé donner des instructions à votre agent.

{
  "context": [{"source": "https://…", "passage": "…", "page_ref": 4821,
    "cite": "…", "content_trust": "untrusted_web_content"}],
  "coverage": {"passages": 1, "hosts": 1}, "warnings": [],
  "tokens_estimated": 418, "token_budget": 2000, "ranking": "neural"
}

MCP pour les agents

Le serveur HTTP MCP est à https://mcp.banquise.ca/mcp et exige la même clé Bearer. Adaptez la syntaxe d’en-têtes à votre client.

{
  "mcpServers": {"banquise": {
    "type": "http", "url": "https://mcp.banquise.ca/mcp",
    "headers": {"Authorization": "Bearer ${BANQUISE_API_KEY}"}
  }}
}
Outils MCP exposés
OutilRôle
banquise_contextPassages pertinents, cités et bornés.
banquise_searchRésultats Web diversifiés par hôte.
banquise_freshPages récemment vues ou modifiées.
banquise_pagePassages d’une page déjà indexée.
banquise_entitiesÉtablissements, organismes et lieux structurés.
banquise_siteDiagnostics techniques d’un hôte.
banquise_submit_urlProposition ou revisite d’une URL publique.
banquise_request_statusÉtat d’une demande précédente.
banquise_imagesMétadonnées seulement; absent tant que désactivé.

BanquiseBot, soumission et retrait

BanquiseBot consulte seulement des ressources publiques par GET ou HEAD, sans connexion. Il respecte robots.txt, meta robots, meta banquisebot, X-Robots-Tag, la cadence par origine et les redirections sûres.

User-agent: BanquiseBot
Allow: /
Disallow: /compte/
Sitemap: https://www.exemple.ca/sitemap.xml
  • noindex ou none exclut la page et ses entités.
  • nofollow empêche l’admission de ses liens.
  • nosnippet ou max-snippet:0 supprime l’extrait.
  • Un canonical est un indice de regroupement, pas une permission.

Le formulaire Gérer une URL accepte découverte, revisite, correction et retrait exact. L’API POST /api/v1/requests et son état GET /api/v1/requests/{id} sont bornés; une soumission ne garantit ni indexation ni position.

Données structurées et extraits

Publiez du JSON-LD schema.org fidèle au contenu visible. Banquise lit aujourd’hui LocalBusiness et ses sous-types, Organization, Place, School et des types publics apparentés. Microdata et RDFa ne sont pas encore pris en charge.

<script type="application/ld+json">
{"@context":"https://schema.org","@type":"LocalBusiness",
 "name":"Atelier Exemple","url":"https://www.exemple.ca/",
 "address":{"@type":"PostalAddress","addressLocality":"Moncton",
 "addressRegion":"NB","addressCountry":"CA"}}
</script>

Le titre HTML, la description, les dates Schema.org et Open Graph peuvent enrichir l’extrait. Une donnée déclarée demeure une observation de la source : Banquise ne la garantit pas.

Fondation prête, console fermée. Aucun compte propriétaire ni endpoint de console n’est exposé dans la bêta actuelle.

Banquise Webmaster Tools

La fondation prévoit des propriétés de domaine, un contrôle de propriété et des diagnostics comparables à une console de recherche. Son activation attend une authentification de compte OIDC résistante au hameçonnage et une revue de sécurité; un simple mot de passe local ne sera pas ajouté.

Contrôle de propriété prévu

  1. Créer une propriété après authentification.
  2. Recevoir un défi aléatoire d’au moins 256 bits, montré une seule fois.
  3. Prouver le contrôle par DNS TXT; pour un hôte, une balise meta ou un fichier sous /.well-known/ est aussi prévu.
  4. Banquise vérifie par son chemin anti-SSRF, hache les candidats et ne conserve jamais le jeton clair.
  5. La preuve expire, tourne et se révoque; l’audit ne garde ni IP, URL, secret ni texte libre.

Diagnostics prévus

  • URLs connues, indexées, exclues, en attente ou en reprise;
  • sitemaps, codes d’état, canonical, noindex, extraits et fraîcheur;
  • données structurées, entités, erreurs et provenance;
  • liens agrégés, sans journal de visiteurs;
  • soumission rapide d’URLs vérifiées avec état visible.

La file rapide réutilise la frontière PostgreSQL durable que les workers réclament avec FOR UPDATE SKIP LOCKED. Elle est idempotente, dédupliquée, à priorité bornée verified-owner et soumise à un quota quotidien. Elle ne contourne jamais robots, noindex, retrait, cadence, revalidation DNS/redirection, backoff ou impasse après échecs répétés.

Attribution sans surveillance intersite

Un pixel tiers classique révélerait l’adresse IP, le référent et souvent un identifiant de navigateur. Banquise n’en activera pas. La première intégration proposée est un marqueur statique, identique pour tous, mesuré par le site dans son propre environnement :

https://marchand.example/produit?bq_source=banquise&bq_medium=organic

Aucun identifiant de clic ou d’utilisateur, cookie tiers, fingerprint, requête recherchée ou IP n’est ajouté. Une éventuelle remontée serait un lot quotidien serveur-à-serveur de nombres agrégés, authentifié par propriété, sans événement individuel ni URL visitée.

Non actif. Aucun paramètre, script, pixel ou collecte de conversion n’est injecté aujourd’hui. Le contrat exige encore les revues vie privée, sécurité et droit canadien.

Limites, erreurs et reprise

Réponses d’erreur JSON
CodeAction recommandée
400Corriger l’hôte, l’URL ou le type.
401Fournir une clé Bearer valide.
404La ressource ou fonction est absente.
422Respecter types et bornes.
429Respecter Retry-After, puis backoff avec jitter.
503Échec temporaire; reprise bornée.

Fixez des délais réseau, limitez les reprises et acceptez les réponses vides. Une absence signifie seulement que l’index borné n’a rien retourné.