Questo è uno scenario API semplice con chiamate API di esempio e istruzioni su come concatenarle per completare un'azione semplice utilizzando solo API. Le opzioni che possono essere impostate tramite le API sono estese. Consultare le rispettive sezioni della documentazione API REST per scoprire 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 siano utilizzate da un'organizzazione nel data center degli Stati Uniti, l'URL di richiesta dovrebbe iniziare con https://us.cloud.memsource.com
.
Scenario
-
Autenticazione
L'utente è autenticato (l'equivalente API di accesso).
-
Creazione
La creazione di un progetto semplice, lavori caricati e assegnazione del traduttore con notifica via email.
-
Traduzione
Lavoro di traduzione eseguito al di fuori dello scenario API (in uno qualsiasi degli editor).
-
Funzione API
Una volta che l'assegnazione è completata (contrassegnata come Completato dal traduttore), lo stato del progetto è impostato su Completato e il documento finito viene scaricato dal progetto.
Metodologia
Ogni singola chiamata API REST ha un metodo appropriato elencato. Utilizzare un metodo errato (ad es. GET invece di POST nella chiamata di creazione del progetto) comporta una chiamata API non riuscita.
Passaggio 1: Autenticazione
Ci sono 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 altre funzioni all'interno del profilo.
-
Consente la convalida di un'applicazione. Un'applicazione convalidata è in comunicazione continua e non richiede ulteriori autenticazioni.
Per lo scenario, viene utilizzata la chiamata API di autenticazione. Il token generato è necessario per tutte le chiamate API successive e non è elencato nei parametri di esempio.
Usa l'API Login per l'autenticazione con i parametri richiesti. In questo caso, nome utente e password sono richiesti.
-
Metodo
POST
-
URL della 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 nome utente e password per più account. In questo caso, il userUid
deve essere aggiunto al corpo della richiesta per specificare a quale organizzazione l'utente desidera accedere. Se non specificato, l'utente accede all'account predefinito associato al nome utente e alla password forniti.
Passaggio 2: Creazione, Importazione e Assegnazione del Progetto
Creazione del Progetto
Usa la chiamata API Progetti per creare un progetto con i parametri obbligatori nome, linguaSorgente e lingueDestinazione.
-
Metodo
POST
-
URL della richiesta
https://cloud.memsource.com/web/api2/v3/projects
-
Corpo della richiesta
{ "name":"My project", "sourceLang":"en", "targetLangs":[ "de","fr" ]}
-
Risposta
UID del Progetto (es. KmtNyVlz1skQd2aMVEipp7)
È possibile creare un modello di progetto utilizzando la chiamata API Creare modello di progetto
con l'UID del progetto dall'ultima chiamata.
-
Metodo
POST
-
URL della richiesta
https://cloud.memsource.com/web/api2/v1/projectTemplates
-
Corpo della richiesta
{ "project": { "uid": "string" }, "nome": "string", "importSettings": { "uid": "string" }, "useDynamicTitle": true, "dynamicTitle": "string" }
-
Risposta
UID del Modello di Progetto (es. AmtNyVlz1skQd2aMVEipp8)
Il modo più efficiente per creare progetti è utilizzare un modello di progetto. Usa Creare progetto da modello con l'UID del Modello di Progetto dall'ultima chiamata per creare un nuovo progetto basato sulle impostazioni del modello di progetto.
L'espressione {templateUid}
funge da segnaposto nell'URL della richiesta dove viene inserito l'UID del Modello di Progetto ottenuto.
-
Metodo
POST
-
URL della richiesta
https://cloud.memsource.com/web/api2/v2/projects/applyTemplate/oNQiljwTGHpd2l1nnQRiu4
-
Corpo della richiesta
{ "nome": "string", "sourceLang": "string", "targetLangs": [ "string" ], "workflowSteps": [ { "id": "string" } ], "dateDue": "2019-08-24T14:15:22Z", "nota": "stringa", "client": { "id": "string" }, "businessUnit": { "id": "string" }, "dominio": { "id": "string" }, "subDomain": { "id": "string" }, "costCenter": { "id": "string" } }{ "project": { "uid": "string" }, "nome": "string", "importSettings": { "uid": "string" }, "useDynamicTitle": true, "dynamicTitle": "string" }
-
Risposta
Project UID (e.g. BmtNyVlz1skQd2aMVEipp9)
Creazione Lavoro
Con l'UID del progetto dall'ultima chiamata, nuovi lavori possono essere aggiunti direttamente nel progetto appena creato utilizzando Crea Lavoro.
L'espressione {projectUid}
funge da segnaposto nell'URL della richiesta dove viene inserito l'UID del progetto ottenuto. Con la chiamata API Crea Lavoro, il Intestazioni della richiesta deve essere modificato per corrispondere a quelli richiesti da Phrase (in altre chiamate, Postman aggiunge automaticamente intestazioni appropriate alla richiesta).
Tutti i parametri di importazione devono essere inseriti in un'intestazione personalizzata Memsource.
L'intestazione Content-Disposition deve includere il nome del file in un formato predefinito per elaborare correttamente la richiesta di importazione.
Per importare un file sorgente, vai al corpo, seleziona
e appare l'opzione .-
Metodo
POST
-
URL della richiesta
https://cloud.memsource.com/web/api2/v1/projects/KmtNyVlz1skQd2aMVEipp7/jobs
-
(Intestazione) Content-Disposition
filename*=UTF-8''file.txt
-
(Intestazione) Memsource
{"targetLangs":["de","fr"]}
-
(Intestazione) Content-Type
application/octet-stream
-
Risposta
UID del lavoro (ad es. dOYgeXzAdAbj4xFjuEVZP2)
AsyncRequest UID
Usa Ottieni richiesta asincrona con l'UID della richiesta asincrona dalla chiamata Crea Lavoro per controllare che il lavoro sia stato creato con successo e che sia funzionale.
L'UID del lavoro restituito è unico 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 lavoro unico per ogni passaggio del flusso di lavoro.
Le impostazioni di importazione riutilizzabili possono essere configurate con la chiamata Crea impostazioni di importazione. Un UID di impostazione di importazione che può essere utilizzato nella chiamata per creare lavoro viene ricevuto nella risposta.
Per assegnare fornitori al lavoro (a meno che non siano assegnati direttamente nella chiamata Crea lavoro) usa la chiamata Modifica lavoro.
L'ID del fornitore che viene inserito nella chiamata può essere ottenuto in due modi:
-
Per recuperare l'ID dall'app Phrase, segui questi passaggi:
-
Usa il 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 i nomi utente che gli ID.
Un parametro opzionale, userName, può essere aggiunto alla query permettendoti di elencare solo gli utenti con nomi utente specifici.
Notifica agli utenti assegnati
L'UID del lavoro può quindi essere utilizzato come parametro opzionale nella chiamata Notifica agli utenti assegnati insieme al parametro emailTemplate che rappresenta l'ID del modello di email da utilizzare. Questo può essere ottenuto utilizzando la chiamata Elenco modelli di email.
-
URL della richiesta
https://cloud.memsource.com/web/api2/v1/projects/KmtNyVlz1skQd2aMVEipp7/jobs/notifyAssigned
-
Risposta
Vuoto (Stato 204: Nessun contenuto)
Qui è dove il traduttore inizierebbe a lavorare nel proprio profilo proprio come se si stesse utilizzando l'interfaccia utente di Phrase. Dopo che il lavoro è terminato, il PM responsabile riceve una notifica e la parte successiva dello scenario viene avviata. Un callback può essere intercettato tramite webhook per avviare automaticamente la parte successiva dello scenario, ma questo non sarà trattato in questo esempio.
Passaggio 3: Scarica il file tradotto (completo), imposta il progetto su completato
Scarica il file tradotto
Questo scenario funziona con l'assunzione che un traduttore completi il proprio incarico (contrassegna il lavoro come Completato), ma il file completato può essere scaricato in qualsiasi momento, il lavoro non deve avere lo stato Completato.
Per scaricare un file tradotto, sono necessarie due chiamate API: Scarica il file di destinazione (async) e Scarica il file di destinazione in base alla richiesta async chiamate.
Il primo passo è chiamare Scarica il file di destinazione (async) con i parametri projectUid e jobUid. Se stai scaricando il file completato da un progetto con più passaggi del flusso di lavoro, assicurati di utilizzare il jobUid dal passaggio specifico del flusso di lavoro da cui desideri scaricare il file completato, ad esempio il passaggio del flusso di lavoro di revisione.
-
Per recuperare il jobUID per un passaggio specifico del flusso di lavoro dall'app Phrase, segui questi passaggi:
-
Apri il progetto.
-
Nella tabella dei lavori, passa al passaggio del flusso di lavoro da cui desideri scaricare il file completato.
-
Copia la parte unica dell'URL dopo /job dal browser.
-
-
Usa il Elenco lavori chiamata API.
Questo endpoint restituisce un elenco di lavori all'interno del progetto specificato. Usa 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 hai bisogno di ottenere i lavori dal passaggio di revisione, specifica il numero di quel passaggio nel parametro di query, cioè2
.
La chiamata al file di destinazione per il download (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 necessario per la chiamata successiva.
-
Metodo
PUT
-
URL della richiesta
https://cloud.memsource.com/web/api2/v2/projects/KmtNyVlz1skQd2aMVEipp7/jobs/dOYgeXzAdAbj4xFjuEVZP2/targetFile
-
Risposta
AsyncRequest ID
Usa Ottieni richiesta asincrona con il asyncRequestID dalla risposta per controllare che la richiesta sia completata. Una volta completata la richiesta asincrona, puoi scaricare il file di destinazione utilizzando la chiamata Scarica file di destinazione basato sulla richiesta asincrona. Il asyncRequestId può essere utilizzato solo una volta. Una volta avviato il download, il asyncRequestId diventa non valido per ulteriori utilizzi.
-
Metodo
SCARICA
-
URL della richiesta
https://cloud.memsource.com/web/api2/v2/projects/KmtNyVlz1skQd2aMVEipp7/jobs/dOYgeXzAdAbj4xFjuEVZP2/downloadTargetFile/1291716982
-
Risposta
Risposta binaria con il file completato stesso
Imposta Progetto su Completato
Per finalizzare il progetto una volta completato il lavoro nel progetto, usa la chiamata Modifica stato progetto con i parametri obbligatori projectUid e status per cambiare lo stato dell'intero progetto in Completato. Questa modifica è manuale, ma se Automazione Stato Progetto è utilizzata, lo stato verrà cambiato automaticamente. È anche possibile attendere un webhook e avviare altre azioni basate sul callback ricevuto.
-
Metodo
POST
-
URL della richiesta
https://cloud.memsource.com/web/api2/v1/projects/KmtNyVlz1skQd2aMVEipp7/setStatus
-
Corpo della richiesta
{ "status": "COMPLETED"}
-
Risposta
Vuoto (Stato 204: Nessun contenuto)