Documentation Interactive
Explorez les routes client vérifiées avec des exemples exécutables. Les conditions des forfaits et les tarifs unitaires sont lus dans leurs catalogues publics ; ils ne sont pas figés dans ce guide.
Flux Utilisateur Complet​
Suivez ce flux pour comprendre le cycle de vie d'une application YODI:
1. Créer un compte et une clé API​
# Créez un compte et générez une clé dans Yodi Console.
# Le secret n'est affiché qu'une fois ; stockez-le dans un gestionnaire de secrets.
export YODI_API_KEY="your_api_key_here"
2. Lire les forfaits publiés​
curl -X GET "https://api.yodi.tg/v1/subscription/plans" \
-H "Accept: application/json"
La réponse publique est une enveloppe standard dont data contient un tableau
de vues des forfaits publiés. Les noms, prix, devises, quotas et limites sont
des données dynamiques : ne recopiez pas d'anciennes valeurs. Pour les unités
facturables courantes, lisez GET /billing/pricing.
3. Traduire un texte​
curl -X POST "https://api.yodi.tg/v1/ai/translate" \
-H "Authorization: Bearer $YODI_API_KEY" \
-H "Idempotency-Key: 6d59f1a9-f2b3-4e80-a35e-b3c7c457f6b8" \
-H "Content-Type: application/json" \
-d '{
"text": "Bonjour, comment allez-vous?",
"sourceLang": "fra_Latn",
"targetLang": "ewe_Latn"
}'
Réponse:
{
"message": "SUCCESS",
"error": false,
"data": "Bonjour, comment allez-vous?",
"meta": { "request_id": "…", "served_at": "…" },
"status": 200
}
Services Disponibles​
Translation API​
Traduisez du texte en langues africaines avec une précision élevée.
Langues supportées:
fra_Latn- French (Français)ewe_Latn- Ewemina_Latn- Minakbp_Latn- Kabyelin_Latn- Lingalanmz_Latn- Nawdmfon_Latn- Fonlas_Latn- Lama Utilisez uniquement les codes canoniques poursourceLangettargetLangdans les requêtes de traduction :fra_Latn,ewe_Latn,mina_Latn,kbp_Latn,lin_Latn,nmz_Latn,fon_Latn,las_Latn.
kdh_Latn reste accepté et traduit vers le kabyè, mais il est déprécié : kdh est le code ISO du tem, et la réponse porte meta.deprecation. Il sera retiré après le 2027-03-31.
Example:
curl -X POST "https://api.yodi.tg/v1/ai/translate" \
-H "Authorization: Bearer $YODI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": "Je suis un développeur",
"sourceLang": "fra_Latn",
"targetLang": "ewe_Latn"
}'
Text Analysis​
Analysez le sentiment, extrayez les entités nommées, et identifiez les mots-clés.
Fonctionnalités:
- Analyse de sentiment (positif, négatif, neutre)
- Extraction d'entités (personnes, lieux, organisations)
- Extraction de mots-clés
- Détection de langue
Example:
curl -X POST "https://api.yodi.tg/v1/ai/analyze" \
-H "Authorization: Bearer $YODI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": "J'\''adore ce produit! C'\''est incroyable. Amazon est le meilleur."
}'
Réponse:
{
"message": "SUCCESS",
"error": false,
"data": {
"sentiment": "positive",
"confidence": 0.95,
"entities": [
{ "type": "ORGANIZATION", "text": "Amazon" }
]
},
"status": 200
}
Text-to-Speech​
Convertissez du texte en audio naturel avec plusieurs voix.
Voix disponibles:
clara- Voix féminine naturellemarcus- Voix masculine naturelleafiya- Voix féminine chaleureuse
Example:
curl -X POST "https://api.yodi.tg/v1/ai/tts-generic" \
-H "Authorization: Bearer $YODI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": "Bienvenue sur YODI",
"lang": "ewe_Latn"
}' \
--output audio.wav
Chat Completion​
Construisez des applications de chat alimentées par l'IA.
Example:
curl -X GET "https://api.yodi.tg/v1/ai/chat?prompt=Qu%27est-ce%20que%20YODI%3F" \
-H "Authorization: Bearer $YODI_API_KEY"
Réponse:
{
"message": "SUCCESS",
"error": false,
"data": {
"reply": "YODI est une plateforme d'IA africaine..."
},
"status": 200
}
Communication​
Envoyez des messages via SMS, appel vocal, ou WhatsApp.
Méthodes disponibles:
sms- SMS/Textcall- Appel vocalwhatsapp_audio- Message vocal WhatsAppwhatsapp_sms- Message texte WhatsApp
Example:
curl -X POST "https://api.yodi.tg/v1/ai/sms/communication" \
-H "Authorization: Bearer $YODI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"phone": "+22890123456",
"input": "Votre rendez-vous est demain Ă 10h"
}'
Agents​
Créez des agents IA autonomes pour des tâches spécifiques.
Agents disponibles:
financial- Agent financierreminder- Agent de rappelsclimate- Agent climat/données météo
Example:
curl -X POST "https://api.yodi.tg/v1/ai/financial/task" \
-H "Authorization: Bearer $YODI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": "Analyser mes dépenses mensuelles"
}'
Test Interactif​
Utilisez le API Playground pour tester ces endpoints en direct!
Étapes:
- Allez sur la page Playground
- Entrez votre API Key
- Sélectionnez un endpoint
- Remplissez les paramètres
- Cliquez "Send Request"
- Voyez la réponse en temps réel
Crédits et tarifs​
Utilisez GET /billing/pricing pour connaître le tarif actif et l'unité de
chaque opération, et GET /credits/me/funding avec une session authentifiée
pour lire le modèle de financement et le solde courant. Une ancienne vue de
quota par service n'est pas un sous-portefeuille dépensable. Consultez les
tarifs unitaires et le portefeuille
commun.
Cas d'Usage Courants​
Traduction Multi-Langue​
Intégrez YODI pour supporter plusieurs langues:
import requests
def translate_content(text, target_lang):
response = requests.post(
'https://api.yodi.tg/v1/ai/translate',
headers={'Authorization': f'Bearer {api_key}'},
json={
'text': text,
'targetLang': target_lang
}
)
return response.json()
# Traduire en plusieurs langues
languages = ['fra_Latn', 'ewe_Latn', 'mina_Latn', 'kbp_Latn', 'lin_Latn', 'nmz_Latn', 'fon_Latn', 'las_Latn']
for lang in languages:
result = translate_content('Bonjour le monde', lang)
print(f"{lang}: {result['data']['translated']}")
Analyse de Sentiment pour Support Client​
Analysez automatiquement les feedbacks clients:
def analyze_feedback(feedback_text):
response = requests.post(
'https://api.yodi.tg/v1/ai/analyze',
headers={'Authorization': f'Bearer {api_key}'},
json={'text': feedback_text}
)
sentiment = response.json()['data']['sentiment']['label']
if sentiment == 'negative':
print(" Problème détecté - Escalade automatique")
elif sentiment == 'positive':
print(" Client satisfait")
else:
print(" Feedback neutre")
analyze_feedback("Excellent service! Je recommande!")
Communication Multicanal​
Envoyez des notifications via SMS ou appel vocal:
def notify_user(phone, message):
channels = ['sms', 'call']
for channel in channels:
requests.post(
f'https://api.yodi.tg/v1/ai/{channel}/communication',
headers={'Authorization': f'Bearer {api_key}'},
json={
'phone': phone,
'input': message
}
)
Bonnes Pratiques​
- Mise en cache - Stockez les traductions fréquentes
- Rate limiting - Implémentez des stratégies de backoff
- Monitoring - Suivez votre consommation de crédits
- Error handling - Gérez les erreurs 429 (rate limite)
- Testing - Testez en Freemium avant de monter en plan