Compara las respuestas directas, Streaming, las tareas de fondo y Webhooks. Todas las variantes utilizan texto, código de voz y modo.
Elige cómo recibe el resultado tu sistema.
{
"text": "Contenido fuente complejo en el idioma seleccionado.",
"locale": "es",
"mode": "simple-language"
}Ejemplos de SDK y cURL disponibles
HTTP sincrono
Punto final
POST /api/v2/translate
Lo mejor para
Técnicas cortas cuyo resultado sea necesario inmediatamente.
El éxito
200 Está bien
En streaming
La respuesta utiliza tipo de contenido: texto/flujo de eventos.
Punto final
POST /api/v2/translate/stream
Lo mejor para
Para contenidos más extensos, cuyo resultado deberá mostrarse paso a paso.
{
"text": "Source content in the selected language.",
"locale": "en",
"mode": "easy-language"
}event: meta
data: {"requestId":"req_stream_001","locale":"en","mode":"easy-language"}
event: delta
data: {"delta":"Complete result."}
event: done
data: {"usage":{"inputCharacters":42,"cacheHit":false}}El flujo comienza con meta. Luego, uno o más fragmentos de texto siguen como delta.
El primer evento contiene el ID de la solicitud, el código de idioma y el modo.
Cada delta contiene una parte del resultado y done contiene la información de uso.
Una vez hecho esto, la conexión se cierra.
Trabajo sincronizado con las encuestas
Envíe un encabezado Idempotency-Key único al crear un trabajo. Use la misma clave, sin espacios iniciales ni finales y con una longitud de 1 a 255 caracteres, en los reintentos. La primera creación devuelve 202 y una repetición devuelve 200.
Crear un punto final
POST /api/v2/jobs
Punto final de estado
GET /api/v2/jobs/{id}
{
"text": "Source content in the selected language.",
"locale": "fr",
"mode": "simple-language",
"delivery": {
"type": "polling"
}
}{
"jobId": "job_poll_001",
"status": "queued",
"expiresAt": "2026-09-03T12:00:00.000Z"
}{
"jobId": "job_poll_001",
"status": "completed",
"locale": "fr",
"mode": "simple-language",
"output": "Simplified content in French.",
"expiresAt": "2026-09-03T12:00:00.000Z"
}Los trabajos permanecen disponibles durante siete días.
Un trabajo pasa por los estados queued, processing, completed o failed. Los trabajos fallidos incluyen error.code. Las respuestas de creación y estado incluyen expiresAt.
En primer lugar, vuelva a preguntar el estado después de un segundo. Aumente la distancia gradualmente en caso de procesamiento prolongado.
Trabajo sincronizado con webhook
Primero cree y verifique un punto final de webhook en la aplicación Simple8. Luego haga referencia a su ID de punto final en el trabajo.
Crear un punto final
POST /api/v2/jobs
{
"text": "Source content in the selected language.",
"locale": "de",
"mode": "easy-language",
"delivery": {
"type": "webhook",
"endpointId": "00000000-0000-4000-8000-000000000000"
}
}{
"id": "evt_01",
"type": "job.completed",
"createdAt": "2026-08-06T12:00:00.000Z",
"data": {
"jobId": "job_hook_001",
"status": "completed"
}
}Simple8 envía Simple8-Signature con el formato t=<timestamp>,v1=<signature>. <timestamp> es una marca de tiempo Unix en segundos. La firma es la salida hexadecimal en minúsculas de un HMAC SHA-256 de <timestamp>.<raw request body>.
Verificar la firma con la solicitud sin cambios. Verá la clave de firma secreta una vez al crear el punto final.
Devuelve HTTP 200 o 201 en cuanto tu sistema acepte el evento.
Repeticiones: Si hay un error, Simple8 intenta la entrega de nuevo en siete días hasta 50 veces.
Duplicado de eventos: procesar cada ID de evento sólo una vez, ya que una repetición puede enviar el mismo evento de nuevo.
Procesamiento por lotes
Envíe entre 1 y 50 elementos con un máximo combinado de 25.000 caracteres.
Crear un punto final
POST /api/v2/batches
Punto final de estado
GET /api/v2/batches/{id}
Cada elemento utiliza los mismos campos de texto, configuración regional y modo que una solicitud sincrónica.
Elija un sondeo o un punto final de webhook verificado para la entrega y envíe un encabezado Idempotency-Key único.
{
"items": [
{
"text": "First source text.",
"locale": "en",
"mode": "simple-language"
},
{
"text": "Second source text.",
"locale": "de",
"mode": "easy-language"
}
],
"delivery": {
"type": "polling"
}
}{
"batchId": "batch_001",
"status": "queued",
"itemCount": 2
}{
"batchId": "batch_001",
"status": "completed",
"itemCount": 2,
"items": [
{
"jobId": "job_001",
"status": "completed",
"locale": "en",
"mode": "simple-language",
"output": "First result."
},
{
"jobId": "job_002",
"status": "failed",
"locale": "de",
"mode": "easy-language",
"error": {
"code": "processing_failed"
}
}
]
}La creación de un lote devuelve HTTP 202 la primera vez y HTTP 200 en una repetición idempotente. Los eventos de webhook son job.completed, job.failed, batch.completed y batch.failed. Los payloads de webhooks completados solo contienen identificadores y estado. Consulta el endpoint de estado del trabajo o lote para obtener el resultado.