Pour les développeurs
Démarrage rapide de l'API
Envoie un enregistrement et le texte auquel il doit correspondre. Récupère six scores et le détail de chaque mot et de chaque son. C'est la même évaluation que celle des applications de Spelly.
Ton application envoie
L'enregistrement, le texte auquel il doit correspondre et sa langue.
Spelly évalue
Chaque son est comparé au son dont le mot a besoin.
Tu récupères du JSON
Six scores, chaque mot et chaque son, prêts à afficher.
Démarrage rapide
Chaque chemin de cette page s'ajoute à https://spelly.ch : /api/assess devient https://spelly.ch/api/assess. Envoie ta clé dans l'en-tête X-API-Key. Deux appels complets pour commencer :
Évaluer un enregistrement sauvegardé sous recording.wav
curl https://spelly.ch/api/assess \
-H 'X-API-Key: YOUR_KEY' \
-F 'reference_text=The weather is lovely' \
-F language=en-GB \
-F audio=@recording.wavObtenir la voix du modèle avec le moment de chaque son et de chaque lettre
curl https://spelly.ch/api/tts/aligned \
-H 'X-API-Key: YOUR_KEY' \
-H 'Content-Type: application/json' \
-d '{
"text": "hello",
"language": "en-GB",
"audio_format": "mp3"
}'Ta clé API
Envoie ta clé dans un en-tête X-API-Key avec chaque requête. Tu la trouves dans la console opérateur. Garde-la sur ton serveur, jamais dans une page web.
Les navigateurs ne peuvent pas appeler l'API depuis tes pages : elle n'accepte les requêtes cross-origin que depuis les sites de Spelly, et une clé dans une page pourrait être copiée. Appelle-la depuis ton serveur ; pour faire pratiquer les apprenants dans une page web, utilise le widget.
Chaque enregistrement évalué utilise 1 unité et chaque voix du modèle (/api/tts, /api/tts/aligned, /api/assess/synthesize) 0,5 ; tous les autres appels sont gratuits. Seuls les appels réussis utilisent des unités : un appel refusé ou en échec n'utilise rien. Les enregistrements et les voix du widget utilisent les mêmes unités. Un essai gratuit compte 100 unités ; une fois épuisées, les appels répondent 402 avec operator.trialExhausted dans detail, et remaining et requested à côté.
Limites de débit
Chaque adresse peut envoyer à l'API 50 requêtes par seconde en moyenne, et jusqu'à 300 de plus d'un coup. Au-delà, les appels répondent 429 request.tooManyRequests. Une clé d'essai gratuite peut envoyer 60 requêtes par minute. Si ta clé a sa propre limite par minute, les appels au-delà répondent aussi 429.
Les réponses 429 et 503 portent un en-tête Retry-After : le nombre de secondes à attendre avant de renvoyer la même requête.
Ensuite
- Référence de l'API — chaque endpoint, avec ses paramètres, sa réponse et un exemple curl.
- Erreurs de l'API — chaque code d'erreur et que faire.