profound-logoProfound CMS
⌘K
Admin
Theme
DocsTutorialBlogPhilosophy
DocsTutorialBlogPhilosophy

Hybrid

Collection of Pages with ComponentsTypes of ComponentsSetup server sent events (SSE) content refetchYlläpitäjän hallintapaneelin välityspalvelimen määrittäminenCEL Scripting in Template BuilderProject ScaffoldingMedia Library

Headless

PikakäynnistysSplit Screen JSON Component Builder with LLMComponent Zod Pull

REST-ohjelmointirajapinta

REST API OverviewgetConnect your websitegetGET /routesgetGET /routegetGET /blocksgetGET /blocks/with-cel-cachegetGET /blocks/generatedgetGET /componentsgetGET /components/{name}getGET /dataset/{schema_name}getGET /content-changes (SSE)patchPATCH /dataset/{schema_name}postPOST /translationpatchPATCH /translationsgetKäytön hakeminenpostPOST /csvpatchPATCH /csv
All Systems Operational
Powered Byprofound-logo
Theme

POST /translation

Käynnistä skeeman julkaistujen asiakirjojen erämuotoinen taustakäännös kohdekielille.

Aseta kaikkien julkaistujen asiakirjojen taustakäännös jonosta yhdestä tai useammasta komponenttiskeemasta useille kohdekielille. Tulokset lisätään tai päivitetään translations-tauluun kunkin käännöksen valmistuessa.

Päätepiste: POST /translation Todennus: Bearer JWT (WorkOS)

Pyynnön runko

{
  "websiteId": "<uuid>",
  "schemaNames": ["post", "hero"],
  "languages": ["fr", "es", "de"]
}
KenttäTyyppiPakollinenHuomautukset
websiteIduuidkylläSivusto, joka sisältää lähdeasiakirjat.
schemaNamesstring[]kyllä*Käännettävät komponenttiskeemat. Päällekkäiset nimet poistetaan.
schemaNamestringkyllä*Vanha vaihtoehto yhden skeeman lähettämiseen.
languagesstring[]kylläTuetut kohdekielten koodit. Päällekkäiset koodit poistetaan.

* Anna joko schemaNames tai schemaName.

Huomioon otetaan vain julkaistut asiakirjat, joiden julkaistu sisältö ei ole null.

Vastaus

{
  "job_id": "<uuid>",
  "website_id": "<uuid>",
  "schema_name": null,
  "schema_names": ["post", "hero"],
  "languages": ["fr", "es", "de"],
  "status": "queued",
  "documents_processed": 12,
  "translations_scheduled": 30,
  "translations_skipped": 6,
  "translations_completed": 0,
  "translations_failed": 0,
  "reused": false,
  "created_at": "2026-07-15T18:00:00Z",
  "updated_at": "2026-07-15T18:00:00Z"
}

Palauttaa:

  • 202 Accepted, kun käännökset on asetettu jonoon
  • 200 OK, kun kaikki käännökset ovat jo ajan tasalla
  • olemassa olevan aktiivisen työn, kun täysin samanlainen pyyntö on jo käynnissä
KenttäKuvaus
job_idTunniste, jolla työn eteneminen haetaan.
statusTyön nykyinen tila.
documents_processedLöydettyjen kelvollisten lähdeasiakirjojen määrä.
translations_scheduledJonoon asetettujen asiakirja–kieli-parien määrä.
translations_skippedOhitettujen parien määrä, koska niiden lähteen tiivisteet ovat ajan tasalla.
translations_completedOnnistuneesti käännettyjen määrä.
translations_failedEpäonnistuneiden määrä.
reusedIlmaisee, viittaako vastaus olemassa olevaan aktiiviseen työhön.

Mahdolliset työn tilat ovat:

  • preparing
  • queued
  • running
  • completed
  • completed_with_errors
  • failed

Ajan tasalla olevien käännösten ohittaminen

Jokaiseen asiakirja–kieli-pariin tallennetaan lähdeasiakirjan julkaistun sisällön SHA-256-tiiviste.

Käännös ohitetaan, kun tallennettu lähteen tiiviste vastaa nykyistä julkaistua sisältöä. Näin päätepistettä voidaan kutsua toistuvasti ilman muuttumattoman sisällön uudelleenkääntämistä.

Jos julkaistu sisältö muuttuu vastaavan työn ollessa aktiivinen, palvelu hylkää uuden pyynnön. Lähetä pyyntö uudelleen aktiivisen työn valmistuttua.

Käsittelyn toiminta

Käännös suoritetaan asynkronisesti alkuperäisen vastauksen jälkeen.

  • Työ käsitellään rajoitetulla samanaikaisuudella.
  • Tilapäiset virheet yritetään uudelleen viiveellä.
  • Onnistuneet tulokset tallennetaan niiden valmistuessa.
  • Yksittäiset päättely- tai tallennusvirheet kirjataan työhön.
  • Osittain onnistunut työ päättyy tilaan completed_with_errors.

Esimerkki

curl -X POST '{TRANSLATION_API_URL}/translation' \
  -H 'Authorization: Bearer <workos-jwt>' \
  -H 'Content-Type: application/json' \
  -d '{
    "websiteId": "<uuid>",
    "schemaNames": ["post", "hero"],
    "languages": ["fr", "es"]
  }'

Virheet

  • 400 Bad Request — skeemoja tai kieliä puuttuu, kieltä ei tueta tai erä ylittää määritetyn rajan
  • 401 Unauthorized — bearer-tunnus puuttuu tai on virheellinen
  • 409 Conflict — vastaava työ on aktiivinen, mutta julkaistu lähdesisältö muuttui
  • 500 Internal Server Error — lähdeasiakirjoja ei voitu valmistella tai tietokantatoiminto epäonnistui

Hae käännöstyö

Hae käännöstyön viimeisin eteneminen.

Päätepiste: GET /translation-jobs/{job_id} Todennus: Bearer JWT (WorkOS)

Vastaus

Vastauksessa käytetään samaa työobjektia kuin POST /translation-vastauksessa, mutta tila- ja etenemislaskurit on päivitetty.

{
  "job_id": "<uuid>",
  "website_id": "<uuid>",
  "schema_name": null,
  "schema_names": ["post", "hero"],
  "languages": ["fr", "es"],
  "status": "running",
  "documents_processed": 12,
  "translations_scheduled": 24,
  "translations_skipped": 0,
  "translations_completed": 16,
  "translations_failed": 1,
  "reused": false,
  "created_at": "2026-07-15T18:00:00Z",
  "updated_at": "2026-07-15T18:01:30Z"
}

Esimerkki

curl '{TRANSLATION_API_URL}/translation-jobs/<job-id>' \
  -H 'Authorization: Bearer <workos-jwt>'

Virheet

  • 401 Unauthorized — bearer-tunnus puuttuu tai on virheellinen
  • 404 Not Found — työtä ei ole olemassa tai sitä ei enää säilytetä

Käännöstöitä säilytetään tällä hetkellä muistissa. Työn tila menetetään, kun käännöspalvelu käynnistyy uudelleen, ja usean instanssin käyttöönotot edellyttävät istuntojen pysyvää reititystä.

Continue Reading
Previous‹PATCH /dataset/{schema_name}NextPATCH /translations›