Toto je jednoduchý scénář API s ukázkovými voláními API a pokyny, jak je spojit dohromady, aby se dokončila jednoduchá akce pomocí pouze API. Možnosti, které lze nastavit prostřednictvím API, jsou rozsáhlé. Konzultujte příslušné části REST API dokumentace, abyste se dozvěděli více o všech dostupných možnostech.
API platforma Postman byla použita k vytvoření scénáře.
V těchto příkladech standardní URL požadavku začíná na https://cloud.memsource.com
. Pokud API používá organizace v datovém centru v USA, měla by URL požadavku začínat na https://us.cloud.memsource.com
.
Scénář
-
Ověřování
Uživatel je ověřen (ekvivalent API přihlášení).
-
Vytvoření
Vytvoření jednoduchého projektu, nahrané úkoly a přiřazení překladatele s e-mailovým oznámením.
-
Překlad
Překladová práce prováděná mimo scénář API (v jakémkoli z editorů).
-
API Funkce
Jakmile je úkol dokončen (označen jako Dokončeno překladatelem), stav projektu je nastaven na Dokončeno a hotový dokument je stažen z projektu.
Metodologie
Každé jednotlivé volání REST API má uvedenou příslušnou metodu. Použití nesprávné metody (např. GET místo POST při volání pro vytvoření projektu) vede k neúspěšnému volání API.
Krok 1: Ověřování
Existují dvě metody ověřování:
-
Generuje ověřovací token platný po dobu 24 hodin. Token je třeba vložit do všech následujících API. Token ověřuje uživatele a umožňuje jim provádět jakékoli další funkce v rámci profilu.
-
Umožňuje ověření aplikace. Ověřená aplikace je v neustálé komunikaci a nepotřebuje další ověření.
Pro tento scénář se používá API volání pro ověřování. Vygenerovaný token je vyžadován pro všechna následující API volání a není uveden v příkladových parametrech.
Použijte API Přihlášení pro ověření s požadovanými parametry. V tomto případě jsou vyžadovány uživatelské jméno a heslo.
-
Metoda
POST
-
URL požadavku
https://cloud.memsource.com/web/api2/v3/auth/login
-
Tělo požadavku:
{ "userName":"username", "password":"password"}
-
Odpověď
Ověřovací token.
Členové více organizací TMS mají stejné uživatelské jméno a heslo pro více účtů. V tomto případě musí být userUid
přidán do těla požadavku, aby se specifikovalo, do které organizace se uživatel chce přihlásit. Pokud není specifikováno, uživatel je přihlášen k výchozímu účtu spojenému s daným uživatelským jménem a heslem.
Fáze 2: Vytvoření projektu, import a přiřazení
Vytvoření projektu
Použijte volání API Projekt k vytvoření projektu s povinnými parametry název, zdrojovýJazyk a cílovéJazyky.
-
Metoda
POST
-
URL požadavku
https://cloud.memsource.com/web/api2/v3/projects
-
Tělo požadavku
{ "název":"Můj projekt", "zdrojovýJazyk":"en", "cílovéJazyky":[ "de","fr" ]}
-
Odpověď
UID projektu (např. KmtNyVlz1skQd2aMVEipp7)
Je možné vytvořit šablonu projektu pomocí volání API Vytvořit šablonu projektu
s UID projektu z posledního volání.
-
Metoda
POST
-
URL požadavku
https://cloud.memsource.com/web/api2/v1/projectTemplates
-
Tělo požadavku
{ "project": { "uid": "řetězec" }, "název": "řetězec", "importSettings": { "uid": "řetězec" }, "useDynamicTitle": true, "dynamicTitle": "string" }
-
Odpověď
UID šablony projektu (např. AmtNyVlz1skQd2aMVEipp8)
Nejefektivnější způsob, jak vytvářet projekty, je použít šablonu projektu. Použijte Vytvořit projekt ze šablony s UID šablony projektu z posledního volání k vytvoření nového projektu na základě nastavení šablony projektu.
Výraz {templateUid}
slouží jako zástupný znak v URL požadavku, kde je vloženo získané UID šablony projektu.
-
Metoda
POST
-
URL požadavku
https://cloud.memsource.com/web/api2/v2/projects/applyTemplate/oNQiljwTGHpd2l1nnQRiu4
-
Tělo požadavku
{ "název": "řetězec", "sourceLang": "string", "targetLangs": [ "řetězec" ], "workflowSteps": [ { "id": "string" } ], "dateDue": "2019-08-24T14:15:22Z", "note": "řetězec", "client": { "id": "string" }, "businessUnit": { "id": "string" }, "doména": { "id": "string" }, "subDomain": { "id": "string" }, "costCenter": { "id": "string" } }{ "project": { "uid": "řetězec" }, "název": "řetězec", "importSettings": { "uid": "řetězec" }, "useDynamicTitle": true, "dynamicTitle": "string" }
-
Odpověď
UID projektu (např. BmtNyVlz1skQd2aMVEipp9)
Vytvoření zakázky
S UID projektu z posledního volání mohou být nové zakázky přidány přímo do nově vytvořeného projektu pomocí Vytvořit zakázku.
Výraz {projectUid}
slouží jako zástupný znak v URL požadavku, kde je vložen získaný UID projektu. Při volání API pro vytvoření zakázky musí být Hlavičky požadavku změněny tak, aby odpovídaly těm, které vyžaduje Phrase (v jiných voláních Postman automaticky přidává vhodné hlavičky do požadavku).
Všechny parametry importu musí být vloženy do vlastní Memsource hlavičky.
Hlavička Content-Disposition musí obsahovat název souboru v předem definovaném formátu, aby bylo možné správně zpracovat požadavek na import.
Pro import zdrojového souboru přejděte do těla, vyberte
a objeví se možnost .-
Metoda
POST
-
URL požadavku
https://cloud.memsource.com/web/api2/v1/projects/KmtNyVlz1skQd2aMVEipp7/jobs
-
(Hlavička) Content-Disposition
filename*=UTF-8''file.txt
-
(Hlavička) Memsource
{"targetLangs":["de","fr"]}
-
(Hlavička) Content-Type
application/octet-stream
-
Odpověď
UID zakázky (např. dOYgeXzAdAbj4xFjuEVZP2)
UID asynchronního požadavku
Použijte Získat asynchronní požadavek s UID asynchronního požadavku z volání Vytvořit zakázku, abyste zkontrolovali, že zakázka byla úspěšně vytvořena a že je funkční.
Vrácené UID zakázky je jedinečné v každé fázi pracovního postupu projektu. Proto, pokud je zakázka vytvořena v projektu s pracovním postupem, odpověď vrací jedinečné UID zakázky pro každou fázi pracovního postupu.
Nastavení importu, které lze znovu použít, lze nakonfigurovat pomocí volání Vytvořit nastavení importu. UID nastavení importu, které lze použít ve volání pro vytvoření zakázky, je obdrženo v odpovědi.
Pro přiřazení poskytovatelů k zakázce (pokud nejsou přiřazeni přímo ve volání pro vytvoření zakázky) použijte volání Upravit zakázku.
ID poskytovatele, které je vloženo do volání, lze získat dvěma způsoby:
-
Chcete-li získat ID z aplikace Phrase, postupujte podle těchto kroků:
-
Použijte Seznam uživatelů API volání.
Toto API volání nevyžaduje žádné specifické parametry a vrátí seznam všech uživatelů v účtu. Odpověď obsahuje jak uživatelská jména, tak ID.
Volitelný parametr, uživatelské jméno, může být přidán k dotazu, což vám umožní vypsat pouze uživatele se specifickými uživatelskými jmény.
Upozornit přiřazené uživatele
UID zakázky může být poté použito jako volitelný parametr ve volání Upozornit přiřazené uživatele spolu s parametrem šablona e-mailu, který představuje ID šablony e-mailu, která má být použita. Toho lze dosáhnout pomocí volání Seznam šablon e-mailů.
-
URL požadavku
https://cloud.memsource.com/web/api2/v1/projects/KmtNyVlz1skQd2aMVEipp7/jobs/notifyAssigned
-
Odpověď
Prázdné (Stav 204: Žádný obsah)
Toto je místo, kde by překladatel začal pracovat ve svém profilu, jako by byla používána uživatelská rozhraní Phrase. Po dokončení zakázky obdrží PM zodpovědný za projekt oznámení a je zahájena další část scénáře. Zpětné volání může být zachyceno prostřednictvím webhooks, aby se automaticky spustila další část scénáře, ale to nebude v tomto příkladu řešeno.
Fáze 3: Stáhnout přeložený (dokončený) soubor, nastavit projekt na dokončený
Stáhnout přeložený soubor
Tento scénář funguje na předpokladu, že překladatel dokončí svou zakázku (označí zakázku jako Dokončeno), ale dokončený soubor lze stáhnout kdykoli, zakázka nemusí mít status Dokončeno.
Pro stažení přeloženého souboru jsou potřeba dva API volání: Stáhnout cílový soubor (asynchronně) a Stáhnout cílový soubor na základě asynchronního požadavku volání.
Prvním krokem je zavolat Stáhnout cílový soubor (asynchronně) s parametry projectUid a jobUid. Pokud stahujete dokončený soubor z projektu s více fázemi pracovního postupu, ujistěte se, že používáte jobUid z konkrétní fáze pracovního postupu, ze které chcete stáhnout dokončený soubor, např. fáze revize.
-
Chcete-li získat jobUID pro konkrétní fázi pracovního postupu z aplikace Phrase, postupujte podle těchto kroků:
-
Otevřete projekt.
-
V tabulce Zakázky přepněte na fázi pracovního postupu, ze které chcete stáhnout dokončený soubor.
-
Zkopírujte unikátní část URL po /job z prohlížeče.
-
-
Použijte Seznam zakázek API volání.
Tento koncový bod vrací seznam zakázek v rámci specifikovaného projektu. Použijte volání s parametrem dotazu
workflowLevel
. Tento parametr je parametr, který není založen na nule a označuje fázi pracovního postupu, ke které se vrácené zakázky vztahují. Pokud není specifikováno, jeho hodnota je ve výchozím nastavení nastavena na1
(= první fáze pracovního postupu). Například, pokud potřebujete získat zakázky z revizní fáze, specifikujte číslo této fáze v parametru dotazu, tj.2
.
Volání cílového souboru pro stažení (asynchronní) iniciuje asynchronní požadavek na vygenerování a stažení cílového souboru obsahujícího překlady. Nedává přímo cílový soubor v odpovědi, ale asyncRequestId potřebný pro následující volání.
-
Metoda
PUT
-
URL požadavku
https://cloud.memsource.com/web/api2/v2/projects/KmtNyVlz1skQd2aMVEipp7/jobs/dOYgeXzAdAbj4xFjuEVZP2/targetFile
-
Odpověď
ID asynchronního požadavku
Použijte Získat asynchronní požadavek s asyncRequestID z odpovědi, abyste zkontrolovali, že byl požadavek dokončen. Jakmile je asynchronní požadavek dokončen, můžete stáhnout cílový soubor pomocí volání Stáhnout cílový soubor na základě asynchronního požadavku. asyncRequestId lze použít pouze jednou. Jakmile je stažení zahájeno, asyncRequestId se stává neplatným pro další použití.
-
Metoda
GET
-
URL požadavku
https://cloud.memsource.com/web/api2/v2/projects/KmtNyVlz1skQd2aMVEipp7/jobs/dOYgeXzAdAbj4xFjuEVZP2/downloadTargetFile/1291716982
-
Odpověď
Binární odpověď s dokončeným souborem samotným
Nastavit projekt na dokončeno
Aby bylo možné projekt dokončit, jakmile je zakázka v projektu dokončena, použijte volání Upravit stav projektu s povinnými parametry projectUid a status pro změnu stavu celého projektu na Dokončeno. Tato změna je manuální, ale pokud je použita Automatizace stavu projektu, stav se změní automaticky. Je také možné čekat na webhook a iniciovat další akce na základě přijatého zpětného volání.
-
Metoda
POST
-
URL požadavku
https://cloud.memsource.com/web/api2/v1/projects/KmtNyVlz1skQd2aMVEipp7/setStatus
-
Tělo požadavku
{ "status": "COMPLETED"}
-
Odpověď
Prázdné (Stav 204: Žádný obsah)