Aller au contenu

Intégration API

import { Icon } from ‘@astrojs/starlight/components’;

Prompt Manager expose une API REST simple pour exécuter vos prompts depuis vos applications.

Pour utiliser l’API, vous devez générer une clé d’API (API Key) :

  1. Allez dans Settings > API Keys
  2. Cliquez sur Generate New Key
  3. Donnez un nom à votre clé (ex: “Production App”, “Dev Environment”)
  4. Copiez la clé affichée

Vous pouvez :

  • Voir toutes vos clés : Nom, date de création, date de dernière utilisation
  • Révoquer une clé : Supprimer définitivement une clé (action irréversible)
  • Créer plusieurs clés : Pour séparer vos environnements (dev, staging, prod)

Les clés sont affichées partiellement pour sécurité (ex: sk_***abc123)

POST https://votre-domaine.com/api/v1/run
HeaderValeur
Content-Typeapplication/json
x-api-keyVotre clé API générée
{
"promptName": "nom-de-votre-prompt",
"variables": {
"variable1": "valeur1",
"variable2": "valeur2"
},
"stream": false
}
ParamètreTypeRequisDescription
promptNamestringOuiLe nom (titre) de votre prompt
variablesobjectConditionnelLes valeurs des variables si votre prompt en contient
streambooleanNonActive le streaming de la réponse (défaut: false)
Fenêtre de terminal
curl -X POST https://votre-domaine.com/api/v1/run \
-H "Content-Type: application/json" \
-H "x-api-key: sk_votre_cle_api_ici" \
-d '{
"promptName": "Email de Bienvenue",
"variables": {
"nom_utilisateur": "Steph",
"nom_service": "Prompt Manager"
}
}'
{
"success": true,
"output": "Bonjour Steph,\n\nBienvenue sur Prompt Manager!...",
"promptVersion": 3,
"durationMs": 1245,
"model": "gpt-4"
}
CodeSignification
400Requête invalide (variables manquantes, format incorrect)
401Clé API manquante ou invalide
403Accès refusé (abonnement expiré, modèle non autorisé)
404Prompt non trouvé ou aucune version PRODUCTION
500Erreur serveur ou échec d’exécution du modèle
{
"success": false,
"error": "Prompt 'Email de Bienvenue' not found or has no PRODUCTION version"
}
async function executePrompt(promptName, variables) {
const response = await fetch('https://votre-domaine.com/api/v1/run', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-api-key': process.env.PROMPT_MANAGER_API_KEY
},
body: JSON.stringify({ promptName, variables })
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error);
}
return await response.json();
}
// Utilisation
const result = await executePrompt('Email de Bienvenue', {
nom_utilisateur: 'Steph',
nom_service: 'Prompt Manager'
});
console.log(result.output);
import requests
import os
def execute_prompt(prompt_name, variables):
response = requests.post(
'https://votre-domaine.com/api/v1/run',
headers={
'Content-Type': 'application/json',
'x-api-key': os.environ['PROMPT_MANAGER_API_KEY']
},
json={
'promptName': prompt_name,
'variables': variables
}
)
response.raise_for_status()
return response.json()
# Utilisation
result = execute_prompt('Email de Bienvenue', {
'nom_utilisateur': 'Steph',
'nom_service': 'Prompt Manager'
})
print(result['output'])

Toujours gérer les erreurs de manière appropriée :

  • 401/403 : Vérifier l’abonnement et la validité de la clé
  • 404 : S’assurer que le prompt existe et a une version PRODUCTION
  • 500 : Implémenter un système de retry avec backoff exponentiel
  • Jamais en clair : Ne hardcodez jamais vos clés API dans le code source
  • Variables d’environnement : Utilisez des variables d’environnement ou un gestionnaire de secrets
  • Rotation : Changez régulièrement vos clés API
  • Surveillance : Surveillez l’utilisation via le dashboard pour détecter des usages anormaux
  • Cache : Si possible, cachez les résultats pour les requêtes identiques
  • Timeout : Configurez des timeouts appropriés (recommandé: 30 secondes)
  • Rate Limiting : Respectez les limites de taux côté client

Des SDKs officiels pour Node.js, Python et autres langages seront bientôt disponibles pour faciliter l’intégration.