Vergleichen Sie direkte Antworten, Streaming, Hintergrundaufträge und Webhooks. Alle Varianten verwenden Text, Sprachcode und Modus.
Legen Sie fest, wie Ihr System das Ergebnis erhält.
{
"text": "Komplexer Ausgangstext in der ausgewählten Sprache.",
"locale": "de",
"mode": "simple-language"
}SDK und cURL-Beispiele verfügbar
Synchrones HTTP
Endpunkt
POST /api/v2/translate
Am besten für
Kurze Texte, deren Ergebnis sofort gebraucht wird.
Erfolg
200 OK
Streaming
Die Antwort verwendet Content-Type: text/event-stream.
Endpunkt
POST /api/v2/translate/stream
Am besten für
Für längere Inhalte, deren Ergebnis schrittweise angezeigt werden soll.
{
"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}}Der Stream beginnt mit meta. Danach folgen ein oder mehrere Textteile als delta. Das Ereignis done schließt die Antwort mit den Nutzungsdaten ab.
Das erste Ereignis enthält die Anfrage-ID, den Sprachcode und den Modus.
Jedes Delta enthält einen Teil des Ergebnisses und done enthält die Nutzungsinformationen.
Anschließend wird die Verbindung geschlossen.
Asynchroner Job mit Abfrage
Idempotency-Key verhindert doppelte Aufträge, wenn Sie eine Anfrage nach einer Zeitüberschreitung oder einem Verbindungsfehler erneut senden. Wählen Sie für jeden neuen Auftrag einen neuen Schlüssel, zum Beispiel eine UUID. Diesen Bezeichner für die Anfrage erstellen Sie selbst; er ist nicht Ihr API-Schlüssel.
Endpunkt erstellen
POST /api/v2/jobs
Statusendpunkt
GET /api/v2/jobs/{id}
Verwenden Sie 1 bis 255 Zeichen: A-Z, a-z, 0-9, Punkte (.), Unterstriche (_), Doppelpunkte (:) oder Bindestriche (-). Verwenden Sie keine Leerzeichen und kürzen Sie den Schlüssel nicht. Senden Sie bei jedem erneuten Versuch denselben Schlüssel und denselben Anfrageinhalt.
Die erste Erstellung liefert HTTP 202. Dieselbe Anfrage erneut zu senden liefert HTTP 200 mit der vorhandenen Auftrags-ID. Derselbe Schlüssel mit einer anderen Anfrage liefert HTTP 409. Diese Regeln gelten auch für Stapel. Die folgenden Beispiele enthalten den Header; ersetzen Sie den Beispielschlüssel einmal für jeden neuen Auftrag oder Stapel.
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"
}Jobs bleiben sieben Tage lang verfügbar.
Ein Auftrag durchläuft die Status queued, processing, completed oder failed. Fehlgeschlagene Aufträge enthalten error.code. Erstellungs- und Statusantworten enthalten expiresAt.
Fragen Sie den Status zunächst nach einer Sekunde erneut ab. Erhöhen Sie den Abstand bei längerer Verarbeitung schrittweise.
Asynchroner Job mit Webhook
Erstellen und prüfen Sie zunächst einen Webhook-Endpunkt in der Simple8-Anwendung. Verweisen Sie dann im Job auf die Endpunkt-ID.
Endpunkt erstellen
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 sendet Simple8-Signature im Format t=<timestamp>,v1=<signature>. <timestamp> ist ein Unix-Zeitstempel in Sekunden. Die Signatur ist ein kleingeschriebener Hexadezimalwert eines HMAC SHA-256 über <timestamp>.<raw request body>.
Prüfen Sie die Signatur anhand der unveränderten Anfrage. Den geheimen Signaturschlüssel sehen Sie einmal beim Erstellen des Endpunkts.
Gib HTTP 200 oder 201 zurück, sobald dein System das Ereignis akzeptiert hat.
Wiederholungen: Bei einem Fehler versucht Simple8 die Zustellung innerhalb von sieben Tagen bis zu 50 Mal erneut. Die letzten Versuche sehen Sie in der Anwendung.
Doppelte Ereignisse: Verarbeiten Sie jede Ereignis-ID nur einmal, da eine Wiederholung dasselbe Ereignis erneut senden kann.
Stapelverarbeitung
Senden Sie zwischen 1 und 50 Artikel mit insgesamt maximal 25.000 Zeichen.
Endpunkt erstellen
POST /api/v2/batches
Statusendpunkt
GET /api/v2/batches/{id}
Jedes Element verwendet dieselben Text-, Sprachcode- und Modusfelder wie eine synchrone Anfrage.
Wählen Sie Polling oder einen verifizierten Webhook-Endpunkt für die Zustellung und senden Sie einen eindeutigen Idempotency-Key-Header.
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"
}
}
]
}Das Erstellen eines Batches gibt beim ersten Mal HTTP 202 und bei einer idempotenten Wiederholung HTTP 200 zurück. Die Webhook-Ereignisse sind job.completed, job.failed, batch.completed und batch.failed. Payloads abgeschlossener Webhooks enthalten nur Kennungen und Status. Rufe den Status-Endpoint des Auftrags oder Batches ab, um das Ergebnis zu lesen.