Ves a la documentació
API

Previsualitzar una traducció

Què produiria `translate` en un enviament, sense enviar res ni desar res.

POSTapi.openemail.uk/emails/translate

Executa la crida real contra el teu espai de treball, amb la teva pròpia clau.

POST /emails/translate

Què produiria translate en un enviament, sense enviar res ni desar res.

La petició

Les mateixes tres opcions que resol un enviament, sense el sobre, passades per la mateixa funció que crida la via d'enviament. Aquesta identitat és tot el valor de l'endpoint: una previsualització amb codi propi seria una promesa que no complim, i el dia que totes dues derivessin, el que hi ha a la pantalla d'algú i el que hi ha a la safata d'entrada del destinatari serien diferents sense res que ho digués.

Paràmetres

tostringobligatori
La llengua en què cal escriure. Un codi BCP-47 (`de`), un nom en anglès ("German") o el nom propi de la llengua ("Deutsch"). La resposta us diu a quin codi s'ha resolt, i aquesta és la forma que cal desar si guardeu una llengua per contacte.
htmlstring
El cos HTML, fins a un megabyte. Cal un d'aquests: html, text o subject.
textstring
La part de text sense format. Es tradueix independentment d'`html`, amb la seva pròpia comprovació de longitud.
subjectstring
La LÍNIA de l'assumpte: una string, no el boolean que és dins de `translate` en un enviament. Són dues preguntes diferents: allà dieu si cal traduir un assumpte que ja tenim, aquí ens en lliureu un.
fromstring
En quina llengua l'heu escrit, en qualsevol de les tres mateixes formes. Indicar-la estalvia la crida de detecció.
includeOriginalboolean
Si l'`html` retornat ja porta el vostre original sota la traducció. Per defecte és true.

Les claus desconegudes són un 422, com a tot arreu. Una petició sense html, text ni subject és un 422 a html: "One of html, text or subject is required".

Previsualitzar-ho

El viatge d'anada i tornada que fa el redactor abans de mostrar a algú què està a punt d'enviar.

curl
curl -X POST "$OE/emails/translate" -H "$AUTH" -H "Content-Type: application/json" \  -d '{    "subject": "Your September invoice",    "html": "<p>Invoice attached. Payment is due on the 14th.</p>",    "to": "de"  }'
Resposta
{  "object": "translation",  "language": { "code": "de", "label": "German", "native": "Deutsch", "flag": "🇩🇪", "rtl": false },  "detectedSourceLanguage": {    "code": "en", "label": "English", "native": "English", "flag": "🇬🇧", "rtl": false  },  "subject": "Ihre Rechnung für September",  "html": "<p>Rechnung im Anhang. Zahlbar bis zum 14.</p>\n<div style=\"margin:28px 0 0;padding:14px 0 0;border-top:1px solid #d6dae0\">\n<div style=\"margin:0 0 10px;font-size:12px;line-height:1.5;color:#6b7280\">Ursprüngliche Nachricht (English)</div>\n<div><p>Invoice attached. Payment is due on the 14th.</p></div>\n</div>",  "text": null,  "includeOriginal": true}

html, text i subject tornen com a null en lloc d'absents per a un camp que no heu enviat, de manera que un client pot representar la resposta sense recordar què havia demanat.

detectedSourceLanguage és null quan la detecció s'ha abstingut. És una resposta real i no una fallada. Un cos fet de noms, números i enllaços no li dona res per llegir, i l'única conseqüència és que el vostre original queda retolat sense cap llengua.

includeOriginal es retorna tal qual perquè canvia què conté html. Amb l'opció activada, el cos ja porta el vostre original sota la traducció, i afegir-hi la vostra pròpia còpia l'envia dues vegades.

Previsualitzar, editar, enviar

La forma per a la qual està pensat és previsualitzar, EDITAR, enviar: mostreu la traducció a una persona, deixeu que la canviï i després envieu el que hagi aprovat com un html i un subject normals, sense cap translate a la petició. El que ha aprovat és aleshores, paraula per paraula, el que surt.

curl
curl -X POST "$OE/emails" -H "$AUTH" -H "Content-Type: application/json" \  -d '{    "from": "[email protected]",    "to": ["[email protected]"],    "subject": "Ihre Rechnung für September",    "html": "<p>Rechnung im Anhang. Zahlbar bis zum 14.</p>"  }'

Enviar amb translate després de previsualitzar tradueix una segona vegada i llença les edicions. L'enviament sortiria amb una redacció que ningú no ha llegit, que és precisament la fallada que la previsualització existeix per evitar.

Què costa i què no fa

  • Tres crides al model (el cos, l'assumpte i una per esbrinar en quina llengua heu escrit) emeses alhora, de manera que l'espera és la més llarga de les tres i no la seva suma. Indicar from elimina la tercera. Té el mateix cost que enviar amb translate, així que previsualitzeu un cop i no a cada revisió.
  • No s'envia res, no s'escriu cap fila i no torna cap id. Aquí no hi ha res per cancel·lar ni per recuperar més tard.
  • Tradueix i no fa res més. No corregeix, no millora la redacció i mai no respon el missatge.
  • Els noms, les empreses, els enllaços, els números de comanda, els preus i les dates tornen tal com han entrat, de manera que la traducció es pot comprovar contra l'original línia per línia.
  • L'historial citat no s'elimina, a diferència de la meitat de lectura. El que lliureu és el que es tradueix, cosa que és correcta per a un redactor, on el cos és només el que algú acaba d'escriure, i que val la pena saber si hi envieu tota una cadena de respostes.
  • Té l'àmbit emails:send, sense cap àmbit propi: no concedeix res que un remitent no pogués fer ja, i un àmbit que ningú no pot distingir d'emails:send en una pantalla de consentiment fa que tots els altres àmbits d'aquella llista signifiquin una mica menys.

El cos està limitat al mateix megabyte que permet un enviament, però la traducció en si rebutja qualsevol cosa de més de 30.000 caràcters amb translation_too_long. Els codis de fallada són els que retorna un enviament traduït, llistats a Enviar un correu.