openapi: 3.0.2
servers: []
info:
title: Globalese
version: 3
description: Globalese API v3
tags:
- name: Corpora
- name: Engines
- name: Engine instances
- name: Groups
- name: Languages
- name: Projects
- name: Project files
- name: Segment translation dispatchers
- name: Translation jobs
paths:
/corpora:
get:
tags:
- Corpora
security:
- bearer: [ ]
summary: List corpora
description: Returns a collection of corpora.
parameters:
- $ref: '#/components/parameters/stringIds'
- $ref: '#/components/parameters/limitMax100'
- $ref: '#/components/parameters/offset'
- $ref: '#/components/parameters/sourceLanguage'
- $ref: '#/components/parameters/targetLanguage'
- $ref: '#/components/parameters/groupIds'
- $ref: '#/components/parameters/engineId'
- $ref: '#/components/parameters/metadataDomain'
- $ref: '#/components/parameters/metadataSubject'
- $ref: '#/components/parameters/metadataClient'
- $ref: '#/components/parameters/metadataProject'
- $ref: '#/components/parameters/metadataDescription'
- $ref: '#/components/parameters/corpusCatServerId'
- name: name
in: query
description: Full or partial corpus name for filtering.
schema:
type: string
- name: sort
in: query
schema:
type: string
enum:
- name:asc
- name:desc
- counts.segment_count:asc
- counts.segment_count:desc
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CorpusCollection'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
500:
$ref: '#/components/responses/500InternalServerError'
post:
tags:
- Corpora
security:
- bearer: [ ]
summary: Upload a new corpus
description: |
The `source_language` and `target_language` are required for these formats:
* `csv-comma`
* `csv-memoq`
* `csv-semicolon`
* `tsv`
Only a single file may be uploaded in one request. Maximum file size: 600 MB.
A file can be uploaded as a zip archive.
The zip archive may only contain one file, and the file format must be provided in the `format` field.
The `Content-Disposition` header must contain the `filename` directive.
This is taken care of by most libraries in general.
E.g. `Content-Disposition: form-data; name="Example TM"; filename="example.xliff"`
Required permissions: `MANAGE_CORPORA` in all the groups the corpus is uploaded to, or `SYSTEM_ADMINISTRATOR`
requestBody:
$ref: '#/components/requestBodies/CreateCorpus'
responses:
201:
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/Corpus'
400:
$ref: '#/components/responses/400BadRequest'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
500:
$ref: '#/components/responses/500InternalServerError'
/corpora/{corpusId}:
parameters:
- $ref: '#/components/parameters/corpusIdInPath'
get:
tags:
- Corpora
security:
- bearer: [ ]
summary: Show the details of a corpus
description: |
Returns a single corpus.
Required permissions: `MANAGE_CORPORA` in the group the corpus belongs to, or `SYSTEM_ADMINISTRATOR`
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Corpus'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
404:
$ref: '#/components/responses/404NotFound'
500:
$ref: '#/components/responses/500InternalServerError'
patch:
tags:
- Corpora
security:
- bearer: [ ]
summary: Update a corpus
description: |
Required permissions: `MANAGE_CORPORA` in all the groups the corpus belongs to, or `SYSTEM_ADMINISTRATOR`
requestBody:
$ref: '#/components/requestBodies/UpdateCorpus'
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Corpus'
400:
$ref: '#/components/responses/400BadRequest'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
500:
$ref: '#/components/responses/500InternalServerError'
delete:
tags:
- Corpora
security:
- bearer: [ ]
summary: Delete a corpus
description: |
Delete a corpus.
Required permissions: `MANAGE_CORPORA` in all groups the corpus belongs to, or `SYSTEM_ADMINISTRATOR`
responses:
204:
$ref: '#/components/responses/204NoContent'
400:
$ref: '#/components/responses/400BadRequest'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
404:
$ref: '#/components/responses/404NotFound'
500:
$ref: '#/components/responses/500InternalServerError'
/corpora/{corpusId}/content:
parameters:
- $ref: '#/components/parameters/corpusIdInPath'
get:
tags:
- Corpora
security:
- bearer: [ ]
summary: Corpus content
description: |
Returns segments of a corpus.
Required permissions: `MANAGE_CORPORA` in the group the corpus belongs to, or `SYSTEM_ADMINISTRATOR`
parameters:
- $ref: '#/components/parameters/limitMax100'
- $ref: '#/components/parameters/offset'
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CorpusContent'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
404:
$ref: '#/components/responses/404NotFound'
500:
$ref: '#/components/responses/500InternalServerError'
/corpora/{corpusId}/events:
parameters:
- $ref: '#/components/parameters/corpusIdInPath'
get:
tags:
- Corpora
security:
- bearer: [ ]
summary: Show the event log of a corpus
description: |
Returns a list of events from the corpus log.
Required permissions: `MANAGE_CORPORA` in the group the corpus belongs to, or `SYSTEM_ADMINISTRATOR`
parameters:
- name: sort
in: query
schema:
type: string
enum:
- timestamp:asc
- timestamp:desc
- $ref: '#/components/parameters/limitMax100'
- $ref: '#/components/parameters/offset'
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CorpusEventCollection'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
404:
$ref: '#/components/responses/404NotFound'
500:
$ref: '#/components/responses/500InternalServerError'
/corpora/{corpusId}/versions:
parameters:
- $ref: '#/components/parameters/corpusIdInPath'
get:
tags:
- Corpora
security:
- bearer: [ ]
summary: List all versions of a corpus
description: |
Returns details about each version of a corpus:
* corpus counts
* engine IDs that used the current corpus for training
* engine IDs that used the current corpus for tuning
Required permissions: `MANAGE_CORPORA` in the group the corpus belongs to, or `SYSTEM_ADMINISTRATOR`
parameters:
- name: sort
in: query
schema:
type: string
enum:
- counts.segment_count:asc
- counts.segment_count:desc
- version:asc
- version:desc
- $ref: '#/components/parameters/limitMax100'
- $ref: '#/components/parameters/offset'
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CorpusVersionCollection'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
404:
$ref: '#/components/responses/404NotFound'
500:
$ref: '#/components/responses/500InternalServerError'
post:
tags:
- Corpora
security:
- bearer: [ ]
summary: Update corpus content
description: |
Update the contents of a corpus, creating a new version thereof.
The format of the uploaded content must be the same as the format of the original content.
The language codes of the uploaded content must be the same as the original ones.
Required permissions: `MANAGE_CORPORA` in the group the corpus belongs to, or `SYSTEM_ADMINISTRATOR`
requestBody:
$ref: '#/components/requestBodies/UpdateCorpusContent'
responses:
201:
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/CorpusVersion'
400:
$ref: '#/components/responses/400BadRequest'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
404:
$ref: '#/components/responses/404NotFound'
500:
$ref: '#/components/responses/500InternalServerError'
/engines:
get:
tags:
- Engines
security:
- bearer: [ ]
summary: List engines
description: |
Returns a collection of engines.
A translation API key can also be used for authentication.
parameters:
- $ref: '#/components/parameters/numericalIds'
- $ref: '#/components/parameters/limitMax100'
- $ref: '#/components/parameters/offset'
- $ref: '#/components/parameters/sourceLanguage'
- $ref: '#/components/parameters/targetLanguage'
- $ref: '#/components/parameters/engineStatuses'
- $ref: '#/components/parameters/groupIds'
- name: name
in: query
description: Full or partial engine name for filtering.
schema:
type: string
- name: sort
in: query
schema:
type: string
enum:
- name:asc
- name:desc
- status:asc
- status:desc
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/EngineCollection'
401:
$ref: '#/components/responses/401Unauthorized'
500:
$ref: '#/components/responses/500InternalServerError'
post:
tags:
- Engines
security:
- bearer: [ ]
summary: Create a new engine
description: |
Restrictions:
* Using stock corpora and stock engines are mutually exclusive options.
* Stock+ engines (i.e. engines based on a stock engine) can only have core corpora.
Required permissions: `MANAGE_ENGINES` in the group the engine belongs to, or `SYSTEM_ADMINISTRATOR`
requestBody:
$ref: '#/components/requestBodies/CreateEngine'
responses:
201:
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/Engine'
400:
$ref: '#/components/responses/400BadRequest'
401:
$ref: '#/components/responses/401Unauthorized'
402:
description: |
Maximum number of allowed engines reached.
Only applies to legacy subscriptions.
403:
$ref: '#/components/responses/403Forbidden'
500:
$ref: '#/components/responses/500InternalServerError'
502:
$ref: '#/components/responses/502BadGateway'
/engines/{engineId}:
parameters:
- $ref: '#/components/parameters/engineIdInPath'
get:
tags:
- Engines
security:
- bearer: [ ]
summary: Show the details of an engine
description: |
Returns a single engine.
Required permissions: `MANAGE_ENGINES`, `MANAGE_PROJECTS` or `TRANSLATE` in the group the engine belongs to, or `SYSTEM_ADMINISTRATOR`
A translation API key can also be used for authentication.
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Engine'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
404:
$ref: '#/components/responses/404NotFound'
500:
$ref: '#/components/responses/500InternalServerError'
patch:
tags:
- Engines
security:
- bearer: [ ]
summary: Update an engine
description: |
Required permissions: `MANAGE_ENGINES` in the group the engine belongs to, or `SYSTEM_ADMINISTRATOR`
The `published` property can only be changed if the engine has been trained or tuned before.
requestBody:
$ref: '#/components/requestBodies/UpdateEngine'
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Engine'
400:
$ref: '#/components/responses/400BadRequest'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
404:
$ref: '#/components/responses/404NotFound'
500:
$ref: '#/components/responses/500InternalServerError'
delete:
tags:
- Engines
security:
- bearer: [ ]
summary: Delete an engine
description: |
Delete an engine.
Required permissions: `MANAGE_ENGINES|SYSTEM_ADMINISTRATOR`
responses:
204:
$ref: '#/components/responses/204NoContent'
400:
$ref: '#/components/responses/400BadRequest'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
404:
$ref: '#/components/responses/404NotFound'
500:
$ref: '#/components/responses/500InternalServerError'
/engines/{engineId}/events:
parameters:
- $ref: '#/components/parameters/engineIdInPath'
get:
tags:
- Engines
security:
- bearer: [ ]
summary: Show the event log of an engine
description: |
Returns a list of events from the engine log.
Required permissions: `MANAGE_ENGINES` in the group the engine belongs to, or `SYSTEM_ADMINISTRATOR`
parameters:
- name: sort
in: query
schema:
type: string
enum:
- timestamp:asc
- timestamp:desc
- $ref: '#/components/parameters/limitMax100'
- $ref: '#/components/parameters/offset'
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/EngineEventCollection'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
404:
$ref: '#/components/responses/404NotFound'
500:
$ref: '#/components/responses/500InternalServerError'
/engines/{engineId}/resources:
parameters:
- $ref: '#/components/parameters/engineIdInPath'
get:
tags:
- Engines
security:
- bearer: [ ]
summary: Show the resources of an engine
description: |
Returns a single engine's resources.
Required permissions: `MANAGE_ENGINES` or `MANAGE_PROJECTS` in the group the engine belongs to, or `SYSTEM_ADMINISTRATOR`
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/EngineResources'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
404:
$ref: '#/components/responses/404NotFound'
500:
$ref: '#/components/responses/500InternalServerError'
/engine-instances:
get:
tags:
- Engine instances
security:
- bearer: [ ]
summary: List engine instances
description: |
Returns a collection of engine instances (being) deployed.
Required permissions: `MANAGE_ENGINES|TRANSLATE|SYSTEM_ADMINISTRATOR`
A translation API key can also be used for authentication.
parameters:
- $ref: '#/components/parameters/numericalIds'
- $ref: '#/components/parameters/engineIds'
- $ref: '#/components/parameters/groupIds'
- $ref: '#/components/parameters/limitMax100'
- $ref: '#/components/parameters/offset'
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/EngineInstanceCollection'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
500:
$ref: '#/components/responses/500InternalServerError'
post:
tags:
- Engine instances
security:
- bearer: [ ]
summary: Create a new engine instance
description: |
Starts deploying an engine in the background.
Required permissions: `MANAGE_ENGINES|SYSTEM_ADMINISTRATOR`
requestBody:
$ref: '#/components/requestBodies/CreateEngineInstance'
responses:
202:
description: The newly created engine instance entity in the database.
content:
application/json:
schema:
$ref: '#/components/schemas/EngineInstance'
400:
$ref: '#/components/responses/400BadRequest'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
500:
$ref: '#/components/responses/500InternalServerError'
/engine-instances/{id}:
parameters:
- name: id
description: Engine instance ID
in: path
required: true
schema:
type: integer
get:
tags:
- Engine instances
security:
- bearer: [ ]
summary: Show the details of an engine instance
description: |
Returns a single engine instance.
Required permissions: `MANAGE_ENGINES|TRANSLATE|SYSTEM_ADMINISTRATOR`
A translation API key can also be used for authentication.
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/EngineInstance'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
404:
$ref: '#/components/responses/404NotFound'
500:
$ref: '#/components/responses/500InternalServerError'
502:
$ref: '#/components/responses/502BadGateway'
delete:
tags:
- Engine instances
security:
- bearer: [ ]
summary: Delete an engine instance
description: |
Removes a deployed engine instance.
Required permissions: `MANAGE_ENGINES|SYSTEM_ADMINISTRATOR`
responses:
204:
$ref: '#/components/responses/204NoContent'
400:
$ref: '#/components/responses/400BadRequest'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
404:
$ref: '#/components/responses/404NotFound'
500:
$ref: '#/components/responses/500InternalServerError'
502:
$ref: '#/components/responses/502BadGateway'
/groups:
get:
tags:
- Groups
security:
- bearer: [ ]
summary: List groups
description: Returns a collection of groups the authenticated user is a member of.
parameters:
- $ref: '#/components/parameters/limitMax100'
- $ref: '#/components/parameters/offset'
- name: sort
in: query
schema:
type: string
enum:
- name:asc
- name:desc
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GroupCollection'
401:
$ref: '#/components/responses/401Unauthorized'
403:
$ref: '#/components/responses/403Forbidden'
500:
$ref: '#/components/responses/500InternalServerError'
/jobs/languagestranslation:
getpost:
tags:
- Translation Languagesjobs
security:
- bearer: [ ]
summary: List languagesCreate a translation job
description: |
Required permission: `MANAGE_PROJECTS` Returns a collection of languages used in Globalese.in the group the file (and project) belongs to, or `SYSTEM_ADMINISTRATOR`
If the engine Ais translationnot APIpublished, keyit can also be used for authentication.
parameters: document translation only by users with at least one of the following permissions:
- $ref: '#/components/parameters/languageUsage'`MANAGE_ENGINES` for the group the engine belongs to
- $ref: '#/components/parameters/limit'
`SYSTEM_ADMINISTRATOR`
requestBody:
- $ref: '#/components/parametersrequestBodies/offsetCreateTranslationJob'
responses:
200201:
description: OKTranslation job created
content:
application/json:
schema:
$ref: '#/components/schemas/LanguageCollectionTranslationJob'
401400:
$ref: '#/components/responses/401Unauthorized400BadRequest'
500401:
$ref: '#/components/responses/500InternalServerError401Unauthorized'
/segment-translation-dispatchers: get402:
tags description: License does not allow new translation jobs to -be Segmentcreated
translation dispatchers security403:
- bearer: [ ]$ref: '#/components/responses/403Forbidden'
summary409:
List segment translation dispatchers description: |
File is already being translated
Required permissions500: `MANAGE_ENGINES|SYSTEM_ADMINISTRATOR`
$ref: responses:'#/components/responses/500InternalServerError'
200502:
description$ref: OK'#/components/responses/502BadGateway'
504:
content: $ref: '#/components/responses/504GatewayTimeout'
application/jsonlanguages:
get:
schematags:
- Languages
$refsecurity:
'#/components/schemas/RemoteDispatcherCollection' - 401bearer: [ ]
summary: List $ref: '#/components/responses/401Unauthorized'languages
description: |
403: Returns a collection of $ref: '#/components/responses/403Forbidden'
languages used in Globalese.
A translation API key can also be used for authentication.
500parameters:
- $ref: '#/components/responsesparameters/500InternalServerErrorlanguageUsage'
- 502$ref: '#/components/parameters/limit'
- $ref: '#/components/responsesparameters/502BadGatewayoffset'
components:
parameters: corpusCatServerIdresponses:
name: cat.server.id 200:
in: query description: |OK
The ID of the CAT server the corpus is associated with. content:
schemaapplication/json:
type: number schema:
example: 10 corpusIdInPath: name$ref: corpusId'#/components/schemas/LanguageCollection'
description: Corpus ID401:
in: path $ref: '#/components/responses/401Unauthorized'
required: true 500:
schema: type$ref: string'#/components/responses/500InternalServerError'
/projects:
post:
example: 5b04a7263fa509.a4444794 engineIdtags:
name: engine_id - Projects
in: query descriptionsecurity:
| - Enginebearer: ID[ for]
filtering. summary: Create a new Examples: `1`,project
`2` schemadescription: |
$ref: '#/components/schemas/engineId'
engineIdInPath:
One of either `engine_id` or `stock_engine_id` is required.
name: engineId Required permissions: `MANAGE_PROJECTS` in: querythe group the project belongs to, or required:`SYSTEM_ADMINISTRATOR`
true schemarequestBody:
type$ref: integer'#/components/requestBodies/CreateProject'
responses:
example: 201:
5 engineIds: description: Project created
name: engine_ids incontent:
query description: | application/json:
One or more engine ID(s) for filtering, comma-separated. schema:
Examples: `1`, `1,3,5` schema$ref: '#/components/schemas/Project'
oneOf 400:
- type$ref: integer'#/components/responses/400BadRequest'
- type401:
string engineStatuses: $ref: name: statuses'#/components/responses/401Unauthorized'
in403:
query description: | $ref: '#/components/responses/403Forbidden'
One or more engine500:
statuses for filtering, comma-separated. Examples: `trained`, `queued,training`
$ref: '#/components/responses/500InternalServerError'
/projects/{projectId}:
schemaparameters:
- type: string$ref: '#/components/parameters/projectIdInPath'
get:
enum: tags:
- changedProjects
security:
- error - bearer: [ ]
- queued summary: Show the details of a project
- trained description: |
- training Returns a single project.
- tuned Required permissions: `MANAGE_PROJECTS` in the group the project belongs -to, tuningor `SYSTEM_ADMINISTRATOR`
responses:
- untrained groupIds200:
name: group_ids description: OK
in: query descriptioncontent:
| One or moreapplication/json:
group ID(s) for filtering, comma-separated. Examplesschema:
`1`, `1,3,5` schema: oneOf$ref: '#/components/schemas/Project'
401:
- type: integer $ref: '#/components/responses/401Unauthorized'
- type: string 403:
style: form explode$ref: false'#/components/responses/403Forbidden'
languageUsage: 404:
name: usage in: query$ref: '#/components/responses/404NotFound'
description500:
| Filter for languages used in Globalese.
$ref: '#/components/responses/500InternalServerError'
patch:
tags:
Optionally, the `:source` or `:target` modifier may be appended- toProjects
the parameter value to filter for languagessecurity:
used on the source or target language side only.- bearer: [ ]
`usage=enginessummary:source` will returnUpdate a listproject
of languages used as engine source languages.description: |
`usage=engines` will return a list of languages used as engine languages, either source or target.Required permissions: `MANAGE_PROJECTS` in the group the project belongs to, or `SYSTEM_ADMINISTRATOR`
schemarequestBody:
type$ref: string'#/components/requestBodies/UpdateProject'
responses:
enum: 200:
- engines limitdescription: Project updated
name: limit incontent:
query description: | application/json:
Limit for results. *May* be used together with `offset`. schema:
Examples: `25`, `50` schema:$ref: '#/components/schemas/Project'
type400:
integer limitMax100: $ref: name: limit'#/components/responses/400BadRequest'
in401:
query description: | $ref: '#/components/responses/401Unauthorized'
Limit for results. It403:
cannot be greater than 100. *May* be used together with `offset`.
$ref: '#/components/responses/403Forbidden'
Examples404:
`25`, `50` If not provided, it will automatically be set to 100.$ref: '#/components/responses/404NotFound'
500:
schema: type: integer$ref: '#/components/responses/500InternalServerError'
metadataClientdelete:
nametags:
metadata.client in:- queryProjects
descriptionsecurity:
| - Clientbearer: metadata[ descriptor.]
Examplessummary: `VeryDelete Importanta Client`project
schemadescription: |
type: stringDeletes a project as well metadataDescription:as all the project files contained name: metadatawithin.description
in: query Required permission: `MANAGE_PROJECTS` in the description:group |the project belongs to, or `SYSTEM_ADMINISTRATOR`
Description metadata descriptor. responses:
Examples204:
`used for 2018 campaign` schema$ref: '#/components/responses/204NoContent'
type 400:
string metadataDomain: $ref: name: metadata.domain'#/components/responses/400BadRequest'
in401:
query description: | $ref: '#/components/responses/401Unauthorized'
Domain metadata403:
descriptor. Examples$ref: `legal`'#/components/responses/403Forbidden'
schema404:
type $ref: string'#/components/responses/404NotFound'
metadataProject: 500:
name: metadata.project in: query
$ref: '#/components/responses/500InternalServerError'
/projects/{projectId}/files:
descriptionparameters:
| - Project metadata descriptor.$ref: '#/components/parameters/projectIdInPath'
get:
Examplestags: `0192
EC Project` schema:- Project files
typesecurity:
string metadataSubject: - bearer: [ ]
name: metadata.subject summary: List in:project queryfiles
description: |
SubjectReturns metadataa descriptor.collection of project files.
Examples: `EU treaties` Required permissions: `MANAGE_PROJECTS` in the group schema:the project belongs to, or `SYSTEM_ADMINISTRATOR`
type: string parameters:
numericalIds: - name$ref: ids
'#/components/parameters/stringIds'
in: query - $ref: '#/components/parameters/fileStatuses'
description: | - $ref: '#/components/parameters/limitMax100'
One or more ID(s) for filtering, comma-separated. $ref: '#/components/parameters/offset'
Examples: `3`, `3,4`
- name: sort
schema: in: query
type: string styleschema:
form explode: false offsettype: string
name: offset inenum:
query description: | - name:asc
Offset to start query from. **Must** be used together with `limit`. - name:desc
Examples: `50`, `100` schema:- latest_events.translation_finished.timestamp:asc
type: integer sourceLanguage:- latest_events.translation_finished.timestamp:desc
nameresponses:
source_language in200:
query description: | description: OK
Source language. content:
Examples: `en`, `fr` schemaapplication/json:
type: string stringIdsschema:
name: ids in$ref: query'#/components/schemas/FileCollection'
description401:
| One or more ID(s) for filtering, comma-separated.$ref: '#/components/responses/401Unauthorized'
403:
Examples: `5b04a7263fa509.a4444794`, `5b04a7263fa509.a4444794,5b0412363fa5c1.a4354792` $ref: '#/components/responses/403Forbidden'
schema: 404:
type: string style$ref: form'#/components/responses/404NotFound'
explode: false 500:
targetLanguage: name$ref: target_language'#/components/responses/500InternalServerError'
inpost:
query descriptiontags:
| - TargetProject language.files
security:
Examples: `en`, `fr` - bearer: [ schema:]
summary: Upload type:new stringproject files
requestBodies: CreateCorpusdescription: |
content: Only one file can be multipart/form-data:
uploaded at the same time.
schema:A file can be uploaded as a ZIP. The ZIP may contain more $ref: '#/components/schemas/CreateCorpus'
CreateEngine:
content:files, but the formats of these files must be the same.
The application/json:
schema:HTTP Content-Disposition header must contain the `filename` directive. Most often it happens automatically.
E.g. `Content-Disposition: form-data; $ref: '#/components/schemas/CreateEngine'name="file"; filename="example.xliff"`
required: true Required permissions: `MANAGE_PROJECTS` in CreateEngineInstance:the groups the project belongs to, or required:`SYSTEM_ADMINISTRATOR`
true contentrequestBody:
application/json:$ref: '#/components/requestBodies/CreateFile'
responses:
schema: 201:
type: object description: OK
requiredcontent:
application/json:
- engine_id schema:
- dispatcher_id propertiestype: object
engine_id: required:
$ref: '#/components/schemas/engineId' - files
dispatcher_idproperties:
$ref: '#/components/schemas/dispatcherId' files:
UpdateCorpus: contenttype: array
application/json: schemaitems:
$ref: '#/components/schemas/UpdateCorpusFile'
UpdateCorpusContent: 401:
content: multipart/form-data:$ref: '#/components/responses/401Unauthorized'
schema403:
$ref: '#/components/schemasresponses/UpdateCorpusContent403Forbidden'
UpdateEngine: 404:
required: true content$ref: '#/components/responses/404NotFound'
application/json500:
schema $ref: '#/components/responses/500InternalServerError'
/projects/{projectId}/files/{fileId}:
parameters:
- $ref: '#/components/schemasparameters/UpdateEngineprojectIdInPath'
responses: - 204NoContent$ref: '#/components/parameters/fileIdInPath'
descriptionget:
No Content 400BadRequesttags:
description: Bad Request- Project files
contentsecurity:
- application/jsonbearer: [ ]
summary: Show schema:the details of a project file
description: $ref: '#/components/schemas/Error'|
401Unauthorized: Returns a single project description:file.
Unauthorized
content: Required permissions: `MANAGE_PROJECTS` in the group the application/json:project belongs to, or `SYSTEM_ADMINISTRATOR`
schemaresponses:
200:
$ref: '#/components/schemas/Error' 403Forbiddendescription: OK
description: Insufficient permissions content:
content: application/json:
schema:
$ref: '#/components/schemas/ErrorFile'
404NotFound: 401:
description: Resource not found 422UnprocessableEntity$ref: '#/components/responses/401Unauthorized'
description: Unprocessable entity 403:
500InternalServerError: description$ref: Internal server error while processing the request'#/components/responses/403Forbidden'
404:
content: application/json:$ref: '#/components/responses/404NotFound'
schema500:
$ref: '#/components/schemasresponses/Error500InternalServerError'
502BadGatewaydelete:
descriptiontags:
Bad Gateway securitySchemes: - Project bearer:files
typesecurity:
http scheme:- bearer: [ ]
description: API key
schemassummary: Delete a project file
catToolServerId: description: CAT|
tool server ID in Globalese Delete a project type:file.
integer
example: 10 Required permission: `MANAGE_PROJECTS` in catToolServerType:the group the project belongs to, type: stringor `SYSTEM_ADMINISTRATOR`
enumresponses:
-204:
memoq - memsource
$ref: '#/components/responses/204NoContent'
- smartcat400:
- xtm $ref: '#/components/responses/400BadRequest'
CollectionMetadata: type401:
object required: $ref: '#/components/responses/401Unauthorized'
- counts 403:
properties: counts$ref: '#/components/responses/403Forbidden'
type404:
object required$ref: '#/components/responses/404NotFound'
500:
- total $ref: '#/components/responses/500InternalServerError'
/projects/{projectId}/translated-files:
- filtered parameters:
- properties:$ref: '#/components/parameters/projectIdInPath'
- name: files
total: in: query
descriptionschema:
The total number of resources in the system, irrespective of anytype: filters.string
description: |
type: integer One or more file IDs to include in the downloaded example:zip 100file.
filteredExamples: `5b04a7263fa509.a4444794`, `5b04a7263fa509.a4444794,5b0412363fa5c1.a4354792`
get:
tags:
description: The number of resources in the system matching- theProject filters.files
security:
type: integer- bearer: [ ]
summary: Download translated project files
example: 40 Corpusdescription: |
type: object Returns a zip file containing required:all or the specified translated files.
- id Untranslated files are not returned, -even actionsif their IDs are specified in the request.
- cat Required permissions: -`MANAGE_PROJECTS` countsin the group the project belongs to, or `SYSTEM_ADMINISTRATOR`
- engines responses:
- format 200:
- groups $ref: '#/components/responses/200OctetStream'
- metadata 400:
- name $ref: '#/components/responses/400BadRequest'
- source_language 401:
- target_language $ref: - version'#/components/responses/401Unauthorized'
properties:
id403:
$ref: '#/components/schemasresponses/corpusId403Forbidden'
actions404:
$ref: '#/components/schemasresponses/CorpusActions404NotFound'
cat500:
$ref: '#/components/schemasresponses/CorpusCat500InternalServerError'
/projects/{projectId}/files/{fileId}/translated-file:
countsparameters:
- $ref: '#/components/schemasparameters/CorpusCountsprojectIdInPath'
- engine_ids:$ref: '#/components/parameters/fileIdInPath'
get:
typetags:
array - Project files
items: security:
type: integer - bearer: [ ]
examplesummary: [Download 2,a 8,translated 14project ]file
formatdescription: |
Required $refpermissions: '#/components/schemas/corpusFormat'
group_ids:
`MANAGE_PROJECTS` in the group the project belongs to, or `SYSTEM_ADMINISTRATOR`
responses:
$ref200: '#/components/schemas/corpusGroupIds'
metadatadescription: OK
$ref content: '#/components/schemas/CorpusMetadata'
name:application/octet-stream:
$ref: '#/components/schemas/corpusName'schema:
source_language:type: string
$ref example: '#/components/schemas/sourceLanguage'>-
target_language: $ref: '#/components/schemas/targetLanguage'<?xml version='1.0'?><xliff>[file content]</xliff>
version401:
$ref: '#/components/schemasresponses/corpusVersion401Unauthorized'
CorpusActions: 403:
type: object description$ref: An object describing the actions possible against a corpus.
'#/components/responses/403Forbidden'
404:
required: $ref: '#/components/responses/404NotFound'
- delete 500:
- update properties$ref: '#/components/responses/500InternalServerError'
/segment-translation-dispatchers:
deleteget:
tags:
type: boolean - Segment translation dispatchers
update: security:
type: boolean - bearer: [ CorpusCat:]
typesummary: object List segment translation dispatchers
nullabledescription: |
true Required descriptionpermissions: `MANAGE_ENGINES|SYSTEM_ADMINISTRATOR`
responses:
If the corpus200:
was created by retrieving a CAT tool server corpus, this objectdescription: containsOK
relevant information. required: content:
- corpus application/json:
- server properties: schema:
corpus: $ref: '#/components/schemas/CorpusCatCorpusRemoteDispatcherCollection'
server401:
$ref: '#/components/schemasresponses/CorpusCatServer401Unauthorized'
CorpusCatCorpus403:
type: object $ref: '#/components/responses/403Forbidden'
required: 500:
- id properties$ref: '#/components/responses/500InternalServerError'
id 502:
$ref: '#/components/schemasresponses/remoteCorpusId502BadGateway'
components:
parameters:
CorpusCatServer corpusCatServerId:
typename: objectcat.server.id
requiredin: query
description: -|
id The -ID typeof the CAT server the corpus is properties:associated with.
idschema:
type: number
$ref: '#/components/schemas/catToolServerId' example: 10
type: corpusIdInPath:
$refname: '#/components/schemas/catToolServerType' corpusId
CorpusCollectiondescription: Corpus ID
typein: objectpath
required: true
schema:
- data type: string
- meta properties:example: 5b04a7263fa509.a4444794
engineId:
dataname: engine_id
in: query
type: array description: |
items: Engine ID for filtering.
$ref: '#/components/schemas/Corpus' Examples: `1`, `2`
meta: schema:
$ref: '#/components/schemas/CollectionMetadataengineId'
CorpusContentengineIdInPath:
typename: objectengineId
requiredin: query
required: -true
data schema:
- meta type: integer
properties: dataexample:
type:5
array engineIds:
itemsname: engine_ids
in: query
typedescription: object|
One or more required:
engine ID(s) for filtering, comma-separated.
Examples: - id`1`, `1,3,5`
schema:
-oneOf:
content - type: integer
properties: - type: string
id: engineStatuses:
name: statuses
typein: query
string description: |
One example: "1"
or more engine statuses for filtering, comma-separated.
Examples: nullable: true`trained`, `queued,training`
schema:
contenttype: string
enum:
type: object - changed
- error
required: - queued
- source - trained
- training
- target - tuned
properties: - tuning
- untrained
sourcefileIdInPath:
name: fileId
description: Project file ID
type: string in: path
required: true
targetschema:
type: string
typeexample: string5b04a7263fa509.a4444794
fileStatuses:
meta: name: statuses
$refin: '#/components/schemas/CollectionMetadata'query
CorpusCounts: description: |
type: objectOne or more file statuses for required:filtering, comma-separated.
- segment_count
Examples: `new`, `translating,translated`
- source_word_countschema:
type: -string
target_word_count enum:
- source_character_count - target_character_countempty
properties: - new
segment_count: - queued
type: integer - translated
example: 145952 - translating
source_word_count: groupIds:
typename: integergroup_ids
in: query
example: 2819806 description: |
target_word_count: One or more group ID(s) for type: integerfiltering, comma-separated.
exampleExamples: 3120176
`1`, `1,3,5`
source_character_countschema:
typeoneOf:
integer - exampletype: 24235334integer
target_character_count: - type: string
typestyle: integerform
exampleexplode: 29194748false
CorpusEventlanguageUsage:
allOfname: usage
- $refin: '#/components/schemas/Event'query
description: |
- type: object Filter for languages used in properties:Globalese.
Optionally, the resource_id`:source` or `:target` modifier may be appended to the parameter value to filter for languages $ref: '#/components/schemas/corpusId'
used on the source or target language side only.
type: `usage=engines:source` will return a list of languages used as engine source type:languages.
string
`usage=engines` will return a list of enum:languages used as engine languages, either source or target.
schema:
- uploaded type: string
enum:
- updated - engines
limit:
- new_version_uploaded name: CorpusEventCollection:limit
typein: objectquery
requireddescription: |
-Limit datafor results. *May* be used together with `offset`.
- meta propertiesExamples: `25`, `50`
dataschema:
type: arrayinteger
limitMax100:
items name: limit
in: query
$refdescription: '#/components/schemas/CorpusEvent'|
meta:Limit for results. It cannot be greater than 100. *May* be $ref: '#/components/schemas/CollectionMetadata'
used together with `offset`.
corpusFormat: typeExamples: string`25`, `50`
enum: If not provided, it will -automatically csv-commabe set to 100.
- csv-memoqschema:
- csv-semicolontype: integer
metadataClient:
- tmx name: metadata.client
- tbxin: query
description: -|
tsv Client -metadata xliffdescriptor.
- xliff-memoqExamples: `Very Important Client`
- xliff-memsourceschema:
- xliff-sdltype: string
metadataDescription:
- xliff-smartcat name: metadata.description
- xliff-translate5in: query
description: -|
xliff-wordbee Description - xliff-xtmmetadata descriptor.
corpusGroupIds: Examples: `used type:for array2018 campaign`
description schema:
| type: Cannotstring
be empty. metadataDomain:
A corpus must always be assigned to at least one group.name: metadata.domain
in: query
itemsdescription: |
type: integerDomain metadata descriptor.
example: [ 1, 3 ] Examples: `legal`
corpusId: descriptionschema:
Corpus ID type: string
metadataProject:
example: 5a0ba1267f0571.04642701 CorpusMetadata:name: metadata.project
typein: objectquery
propertiesdescription: |
domain: Project metadata descriptor.
type: string Examples: `0192 EC Project`
nullableschema:
true type: string
example: legal metadataSubject:
name: metadata.subject:
in: query
type: string description: |
nullable: true Subject metadata descriptor.
example: EU treatiesExamples: `EU treaties`
clientschema:
type: string
numericalIds:
nullablename: trueids
in: query
example: Very Important Client description: |
project: One or more ID(s) for filtering, comma-separated.
type: string Examples: `3`, `3,4`
nullable schema:
true type: string
example: 0192 EC Project style: form
descriptionexplode: false
offset:
type name: stringoffset
in: query
nullable: true description: |
example: created byOffset DGTto start query from. corpusName:
**Must** be used together with `limit`.
type: string exampleExamples: English`50`, to`100`
German DGT.tmx CorpusVersionschema:
type: objectinteger
projectIdInPath:
required: name: projectId
- version description: Project ID
- counts in: path
- engine_idsrequired: true
schema:
- timestamps propertiestype: integer
version example: 5
sourceLanguage:
$ref: '#/components/schemas/corpusVersion'
name: source_language
countsin: query
description: |
$ref: '#/components/schemas/CorpusCounts' Source language.
engine_ids: Examples: `en`, `fr`
$ref: '#/components/schemas/CorpusVersionEngineIds' schema:
timestamps: type: string
$refstringIds:
'#/components/schemas/CorpusVersionTimestamps' corpusVersionname: ids
descriptionin: Thequery
version of the corpus description: |
type: integer One or example: 1
more ID(s) for filtering, comma-separated.
CorpusVersionCollection: typeExamples: object `5b04a7263fa509.a4444794`, `5b04a7263fa509.a4444794,5b0412363fa5c1.a4354792`
requiredschema:
type: string
- data style: form
- meta explode: false
properties: targetLanguage:
dataname: target_language
in: query
type: array description: |
items: Target language.
$refExamples: '#/components/schemas/CorpusVersion' `en`, `fr`
schema:
meta: type: string
$refrequestBodies:
'#/components/schemas/CollectionMetadata' CorpusVersionEngineIdsCreateCorpus:
typecontent:
object requiredmultipart/form-data:
- trainedschema:
- tuned $ref: '#/components/schemas/CreateCorpus'
properties: CreateEngine:
trainedcontent:
typeapplication/json:
array itemsschema:
type: integer$ref: '#/components/schemas/CreateEngine'
required: true
exampleCreateEngineInstance:
[ 2, 8, 14 ] required: true
tunedcontent:
typeapplication/json:
array itemsschema:
type: integerobject
example: [ 2,required:
8, 14 ] CorpusVersionTimestamps: type: object- engine_id
required: - createddispatcher_atid
properties: created_atproperties:
$ref: '#/components/schemas/createdAt' engine_id:
CreateCorpus: type: object required$ref: '#/components/schemas/engineId'
- file dispatcher_id:
- format - group_ids[] $ref: '#/components/schemas/dispatcherId'
properties: CreateFile:
filecontent:
multipart/form-data:
type: object schema:
format: $ref: '#/components/schemas/corpusFormatCreateFile'
CreateProject:
group_ids[]: required: true
$refcontent:
'#/components/schemas/groupId' source_languageapplication/json:
$ref: '#/components/schemas/sourceLanguage'
target_language:schema:
$ref: '#/components/schemas/targetLanguageCreateProject'
CreateTranslationJob:
metadata[domain]: required: true
typecontent:
string application/json:
example: legal schema:
metadata[subject]: type$ref: string'#/components/schemas/CreateTranslationJob'
UpdateCorpus:
example content: EU
treaties metadata[client]application/json:
typeschema:
string example: Very Important Client
$ref: '#/components/schemas/UpdateCorpus'
UpdateCorpusContent:
metadata[project]content:
typemultipart/form-data:
string schema:
example: 0192 EC Project metadata[description]$ref: '#/components/schemas/UpdateCorpusContent'
UpdateEngine:
type: string required: true
content:
example: created by DGT CreateEngineapplication/json:
type: object schema:
required: - name$ref: '#/components/schemas/UpdateEngine'
UpdateProject:
- source_language required: true
- target_language content:
application/json:
- group_id schema:
- resources properties$ref: '#/components/schemas/UpdateProject'
responses:
name200OctetStream:
description: OK
type: string content:
exampleapplication/octet-stream:
Engine 1 source_languageschema:
$ref: '#/components/schemas/sourceLanguage' type: string
target_languageformat: binary
204NoContent:
$ref: '#/components/schemas/targetLanguage'
description: No Content
400BadRequest:
group_id:description: Bad Request
content:
$ref: '#/components/schemas/groupId' application/json:
resourcesschema:
$ref: '#/components/schemas/CreateEngineResourcesError'
CreateEngineResources401Unauthorized:
typedescription: objectUnauthorized
requiredcontent:
- corpus_idsapplication/json:
properties: schema:
corpus_ids: $ref: '#/components/schemas/CreateEngineResourcesCorpusIdsError'
403Forbidden:
stock_corpora: description: Insufficient permissions
typecontent:
boolean descriptionapplication/json:
Whether or not to use available stock corpora for training theschema:
engine. stock_engine_id:
$ref: '#/components/schemas/nullableStockEngineIdError'
CreateEngineResourcesCorpusIds404NotFound:
typedescription: objectResource not found
required422UnprocessableEntity:
description: Unprocessable entity
- core500InternalServerError:
propertiesdescription: Internal server error while processing the request
core: content:
typeapplication/json: array
itemsschema:
type: string$ref: '#/components/schemas/Error'
502BadGateway:
exampledescription: Bad [ '51fc7ea3fa889.b0027797', '54018363fa5c1.044227af' ]
Gateway
504GatewayTimeout:
auxiliarydescription: Gateway Timeout
securitySchemes:
bearer:
type: array type: http
itemsscheme: bearer
description: API key
typeschemas:
string catToolServerId:
exampledescription: [ '5b04a7263fa509.77444794', '5b0412363fa5c1.c4354792' ] CAT tool server ID in Globalese
createdAttype: integer
descriptionexample: Created10
timestamp in ISO 8601 formatcatToolServerType:
type: string
example: "2017-08-30T04:34:26+00:00"
dispatcherId:
description: Segment-based translation dispatcher ID
type: integer
example: 1
dispatcherRegion:
type: string
example: "europe-west1"
dispatcherUrlenum:
- memoq
- memsource
- smartcat
- xtm
CollectionMetadata:
type: object
required:
- counts
properties:
counts:
type: object
required:
- total
- filtered
properties:
total:
description: The total number of resources in the system, irrespective of any filters.
type: integer
example: 100
filtered:
description: The number of resources in the system matching the filters.
type: integer
example: 40
Corpus:
type: object
required:
- id
- actions
- cat
- counts
- engines
- format
- groups
- metadata
- name
- source_language
- target_language
- version
properties:
id:
$ref: '#/components/schemas/corpusId'
actions:
$ref: '#/components/schemas/CorpusActions'
cat:
$ref: '#/components/schemas/CorpusCat'
counts:
$ref: '#/components/schemas/CorpusCounts'
engine_ids:
type: array
items:
type: integer
example: [ 2, 8, 14 ]
format:
$ref: '#/components/schemas/corpusFormat'
group_ids:
$ref: '#/components/schemas/corpusGroupIds'
metadata:
$ref: '#/components/schemas/CorpusMetadata'
name:
$ref: '#/components/schemas/corpusName'
source_language:
$ref: '#/components/schemas/sourceLanguage'
target_language:
$ref: '#/components/schemas/targetLanguage'
version:
$ref: '#/components/schemas/corpusVersion'
CorpusActions:
type: object
description: An object describing the actions possible against a corpus.
required:
- delete
- update
properties:
delete:
type: boolean
update:
type: boolean
CorpusCat:
type: object
nullable: true
description: |
If the corpus was created by retrieving a CAT tool server corpus, this object contains relevant information.
required:
- corpus
- server
properties:
corpus:
$ref: '#/components/schemas/CorpusCatCorpus'
server:
$ref: '#/components/schemas/CorpusCatServer'
CorpusCatCorpus:
type: object
required:
- id
properties:
id:
$ref: '#/components/schemas/remoteCorpusId'
CorpusCatServer:
type: object
required:
- id
- type
properties:
id:
$ref: '#/components/schemas/catToolServerId'
type:
$ref: '#/components/schemas/catToolServerType'
CorpusCollection:
type: object
required:
- data
- meta
properties:
data:
type: array
items:
$ref: '#/components/schemas/Corpus'
meta:
$ref: '#/components/schemas/CollectionMetadata'
CorpusContent:
type: object
required:
- data
- meta
properties:
data:
type: array
items:
type: object
required:
- id
- content
properties:
id:
type: string
example: "1"
nullable: true
content:
type: object
required:
- source
- target
properties:
source:
type: string
target:
type: string
meta:
$ref: '#/components/schemas/CollectionMetadata'
CorpusCounts:
type: object
required:
- segment_count
- source_word_count
- target_word_count
- source_character_count
- target_character_count
properties:
segment_count:
type: integer
example: 145952
source_word_count:
type: integer
example: 2819806
target_word_count:
type: integer
example: 3120176
source_character_count:
type: integer
example: 24235334
target_character_count:
type: integer
example: 29194748
CorpusEvent:
allOf:
- $ref: '#/components/schemas/Event'
- type: object
properties:
resource_id:
$ref: '#/components/schemas/corpusId'
type:
type: string
enum:
- uploaded
- updated
- new_version_uploaded
CorpusEventCollection:
type: object
required:
- data
- meta
properties:
data:
type: array
items:
$ref: '#/components/schemas/CorpusEvent'
meta:
$ref: '#/components/schemas/CollectionMetadata'
corpusFormat:
type: string
enum:
- csv-comma
- csv-memoq
- csv-semicolon
- tmx
- tbx
- tsv
- xliff
- xliff-memoq
- xliff-memsource
- xliff-sdl
- xliff-smartcat
- xliff-translate5
- xliff-wordbee
- xliff-xtm
corpusGroupIds:
type: array
description: |
Cannot be empty.
A corpus must always be assigned to at least one group.
items:
type: integer
example: [ 1, 3 ]
corpusId:
description: Corpus ID
type: string
example: 5a0ba1267f0571.04642701
CorpusMetadata:
type: object
properties:
domain:
type: string
nullable: true
example: legal
subject:
type: string
nullable: true
example: EU treaties
client:
type: string
nullable: true
example: Very Important Client
project:
type: string
nullable: true
example: 0192 EC Project
description:
type: string
nullable: true
example: created by DGT
corpusName:
type: string
example: English to German DGT.tmx
CorpusVersion:
type: object
required:
- version
- counts
- engine_ids
- timestamps
properties:
version:
$ref: '#/components/schemas/corpusVersion'
counts:
$ref: '#/components/schemas/CorpusCounts'
engine_ids:
$ref: '#/components/schemas/CorpusVersionEngineIds'
timestamps:
$ref: '#/components/schemas/CorpusVersionTimestamps'
corpusVersion:
description: The version of the corpus
type: integer
example: 1
CorpusVersionCollection:
type: object
required:
- data
- meta
properties:
data:
type: array
items:
$ref: '#/components/schemas/CorpusVersion'
meta:
$ref: '#/components/schemas/CollectionMetadata'
CorpusVersionEngineIds:
type: object
required:
- trained
- tuned
properties:
trained:
type: array
items:
type: integer
example: [ 2, 8, 14 ]
tuned:
type: array
items:
type: integer
example: [ 2, 8, 14 ]
CorpusVersionTimestamps:
type: object
required:
- created_at
properties:
created_at:
$ref: '#/components/schemas/createdAt'
CreateCorpus:
type: object
required:
- file
- format
- group_ids[]
properties:
file:
type: object
format:
$ref: '#/components/schemas/corpusFormat'
group_ids[]:
$ref: '#/components/schemas/groupId'
source_language:
$ref: '#/components/schemas/sourceLanguage'
target_language:
$ref: '#/components/schemas/targetLanguage'
metadata[domain]:
type: string
example: legal
metadata[subject]:
type: string
example: EU treaties
metadata[client]:
type: string
example: Very Important Client
metadata[project]:
type: string
example: 0192 EC Project
metadata[description]:
type: string
example: created by DGT
CreateEngine:
type: object
required:
- name
- source_language
- target_language
- group_id
- resources
properties:
name:
type: string
example: Engine 1
source_language:
$ref: '#/components/schemas/sourceLanguage'
target_language:
$ref: '#/components/schemas/targetLanguage'
group_id:
$ref: '#/components/schemas/groupId'
resources:
$ref: '#/components/schemas/CreateEngineResources'
CreateEngineResources:
type: object
required:
- corpus_ids
properties:
corpus_ids:
$ref: '#/components/schemas/CreateEngineResourcesCorpusIds'
stock_corpora:
type: boolean
description: Whether or not to use available stock corpora for training the engine.
stock_engine_id:
$ref: '#/components/schemas/nullableStockEngineId'
CreateEngineResourcesCorpusIds:
type: object
required:
- core
properties:
core:
type: array
items:
type: string
example: [ '51fc7ea3fa889.b0027797', '54018363fa5c1.044227af' ]
auxiliary:
type: array
items:
type: string
example: [ '5b04a7263fa509.77444794', '5b0412363fa5c1.c4354792' ]
createdAt:
description: Created timestamp in ISO 8601 format
type: string
example: "2017-08-30T04:34:26+00:00"
CreateFile:
type: object
required:
- file
- format
properties:
file:
type: object
format:
$ref: '#/components/schemas/fileFormat'
CreateProject:
type: object
required:
- name
- source_language
- target_language
- group_id
properties:
name:
type: string
example: Project 1
source_language:
$ref: '#/components/schemas/sourceLanguage'
target_language:
$ref: '#/components/schemas/targetLanguage'
group_id:
$ref: '#/components/schemas/groupId'
engine_id:
$ref: '#/components/schemas/nullableEngineId'
stock_engine_id:
$ref: '#/components/schemas/nullableStockEngineId'
cat:
$ref: '#/components/schemas/CreateProjectCat'
CreateProjectCat:
type: object
required:
- server
- project
properties:
server:
$ref: '#/components/schemas/CreateProjectCatServer'
project:
$ref: '#/components/schemas/CreateProjectCatProject'
CreateProjectCatServer:
type: object
required:
- id
properties:
id:
type: integer
description: CAT tool server connection ID as stored in Globalese.
example: 2
CreateProjectCatProject:
type: object
required:
- id
properties:
id:
oneOf:
- type: integer
- type: string
description: CAT tool project ID as stored on the CAT tool server.
example: 5987c27a-da1e-4060-b08d-00aa6dbd0bba
CreateTranslationJob:
type: object
required:
- file_id
properties:
file_id:
$ref: '#/components/schemas/fileId'
dispatcherId:
description: Segment-based translation dispatcher ID
type: integer
example: 1
dispatcherRegion:
type: string
example: "europe-west1"
dispatcherUrl:
type: string
example: "https://dispatcher-europe-west1-ja6vheawuq-ew.a.run.app"
Engine:
type: object
required:
- id
- actions
- counts
- group_id
- health
- instance_ids
- name
- published
- source_language
- status
- stock_corpora
- stock_engine_id
- target_language
- uuid
- version
properties:
id:
$ref: '#/components/schemas/engineId'
actions:
$ref: '#/components/schemas/EngineActions'
counts:
$ref: '#/components/schemas/EngineCounts'
group_id:
$ref: '#/components/schemas/groupId'
health:
type: string
nullable: true
enum:
- current
- deprecated
- supported
instance_ids:
type: array
items:
$ref: '#/components/schemas/numericalId'
name:
type: string
example: Engine 1
published:
type: boolean
example: true
source_language:
$ref: '#/components/schemas/sourceLanguage'
status:
$ref: '#/components/schemas/engineStatus'
stock_corpora:
type: boolean
example: true
stock_engine_id:
$ref: '#/components/schemas/nullableStockEngineId'
target_language:
$ref: '#/components/schemas/targetLanguage'
uuid:
$ref: '#/components/schemas/uuid'
version:
type: string
nullable: true
example: 3.5.5
EngineActions:
type: object
description: An object describing the actions possible against an engine.
required:
- delete
- deploy
- train
- translate
- tune
- update
properties:
delete:
type: boolean
deploy:
type: boolean
train:
type: boolean
translate:
type: boolean
tune:
type: boolean
update:
type: boolean
EngineCollection:
type: object
required:
- data
- meta
properties:
data:
type: array
items:
$ref: '#/components/schemas/Engine'
meta:
$ref: '#/components/schemas/CollectionMetadata'
EngineCorpora:
type: object
description: An engine cannot contain more than 500 corpora in total.
required:
- core
- auxiliary
- stock
properties:
auxiliary:
type: array
items:
$ref: '#/components/schemas/EngineCorpusIdWithVersion'
core:
type: array
items:
$ref: '#/components/schemas/EngineCorpusIdWithVersion'
stock:
type: boolean
EngineCorpusIdWithVersion:
type: object
required:
- id
- version
properties:
id:
$ref: '#/components/schemas/corpusId'
version:
$ref: '#/components/schemas/corpusVersion'
EngineCounts:
type: object
required:
- corpora
properties:
corpora:
type: object
required:
- core
- auxiliary
properties:
core:
type: object
properties:
segment_count:
type: number
auxiliary:
type: object
properties:
segment_count:
type: number
EngineEvent:
allOf:
- $ref: '#/components/schemas/Event'
- type: object
properties:
error_code:
$ref: '#/components/schemas/errorCode'
resource_id:
$ref: '#/components/schemas/engineId'
type:
type: string
enum:
- created
- deleted
- instance_deployment_failed
- instance_deployment_finished
- instance_deployment_started
- instance_removal_failed
- instance_removal_finished
- instance_removal_started
- instance_removal_started_by_billing
- published
- stock_engine_removed
- training_cancelled
- training_failed
- training_finished
- training_started
- tuning_failed
- tuning_finished
- tuning_started
- unpublished
- updated
EngineEventCollection:
type: object
required:
- data
- meta
properties:
data:
type: array
items:
$ref: '#/components/schemas/EngineEvent'
meta:
$ref: '#/components/schemas/CollectionMetadata'
engineId:
description: Engine ID
type: integer
example: 10
EngineInstance:
type: object
required:
- id
- engine_id
- dispatcher_url
- status
properties:
id:
$ref: '#/components/schemas/numericalId'
engine_id:
$ref: '#/components/schemas/engineId'
dispatcher_url:
$ref: '#/components/schemas/dispatcherUrl'
status:
$ref: '#/components/schemas/engineInstanceStatus'
EngineInstanceCollection:
type: object
required:
- data
- meta
properties:
data:
type: array
items:
$ref: '#/components/schemas/EngineInstance'
meta:
$ref: '#/components/schemas/CollectionMetadata'
engineInstanceStatus:
type: string
enum:
- deploying
- error_removal_engine_manager_internal_error
- error_removal_engine_manager_rejected_request
- error_removal
- on
- queued
- removing
EngineResources:
type: object
required:
- corpora
- stock_engine
properties:
corpora:
$ref: '#/components/schemas/EngineResourcesCorpora'
stock_engine:
$ref: '#/components/schemas/StockEngine'
EngineResourcesCorpora:
type: object
required:
- current
- trained
- tuned
properties:
current:
$ref: '#/components/schemas/EngineCorpora'
trained:
$ref: '#/components/schemas/EngineCorpora'
tuned:
type: array
items:
$ref: '#/components/schemas/EngineCorpusIdWithVersion'
engineStatus:
type: string
enum:
- changed
- error
- queued
- trained
- training
- tuned
- tuning
- untrained
Error:
type: object
properties:
error:
type: string
example: "Error message."
required:
- error
errorCode:
type: integer
nullable: true
example: 104
Event:
type: object
required:
- id
- resource_id
- timestamp
- type
- user
properties:
id:
$ref: '#/components/schemas/numericalId'
timestamp:
$ref: '#/components/schemas/timestamp'
user:
$ref: '#/components/schemas/EventUser'
EventUser:
type: object
nullable: true
required:
- id
- name
properties:
id:
$ref: '#/components/schemas/userId'
name:
$ref: '#/components/schemas/userName'
File:
type: stringobject
examplerequired: "https://dispatcher-europe-west1-ja6vheawuq-ew.a.run.app"
- id
- actions
Engine: - counts
type: object - required:format
- group_id
- actionsname
- countsproject_id
- groupsource_idlanguage
- healthstatus
- instancetarget_idslanguage
- nametimestamps
properties:
- published id:
- source_language $ref: '#/components/schemas/fileId'
- status actions:
- stock_corpora $ref: '#/components/schemas/FileActions'
- stock_engine_id cat:
- target_language $ref: '#/components/schemas/FileCat'
- uuid counts:
- version properties$ref: '#/components/schemas/FileCounts'
idformat:
$ref: '#/components/schemas/engineIdfileFormat'
actionsgroup_id:
$ref: '#/components/schemas/EngineActionsgroupId'
countsname:
type: string
example: Chapter 1.xliff
project_id:
$ref: '#/components/schemas/EngineCountsprojectId'
groupsource_idlanguage:
$ref: '#/components/schemas/groupIdsourceLanguage'
healthstatus:
type$ref: string'#/components/schemas/fileStatus'
nullabletarget_language:
true enum$ref: '#/components/schemas/targetLanguage'
timestamps:
- current $ref: '#/components/schemas/FileTimestamps'
-FileActions:
deprecated type: object
- supporteddescription: An object describing the actions possible against a instance_ids:
project file.
required:
type: array - delete
items: - deliver
$ref: '#/components/schemas/numericalId'
- translate
nameproperties:
typedelete: string
exampletype: Engineboolean
1 publisheddeliver:
type: boolean
translate:
example: true source_languagetype: boolean
FileCat:
$ref: '#/components/schemas/sourceLanguage'
type: object
statusnullable: true
description: An object $ref: '#/components/schemas/engineStatus'
stock_corpora:describing the links to a CAT tool file.
required:
type: boolean - file
exampleproperties:
true stock_engine_idfile:
$ref: '#/components/schemas/nullableStockEngineIdFileCatFile'
FileCatFile:
target_language: type: object
$refrequired:
'#/components/schemas/targetLanguage' - id
uuid: - type
$ref: '#/components/schemas/uuid' - created_at
version: - updated_at
type: string - retrieved_at
nullable: true - delivered_at
exampleproperties: 3.5.5
EngineActionsid:
type: object oneOf:
- descriptiontype: integer
An object describing the actions possible against an engine. - type: string
required: example: 5678
- delete type:
- deploy - train$ref: '#/components/schemas/catToolServerType'
created_at:
- translate $ref: '#/components/schemas/timestamp'
- tune updated_at:
- update properties:$ref: '#/components/schemas/nullableTimestamp'
deleteretrieved_at:
type$ref: boolean'#/components/schemas/nullableTimestamp'
deploydelivered_at:
type$ref: boolean'#/components/schemas/nullableTimestamp'
FileCollection:
train type: object
required:
type: boolean - data
translate: - meta
typeproperties:
boolean tunedata:
type: array
boolean updateitems:
type $ref: boolean'#/components/schemas/File'
EngineCollection: meta:
type: object required:$ref: '#/components/schemas/CollectionMetadata'
FileCounts:
- data type: object
- metarequired:
properties: - total
data: - new
typeproperties:
array itemstotal:
$ref: '#/components/schemas/EngineSegmentableCounts'
metanew:
$ref: '#/components/schemas/CollectionMetadataSegmentableCounts'
EngineCorporafileFormat:
type: objectstring
descriptionenum:
An engine cannot contain more than 500 corpora in- total.xliff
required: - - corexliff-idiom
- auxiliary
- stock
properties:xliff-memoq
- auxiliary:xliff-memsource
- xliff-sap
type: array - xliff-sdl
items: - xliff-smartcat
$ref: '#/components/schemas/EngineCorpusIdWithVersion' - xliff-translate5
core: - xliff-wordbee
type: array - xliff-wordfast
items:- xliff-xtm
fileId:
$refdescription: '#/components/schemas/EngineCorpusIdWithVersion'
File ID
stocktype: string
typeexample: boolean51fc7ea3fa889.a0027797
EngineCorpusIdWithVersionfileStatus:
type: objectstring
requiredenum:
- idempty
- versionnew
properties: - queued
id: - queueing
$ref: '#/components/schemas/corpusId'
- translated
version: - translating
$refFileTimestamps:
'#/components/schemas/corpusVersion' EngineCounts: type: object
required:
- corporauploaded_at
properties: - translated_at
corporaproperties:
typeuploaded_at:
object required:
- core$ref: '#/components/schemas/timestamp'
translated_at:
- auxiliary $ref: '#/components/schemas/nullableTimestamp'
Group:
properties: type: object
corerequired:
- id
type: object - name
properties:
properties: id:
segment_count:$ref: '#/components/schemas/groupId'
name:
type: numberstring
auxiliaryexample: Default
GroupCollection:
type: object
required:
properties:- data
properties:
segment_countdata:
type: array
type: number EngineEvent:
items:
allOf: - $ref: '#/components/schemas/EventGroup'
groupId:
- type: object description: Group ID
propertiestype: integer
example: 2
error_codeJobTimestamps:
type: object
$refrequired:
'#/components/schemas/errorCode' - created_at
resource_id: - started_at
- finishing_at
$ref: '#/components/schemas/engineId' properties:
typecreated_at:
$ref: '#/components/schemas/createdAt'
type: string started_at:
enumdescription: Timestamp of when the job started in ISO 8601 format
- created type: string
nullable: true
- deleted example: "2017-08-30T04:34:26+00:00"
- instance_deployment_failedfinishing_at:
description: Timestamp of when the job - instance_deployment_finished
is estimated to finish in ISO 8601 format
- instance_deployment_startedtype: string
nullable: true
- instance_removal_failed example: "2043-11-03T07:53:10+00:00"
Language:
- instance_removal_finished
type: object
required:
- instance_removal_startedid
properties:
id:
- instance_removal_started_by_billing type: string
- published example: en-us
LanguageCollection:
- stock_engine_removedtype: object
required:
- training_cancelleddata
- meta
- training_failed properties:
data:
- training_finished type: array
- training_starteditems:
$ref: '#/components/schemas/Language'
- tuning_failed meta:
- tuning_finished$ref: '#/components/schemas/CollectionMetadata'
nullableEngineId:
description: Engine ID
- tuning_started type: integer
nullable: true
- unpublishedexample: 10
nullableStockEngineId:
description: Stock engine ID
- updated EngineEventCollectionnullable: true
type: objectinteger
requiredexample: 23
nullableTimestamp:
- data type: string
- meta nullable: true
properties: example: "2020-06-06T10:45:00+00:00"
datanumericalId:
description: ID
type: array type: integer
itemsexample: 10
Project:
$reftype: '#/components/schemas/EngineEvent'object
metarequired:
- $ref: '#/components/schemas/CollectionMetadata'id
engineId: - actions
description: Engine ID - engine_id
type: integer - example:group_id
10 EngineInstance: - name
type: object required:- source_language
- idstatus
- stock_engine_id
- dispatchertarget_urllanguage
- statustimestamps
properties:
id:
$ref: '#/components/schemas/numericalIdprojectId'
engine_idactions:
$ref: '#/components/schemas/engineIdProjectActions'
dispatcher_urlcat:
$ref: '#/components/schemas/dispatcherUrlProjectCat'
statuscounts:
$ref: '#/components/schemas/engineInstanceStatusProjectCounts'
EngineInstanceCollection engine_id:
type: object $ref: '#/components/schemas/nullableEngineId'
required: group_id:
- data $ref: - meta'#/components/schemas/groupId'
propertiesname:
data type: string
typeexample: arrayProject 1
itemssource_language:
$ref: '#/components/schemas/EngineInstancesourceLanguage'
metastatus:
$ref: '#/components/schemas/CollectionMetadataProjectStatus'
engineInstanceStatus: stock_engine_id:
type: string enum:
- deploying
- error_removal_engine_manager_internal_error
- error_removal_engine_manager_rejected_request$ref: '#/components/schemas/nullableStockEngineId'
target_language:
- error_removal - on$ref: '#/components/schemas/targetLanguage'
timestamps:
- queued - removing$ref: '#/components/schemas/ProjectTimestamps'
EngineResourcesProjectActions:
type: object
requireddescription: An object describing the actions possible against a - corporaproject.
required:
- stock_enginedelete
properties: - translate
corpora: - update
$refproperties:
'#/components/schemas/EngineResourcesCorpora' stock_enginedelete:
$reftype: '#/components/schemas/StockEngine'boolean
EngineResourcesCorpora: translate:
type: object requiredtype: boolean
- currentupdate:
- trained type: boolean
ProjectCat:
- tuned propertiestype: object
currentnullable: true
description: An object $ref: '#/components/schemas/EngineCorpora'
trained:describing the links to a CAT tool server and project.
required:
$ref: '#/components/schemas/EngineCorpora' - project
tuned: - server
type: array properties:
itemsproject:
$ref: '#/components/schemas/EngineCorpusIdWithVersionProjectCatProject'
engineStatus: server:
type: string enum$ref: '#/components/schemas/ProjectCatServer'
ProjectCatProject:
- changed type: object
- error required:
- queued
- trainedid
- trainingname
properties:
- tuned id:
- tuning oneOf:
- untrained Error: - type: object
integer
properties: error:
- type: string
example: "Error message." 849660f2-d081-4d7f-b266-f526ad073521
requiredname:
- error errorCodetype: string
type: integer nullableexample: trueMy CAT server project
example: 104
Event ProjectCatServer:
type: object
required:
- id
- resource_idname
- timestamptype
properties:
- type id:
- user propertiestype: integer
idexample: 5
name:
$ref: '#/components/schemas/numericalId' type: string
timestamp: example: My CAT $ref: '#/components/schemas/timestamp'server connection
usertype:
$ref: '#/components/schemas/EventUsercatToolServerType'
EventUserProjectCollection:
type: object
nullablerequired:
true - required:data
- idmeta
properties:
data:
- name propertiestype: array
id items:
$ref: '#/components/schemas/userIdProject'
namemeta:
$ref: '#/components/schemas/userNameCollectionMetadata'
GroupProjectCounts:
type: object
required:
- files
id properties:
- name files:
properties: idtype: number
$refexample: '#/components/schemas/groupId'5
projectId:
name: description: Project ID
type: string
integer
example: Default30
GroupCollectionprojectName:
type: objectstring
requiredexample: My Project
ProjectStatus:
- data propertiestype: string
dataenum:
- empty
type: array - new
items: - queued
$ref: '#/components/schemas/Group' - started
groupId: description:- Grouptranslated
ID type: integer- translating
ProjectTimestamps:
example: 2 Languagetype: object
type required:
object - required:created_at
- idupdated_at
properties:
idcreated_at:
type$ref: string'#/components/schemas/createdAt'
exampleupdated_at:
en-us LanguageCollection: type$ref: object'#/components/schemas/updatedAt'
requiredremoteCorpusId:
description: The -ID dataof the corpus on the CAT tool server.
- meta oneOf:
properties: - datatype: number
- type: arraystring
example: "a6fd0c40-7b5c-48bf-89c2-629417b398cd"
items: RemoteDispatcherCollection:
type: object
$ref: '#/components/schemas/Language' required:
meta: - data
$ref: '#/components/schemas/CollectionMetadata'
- meta
nullableStockEngineId: properties:
description: Stock engine ID data:
nullable: true type: integerarray
example: 23 numericalIditems:
description: ID type$ref: integer'#/components/schemas/RemoteDispatcher'
example: 10 remoteCorpusIdmeta:
description: The ID of the corpus on the CAT tool server.$ref: '#/components/schemas/CollectionMetadata'
RemoteDispatcher:
oneOftype: object
- typerequired:
number - type:id
string example: "a6fd0c40-7b5c-48bf-89c2-629417b398cd"- region
RemoteDispatcherCollection: - url
type: object - required:timestamps
properties:
- data id:
- meta properties$ref: '#/components/schemas/dispatcherId'
dataregion:
type$ref: array'#/components/schemas/dispatcherRegion'
itemsurl:
$ref: '#/components/schemas/RemoteDispatcherdispatcherUrl'
metatimestamps:
$ref: '#/components/schemas/CollectionMetadataRemoteDispatcherTimestamps'
RemoteDispatcherRemoteDispatcherTimestamps:
type: object
required:
- idcreated_at
- regionupdated_at
properties:
- url created_at:
- timestamps properties$ref: '#/components/schemas/createdAt'
idupdated_at:
$ref: '#/components/schemas/dispatcherId'updatedAt'
sourceLanguage:
description: Source language code
type: string
region: example: en-us
StockEngine:
$reftype: '#/components/schemas/dispatcherRegion'object
urlrequired:
- id
$ref: '#/components/schemas/dispatcherUrl' - source_language
timestamps: - target_language
$ref: '#/components/schemas/RemoteDispatcherTimestamps' RemoteDispatcherTimestamps: - version
type: object - timestamps
required: properties:
- created_at id:
- updated_at properties$ref: '#/components/schemas/stockEngineId'
created source_atlanguage:
$ref: '#/components/schemas/createdAtsourceLanguage'
updatedtarget_atlanguage:
$ref: '#/components/schemas/updatedAttargetLanguage'
sourceLanguage: version:
description: Source language code type: string
example: en-us 4.1.0
StockEnginetimestamps:
type: object $ref: '#/components/schemas/StockEngineTimestamps'
stockEngineId:
requireddescription: Stock engine ID
- idtype: integer
example: -5
source_language StockEngineTimestamps:
- target_language type: object
- versionrequired:
- timestampscreated_at
properties:
idcreated_at:
$ref: '#/components/schemas/stockEngineIdcreatedAt'
sourceupdated_languageat:
$ref: '#/components/schemas/sourceLanguageupdatedAt'
target_languagetargetLanguage:
$refdescription: '#/components/schemas/targetLanguage'
Target language code
versiontype: string
example: it
type: string timestamp:
description: Timestamp example: 4.1.0
in ISO 8601 format
timestampstype: string
$ref: '#/components/schemas/StockEngineTimestamps'example: "2020-06-06T10:45:00+00:00"
stockEngineIdTranslationJob:
descriptiontype: Stockobject
engine ID required:
type: integer - example:id
5 StockEngineTimestamps: - file_id
type: object required:- project_id
- created_attimestamps
properties:
created_atid:
$ref: '#/components/schemas/createdAtnumericalId'
updatedfile_atid:
$ref: '#/components/schemas/updatedAtfileId'
targetLanguage: description: Target language code
type: string
example: itproject_id:
timestamp: description: Timestamp in ISO 8601 format$ref: '#/components/schemas/projectId'
timestamps:
type: string example: "2020-06-06T10:45:00+00:00"$ref: '#/components/schemas/JobTimestamps'
UpdateCorpus:
type: object
properties:
name:
$ref: '#/components/schemas/corpusName'
group_ids:
$ref: '#/components/schemas/corpusGroupIds'
metadata:
$ref: '#/components/schemas/CorpusMetadata'
UpdateCorpusContent:
type: object
required:
- file
properties:
file:
type: object
updatedAt:
description: Updated timestamp in ISO 8601 format
type: string
nullable: true
example: "2017-08-30T04:34:26+00:00"
UpdateProject:
type: object
properties:
name:
$ref: '#/components/schemas/projectName'
engine_id:
$ref: '#/components/schemas/nullableEngineId'
stock_engine_id:
$ref: '#/components/schemas/nullableStockEngineId'
UpdateEngine:
type: object
properties:
name:
type: string
example: Engine 1
published:
type: boolean
example: true
resources:
$ref: '#/components/schemas/UpdateEngineResources'
UpdateEngineResources:
type: object
properties:
corpus_ids:
$ref: '#/components/schemas/UpdateEngineResourcesCorpusIds'
stock_corpora:
type: boolean
description: Whether or not to use available stock corpora for training the engine.
UpdateEngineResourcesCorpusIds:
type: object
properties:
core:
type: array
items:
type: string
example: [ '51fc7ea3fa889.b0027797', '54018363fa5c1.044227af' ]
auxiliary:
type: array
items:
type: string
example: [ '5b04a7263fa509.77444794', '5b0412363fa5c1.c4354792' ]
userId:
type: integer
example: 5
userName:
type: string
example: John Doe
uuid:
type: string
example: "21cfda50-1944-46fc-901c-04a168ea6fee"
|