Porównaj bezpośrednie odpowiedzi, strumieniowanie, zadania w tle i haki. Wszystkie warianty używają tekstu, kodu językowego i trybu.
Wybierz, jak twój system otrzymuje wynik.
{
"text": "Kompleksowa treść źródłowa w wybranym języku.",
"locale": "pl",
"mode": "simple-language"
}Dostępne przykłady SDK i cURL
Synchroniczne HTTP
Wynik końcowy
POST /api/v2/translate
Najlepsze dla
Krótkie teksty, których wynik jest potrzebny natychmiast.
Sukces
200 OK
Streaming
Odpowiedź używa typu treści: tekst/strumień zdarzenia.
Wynik końcowy
POST /api/v2/translate/stream
Najlepsze dla
Dla większej zawartości, której wynik powinien być wyświetlany stopniowo.
{
"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}}Strumień zaczyna się od meta. Następnie następuje jedna lub więcej części tekstu jako delta. Wykonane zdarzenie uzupełnia odpowiedź danymi dotyczącymi użytkowania.
Pierwsze zdarzenie zawiera identyfikator żądania, kod głosowy i tryb.
Każda delta zawiera część wyniku, a gotowe zawiera informacje o użyciu.
Po zakończeniu połączenie zostaje zamknięte.
Praca w nieprzyrzeczalnym czasie z sondażami
Wyślij unikalny nagłówek Idempotency-Key podczas tworzenia zadania. Przy ponownych próbach użyj tego samego klucza bez początkowych i końcowych spacji, o długości od 1 do 255 znaków. Pierwsze utworzenie zwraca 202, a powtórzenie zwraca 200.
Utworzenie punktu końcowego
POST /api/v2/jobs
Punkt końcowy stanu
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"
}Oferty pracy są dostępne przez siedem dni.
Zadanie przechodzi przez stany queued, processing, completed lub failed. Zadania zakończone niepowodzeniem zawierają error.code. Odpowiedzi dotyczące utworzenia i stanu zawierają expiresAt.
Najpierw poproś ponownie o status po jednej sekundzie. Zwiększenie odległości stopniowo z dłuższym przetwarzaniem.
Praca asynchronizacja z webhook
Najpierw utwórz i zweryfikuj punkt końcowy webhooka w aplikacji Simple8. Następnie odwołaj się do jego identyfikatora punktu końcowego w zadaniu.
Utworzenie punktu końcowego
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 wysyła Simple8-Signature w formacie t=<timestamp>,v1=<signature>. <timestamp> to uniksowy znacznik czasu w sekundach. Podpis jest zapisanym małymi literami wynikiem szesnastkowym HMAC SHA-256 obliczonego dla <timestamp>.<raw request body>.
Sprawdź podpis na niezmienionym wniosku. Po utworzeniu punktu końcowego zobaczysz klucz podpisu.
Zwróć HTTP 200 lub 201 natychmiast po zaakceptowaniu zdarzenia przez system.
Powtarzanie: W przypadku błędu, Simple8 próbuje dostarczyć do 50 razy w ciągu siedmiu dni. Możesz zobaczyć ostatnie próby w aplikacji.
Zdarzenia duplikowane: Przetwarzanie identyfikatora każdego zdarzenia tylko raz, jako powtórzenie może przywrócić to samo zdarzenie.
Przetwarzanie wsadowe
Wyślij od 1 do 50 elementów o łącznej maksymalnej długości 25 000 znaków.
Utworzenie punktu końcowego
POST /api/v2/batches
Punkt końcowy stanu
GET /api/v2/batches/{id}
Każdy element używa tych samych pól tekstu, ustawień regionalnych i trybu, co żądanie synchroniczne.
Wybierz odpytywanie lub zweryfikowany punkt końcowy webhooka do dostarczenia i wyślij unikalny nagłówek Idempotency-Key.
{
"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"
}
}
]
}Utworzenie partii zwraca za pierwszym razem HTTP 202, a przy idempotentnym powtórzeniu HTTP 200. Zdarzenia webhook to job.completed, job.failed, batch.completed i batch.failed. Payloady ukończonych webhooków zawierają tylko identyfikatory i stan. Pobierz wynik z endpointu stanu zadania lub partii.