Guide d'intégration

Faites tourner vos agents n8n sur des modèles UE conformes au RGPD

L'identifiant OpenAI de n8n porte un champ Base URL. Pointez-le sur Frontière et chaque nœud AI Agent de vos workflows tourne sur des modèles open-source hébergés par OVHcloud ou Scaleway au lieu d'OpenAI — même canevas, mêmes nœuds, mêmes outils, avec une inférence sous juridiction européenne. Une chose à savoir avant de commencer : ce même identifiant alimente aussi le nœud d'embeddings de n8n, que nous ne servons pas — créez donc un nouvel identifiant plutôt que de modifier celui que vous utilisez déjà.

Ce qui change

Rien à vos workflows. Vous gardez le nœud AI Agent, la mémoire, les outils, les déclencheurs et le canevas déjà construits. La seule chose qui bouge, c'est l'endroit où tourne le modèle : au lieu de partir chez OpenAI, la requête arrive chez Frontière, qui la route vers le provider qui héberge réellement le modèle et la facture au token sur votre solde prépayé.

Ça compte davantage dans n8n qu'ailleurs, parce qu'on utilise justement n8n pour garder ses données près de soi : l'auto-hébergement est son argument principal. Auto-héberger l'orchestrateur puis envoyer chaque prompt à une API américaine en annule une bonne partie — et c'est en général la dernière pièce que personne n'a pris le temps de remplacer.

Avant de commencer

Trois choses :

  • Une instance n8n — Cloud ou auto-hébergée, les deux fonctionnent, l'identifiant est le même.
  • Une clé API Frontière (tableau de bord → Clés API) et un solde non nul : un agent dont les appels renvoient 402 s'arrête au milieu du workflow.
  • Un identifiant de modèle tiré du catalogue. L'endpoint de catalogue est public : vous pouvez en choisir un avant même d'avoir une clé.

1. Créer l'identifiant

Dans n8n, ouvrez Credentials, créez-en un nouveau et cherchez OpenAI — l'identifiant qui s'appelle simplement OpenAI est celui qu'utilisent tous les nœuds compatibles OpenAI. Remplissez trois champs :

ChampValeur
API Keysk-front-…
Base URLhttps://getfrontiereai.eu/api/v1
Organization IDlaisser vide

Créez un nouvel identifiant — ne modifiez pas l'existant

Le nœud Embeddings OpenAI de n8n utilise exactement le même identifiant et exactement la même base URL. Frontière sert des complétions de chat, pas des embeddings : repointer un identifiant qui alimente aussi une base vectorielle cassera vos workflows RAG avec une 404 qui ne dit rien de la cause. Un identifiant par fournisseur : Frontière pour le chat et les agents, votre fournisseur d'embeddings intact.

Un test au vert ne prouve pas que votre clé fonctionne

n8n teste un identifiant en appelant /models sur la base URL fournie. Or notre endpoint de catalogue est public : il répond 200 sans aucune clé, ce que nous avons vérifié avec une clé délibérément fausse. Le test passe donc au vert dès que l'URL est joignable, même si la clé comporte une faute de frappe. La première vraie preuve, c'est un appel de chat : lancez l'agent une fois, ou envoyez le curl ci-dessous.

curl
# Le catalogue est public — choisissez un identifiant de modèle avant même d'avoir une clé
curl https://getfrontiereai.eu/api/v1/models

# La vraie preuve que l'identifiant marche : un appel de chat avec votre clé
curl https://getfrontiereai.eu/api/v1/chat/completions \
  -H "Authorization: Bearer $FRONTIERE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"qwen3-235b","messages":[{"role":"user","content":"ping"}]}'

2. Le brancher au nœud AI Agent

Ajoutez un nœud AI Agent, puis rattachez un sous-nœud OpenAI Chat Model à son entrée Chat Model et sélectionnez l'identifiant que vous venez de créer. C'est ce sous-nœud qu'il faut utiliser : l'agent le pilote, et c'est là que le modèle se choisit.

Ouvrez la liste Model et le catalogue apparaît. n8n la remplit en appelant /models sur votre base URL, et il ne restreint la liste aux familles gpt-*, o1 et o3 d'OpenAI que lorsque la base URL est celle d'OpenAI — avec une base URL personnalisée, il affiche tout ce que renvoie l'endpoint : nos modèles en ligne y sont donc tous.

N'allez pas chercher un champ Base URL dans les Options du nœud : n8n le masque à partir de la version 1.1 du nœud. Sur tout n8n récent, il est dans l'identifiant, et seulement là — c'est d'ailleurs ce qui permet à un seul identifiant de basculer proprement tous les nœuds qui l'utilisent.

3. Vérifier que votre modèle sait appeler des outils

C'est l'étape qu'on saute, et celle qui décide si vous avez un agent ou un chatbot. Un AI Agent n8n fonctionne par appel de fonctions : il émet un appel d'outil, n8n exécute l'outil connecté, le résultat revient, et le modèle répond. Un modèle incapable d'émettre un appel d'outil discutera très volontiers sans jamais rien déclencher.

Comme la gateway relaie tools et tool_choice tels quels, la réponse dépend du modèle et de son provider, pas de nous — on l'a donc mesurée plutôt que supposée. Le 6 août 2026, un appel réel par modèle : 12 des 13 modèles en ligne ont renvoyé un appel d'outil valide. Le seul refus est Qwen2.5-VL 72B, rejeté par son provider avec une HTTP 400 explicite ; c'est un modèle de vision, servez-vous-en pour lire des images et prenez autre chose pour piloter l'agent.

Voir la matrice complète des appels d'outils

4. Augmenter le timeout avant qu'un modèle de raisonnement ne vous morde

Le nœud OpenAI Chat Model est livré avec Timeout à 60000 ms et Max Retries à 2. Ces valeurs conviennent à un petit modèle de chat et sont franchement mauvaises pour un modèle de raisonnement.

GLM-5.2 réfléchit avant de répondre : sur un prompt technique costaud, nous avons mesuré 261 secondes sans streaming et 333 avec. À 60 secondes, n8n coupe l'appel — puis le relance deux fois, si bien qu'une seule étape d'agent peut générer trois longues réponses que vous ne verrez jamais. Augmentez Timeout dans les Options du nœud, ou choisissez un modèle sans raisonnement pour les boucles qui doivent rester rapides.

Même section, même piège pris par l'autre bout : ne touchez pas à Maximum Number of Tokens sur un modèle de raisonnement. Réglé bas, tout le budget part dans la réflexion — la réponse revient vide avec finish_reason « length », ce qui ressemble à une intégration cassée sans en être une. Et si vous choisissez Kimi K3, son endpoint tombe à zéro entre deux usages : le premier appel après une période d'inactivité passe quelques minutes à préchauffer avant de répondre en quelques secondes.

Ce que ça change, et ce que ça ne change pas

L'inférence part chez le provider qui héberge le modèle, et le drapeau sovereign de chaque modèle vous dit de quelle juridiction il s'agit. Ce qui ne bouge pas, c'est n8n lui-même : votre instance voit toujours chaque prompt, chaque résultat d'outil et chaque conversation avant nous. Auto-hébergée en Europe, toute la chaîne est européenne. Sur une plateforme managée, cette plateforme conserve la juridiction qui est la sienne, et le modèle est la partie que ça règle.

Autant le dire noir sur blanc à qui doit valider, parce que c'est exactement la question que posera un DPO. C'est aussi pourquoi nous étiquetons par modèle et non par société : tout ce qui est servi via une infrastructure américaine est marqué accès rapide, jamais souverain, même en région UE.

RGPD contre CLOUD Act

Dépannage

Les pannes qui valent d'être reconnues au premier coup d'œil :

SymptômeQue faire
Le test d'identifiant passe, l'agent échoueLe test n'appelle que l'endpoint public /models. Vérifiez la clé elle-même par un vrai appel de chat — une clé erronée répond 401.
401 à chaque exécutionLa clé est fausse ou a été révoquée. Créez-en une nouvelle depuis le tableau de bord : les clés ne s'affichent qu'une fois.
Le workflow s'arrête, les appels renvoient 402Votre solde prépayé est tombé à zéro. Rechargez depuis le tableau de bord, les appels repartent immédiatement — prévoyez une alerte si le workflow tourne sans surveillance.
La liste des modèles est videLa base URL est mauvaise. Elle doit finir par /api/v1, sans slash final ni /chat/completions — n8n ajoute le reste.
404, model_not_foundL'identifiant de modèle doit venir de GET /models, qui ne liste que les modèles en ligne. Les entrées « coming soon » ne sont pas appelables.
L'agent répond mais n'utilise jamais ses outilsVérifiez que le modèle supporte l'appel d'outils — Qwen2.5-VL 72B non, et son provider le dit par une 400.
Timeout à exactement 60 secondesC'est le défaut de n8n, pas notre limite. Augmentez Timeout dans les Options du nœud, ou passez à un modèle qui ne raisonne pas avant de répondre.
Une réponse vide avec finish_reason lengthUn modèle de raisonnement a passé tout son budget de tokens à réfléchir. Retirez Maximum Number of Tokens ou prévoyez au moins ~1 000.
Le nœud Embeddings OpenAI renvoie 404Nous ne servons pas d'embeddings. Ce nœud a besoin de son propre identifiant, pointé vers un fournisseur qui en sert.

FAQ

n8n peut-il utiliser un LLM conforme au RGPD à la place d'OpenAI ?

Oui. L'identifiant OpenAI de n8n expose un champ Base URL : n'importe quel endpoint compatible OpenAI peut donc remplacer OpenAI sans toucher à un seul nœud. En le pointant sur Frontière, vos nœuds AI Agent tournent sur des modèles open-source hébergés par OVHcloud ou Scaleway, des opérateurs sans contrôle juridictionnel non-UE.

Où est le champ Base URL dans le nœud OpenAI Chat Model de n8n ?

Il n'est pas dans le nœud — n8n masque cette option à partir de la version 1.1 du nœud. Sur toute version récente, la Base URL se trouve dans l'identifiant OpenAI lui-même, à côté de la clé API, et s'applique à tous les nœuds qui utilisent cet identifiant.

Les agents IA de n8n fonctionnent-ils avec des modèles open-source ?

Oui, à condition que le modèle supporte le function calling — c'est ainsi que l'agent déclenche ses outils. Nous l'avons mesuré sur tout notre catalogue le 6 août 2026 : 12 des 13 modèles en ligne ont renvoyé des appels d'outils valides, l'exception étant un modèle de vision dont le provider refuse les outils.

Puis-je utiliser Frontière pour les nœuds d'embeddings et de base vectorielle de n8n ?

Non. Nous servons des complétions de chat, pas des embeddings : un appel à /embeddings renvoie 404. Comme le nœud Embeddings OpenAI partage le même type d'identifiant, créez un identifiant distinct pour Frontière plutôt que de modifier celui dont dépendent vos workflows RAG.

Est-ce que ça marche sur n8n Cloud comme en auto-hébergé ?

Les deux, à l'identique — l'identifiant est le même. La différence est juridictionnelle et non technique : l'auto-hébergement en Europe place toute la chaîne sous droit européen, tandis que sur une instance managée l'orchestration conserve la juridiction de la plateforme et seule l'inférence se déplace.

Prenez une clé et pointez n8n dessus

Créez un compte, rechargez à partir de 20 €, et vos workflows existants tournent sur des modèles européens.

Créer un compte

Référence API complète