If the API changes in an incompatible manner this is listed explicitly in the "important release notes" section of each releases changelog.
Provides access to the data of a single segment
URL: | /editor/taskid/[TaskId]/segment/[ID] example: /editor/taskid/774/segment/252190 |
Available Methods: | GET / PUT |
Specialities: | Only possible with a task in edit mode. Resource Layout is dynamic. |
Resource Layout
Name | Type | Info |
id | int | GET only |
fileId | int | GET only, set by import |
isFirstofFile | boolean | GET only, calculated depending on filters set |
segmentNrInTask | int | GET only, set by import |
userName | string | GET only, set by server |
timestamp | date | GET only, set by server |
editable | boolean | GET only, set by import |
autoStateId | int | GET only, set by server |
workflowStep | string | GET only, set by server |
workflowStepNr | int | GET only, set by server |
matchRate | int | initially set by import, should be changed only when new text content comes from a system which provides a new matchRate |
matchRateType | string | initially set by import to "import", should be changed when changing the above matchRate |
durations | object | |
comments | string | GET only, set by server |
qmId | string | |
stateId | int | |
[FIELD] | string | GET only |
[FIELD]Edit | string | Optional, only if field is editable. |
isWatched | boolean | GET only, set by server (user dependent) |
segmentUserAssocId | int | GET only, set by server (user dependent) |
Segments contain dynamic fields, defined on import. This dynamic fields contain the segment payload.
Additonal Meta Informations
In the JSON response you will find an additional object "metaData" beneath the normally used "rows" array. Currently metaData contains only the integer field "firstEditable" which contains the rowIndex of the first segment which is editable in the current sort and filtered segment list. This field is only returned in the first request.
Special URLs
URL | Method | Parameters | Description |
---|---|---|---|
/editor/segment/nextsegments | POST | next: boolean; 1 to find and return the next editable segment nextFiltered: boolean; 1 to find and return the next editable segment filtered by workflow prev: boolean; 1 to find and return the previous editable segment prevFiltered: boolean; 1 to find and return the previous editable segment filtered by workflow filter: the same filter parameters as for the segment listing sort: the same sort parameters as for the segment listing segmentId: integer; The ID of the segment which should be used as start point | In big tasks where only a few segments are editable, This information must then be calculated separately. The response contains a plain JSON Object, containing the segment IDs for the requested steps (next / nextFiltered / prev / prevFiltered). For example (only next and nextFiltered were delivered with 1 (true) on the request): { next: 123 nextFiltered: 321 } |
/editor/segment/terms | POST | id: integer; the segment id to get the terminology entries for | returns a HTML Fragment with the terminology entries of the requested segment. |
Overview Segment Processing States (formerly known as AutoStates)
As they are shown in the GUI:
Complete list with description and when they are used.
ID | Speakable Name (PHP Constant) | Description | Role / Workflow Step | Usage |
---|---|---|---|---|
4 | NOT_TRANSLATED | Not translated | import | Is set on import time when source is set and target not. Is NOT set when translator deletes a previously translated segment. |
0 | TRANSLATED | Translated | import / translator | Set by the import process for pure Review Tasks for as initial segment state of translated segments or by translator when they work and translate a segment of a translation task. Is used when the content of the segment is already translated at import time, or if a translator saves a segment with content and has written the content by himself or changed a match that he took from TM or MT. |
14 | TRANSLATED_AUTO | Translated, autoset | translator | if a translator uses the repetition editor, the segments are getting this state. |
15 | PRETRANSLATED | Pretranslated | import / translator | Is used on import when:
|
3 | BLOCKED | Blocked | import / translator | Is used when a segment is not editable (defined by the imported data, or by translate5 Plug-Ins on custom criteria). One default criteria in the import is the edit100%match setting in the task. Set either on import of pure review tasks, as defined by the imported data. Is used if the translator uses a 100% match from a language resource and edit100%match is false. (TODO) |
1 | REVIEWED | Reviewed | Reviewer 1 | Is used when a reviewer saves a segment and has modified the content |
2 | REVIEWED_AUTO | Reviewed, auto-set | Reviewer 1 | Is used like "Reviewed" but segment was saved via repetition editor instead of direct editing. |
5 | REVIEWED_UNTOUCHED | Reviewed, untouched, auto-set at finish of workflow step | Reviewer 1 | If the last reviewer (review step 1) is finishing the task, all not reviewed (not touched) segments are set to this state automatically. Can be disabled in the workflow action configuration, is enabled by default. |
6 | REVIEWED_UNCHANGED | Reviewed, untouched | Reviewer 1 | Is used when the segment was opened and saved without any change. This marks the segment as "OK" by the reviewer (review step 1) |
7 | REVIEWED_UNCHANGED_AUTO | Reviewed, untouched, auto-set | Reviewer 1 | Is used like above "Reviewed, unchanged" but segment was saved via repetition editor instead of direct editing. |
8 | REVIEWED_TRANSLATOR | Reviewed by 2nd reviewer | Reviewer 2 | Optional second review step: is set if the segment was changed manually in the second review step again |
9 | REVIEWED_TRANSLATOR_AUTO | Reviewed by 2nd reviewer, auto-set | Reviewer 2 | Optional second review step: is set if the segment was changed by the repetition editor in the second review step |
10 | REVIEWED_PM | PM reviewed | PM not assigned to workflow | reviewed by a PM not associated in the workflow of a task |
11 | REVIEWED_PM_AUTO | PM reviewed, auto-set | PM not assigned to workflow | reviewed through the repetition editor (auto-propagate of translate5) by a PM not associated in the workflow of a task |
12 | REVIEWED_PM_UNCHANGED | PM reviewed, unchanged | PM not assigned to workflow | reviewed but unchanged by a PM not associated in the workflow of a task |
13 | REVIEWED_PM_UNCHANGED_AUTO | PM reviewed, unchanged, auto | PM not assigned to workflow | reviewed but unchanged through the repetition editor by a PM not associated in the workflow of a task |
2 Comments
Stephen Holmes
It's not clear how the segment endpoint works..
/editor/segment/[ID]
Given say, task 500, with 100 segments, I want to retrieve segment 7 and so call
(baseURI)/editor/segment/7
...and have the correct token in the header. This returns an error 500 because it knows nothing of the task, but the documentation doesn't make it clear where the task should be referenced (though the error message indicates it should be in the URL). Can you help?
Aleksandar Mitrev
Hi Stephen,
Thank you for your feedback regarding the segment endpoint. I have updated the API documentation to clarify its usage.
The issue you encountered is due to the absence of the taskId in the request URL. To retrieve a specific segment, the taskId must be included in the URL path. Here’s the correct way to format your request:
For example, if you want to retrieve segment 7 from task 500, your request URL should be:
Please ensure you include the correct token in the header as you have been doing.
I hope this resolves the issue. If you have any further questions or need additional assistance, feel free to reach out.
Best regards,
Aleksandar