Questo è un semplice scenario API con esempi di chiamate API e istruzioni su come concatenarle per completare una semplice azione utilizzando solo API. Le opzioni che possono essere impostate tramite le API sono estese. Consultare le rispettive sezioni della documentazione API REST per saperne di più su tutte le opzioni disponibili.
La piattaforma API Postman è stata utilizzata per creare lo scenario.
In questi esempi, l'URL di richiesta standard inizia con https://cloud.memsource.com. Nel caso in cui le API vengano utilizzate da un'organizzazione nel data center statunitense, l'URL di richiesta dovrebbe iniziare con https://us.cloud.memsource.com.
Scenario
-
Autenticazione
L'utente viene autenticato (l'equivalente API dell'accesso).
-
Crea
La creazione di un semplice progetto, lavori caricati e assegnazione del traduttore con notifica e-mail.
-
Translation
Lavoro di traduzione eseguito al di fuori dello scenario API (in uno qualsiasi degli Editor).
-
Funzione API
Una volta terminata l'assegnazione (contrassegnata come Completa dal traduttore), lo stato del progetto viene impostato su Completa e il documento finito viene scaricato dal progetto.
Metodologia
Ogni singola chiamata API REST ha un metodo appropriato elencato. L'utilizzo di un metodo errato (ad esempio GET invece di POST nella chiamata di creazione progetto) comporta una chiamata API non riuscita.
Passaggio 1: autenticazione
Esistono due metodi di autenticazione:
-
Chiamata API di autenticazione:
Genera un token di autenticazione valido per 24 ore. Il token deve essere inserito in tutte le API successive. Il token convalida gli utenti e consente loro di eseguire qualsiasi altra funzione all'interno del profilo.
-
Consente la convalida di un'applicazione. Un'applicazione convalidata è in comunicazione continua e non necessita di ulteriore autenticazione.
Per lo scenario, viene usata la chiamata API di autenticazione. Il token generato è richiesto per tutte le chiamate API successive e non è elencato nei parametri di esempio.
Usare l'API Login per l'autenticazione con i parametri richiesti. In questo caso, sono richiesti username e password.
-
Metodo
POST
-
URL di richiesta
https://cloud.memsource.com/web/api2/v3/auth/login
-
Corpo della richiesta:
{ "userName":"username", "password":"password"} -
Risposta
Token di autenticazione.
I membri di più organizzazioni TMS hanno lo stesso username e password per più account. In questo caso, l'userUid deve essere aggiunto al corpo della richiesta per specificare a quale organizzazione l'utente desidera accedere. Se non specificato, l'utente viene connesso all'account predefinito associato al nome utente e alla password forniti.
Passaggio 2: Creazione, importazione e assegnazione progetto
Crea progetto
Usare la chiamata API Progetti per creare un progetto con i parametri obbligatori nome, linguaSorgente e lingueTarget.
-
Metodo
POST
-
URL di richiesta
https://cloud.memsource.com/web/api2/v3/projects
-
Corpo della richiesta
{ "name":"My project", "sourceLang":"en", "targetLangs":[ "de","fr" ]} -
Risposta
ID progetto (ad es. KmtNyVlz1skQd2aMVEipp7)
È possibile creare un modello progetto usando la chiamata API Crea modello progetto con l'ID progetto dell'ultima chiamata.
-
Metodo
POST
-
URL di richiesta
https://cloud.memsource.com/web/api2/v1/projectTemplates
-
Corpo della richiesta
{ "project": { "uid": "string" }, "name": "string", "importSettings": { "uid": "string" }, "useDynamicTitle": true, "dynamicTitle": "string" } -
Risposta
ID modello progetto (ad es. AmtNyVlz1skQd2aMVEipp8)
Il modo più efficiente per creare progetti è usare un modello progetto. Usare Crea progetto da modello con l'ID modello progetto ottenuto dalla chiamata precedente per creare un nuovo progetto basato sulle impostazioni del modello progetto.
L'espressione {templateUid} funge da segnaposto nell'URL della richiesta in cui viene inserito l'ID modello progetto ottenuto.
-
Metodo
POST
-
URL di richiesta
https://cloud.memsource.com/web/api2/v2/projects/applyTemplate/oNQiljwTGHpd2l1nnQRiu4
-
Corpo della richiesta
{ "name": "string", "sourceLang": "string", "targetLangs": [ "string" ], "workflowSteps": [ { "id": "string" } ], "dateDue": "2019-08-24T14:15:22Z", "note": "string", "client": { "id": "string" }, "businessUnit": { "id": "string" }, "dominio": { "id": "string" }, "subDomain": { "id": "string" }, "costCenter": { "id": "string" } }{ "project": { "uid": "string" }, "name": "string", "importSettings": { "uid": "string" }, "useDynamicTitle": true, "dynamicTitle": "string" } -
Risposta
ID progetto (ad es. BmtNyVlz1skQd2aMVEipp9)
Crea lavoro
Con il UID del progetto dell'ultima chiamata, è possibile aggiungere nuovi lavoro direttamente nel progetto appena creato usando creare lavoro.
L'espressione {projectUid} funge da segnaposto nell'URL della richiesta in cui viene inserito il UID del progetto ottenuto. Con la chiamata API creare lavoro, le Intestazioni della richiesta devono essere modificate per avere una corrispondenza con quelle richieste da Phrase (in altre chiamate, Postman aggiunge automaticamente le intestazioni appropriate alla richiesta).
Tutti i parametri di importare devono essere inseriti in un'intestazione Personalizzato Memsource.
L'intestazione Content-Disposition deve includere il nome del file in un formato predefinito in ordine per elaborare correttamente la richiesta di importare.
Per importare un file di origine, andare al corpo, selezionare e appare l'opzione .
-
Metodo
POST
-
URL di richiesta
https://cloud.memsource.com/web/api2/v1/projects/KmtNyVlz1skQd2aMVEipp7/jobs
-
(Header) Content-Disposition
filename*=UTF-8''file.txt -
(Header) Memsource
{"targetLangs":["de","fr"]} -
(Header) Content-Type
application/octet-stream
-
Risposta
UID del lavoro (ad es. dOYgeXzAdAbj4xFjuEVZP2)
AsyncRequest UID
Usare Ottenere richiesta asincrona con il UID AsyncRequest dalla chiamata creare lavoro per verificare che il lavoro sia stato creato correttamente e che sia funzionale.
Il UID del lavoro restituito è univoco in ogni passaggio del flusso di lavoro del progetto. Pertanto, se il lavoro viene creato in un progetto con flusso di lavoro, la risposta restituisce un UID del lavoro univoco per ogni passaggio del flusso di lavoro.
Le impostazioni di importare riutilizzabili possono essere configurate con la chiamata Crea impostazioni di importare. Un UID delle impostazioni di importare che può essere usato nella chiamata creare lavoro viene ricevuto nella risposta.
Per assegnare fornitore al lavoro (a meno che non vengano assegnati direttamente nella chiamata creare lavoro) usare la chiamata modificare lavoro.
L'ID del fornitore che viene inserito nella chiamata può essere ottenuto in due modi:
-
Per recuperare l'ID dall'applicazione Phrase, seguire questi passaggi:
-
Usare la Elenco utenti chiamata API.
Questa chiamata API non richiede parametri specifici e restituirà un elenco di tutti gli utenti nell'account. La risposta contiene sia nomi utente che ID.
Un parametro facoltativo, userName, può essere aggiunto alla query consentendo di elencare solo gli utenti con nomi utente specifici.
Notifica utenti assegnati
L'ID del lavoro può quindi essere usato come parametro facoltativo nella chiamata Notifica utenti assegnati insieme al parametro emailTemplate che rappresenta l'ID del modello e-mail da usare. Questo può essere ottenuto usando la chiamata Elenco modelli e-mail.
-
URL di richiesta
https://cloud.memsource.com/web/api2/v1/projects/KmtNyVlz1skQd2aMVEipp7/jobs/notifyAssigned
-
Risposta
Vuoto (Stato 204: Nessun contenuto)
È qui che il traduttore inizierebbe a lavorare nel proprio profilo esattamente come se venisse usata l'interfaccia utente di Phrase. Dopo che il lavoro è terminato, il PM responsabile riceve una notifica e viene avviata la parte successiva dello scenario. Un callback può essere intercettato tramite webhook per avviare automaticamente la parte successiva dello scenario, ma questo non verrà trattato in questo esempio.
Passaggio 3: Scarica file tradotto (completare), Imposta progetto su Completato
Scarica file tradotto
Questo scenario funziona con il presupposto che un traduttore termini il proprio incarico (contrassegni il lavoro come completare), ma il file completato può essere scaricato in qualsiasi momento, il lavoro non deve avere lo stato completare.
Per scaricare un file tradotto, sono necessarie due chiamate API: le chiamate Scarica file di destinazione (async) e Scarica file di destinazione basato su richiesta async.
Il primo passaggio consiste nel chiamare Scarica file di destinazione (async) con i parametri projectUid e jobUid. Se stai effettuando il download del file completato da un progetto con più passaggi del flusso di lavoro, assicurati di usare il jobUid dal passaggio del flusso di lavoro specifico da cui desideri effettuare il download del file completato, ad es. il passaggio del flusso di lavoro di revisione.
-
Per recuperare il jobUID per un passaggio del flusso di lavoro specifico dall'applicazione Phrase, segui questi passaggi:
-
Apri il progetto.
-
Nella tabella Lavori, passa al passaggio del flusso di lavoro da cui desideri effettuare il download del file completato.
-
Copia la parte univoca dell'URL dopo /job dal browser.
-
-
Usare la List jobs API call.
Questo endpoint restituisce un elenco di lavori all'interno del progetto specificato. Usare la chiamata con il parametro di query
workflowLevel. Questo parametro è un parametro non basato su zero che indica il passaggio del flusso di lavoro a cui appartengono i lavori restituiti. Se non specificato, il suo valore è impostato su1(= primo passaggio del flusso di lavoro) per impostazione predefinita. Ad esempio, se devi ottenere i lavori dal passaggio di revisione, specifica il numero di quel passaggio nella query parameter, ovvero2.
La chiamata Scarica file di destinazione (async) avvia una richiesta asincrona per generare e scaricare il file di destinazione contenente le traduzioni. Non fornisce direttamente il file di destinazione all'interno della risposta, ma un asyncRequestId richiesto per la chiamata successiva.
-
Metodo
PUT
-
URL di richiesta
https://cloud.memsource.com/web/api2/v2/projects/KmtNyVlz1skQd2aMVEipp7/jobs/dOYgeXzAdAbj4xFjuEVZP2/targetFile
-
Risposta
ID AsyncRequest
Usare Get asynchronous request con l'asyncRequestID dalla risposta per verificare che la richiesta sia completata. Una volta completata la richiesta asincrona, puoi scaricare il file di destinazione usando la chiamata Download target file based on async request. L'asyncRequestId può essere usato solo una volta. Una volta avviato il download, l'asyncRequestId diventa non valido per un ulteriore uso.
-
Metodo
SCARICA
-
URL di richiesta
https://cloud.memsource.com/web/api2/v2/projects/KmtNyVlz1skQd2aMVEipp7/jobs/dOYgeXzAdAbj4xFjuEVZP2/downloadTargetFile/1291716982
-
Risposta
Risposta binaria con il file Completa stesso
Imposta progetto su Completa
Per finalizzare il progetto una volta che il lavoro nel progetto è Completa, usare la chiamata modificare progetto stato con i parametri obbligatori projectUid e stato per modificare lo stato dell'intero progetto su Completa. Questa modifica è manuale, ma se viene usata l'automazione stato progetto, lo stato verrà modificato automaticamente. È anche possibile attendere un webhook e avviare altre azioni in base al callback ricevuto.
-
Metodo
POST
-
URL di richiesta
https://cloud.memsource.com/web/api2/v1/projects/KmtNyVlz1skQd2aMVEipp7/setStatus
-
Corpo della richiesta
{ \"stato\": \"COMPLETED\"} -
Risposta
Vuoto (Stato 204: Nessun contenuto)