Интерфейс приложений API Phrase TMS

Технология интерфейс приложений API ((TMS))

Контент автоматически переведен с английского языка с помощью Phrase Language AI.

Наш интерфейс приложений API рассматривает сущности приложений (проекты, задания, настройки) как ресурсы, которые можно извлечь, создать, изменить и удалить. 

Каждый метод HTTP представляет собой действие:

  • GET

    Получение ресурса без необходимости изменения ресурса

  • POST

    Создает ресурс. POST также используется для операций, которые не подходят ни под одну из четырех операций или сопряжены с длительным или сложным вводом (например, поиск в памяти переводов или создание заданий).

  • ПОСТАВИТЬ

    Обновление ресурса. Обратите внимание, что для всей сущности обязательны все поля, а не только те, которые были изменены; не считая этого, сущности необходимо присвоить нулевое значение.

  • DELETE

    Удаление ресурса.

Важно

Входные данные и результаты обычно в формате JSON, закодирован UTF-8. Для файлов типа запроса используется приложение/октет-поток или многокомпонентные/форм-данные.

Подразделения по возможности используют плоскую структуру для поддержания хорошего времени реагирования. Вместо целых дочерних элементов в ответах отображаются ссылки, содержащие Идентификатор, UID и некоторые другие свойства. Ожидается наличие объектов IDReference или UidReferencee для ссылок на взаимосвязанные объекты.

Все списки ответов находятся на странице. Используйте страницу Номер параметра и Размер страницы для получения запрошенных данных. Максимальный размер страницы - 50.

Документация

OpenAPI 3.0 используется для интерфейса приложений API. Для разработки клиентов рекомендуются генераторы хвастливого кода.

Файлы исходной документации:

Примеры API

Получить список всех баз памяти переводов

GET

/web/api2/v1/transMemories

Ответ

200

{
    «Номер страницы»: 0,
    «контент»: [
        {
            "internalId": 1,
            «createdBy»: {
                «Имя пользователя»: «администратор»,
                "Идентификатор": "3",
                «Имя»: "январь",
                «Фамилия»: "Яноцко",
                «Роль»: «АДМИНИСТРАТОР»,
                "Электронная почта": "jan.janocko@phrase.com"
            },
            «клиент»: нулевой,
            «Примечание»: «необязательно использовать в памяти переводов (TM)»,
            "dateCreated": "2018-01-09T14:07:46+0000",
            "Идентификатор": "1",
            "targetLangs": [
                «es»,
                "это"
            ],
            «Специализация»: нулевой,
            «Бизнес-подразделение»: {
                "Идентификатор": "1",
                «имя»: «Первый BU»
            },
            "sourceLang": "en",
            «отрасль»: нулевой,
            «имя»: «Моя новая память переводов (TM)»
        }
    ],
    "numberOfElements": 1,
    "totalElements": 1,
    "pageSize": 50,
    «totalPages»: 1
}

Создать новую память переводов

POST

/web/api2/v1/transMemories

{{
«имя»: "Моя новая память переводов (TM)",
"sourceLang": "en",
"targetLangs": [
«es», «it-IT»
],
«Бизнес-подразделение»: {
"Идентификатор": "1"
},
«Примечание»: «необязательно использовать в памяти переводов (TM)»
}

Ответ

201

{
    "internalId": 1,
    «createdBy»: {
        «Имя пользователя»: «администратор»,
        "Идентификатор": "3",
        «Имя»: "J",
        «Фамилия»: "январь",
        «Роль»: «АДМИНИСТРАТОР»,
        "Электронная почта": "jan.j@phrase.com"
    },
    «клиент»: нулевой,
    «Примечание»: «необязательно использовать в памяти переводов (TM)»,
    "dateCreated": "2018-01-09T14:07:46+0000",
    "Идентификатор": "1",
    "targetLangs": [
        «es»,
        "это"
    ],
    «Специализация»: нулевой,
    «Бизнес-подразделение»: {
        "Идентификатор": "1",
        «имя»: «Первый BU»
    },
    "sourceLang": "en",
    «отрасль»: нулевой,
    «имя»: «Моя новая память переводов (TM)»
}

Добавление файлов при создании задания

Добавить этот файл в текст запроса в виде двоичного вложения. Убедитесь, что Phrase и заголовки контент правильно вставлены.

Пример PHP от почтальона:

<?php

$request = new HttpRequest();
$request->setUrl ("https://cloud.memsource.com/web/api2/v1/projects/%7BUID%20of%20your%20project%7D/jobs");
$request->setMethod(HTTP_METH_POST);

$request->setQueryData(array(
'токен' => 'Ваш токен идет здесь'
));

$request->setHeaders(array(
'postman-токен' => 'ABC',
'cache-control' => 'no-cache',
'контент-disposition' => 'имя файла*=UTF-8'''Sample.txt',
'memsource' => '{\\"targetLangs\\":[\\"de\",\\"fr\\",\\"es\\"],\\"callbackUrl\\":\"https://my-shiny-услуга.com/consumeCallback\\",\"importSettings\\":{\\"uid\":\\"WF0T1SfSHxII09yKr0dZh9\"}}'
));

попробовать {
$ответ = $запрос->отправить();

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

Обработка ошибок

Если при обработке запроса на интерфейс приложений API возникают проблемы, будет возвращена следующая структура JSON. Код ошибки будет присутствовать всегда; подробное описание может быть равным нулю.

{ "errorCode": "InvalidArguments",
«errorDescription»: «Пропущен требуемый аргумент \"пароль\" типа \"строка\".
}

Реакция на ошибку может быть обнаружена при чтении кода ответа. При возникновении ошибки никогда не будет установлено значение 2хх. Код статуса: 400 неудачных запросов, 401 или 403 — в связи с проблемами аутентификации или авторизации.

Сообщения о проблемах

Сообщая о проблеме в Службу техподдержки, включает в отчет следующее:

  • Конечная точка API

  • Запрос

  • Часовой (и часовой пояс)

  • Ответ

  • Phrase-Action-Идентификатор ответа

Была ли эта статья полезной?

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.