Ga direct naar de documentatie
API

Een vertaling vooraf bekijken

Wat `translate` bij een verzending zou opleveren, zonder dat er iets wordt verstuurd of opgeslagen.

POSTapi.openemail.uk/emails/translate

Voert de echte aanroep uit op je workspace, met je eigen sleutel.

POST /emails/translate

Wat translate bij een verzending zou opleveren, zonder dat er iets wordt verstuurd of opgeslagen.

Het verzoek

Dezelfde drie opties die een verzending herleidt, zonder de envelop, door dezelfde functie gehaald die het verzendpad aanroept. Die gelijkheid is de hele waarde van het endpoint: een preview met eigen code zou een belofte zijn die we niet nakomen, en op de dag dat de twee uit elkaar liepen zouden wat er op iemands scherm staat en wat er in de inbox van de ontvanger ligt verschillen zonder dat iets dat zou verraden.

Parameters

tostringverplicht
De taal om in te schrijven. Een BCP-47-code (`de`), een Engelse naam ("German") of de eigen naam van de taal ("Deutsch"). De respons vertelt je naar welke code het is herleid, en dat is de vorm om op te slaan als je per contact een taal bijhoudt.
htmlstring
De HTML-body, tot een megabyte. Een van html, text of subject is verplicht.
textstring
Het platte-tekstdeel. Onafhankelijk van `html` vertaald, met een eigen lengtecontrole.
subjectstring
De onderwerpREGEL: een string, niet de boolean die het onder `translate` bij een verzending is. Het zijn twee verschillende vragen: daar zeg je of een onderwerp dat wij al hebben vertaald moet worden, hier overhandig je er een.
fromstring
Waarin je het hebt geschreven, in elk van diezelfde drie vormen. Het opgeven slaat de detectieaanroep over.
includeOriginalboolean
Of de teruggegeven `html` je origineel al onder de vertaling draagt. Standaard true.

Onbekende sleutels zijn een 422, net als overal elders. Een verzoek zonder html, text of subject is een 422 op html: "One of html, text or subject is required".

Bekijk het vooraf

De rondgang die de composer maakt voordat hij iemand laat zien wat diegene op het punt staat te versturen.

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"  }'
Respons
{  "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 en subject komen null terug in plaats van te ontbreken voor een veld dat je niet hebt gestuurd, zodat een client het antwoord kan renderen zonder te onthouden wat hij heeft gevraagd.

detectedSourceLanguage is null wanneer de detectie zich heeft onthouden. Dat is een echt antwoord en geen fout. Een body met namen, getallen en links geeft er niets te lezen, en het enige gevolg is dat je origineel een bijschrift zonder taal krijgt.

includeOriginal wordt teruggegeven omdat het verandert wat html bevat. Staat het aan, dan draagt de body je origineel al onder de vertaling, en je eigen kopie eraan plakken verstuurt het twee keer.

Preview, bewerken, versturen

De vorm waarvoor dit gebouwd is, is preview, BEWERKEN, versturen: laat iemand de vertaling zien, laat diegene die aanpassen en verstuur dan wat is goedgekeurd als een gewone html en subject, zonder translate op het verzoek. Wat diegene goedkeurde is dan woord voor woord wat er vertrekt.

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>"  }'

Versturen met translate na een preview vertaalt een tweede keer en gooit de bewerkingen weg. De verzending zou vertrekken in een formulering die niemand heeft gelezen, precies de fout die de preview moet voorkomen.

Wat het kost, en wat het niet doet

  • Drie modelaanroepen (de body, het onderwerp, en één om te bepalen waarin je hebt geschreven) die samen worden uitgevoerd, dus de wachttijd is de langste van de drie in plaats van de som. from opgeven laat de derde vervallen. Het kost hetzelfde als versturen met translate, dus bekijk één keer vooraf in plaats van per revisie.
  • Er wordt niets verstuurd, er wordt geen rij geschreven en er komt geen id terug. Er valt hier niets te annuleren of later op te halen.
  • Het vertaalt en doet verder niets. Het corrigeert niet, het verbetert de schrijfstijl niet, en het beantwoordt het bericht nooit.
  • Namen, bedrijven, links, ordernummers, prijzen en datums komen terug zoals ze erin gingen, zodat de vertaling regel voor regel tegen het origineel kan worden gecontroleerd.
  • Geciteerde geschiedenis wordt niet verwijderd, anders dan aan de leeskant. Wat je aanlevert is wat er vertaald wordt, wat klopt voor een composer, waar de body alleen is wat iemand zojuist heeft geschreven, en het is goed om te weten als je een hele antwoordketen meestuurt.
  • Valt onder emails:send en heeft geen eigen scope: het verleent niets wat een verzender al niet kon, en een scope die op een toestemmingsscherm niet van emails:send te onderscheiden is maakt elke andere scope op die lijst iets minder betekenisvol.

De body is begrensd op dezelfde megabyte die een verzending toestaat, maar de vertaling zelf weigert alles boven 30.000 tekens met translation_too_long. De foutcodes zijn dezelfde die een vertaalde verzending teruggeeft, opgesomd onder Een e-mail versturen.