Le carnet de La Refonte

Jev API n8n : appeler l'API REST sans Worker

L'API REST de Cloudflare Workers AI permet d'appeler typesafe/jev depuis un scénario n8n ou Make, sans écrire de Worker. Authentification, corps de la requête, lecture de la réponse, erreurs et quotas.

  • IA & Automatisation
  • Jev
  • n8n
  • Make
  • API REST
Exemple officiel d’un workflow dans l’interface n8n
Interface officielle n8n — illustration de l’outil, pas d’un scénario Jev exécuté.

Oui : l'API REST de Cloudflare Workers AI permet d'appeler le modèle typesafe/jev directement depuis n8n ou Make, sans écrire ni déployer de Worker. Un seul appel POST vers l'endpoint /ai/run de votre compte, authentifié par un jeton API Cloudflare en en-tête Bearer, avec le même corps JSON (state et questions) que celui documenté pour le binding Worker. n8n utilise le nœud HTTP Request, Make le module HTTP « Effectuer une requête », configurés de façon quasi identique. La Refonte n'a pas encore branché ce scénario en production : ce guide suit la fiche modèle Cloudflare, consultée le 20 septembre 2026, et signale les limites de débit et de contexte à connaître avant de généraliser.

📌 À retenir

  • L'API REST de Cloudflare permet d'appeler typesafe/jev en un seul POST authentifié, sans écrire ni déployer de Worker.
  • Le corps de la requête est identique à celui du binding Worker : mêmes clés model, state et questions.
  • n8n et Make se configurent avec les mêmes trois réglages : méthode POST, en-tête Authorization Bearer, corps JSON.
  • La Refonte n'a pas encore branché ce scénario en production : ce guide suit la documentation officielle et signale les limites de débit et de contexte publiées par Cloudflare.

Outils du scénario

Deux interfaces no-code, le même appel HTTP

Les marques ci-dessous sont les ressources officielles des outils réellement configurés dans ce guide.

n8n

Le nœud HTTP Request envoie la requête et transmet la réponse aux nœuds Switch ou If.

Ressource officielle

Make

Le module HTTP exécute l'appel ; Router distribue ensuite les réponses du modèle.

Ressource officielle

Appeler Jev depuis n8n ou Make sans passer par un Worker : le principe

Sur Cloudflare Workers AI, le modèle typesafe/jev se déclare le plus souvent dans un Worker : un fichier de configuration, un binding AI, du code déployé. C'est la voie mise en avant dans notre guide d'implémentation Worker.

Ce que fait un Worker aujourd'hui

Un Worker reçoit une requête, appelle env.AI.run avec l'identifiant typesafe/jev, lit la réponse et déclenche une action. Il porte à la fois le code d'appel et la logique métier qui suit.

Ce que l'appel direct change concrètement

La même fiche modèle documente un second chemin : un appel REST classique, avec le compte Cloudflare comme seule dépendance. n8n et Make savent tous deux poser un appel HTTP authentifié. Aucun Worker à écrire ni à déployer : le scénario existant reçoit un nœud ou un module de plus.

Ce guide ne part pas d'un formulaire précis. Il documente l'appel générique : un scénario qui reçoit un ticket, un email ou un enregistrement CRM le pose de la même façon, quel que soit le déclencheur en amont.

Avec un Worker intermédiaire

  • Un Worker Cloudflare à écrire, déployer et maintenir
  • Un binding AI déclaré dans wrangler.toml
  • Le code d'appel et la logique métier vivent dans le même service

Appel direct depuis n8n ou Make

  • Aucun code à déployer : un nœud ou un module dans le scénario existant
  • Le même endpoint REST, appelé avec un jeton API Cloudflare
  • Le corps de la requête reste celui de la fiche officielle : model, state et questions

Le circuit sans Worker : de n8n ou Make à la réponse de Jev

1DéclencheurUn message ou un enregis…2Requête HTTP POSTNœud HTTP Request (n8n) …3typesafe/jevEndpoint /ai/run du comp…4Réponse JSONProbabilités et confianc…

Authentification : la clé API Cloudflare, sans compte TypeSafe

Le modèle typesafe/jev est un modèle tiers routé par Cloudflare. Aucune inscription chez TypeSafe AI n'est nécessaire : un compte Cloudflare avec Workers AI activé suffit, avec un identifiant de compte et un jeton API.

Ce jeton se crée dans le tableau de bord, rubrique Workers AI, page « Use REST API ». Il porte les permissions Workers AI - Read et Workers AI - Edit. Il s'utilise ensuite dans l'en-tête Authorization, sous la forme Bearer suivi du jeton.

Un jeton porte les mêmes droits que celui utilisé dans un Worker : le stocker en clair dans un scénario partagé revient à l'exposer à toute l'équipe qui y a accès. n8n et Make proposent chacun un emplacement dédié pour ce type de secret, séparé du corps de la requête.

01

Account ID

Où le trouver
Tableau de bord Cloudflare, rubrique Workers AI, page « Use REST API »
Usage dans la requête
Dans l'URL de l'endpoint, à la place de {account_id}
02

Jeton API (API Token)

Où le trouver
Même page, bouton « Create a Workers AI API Token », permissions Workers AI - Read et Workers AI - Edit
Usage dans la requête
Dans l'en-tête Authorization, valeur Bearer suivie du jeton
03

Identifiant du modèle

Où le trouver
Fiche modèle Cloudflare, champ typesafe/jev
Usage dans la requête
Dans le corps JSON, propriété model
Trois éléments à réunir avant de configurer le nœud ou le module HTTP, tous visibles dans le même tableau de bord Cloudflare. Source : documentation Workers AI, consultée le 20 septembre 2026.

Le corps de la requête : state et questions typées, identiques au Worker

L'endpoint REST attend un corps JSON avec deux clés : model, qui vaut « typesafe/jev », et input. input porte lui-même state, le texte ou l'objet à évaluer, et questions, un objet de questions typées.

Trois types de question existent : noul pour une probabilité, choice pour une option parmi plusieurs, score pour une position sur une échelle. Chaque question porte des instructions et des critères. La fiche Cloudflare fournit un exemple complet, repris ci-dessous sans modification.

Le state accepte aussi un objet plutôt qu'une chaîne, quand la décision dépend de plusieurs sources : un message, une commande, une règle interne. Les instructions des questions peuvent alors désigner les champs de cet objet, comme le montre l'exemple structuré de notre guide Worker.

Les critères d'une question choice ou score gagnent à rester courts et mutuellement exclusifs. Une consigne floue ou deux catégories qui se recoupent produisent des probabilités difficiles à trancher ensuite dans le scénario.

Exemple officiel de la documentation Cloudflare : appel env.AI.run('typesafe/jev', …) avec trois questions typées (is_urgent, department, frustration), suivi du début de la réponse JSON portant la version jev-1.13.0.
L'exemple officiel de la fiche Cloudflare, capturé le 19 septembre 2026 : c'est ce même state et ces mêmes questions que la requête REST ci-dessous reprend, sous forme de corps JSON au lieu d'un appel env.AI.run.
Appel REST à typesafe/jev, sans Worker (source : fiche modèle Cloudflare)
curl https://api.cloudflare.com/client/v4/accounts/$CLOUDFLARE_ACCOUNT_ID/ai/run \
  --header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
  --header "Content-Type: application/json" \
  --data '{
  "model": "typesafe/jev",
  "input": {
    "state": "Help! My payouts have been failing for 3 days.",
    "questions": {
      "is_urgent": {
        "type": "noul",
        "instructions": "Does this convey urgency?",
        "criteria": { "true": "Explicitly time-sensitive", "false": "No urgency expressed" }
      },
      "department": {
        "type": "choice",
        "instructions": "Which team should handle this?",
        "criteria": {
          "billing": "Payments, invoicing, refunds",
          "technical": "Bugs, outages, integrations",
          "sales": "Pricing, upgrades, new accounts"
        }
      },
      "frustration": {
        "type": "score",
        "instructions": "How frustrated is the customer?",
        "criteria": ["Calm", "Frustrated", "Very angry"]
      }
    }
  }
}'

Lire la réponse : l'enveloppe Cloudflare et les réponses de Jev

Comme tout appel à l'API REST Cloudflare, la réponse arrive dans une enveloppe commune : un champ result, un champ success à true ou false, et des tableaux errors et messages.

Le contenu utile de Jev se trouve dans result : le nom du modèle, un objet answers avec une entrée par question posée, et un champ usage qui compte les tokens consommés. Un scénario n8n ou Make doit descendre dans result avant de lire les réponses.

Un scénario n8n peut brancher sur result.answers.department.choice avec un nœud Switch, ou sur result.answers.is_urgent.noul avec un nœud If. Dans Make, un module Router lit les mêmes champs dans le corps renvoyé par le module HTTP.

Le champ confidence, présent sur les questions choice et score, indique la certitude du modèle sur sa réponse. Une valeur basse signale un cas ambigu, à traiter comme les autres : par une règle de seuil dans le scénario, pas par un chiffre isolé lu à l'œil.

Réponse REST pour l'exemple ci-dessus (enveloppe Cloudflare + résultat Jev)
{
  "result": {
    "model": "jev-1.13.0",
    "answers": {
      "is_urgent": { "type": "noul", "noul": 0.95 },
      "department": {
        "type": "choice",
        "choice": "billing",
        "confidence": 0.8,
        "probabilities": { "billing": 0.87, "sales": 0, "technical": 0.13 }
      },
      "frustration": {
        "type": "score",
        "score": 1.04,
        "confidence": 0.94,
        "legend": { "0": "Calm", "1": "Frustrated", "2": "Very angry" },
        "probabilities": { "0": 0, "1": 0.96, "2": 0.04 }
      }
    },
    "usage": { "input_tokens": 426, "output_tokens": 73 }
  },
  "success": true,
  "errors": [],
  "messages": []
}

Configurer l'appel dans n8n

Dans un scénario n8n, un seul nœud pose cet appel : HTTP Request. Il remplace la fonction que jouerait un Worker, sans code à écrire ni à déployer. Le détail des réglages suit.

Un test depuis le bouton d'exécution du nœud affiche la réponse complète, y compris l'enveloppe result. C'est le moment de vérifier que le chemin result.answers correspond aux questions posées, avant de brancher un nœud Switch ou If derrière. Le nœud propose aussi un réglage de délai d'attente, sous l'onglet Options : une valeur généreuse absorbe un pic de latence sans bloquer tout le scénario.

Exemple officiel de l'interface n8n montrant un workflow avec des nœuds reliés, dont un agent IA et plusieurs outils.
Interface officielle n8n : ce workflow illustre la logique visuelle des nœuds reliés. Ce n'est pas une capture de notre scénario Jev, qui n'a pas encore été exécuté en production.

Le nœud HTTP Request, réglage par réglage

  1. 1

    Étape 1

    Method

    Choisissez POST : le corps de la requête porte model et input.

  2. 2

    Étape 2

    URL

    Collez l'endpoint https://api.cloudflare.com/client/v4/accounts/{account_id}/ai/run, avec votre identifiant de compte.

  3. 3

    Étape 3

    Authentication

    Sélectionnez « Generic Credential Type », puis « Header Auth ». Créez une credential avec le nom Authorization et la valeur Bearer suivie du jeton API.

  4. 4

    Étape 4

    Send Body

    Activez l'option, réglez « Body Content Type » sur JSON et « Specify Body » sur « Using JSON », puis collez le corps complet.

Configurer l'appel dans Make

Dans un scénario Make, le module HTTP « Effectuer une requête » (Make a request) joue le même rôle. Les réglages sont proches de ceux de n8n, avec un vocabulaire propre à Make.

Un clic sur « Run once » exécute le module seul et affiche la sortie dans le panneau de droite. Les modules suivants du scénario accèdent ensuite aux champs de la réponse par la carte de données habituelle de Make, sans configuration supplémentaire. Le module propose un réglage de délai d'attente équivalent, dans son onglet avancé.

Capture officielle de la documentation Make montrant le choix de version du module HTTP, avec la version 4 sélectionnée.
Capture de la documentation officielle Make : le module HTTP utilisé par le scénario est présenté ici avec la version 4 sélectionnée. Ce visuel documente l'outil, pas une exécution de Jev.

Le module HTTP, réglage par réglage

  1. 1

    Étape 1

    Method

    Sélectionnez POST.

  2. 2

    Étape 2

    URL

    Renseignez le même endpoint /ai/run, avec l'identifiant de votre compte Cloudflare.

  3. 3

    Étape 3

    Headers

    Ajoutez deux en-têtes : Authorization avec la valeur Bearer suivie du jeton, et Content-Type avec la valeur application/json.

  4. 4

    Étape 4

    Body type

    Choisissez application/json comme type de contenu, puis collez le corps JSON complet dans le champ prévu pour la requête.

Erreurs, limites de débit et fenêtre de contexte à connaître

Trois limites documentées méritent d'être connues avant de brancher ce scénario sur un volume réel. Elles ne dépendent pas de n8n ni de Make : elles s'appliquent à tout appel à l'API Cloudflare.

La fenêtre de contexte de typesafe/jev est fixée à 32 000 tokens : un state trop long doit être résumé avant l'appel. Le débit de l'API Cloudflare est plafonné à 1 200 requêtes par compte, toutes les cinq minutes ; au-delà, une réponse HTTP 429 bloque les appels suivants pour la période.

Concrètement, un historique de conversation ou un long fil d'emails dépasse vite cette limite de contexte. Un nœud ou un module de résumé, placé avant l'appel à Jev, ramène le state à l'essentiel sans changer la structure des questions.

Le tarif du modèle typesafe/jev sur Cloudflare n'est pas public : il s'affiche dans le tableau de bord du compte, pas sur la fiche modèle. n8n et Make proposent chacun une option de nouvelle tentative sur le nœud ou le module HTTP, utile pour une erreur ponctuelle, mais elle ne remplace pas la lecture du tableau de bord si les erreurs 429 deviennent fréquentes.

Fiche du modèle typesafe/jev dans la documentation Cloudflare Workers AI : fenêtre de contexte de 32 000 tokens et renvoi au tableau de bord pour le tarif.
La fiche modèle « typesafe/jev » sur developers.cloudflare.com, capturée le 19 septembre 2026 : la fenêtre de contexte de 32 000 tokens et l'absence de tarif public s'appliquent identiquement à l'appel Worker et à l'appel REST.
01

Jeton invalide ou permission manquante

Ce qui se passe
Une erreur HTTP est renvoyée hors de l'enveloppe de succès ; la fiche ne publie pas d'exemple précis pour ce modèle, à vérifier dans les journaux de votre scénario
Source et date
Cloudflare, API REST Workers AI, consultée le 20/09/2026
02

Plus de 1 200 requêtes en 5 minutes sur le compte

Ce qui se passe
Code HTTP 429 « Too Many Requests » ; les appels suivants sont bloqués pour les cinq minutes qui suivent
Source et date
Cloudflare, limites de l'API, page datée du 25/08/2026, consultée le 20/09/2026
03

State ou questions dépassant la fenêtre de contexte

Ce qui se passe
Fenêtre de contexte du modèle limitée à 32 000 tokens ; un état trop long doit être résumé avant l'appel
Source et date
Cloudflare, fiche modèle typesafe/jev, consultée le 20/09/2026
04

Coût du modèle typesafe/jev sur Cloudflare

Ce qui se passe
Non public sur la fiche modèle ; affiché uniquement dans le tableau de bord du compte
Source et date
Cloudflare, fiche modèle typesafe/jev, consultée le 20/09/2026
Ce que la documentation Cloudflare confirme à la date de rédaction. Ces limites s'appliquent au compte entier, quel que soit l'outil qui pose l'appel.

Avant de brancher ce scénario en production

Le nœud ou le module HTTP fonctionne, mais un scénario qui agit sur un volume réel mérite les mêmes garde-fous qu'un Worker : secret hors du code, journal des réponses, seuil de confiance.

La confiance renvoyée par Jev reste une probabilité, pas une décision. C'est au scénario n8n ou Make de fixer le seuil à partir duquel il agit seul, et de transmettre les cas sous ce seuil à une personne.

Un scénario qui trie des tickets ou des leads en continu mérite le même regard qu'un Worker en production : qui a accès au jeton, qui relit les cas transmis, à quelle fréquence le seuil est réévalué avec l'équipe métier. La démo publique askjev.ai, décrite dans notre guide Worker, donne un ordre de grandeur de latence utile pour fixer un délai d'attente réaliste, sans remplacer une mesure sur vos propres appels.

Pour aller plus loin

Pour le détail du modèle Jev et sa place face à un modèle de langage, direction notre article sur le modèle Jev. Pour l'appel depuis un Worker Cloudflare, avec les mêmes exemples de code, lisez le guide d'implémentation Worker.

Pour comparer un modèle de décision à un LLM sur un cas concret, consultez modèle de décision ou LLM. Pour une vue d'ensemble de l'automatisation sans code, lisez notre article sur l'automatisation des tâches. Pour cadrer ce type d'automatisation avec ses garde-fous, le parcours IA de La Refonte en présente le programme.

Retenez l'essentiel : le nœud ou le module HTTP remplace le Worker pour l'appel lui-même, pas pour la décision qui suit. Cette décision, avec son seuil et sa relecture humaine, reste à écrire dans le scénario, où qu'il tourne.

Sources

Dernière mise à jour : 20 septembre 2026

  • Cloudflare, fiche modèle typesafe/jevExemple curl complet vers /ai/run, exemple TypeScript pour le Worker, fenêtre de contexte de 32 000 tokens et renvoi au tableau de bord pour le tarif. Consultée le 20 septembre 2026.
  • Cloudflare, API REST Workers AIEnveloppe de réponse (result, success, errors, messages), création du jeton API avec les permissions Workers AI - Read et Workers AI - Edit, localisation de l'Account ID. Consultée le 20 septembre 2026.
  • Cloudflare, limites de l'APIPlafond de 1 200 requêtes par période de cinq minutes par jeton ou utilisateur, réponse HTTP 429 au-delà. Page datée du 25 août 2026, consultée le 20 septembre 2026.
  • n8n, documentation du nœud HTTP RequestRéglages Method, Authentication en Generic Credential Type / Header Auth, Send Body en JSON. Consultée le 20 septembre 2026.
  • Make, module HTTPChamps URL, Method, Headers et type de contenu application/json du module de requête HTTP « Make a request ». Consultée le 20 septembre 2026.

Passer de l'essai au scénario fiable

La Refonte accompagne les équipes qui veulent brancher une décision Jev sur un scénario n8n ou Make réel, avec seuil de confiance, journal des réponses et relecture humaine.

En savoir plus

Questions fréquentes

Non. Le modèle typesafe/jev est routé par Cloudflare Workers AI : un compte Cloudflare avec un identifiant de compte et un jeton API suffisent. Les conditions d'utilisation restent celles de TypeSafe AI, référencées sur la fiche modèle.

Pour aller plus loin

Sur le même sujet

Voir tout le blog

Sans engagement, sans jargon

On regarde votre site ensemble ?

Trente minutes pour identifier ce qui freine votre visibilité et repartir avec les priorités dans le bon ordre.

Discutons de votre projet

30 min · Google Meet

Choisissez le créneau qui vous convient dans notre calendrier. On analyse votre situation avant l’appel pour aller droit au but.