Confronta risposte dirette, streaming, lavori di sfondo e webhooks. Tutte le varianti usano il testo, il codice della lingua e la modalità.
Scegli come il tuo sistema riceve il risultato.
{
"text": "Contenuti originali complessi nella lingua selezionata.",
"locale": "it",
"mode": "simple-language"
}Esempi di SDK e cURL disponibili
HTTP sincrono
Punto di destinazione
POST /api/v2/translate
- Perfetto .
Testi brevi, il cui risultato è necessario immediatamente.
Successo
200 OK
Streaming
La risposta utilizza Content-Type: text/event-stream.
Punto di destinazione
POST /api/v2/translate/stream
- Perfetto .
Per il contenuto più lungo, il cui risultato dovrebbe essere visualizzato gradualmente.
{
"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}}Il flusso inizia con meta. Questo è seguito da una o più parti del testo come delta. L'evento svolto completa la risposta con i dati di utilizzo.
Il primo evento contiene l'ID di richiesta, il codice vocale e la modalità.
Ogni delta contiene una parte del risultato e done contiene le informazioni sull'utilizzo.
Al termine, la connessione si chiude.
Lavorato in sincronia con i sondaggi
Idempotency-Key evita processi duplicati se invii nuovamente una richiesta dopo un timeout o un errore di connessione. Scegli una nuova chiave per ogni nuovo processo, ad esempio un UUID. Crei tu questo identificativo della richiesta; non è la tua chiave API.
Creazione di endpoint
POST /api/v2/jobs
Punto di destinazione di stato
GET /api/v2/jobs/{id}
Usa da 1 a 255 caratteri: A-Z, a-z, 0-9, punti (.), trattini bassi (_), due punti (:) o trattini (-). Non usare spazi e non accorciare la chiave. A ogni nuovo tentativo, invia la stessa chiave e lo stesso corpo della richiesta.
La prima creazione restituisce HTTP 202. Ripetere la stessa richiesta restituisce HTTP 200 con l’ID del processo esistente. Riutilizzare la chiave con una richiesta diversa restituisce HTTP 409. Le stesse regole valgono per i batch. Gli esempi seguenti includono l’intestazione; sostituisci ogni chiave di esempio una volta per ogni nuovo processo o batch.
curl https://api.simple8.de/api/v2/jobs \
-H "Authorization: Bearer $SIMPLE8_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: article-4711-v1" \
-d '{
"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"
}I lavori rimangono disponibili per sette giorni.
Un processo attraversa gli stati queued, processing, completed o failed. I processi non riusciti includono error.code. Le risposte di creazione e di stato includono expiresAt.
Prima chiedi di nuovo lo status dopo un secondo. Aumentare la distanza gradualmente con una lavorazione più lunga.
Async con webhook
Crea e verifica prima un endpoint webhook nell'applicazione Simple8. Quindi fare riferimento al relativo ID endpoint nel lavoro.
Creazione di endpoint
POST /api/v2/jobs
curl https://api.simple8.de/api/v2/jobs \
-H "Authorization: Bearer $SIMPLE8_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: article-4711-webhook-v1" \
-d '{
"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 invia Simple8-Signature nel formato t=<timestamp>,v1=<signature>. <timestamp> è un timestamp Unix espresso in secondi. La firma è il risultato esadecimale in minuscolo di un HMAC SHA-256 calcolato su <timestamp>.<raw request body>.
Controllare la firma contro la richiesta invariata. Vedrai la chiave di firma segreta una volta creato l'endpoint.
Restituisci HTTP 200 o 201 non appena il sistema accetta l'evento.
Ripeti: In caso di errore, Simple8 tenta di consegnare fino a 50 volte entro sette giorni. Puoi vedere gli ultimi tentativi nell'applicazione.
Eventi duplicati: Elaborare ogni ID evento solo una volta, come una ripetizione può rivendere lo stesso evento.
Elaborazione batch
Invia da 1 a 50 elementi con un massimo combinato di 25.000 caratteri.
Creazione di endpoint
POST /api/v2/batches
Punto di destinazione di stato
GET /api/v2/batches/{id}
Ogni elemento utilizza gli stessi campi di testo, impostazioni locali e modalità di una richiesta sincrona.
Scegli il polling o un endpoint webhook verificato per la consegna e invia un'intestazione Idempotency-Key univoca.
curl https://api.simple8.de/api/v2/batches \
-H "Authorization: Bearer $SIMPLE8_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: release-4711-v1" \
-d '{
"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 creazione di un batch restituisce HTTP 202 la prima volta e HTTP 200 in caso di ripetizione idempotente. Gli eventi webhook sono job.completed, job.failed, batch.completed e batch.failed. I payload dei webhook completati contengono solo identificatori e stato. Recupera l'output dall'endpoint di stato del processo o del batch.