Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Downloading Tasks

Our API calls make it easy for LSPs to export the tasks assigned to them from our TMS and translate them in their own CAT tools. Your project and community settings in the TMS must allow for offline translation before you can use the APIs. 

Use the following API calls to view and export your tasks. 

  • GET /task allows you to view the list of tasks assigned to you in the TMS.
  • GET /task/{id}/content downloads the XLIFF for a given task.

Keep in mind the following as you are exporting tasks:

  • Via the UI, a user is not able to download tasks (XLIFF files) that aren't in their Task List. Likewise, the API calls will need to authenticate using the credentials of the user to whom the task is assigned in Lingotek.
  • You can only download XLIFF for 'Active' tasks (i.e. tasks that are ready to be worked on, but have not yet been 'marked complete' within Lingotek).

Editing XLIFF files

While you are editing the XLIFF files you should be aware of the following so that you can upload the files back into the TMS when you are finished editing:

  • We follow XLIFF 1.2 specifications.
  • Be sure not to modify the number of trans-units, their order or identifier. 
  • Adding style to the corrections is not advisable. For example, if a translation were to change from "dog" to "puppy", "puppy" should simply replace "dog" and not be something like "dogpuppy."
  • Do not merge or split segments within your tool. If our system detects that one or more segments were merged or split, the re-import will fail.

Attributes and metadata

  • On export, we add a lgtk:phaseUUID attribute in the header of the XLIFF. This is what we match on when you re-import the XLIFF. Be sure that you do not remove this attribute. 

    Note

    If the lgtk:phaseUUID attribute is missing, you will not be able to successfully re-import the XLIFF file.


  • The XLIFF files you download from Lingotek's TMS will only ever correspond to one target language. As such it is important that if you have an xml:lang for a segment it should match the target language in the header.
  • Lingotek doesn't import any meta from the uploaded XLIFF. All we do is extract the translations form the trans-units. We ignore everything else.

    Tip
    titleExample

    Modified dates for each segment translation will be set in our system based on the upload time. There is no need to add a modified date to a segment.


  • All target attributes are optional, however, below is more information about target attributes if you include them. 
    • state: Different behavior can happen on XLIFF re-import depending on the state attribute.
    • xml:lang: If present, this should contain the locale code for the target locale, which is defined in the <file> tag's "target-language" attribute.
    • state-qualifier: This helps to clarify the origin of the translation.
    • phase-name: This provides clarification as to which phase this target is in. The export provides a number, which has a description in the <phase group> section in the <header>. 

      Tip
      titleExample

      phase-name="1" might correspond to the following in the header: <phase phase-name="1" process-name="Translate"/>


  • mrk: <mrk> is optional, but if present, there must only be one per target, and it must surround the entire segment. If there is more than one <mrk> segment in a <target>, the import fails. If there is one that does not completely encapsulate the segment, only the text within the <mrk> is imported. 

    Tip
    titleExample

    Correct: <target...><mrk mtype="seg">This is my translation</mrk></target>

    Incorrect: <target...>This <mrk mtype="seg">text</mrk> is translated</target> (Will only import "text")

    Incorrect: <target...><mrk mtype="seg">This is one</mrk><mrk mtype="seg">too many mrk tags.</mrk></target>


    • mid: Optional. Used as an identifier for a specific <mrk> within the target.
    • mtype: REQUIRED. This is required by the XLIFF 1.2 specification. It describes the type of mrk. The export uses "seg" as the mtype. If mtype is not present, the import will fail.

Uploading A Completed Task

Upon completing a Task outside of Lingotek's TMS, it is a simple process to push them back into the TMS. The following API calls will upload content into the TMS. 

  • PATCH /task/{id}/content.

Keep the following in mind as you reimport your completed task:

File Structure

  • Be sure that the structure of the XLIFF has not changed. 
  • We accept both zip folders containing XLIFF files or single XLIFF files.

    Info

    When you re-import a zip folder of XLIFF files, we ignore the folder structure entirely. We simply use the lgtk:phaseUUID attribute in each of the XLIFF files to programmatically match each XLIFF file with the applicable tasks in our Task List.


  • We only re-import the translations and not any metadata from the XLIFF that may have been added to the file.

    Info

    Uploading completed XLIFF files to the TMS has the same effect as if you had worked within Lingotek's Workbench to perform the translations/edits. 


Authentication

  • Via the UI, a user is not able to re-import XLIFF for a task that isn't in their Task List. Likewise, the API calls will need to authenticate using the credentials of the user to whom the task is assigned in Lingotek.
  • Authorship is attributed to the user re-importing the tasks through the API. 
  • You can only re-import XLIFF for 'Active' tasks (i.e. tasks that have not been 'marked complete' within Lingotek).

Effect on the TMS

  • Existing translations in the phase are overwritten by the ones in the imported XLIFF file.

    Tip

    A revision history for each segment is available on our Workbench.


  • When editing, and the document is completely correct and does not need any changes, you should still upload it back to the TMS and the system will note that the document was completed and did not need any edits. 
  • If there is no translation for a segment when the XLIFF file was downloaded, and there still is not a translation when it is uploaded back to the TMS, the import process will skip over that segment and it will appear as a non-translated segment. 
  • If a segment has a translation in the XLIFF upon download, but the target segment is blank upon upload, the TMS will keep the previous translation.

 

Live Search
spaceKeyPDOC
additionalpage excerpt
placeholderSearch documentation




Style
#children-section {        display:none !important;    }
#comments-section {        display:none !important;    }
#likes-and-labels-container {        display:none !important;    }
.page-metadata	{display:none;}