Dokumentation

Så fungerar Sleekdocs Translate

Allt från första inloggningen till att driftsätta ett språk i produktion, och hur ni automatiserar det med API:t.

Kom igång

  1. Logga in

    Med Google, Microsoft eller en engångskod via e-post. Första gången skapas ett konto åt dig.

  2. Gå med i eller skapa ett team

    Har du blivit inbjuden accepterar du inbjudan, så är du med. Annars skapar du ett team: du blir dess administratör, och det börjar med 14 dagar av Pro.

  3. Skapa ett projekt och importera era filer

    Välj primärspråk, lägg till språken ni översätter till och importera de JSON-filer ni redan har.

  4. Översätt, publicera och driftsätt

    Översätt bredvid texten i primärspråket, publicera en revision och driftsätt den i utveckling, test eller produktion. Appen hämtar den från Sleekdocs CDN.

Guider

Läs in översättningarna som Sleekdocs driftsätter direkt i appen. Guiderna är på engelska.

Begrepp

Team
Användare tillhör ett eller flera team. Ett team håller projekten som medlemmarna arbetar med, och det är teamet som har en plan.
Projekt
En applikation som översätts, med ett primärspråk och ett eller flera språk att översätta till.
Revision
När ett språk publiceras sparas texterna som nästa numrerade revision. Fram till dess är texterna du redigerar arbetskopian.
Miljö
Utveckling, test och produktion. En driftsättning lägger en revisions fil på CDN:et för en miljö, så att testappen och liveappen kan köra olika revisioner.

Team och roller

Varje teammedlem har en roll, med samma behörigheter i alla teamets projekt.

Vad varje roll får göra
FårAdministratörSkapareRedaktör
Redigera texter, importera och exportera filer, jämföra revisionerJaJaJa
Skapa egna API-nycklarJaJaJa
Skapa projekt, lägga till och ta bort språkJaJaNej
Lägga till, döpa om och ta bort nycklarJaJaNej
Bjuda in och hantera medlemmar, hantera webhooks, se och återkalla allas API-nycklarJaNejNej

Att driftsätta kräver en egen behörighet för varje miljö (utveckling, test och produktion), som en administratör ger i medlemmens inställningar. Att publicera kräver minst en av dem. På så sätt kan en översättare publicera och driftsätta i test medan bara vissa driftsätter i produktion.

Bjuda in medlemmar Administratör

Välj Bjud in medlem på teamsidan och ange en e-postadress och en roll. Inbjudan mejlas, och personen accepterar den efter att ha loggat in med den adressen.

Teamets logg

Teamets Logg visar vem som gjorde vad: inbjudningar och medlemmar, projekt och språk som skapats eller tagits bort, och varje publicering och driftsättning, även de som gjorts via API:t.

Projekt och språk

Ett projekt motsvarar oftast en applikation. Dess Översikt visar språken, antalet nycklar och projektets inställningar.

Primärspråk Skapare

Språket som utvecklarna skriver nycklar och texter på. Nycklar läggs till där, och övriga språk översätts från det.

Filformat Skapare

JSON - Flat håller nycklar som menu.file.open på en nivå; JSON - Nästlad gör punkterna till nästlade objekt. Driftsatta och exporterade filer följer inställningen, så välj det som ert i18n-bibliotek läser.

Lägga till och ta bort språk Skapare

Använd Lägg till språk på Översikten. När ett språk tas bort försvinner också dess översättningar, revisioner och driftsättningshistorik.

Radera ett projekt Skapare

Ta först bort projektets språk; sedan blir Radera projekt tillgängligt.

Översätta

Öppna ett språk för att se varje nyckel med primärspråkets text bredvid översättningen, och hur långt språket har kommit: "120 av 140 översatta · 86 %".

Redigera texter

Starta redigeringsläget, ändra så många texter du vill och välj Spara. En räknare visar osparade ändringar, och du får en fråga om du försöker lämna sidan med osparade ändringar.

Hitta det som återstår

Sök i nycklar och texter, eller filtrera på Ej översatt eller Samma som primär, texter som har kopierats men inte översatts än.

Status i en blick

Varje rad är markerad Översatt, Ej översatt eller Samma som primär, och Mellanslag i början eller slutet varnar för överblivna mellanslag. Varje språk visar om det har ändrats sedan senaste publiceringen.

Rena texter

Mellanslag i början och slutet av nycklar och texter tas bort när de sparas eller importeras, även hårda mellanslag, så att de aldrig hamnar i appen.

Lägga till och döpa om nycklar Skapare

I primärspråket lägger Lägg till nyckel till en nyckel med dess text. Välj en nyckels namn för att döpa om den i alla språk på en gång.

Ta bort nycklar Skapare

Töm nyckelns text och välj Ta bort nyckel på dess rad. Ta bort oanvända nycklar i primärspråket tar bort nycklar som inget språk har en text för.

Import och export

Ta in de översättningsfiler appen redan har, och ta ut texterna igen när som helst.

Importera en fil

Välj en JSON-fil, platt eller nästlad, på upp till 10 MB. Innan något ändras ser du en förhandsvisning: vilka nycklar som skapas, uppdateras, tas bort eller är oförändrade, med gammal och ny text för varje uppdatering.

Uppdatera eller ersätt

Uppdatera behåller befintliga texter och ändrar dem från filen. Ersätt tar också bort texter för nycklar som inte finns i filen. Den första importen till ett tomt språk sparas som revision 0, utgångsläget.

Exportera

Ladda ned ett språks arbetskopia som <språk>.json, i projektets filformat, med nycklarna i bokstavsordning.

Publicera och driftsätta

Inget når appen förrän ni publicerar och driftsätter, så översättarna kan arbeta med nästa release medan den nuvarande ligger kvar.

  1. Publicera

    Sparar ett språks arbetskopia som nästa revision. Innan du publicerar visar Visa ändringar vad som har lagts till, ändrats och tagits bort.

  2. Driftsätt

    Lägger en revision på CDN:et för en miljö, på https://cdn.sleekdocs.com/<projekt>/<miljö>/<språk>.json, och rensar CDN:ets cachade kopia så att appen får den direkt.

Release-delen

På projektets Översikt visar en tabell med språk och miljöer vilka som har opublicerade ändringar och vilka miljöer som ligger efter. Publicera och driftsätt flera språk på en gång.

Gå tillbaka

Välj Driftsätt en äldre revision för att lägga tillbaka en tidigare revision i en miljö. Jämför två revisioner, eller en revision med arbetskopian, för att se vad som skiljer.

Hur länge revisioner sparas

De 10 senaste revisionerna av varje språk sparas, tillsammans med revision 0 och alla revisioner som är driftsatta någonstans.

API-nycklar och API:t

Läs och ändra översättningar, publicera och driftsätt från skript och byggpipelines. Alla anrop beskrivs i API-referensen (på engelska), och sökvägarna är stabila: fält kan läggas till, men inget tas bort eller byter namn.

Skapa en nyckel

På sidan API-nycklar namnger du nyckeln, begränsar den till ett projekt eller alla, väljer vad den får göra och hur länge den gäller: 8 timmar, 7, 30 eller 90 dagar, ett år eller, för skapare och administratörer, för alltid. Nyckeln, som börjar med sdt_, visas en gång.

Vad en nyckel får göra

En nyckel agerar som du, med de behörigheter du valde: read, write (ändra texter), keys (lägga till, döpa om och ta bort nycklar), publish och deploy:dev, deploy:test eller deploy:prod. Den kan aldrig göra mer än din roll tillåter i dag, och slutar fungera om du lämnar teamet.

Gränser och återkallande

Varje nyckel får göra 120 anrop i minuten. Sidan visar när varje nyckel senast användes, och en återkallad nyckel slutar fungera direkt.

Exempel

Skicka nyckeln som en bearer-token. Med de här satta:

API=https://translate.sleekdocs.com/api/v1/api/translate
PROJECT=<ert projekt-ID>
SLEEKDOCS_KEY=sdt_…

hämtar du den senast publicerade svenska filen, platt:

curl -H "Authorization: Bearer $SLEEKDOCS_KEY" \
  "$API/projects/$PROJECT/languages/sv/file?revision=latest&format=flat"

Lägg till eller uppdatera nycklar från koden, först som en provkörning som bara visar vad som skulle ändras:

curl -X PATCH -H "Authorization: Bearer $SLEEKDOCS_KEY" -H "Content-Type: application/json" \
  "$API/projects/$PROJECT/keys" \
  -d '{"mode": "upsert", "dryRun": true,
       "items": [{"key": "checkout.title", "values": {"en": "Checkout", "sv": "Kassa"}}]}'

Publicera de ändrade språken och driftsätt sedan den senaste revisionen av alla språk i test:

curl -X POST -H "Authorization: Bearer $SLEEKDOCS_KEY" -H "Content-Type: application/json" \
  "$API/projects/$PROJECT/publish" \
  -d '{"languages": "changed"}'

curl -X POST -H "Authorization: Bearer $SLEEKDOCS_KEY" -H "Content-Type: application/json" \
  "$API/projects/$PROJECT/deploy" \
  -d '{"env": "test", "languages": "all", "revision": "latest"}'

API:t kan också lista nycklar som inte är översatta eller har ändrats sedan senaste publiceringen, importera hela filer, jämföra revisioner och döpa om och ta bort nycklar. API-referensen visar alla anrop.

Webhooks

Sleekdocs kan meddela en annan tjänst när ett språk publiceras eller driftsätts, till exempel en Slack- eller Teams-kanal eller er byggserver. En webhook gäller ett helt team eller ett projekt, och skickar en HTTP POST med en JSON-kropp som ni kan forma med språk, revision, miljö och användare. En mottagare som fallerar stoppar aldrig publiceringen eller driftsättningen.

Teamets administratörer lägger till webhooks på teamsidan, under Webhooks, och kan skicka ett testmeddelande för att kontrollera mottagaren. Adressen måste vara https, och meddelandet kan använda ${language.code}, ${language.name}, ${revision}, ${env}, ${user.name} och ${user.email}.

Säkerhet och personuppgifter

Inloggningen sker via Clerk, med Google, Microsoft eller en engångskod via e-post, så Sleekdocs Translate hanterar eller lagrar aldrig lösenord. Om dig sparar vi namn och e-postadress. Varje anrop kontrolleras mot din roll i teamet som äger projektet. Integritetspolicyn (på engelska) har detaljerna.