API externe · OpenAI-compatible

Guide API

Intégrations backend, apps web/mobile, scripts et IDE. Pour le chat web simple, voir le guide connexion.

01 Vue d'ensemble

L'API expose un format entièrement compatible OpenAI. Utilisez votre clé API pour appeler les endpoints de chat, vision et génération d'images selon votre offre active.

Base URL
ai-api-dev.79.137.32.27.nip.io/v1
Authentification
Bearer API key
Format
OpenAI-compatible JSON

02 Authentification

Chaque requête doit inclure le header Authorization: Bearer sk-.... La clé est liée à un compte et à un abonnement actif.

HTTP Header
Authorization: Bearer sk-xxxxxxxxxxxxxxxx
Où récupérer la clé
Connectez-vous sur l'interface web Open WebUI puis ouvrez la section API Keys dans les paramètres de votre profil.

03 Endpoint chat

Envoyez des messages au modèle et recevez des réponses en JSON.

cURL
curl -X POST https://ai-api-dev.79.137.32.27.nip.io/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-..." \
  -d '{
    "model": "qwen2.5-3b",
    "messages": [{"role":"user","content":"Explique le pattern repository"}],
    "max_tokens": 256
  }'
Node.js / TypeScript
import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.FATHERPAUL_API_KEY,
  baseURL: "https://ai-api-dev.79.137.32.27.nip.io/v1"
});

const r = await client.chat.completions.create({
  model: "qwen2.5-3b",
  messages: [{ role: "user", content: "Bonjour" }],
  max_tokens: 256
});

console.log(r.choices[0]?.message?.content);

04 Analyse d'images (vision)

Pour analyser une image, utilisez un modèle vision autorisé par votre plan. L'image peut être envoyée par URL publique ou data URL base64.

JSON
{
  "model": "qwen2.5-vl-3b",
  "messages": [
    {
      "role": "user",
      "content": [
        { "type": "text", "text": "Décris cette image" },
        { "type": "image_url", "image_url": { "url": "https://..." } }
      ]
    }
  ]
}

05 Génération d'images

Plan requis
La génération d'images est réservée à l'offre 10 000 XAF / mois.
cURL
curl -X POST https://ai-api-dev.79.137.32.27.nip.io/v1/images/generations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-..." \
  -d '{
    "model": "imagegen-cpu",
    "prompt": "logo moderne noir et blanc, style minimal"
  }'

06 Erreurs fréquentes

CodeSignificationAction
401Invalid credentialsClé API invalide ou mal formée
403Active subscription requiredAucun abonnement actif sur le compte
409API key not provisionedClé créée mais non provisionnée côté serveur
429Too Many RequestsLimite de débit atteinte pour votre offre

07 Offres & limites

Gratuit
0 XAF
  • 5 requêtes / jour
  • Modèle : free-0xaf
  • Limite 160 tokens
Starter
3 000 XAF/mois
  • 80 requêtes / jour
  • starter-3000 + free-0xaf
  • Limite 384 tokens
API KEY
7 500 XAF/mois
  • 180 requêtes / jour
  • vscode-7500 + starter + free
  • Limite 512 tokens

08 Bonnes pratiques

  • Ne jamais exposer votre clé API en frontend public. Stockez-la côté serveur dans des variables d'environnement.
  • Limitez max_tokens selon votre usage pour préserver votre quota.
  • Ajoutez retry + timeout côté client pour les appels sensibles afin de gérer les délais réseau.

09 Support