configure() est la seule fonction dont tu as besoin pour tes clés API HTTP. Elle retourne un objet prêt à passer au constructeur de n’importe quel SDK provider. La clé n’est jamais dans ton process — en dev elle reste dans le proxy local, en prod elle est injectée par le proxy cloud Elding côté serveur.
if (process.env.NODE_ENV). Rien à changer entre les environnements.
Comment ça marche
configure() retourne { apiKey, baseURL, defaultHeaders }. Le contenu de ces champs dépend de l’environnement.
Développement
Nécessite
elding proxy lancé. apiKey est un placeholder ({{OPENAI_API_KEY}}). Les requêtes passent par le proxy local en 127.0.0.1, qui injecte la vraie clé. La clé ne touche jamais ton process.Production
Nécessite
ELDING_REFRESH_TOKEN et ELDING_SET_ID. apiKey est le deploy token. Les requêtes passent par elding.app/api/proxy, qui injecte la vraie clé côté serveur. La clé ne touche jamais ton process.Fallback
Pas de proxy actif, pas de deploy token. Le SDK récupère la clé brute du vault et la retourne en
apiKey. La clé entre en mémoire. Déconseillé en production.Paramètres
Valeur retournée
configure() retourne toujours Promise<{ apiKey, baseURL, defaultHeaders }>.
Spread directement dans le constructeur du provider — il prend exactement ce dont il a besoin.
Exemples par provider
OpenAI
Anthropic
Mistral / Together AI / toute API compatible OpenAI
fetch personnalisé
Destructure le résultat et passe les trois champs :
Configuration production
Ajoute deux variables d’environnement sur ta plateforme de déploiement (Vercel, Railway, Fly.io, etc.) :configure() les lit automatiquement.
Le deploy token est scopé à un seul set et verrouillé sur le host du provider. S’il fuite, un attaquant peut seulement appeler ce seul endpoint API — il ne voit jamais la vraie clé. Tu peux le révoquer instantanément depuis le dashboard.
Modèle de sécurité
configure() est la seule fonction dont tu as besoin. La clé n’est jamais une string dans ton code.