Dites oui au client du pays suivant.

Épinglez la loi nationale de chaque client sur chaque requête : un nouveau marché ne change jamais les réponses que reçoivent vos clients existants.

Si votre produit a son propre assistant et des clients dans plus d'un pays, épinglez les modules nationaux de chaque client sur chaque requête. Chaque module publie la date de sa dernière vérification, et chaque changement est daté dans un journal public.

Une requête, épinglée sur le pays d'un client
curl https://api.ismscopilot.com/v1/chat/completions \
  -H "Authorization: Bearer sk-isms-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "isms-fast",
    "messages": [
      {"role": "user", "content": "Which NIS 2 incident reports do we owe, and to whom?"}
    ],
    "ismscopilot": { "frameworks": ["NIS_2_NL"] }
  }'

Le cas que rencontre toute plateforme en croissance

Une plateforme construit son assistant sur la loi NIS 2 d'un pays. Un client d'un autre État membre signe et pose des questions sur ses propres obligations. Ce pays a transposé la même directive avec ses propres catégories d'entités, sa propre chaîne de notification et ses propres délais. Chargez la nouvelle loi dans la connaissance partagée, et les réponses de tous les clients existants changent ; laissez-la de côté, et le nouveau client obtient le mauvais pays. Les modules par requête règlent les deux problèmes.

Routage par client

Votre backend sait déjà où chaque client exerce. Passez jusqu'à huit identifiants de modules par requête ; l'en-tête de réponse nomme les modules utilisés, pour que vous puissiez les journaliser avec la réponse.

import os
from openai import OpenAI

client = OpenAI(base_url="https://api.ismscopilot.com/v1", api_key=os.environ["ISMS_API_KEY"])

# Your backend already knows where each customer operates.
NIS2_BY_COUNTRY = {"BE": "NIS_2_BE", "IT": "NIS_2_IT", "NL": "NIS_2_NL"}

def ask(tenant, messages):
    frameworks = [NIS2_BY_COUNTRY[tenant.country], *tenant.frameworks]  # at most 8
    return client.chat.completions.with_raw_response.create(
        model="isms-fast",
        messages=messages,
        extra_body={"ismscopilot": {"frameworks": frameworks}},
    )

# Log response.headers["x-isms-frameworks"] with the answer.

Une couverture que vous pouvez inspecter

Lu dans le catalogue public le 2026-11-09.

Modules de référentiels
151, chacun avec une date publique de dernière vérification
Modules NIS 2 nationaux
27, un par État membre, plus la directive. Certains suivent des lois encore en cours d'examen au parlement ; le module l'indique.
Journal des modifications
357 changements datés, chacun nommant les modules concernés

Prix

Par réponse
Environ $24 pour 1 000 réponses sur isms-fast à une taille mesurée (environ 6 500 tokens en entrée et 700 en sortie, avec un module national épinglé). $2.80 en entrée, $8.80 en sortie par million de tokens. isms-thinking ajoute des tokens de raisonnement.
Volume
Tarifs volume sur demande.

Ce qu'elle ne fait pas

Pas de sous-comptes par client : donnez à chaque client sa propre clé avec son propre plafond de dépense. Pas de mode JSON ni d'appels d'outils : demandez la structure dans le prompt. Les réponses sont des orientations de conformité que votre produit présente à des personnes qui décident ; ce ne sont pas des conseils juridiques.

Questions fréquemment posées

Comment savoir qu'un module a changé ?

Chaque changement est une entrée datée du journal public des modifications (GET /v1/frameworks/changelog), avec les modules concernés ; la plupart renvoient à leurs justificatifs. Interrogez-le au rythme de votre choix.

Les clients UE peuvent-ils rester sur le chemin UE ?

Oui : appelez les alias -eu pour ces clients. L'épinglage fonctionne de la même façon sur les deux chemins.

Épinglez votre prochain pays.

Créez une clé et envoyez la requête ci-dessus avec le module de votre client.