Para desarrolladores
Inicio rápido de la API
Envía una grabación y el texto con el que debe coincidir. Recibe seis puntuaciones y el desglose de cada palabra y cada sonido. Es la misma evaluación que usan las apps de Spelly.
Tu app envía
La grabación, el texto con el que debe coincidir y su idioma.
Spelly evalúa
Cada sonido se compara con el sonido que necesita la palabra.
Recibes JSON
Seis puntuaciones, cada palabra y cada sonido, listos para mostrar.
Inicio rápido
Cada ruta de esta página va detrás de https://spelly.ch: /api/assess es https://spelly.ch/api/assess. Envía tu clave en la cabecera X-API-Key. Dos llamadas completas para empezar:
Evaluar una grabación guardada como 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.wavObtener la voz del modelo con el momento de cada sonido y cada letra
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"
}'Tu clave de API
Envía tu clave en una cabecera X-API-Key con cada petición. La encontrarás en la consola de operador. Guárdala en tu servidor, nunca en una página web.
Los navegadores no pueden llamar a la API desde tus páginas: solo acepta peticiones de otro origen desde los sitios de Spelly, y una clave en una página se podría copiar. Llámala desde tu servidor; para que los alumnos practiquen en una página web, usa el widget.
Cada grabación evaluada usa 1 unidad y cada voz del modelo (/api/tts, /api/tts/aligned, /api/assess/synthesize) 0,5; las demás llamadas son gratuitas. Solo las llamadas que salen bien usan unidades: una llamada rechazada o fallida no usa nada. Las grabaciones y las voces del widget usan las mismas unidades. Una prueba gratuita tiene 100 unidades; cuando se agotan, las llamadas responden 402 con operator.trialExhausted en detail, y remaining y requested al lado.
Límites de uso
Cada dirección puede enviar a la API una media de 50 peticiones por segundo, y hasta 300 más de golpe. Por encima, las llamadas responden 429 request.tooManyRequests. Una clave de prueba gratuita puede enviar 60 peticiones por minuto. Si tu clave tiene su propio límite por minuto, las llamadas que lo superan también responden 429.
Las respuestas 429 y 503 llevan una cabecera Retry-After: los segundos que hay que esperar antes de enviar la misma petición otra vez.
Siguiente
- Referencia de la API — cada endpoint, con sus parámetros, su respuesta y un ejemplo de curl.
- Errores de la API — cada código de error y qué hacer.