API Phrase TMS

API Technology (TMS)

Obsah je strojově přeložen z angličtiny s použitím Phrase Language AI.

Naše API vidí aplikační entity (projekty, úkoly, nastavení) jako zdroje, které lze získat, vytvořit, upravit a odstranit. 

Každá HTTP metoda představuje akci:

  • GET

    Získává zdroj, nikdy neměnící zdroj

  • POST

    Vytváří zdroj. POST se také používá pro operace, které se nevejdou do žádné ze čtyř operací nebo mají dlouhý nebo složitý vstup – jako je vyhledávání překladových pamětí nebo vytváření úkolů.

  • PUT

    Aktualizuje zdroj. Vezměte prosím na vědomí, že je vyžadována celá entita se všemi jejími poli, nejen těmi změněnými; nezahrnutí znamená, že by mělo být nastaveno na null.

  • DELETE

    Odstraní zdroj.

Důležité

Vstupní a výstupní data jsou obvykle ve formátu JSON, kódováno v UTF-8. Pro soubor jako typ obsahu těla žádosti se používá application/octet-stream nebo multipart/form-data.

Entity používají plochou strukturu, když je to možné, aby udržely dobré časy odezvy. Místo zahrnutí celých vedlejších objektů do odpovědí jsou obsaženy odkazy, které obsahují ID, UID a několik dalších atributů. Očekávají se objekty IDReference nebo UidReferenc, které odkazují na související entity.

Všechny seznamy odpovědí jsou stránkované. Použijte parametry pageNumber a pageSize k získání požadovaných dat. Maximální velikost stránky je 50.

Dokumentace

OpenAPI 3.0 se používá pro dokumentaci API. Generátory kódu Swagger jsou doporučovány pro vývoj klienta.

Příklady API

Získat seznam všech překladových pamětí

GET

/web/api2/v1/transMemories

Odpověď

200

{
    "pageNumber": 0,
    "content": [
        {
            "internalId": 1,
            "createdBy": {
                "userName": "admin",
                "id": "3",
                "firstName": "Jan",
                "lastName": "Janocko",
                "role": "ADMIN",
                "email": "jan.janocko@phrase.com"
            },
            "client": null,
            "poznámka": "není nutné používat v TM",
            "dateCreated": "2018-01-09T14:07:46+0000",
            "id": "1",
            "targetLangs": [
                "es",
                "it"
            ],
            "subdoména": null,
            "businessUnit": {
                "id": "1",
                "name": "První BU"
            },
            "sourceLang": "en",
            "doména": null,
            "name": "Moje nová TM"
        }
    ],
    "numberOfElements": 1,
    "totalElements": 1,
    "pageSize": 50,
    "totalPages": 1
}

Vytvořit novou překladovou paměť

POST

/web/api2/v1/transMemories

{{
"name": "Moje nová TM",
"sourceLang": "en",
"targetLangs": [
"es", "it-IT"
],
"businessUnit": {
"id": "1"
},
"poznámka": "není nutné používat v TM"
}

Odpověď

201

{
    "internalId": 1,
    "createdBy": {
        "userName": "admin",
        "id": "3",
        "firstName": "J",
        "lastName": "Jan",
        "role": "ADMIN",
        "email": "jan.j@phrase.com"
    },
    "client": null,
    "poznámka": "není nutné používat v TM",
    "dateCreated": "2018-01-09T14:07:46+0000",
    "id": "1",
    "targetLangs": [
        "es",
        "it"
    ],
    "subdoména": null,
    "businessUnit": {
        "id": "1",
        "name": "První BU"
    },
    "sourceLang": "en",
    "doména": null,
    "name": "Moje nová TM"
}

Přidání souborů při vytváření zakázky

Přidejte tento soubor do těla žádosti jako binární přílohu. Ujistěte se, že hlavičky Phrase a Content-Disposition jsou správně vloženy.

Ukázkový PHP kód z Postmanu:

<?php

$request = new HttpRequest();
$request->setUrl('https://cloud.memsource.com/web/api2/v1/projects/%7BUID%20vašeho%20projektu%7D/jobs');
$request->setMethod(HTTP_METH_POST);

$request->setQueryData(array(
'token' => 'Váš token sem patří'
));

$request->setHeaders(array(
'postman-token' => 'ABC',
'cache-control' => 'no-cache',
'content-disposition' => 'filename*=UTF-8''Sample.txt',
'memsource' => '{\\"targetLangs\\":[\\"de\\",\\"fr\\",\\"es\\"],\\"callbackUrl\\":\\"https://my-shiny-service.com/consumeCallback\\",\\"importSettings\\":{\\"uid\\":\\"WF0T1SfSHxII09yKr0dZh9\\"}}'
));

try {
$response = $request->send();

echo $response->getBody();
} catch (HttpException $ex) {
echo $ex;
}

Zpracování chyb

Pokud dojde k problému při zpracování API požadavku, bude vrácena následující JSON struktura. Chybový kód bude vždy přítomen; podrobný popis může být null.

{ "errorCode": "NeplatnéArgumenty",
"errorDescription": "Povinný argument \"heslo\" typu \"řetězec\" chybí."
}

Odpověď s chybou lze detekovat přečtením HTTP statusu kód odpovědi. Pokud dojde k chybě, nikdy nebude nastaven na 2xx. Status kód je 400 špatný požadavek, 401 nebo 403 pro problémy s ověřováním nebo autorizací.

Hlásení problémů

Při hlášení problému technické podpoře zahrňte do zprávy následující:

  • Koncový bod API

  • Požadavek

  • Čas (a časové pásmo)

  • Odpověď

  • Fáze-akce-ID odpovědi

Byl pro vás tento článek užitečný?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.