From fc619e73b07610401f12e5504f25b6d5b5760b86 Mon Sep 17 00:00:00 2001 From: vblajan Date: Fri, 8 May 2026 00:56:42 +0300 Subject: [PATCH 01/37] Adding endpoints for package operations and filtering --- articles/LCPublicAPI/api/Public-API.v1.json | 880 ++++++++++++++++++-- 1 file changed, 815 insertions(+), 65 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index fbb31b0..45bcbf4 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -65,10 +65,18 @@ "name": "Machine Translation", "description": "Machine Translation" }, + { + "name": "Packages", + "description": "Packages" + }, { "name": "PerfectMatch Mapping", "description": "PerfectMatch Mapping" }, + { + "name": "Preference", + "description": "Preference" + }, { "name": "Pricing Model", "description": "Pricing Model" @@ -2269,6 +2277,118 @@ ] } }, + "/files/download/{id}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "fileId", + "in": "path", + "required": true, + "description": "The file id" + } + ], + "get": { + "tags": [ + "File" + ], + "summary": "Download the file at the given Id", + "parameters": [ + { + "$ref": "#/components/parameters/Authorization" + }, + { + "$ref": "#/components/parameters/X-LC-Tenant" + } + ], + "responses": { + "200": { + "description": "", + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "format": "byte", + "properties": { + "file": { + "type": "string", + "format": "binary", + "description": "The .zip file to be downloaded (binary string). " + } + } + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "400": { + "description": "Error codes:\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "401": { + "description": "The user could not be identified.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "403": { + "description": "Error codes:\n* \"forbidden\": the authenticated user is not allowed to download the file.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "404": { + "description": "Error codes:\n* \"notFound\": the File could not be found by identifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + } + } + } + }, "/folders/{folderId}": { "get": { "tags": [ @@ -4281,15 +4401,425 @@ "summary": "Get PerfectMatch Candidates", "description": "Retrieves a list of file candidates that can be selected for PerfectMatch.", "tags": [ - "PerfectMatch Mapping" + "PerfectMatch Mapping" + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/list-perfect-match-candidates-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "400": { + "description": "Error codes: \r\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "401": { + "description": "The user could not be identified.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "403": { + "description": "Error codes: \r\n* \"forbidden\": the authenticated user is not allowed to read the resource.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "404": { + "description": "Error codes:\r\n* \"notFound\": the resource could not be found by identifier.", + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + }, + "content": { + "application/json": { + "schema": { + "type": "object", + "$ref": "#/components/schemas/error-response" + } + } + } + } + }, + "operationId": "GetPerfectMatchCandidates", + "parameters": [ + { + "$ref": "#/components/parameters/Authorization" + }, + { + "$ref": "#/components/parameters/X-LC-Tenant" + }, + { + "$ref": "#/components/parameters/fields" + } + ] + } + }, + "/machine-translation": { + "parameters": [], + "get": { + "summary": "List Machine Translations", + "operationId": "ListMachineTranslations", + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/list-machine-translations-response" + } + } + } + }, + "400": { + "description": "Error codes:\n* \"invalid\": Invalid input in the query parameter mentioned in the \"name\" field on the error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "401": { + "description": "The user could not be identified.", + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + } + } + }, + "description": "Retrieves a list of machine translations that can be used in a translation engine.", + "parameters": [ + { + "$ref": "#/components/parameters/Authorization" + }, + { + "$ref": "#/components/parameters/X-LC-Tenant" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "sourceLanguage", + "required": true, + "description": "Language code expressed as generic language (example: \"en\") or specific language (example: \"en-US\")" + }, + { + "schema": { + "type": "array", + "items": { + "type": "string" + } + }, + "in": "query", + "name": "targetLanguage", + "required": true, + "description": "List of language codes separated by comma, values can be generic language code or specific language code." + } + ], + "tags": [ + "Machine Translation" + ] + } + }, + "/packages/export": { + "post": { + "summary": "Export tasks in packages", + "tags": [ + "Packages" + ], + "description": "", + "parameters": [ + { + "$ref": "#/components/parameters/Authorization" + }, + { + "$ref": "#/components/parameters/X-LC-Tenant" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/package-export-request" + } + } + } + }, + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "taskId": { + "type": "string", + "description": "The id of the export task created, used to check on its status. " + } + } + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "400": { + "description": "Error codes:\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "401": { + "description": "The user could not be identified.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "403": { + "description": "Error codes:\n* \"forbidden\": the authenticated user is not allowed to export the package.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "404": { + "description": "Error codes:\n* \"notFound\": the Task could not be found by identifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + } + } + } + }, + "/packages/export/{taskId}": { + "get": { + "summary": "Get status of the export", + "tags": [ + "Packages" + ], + "description": "", + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "taskId", + "in": "path", + "required": true, + "description": "The export task identifier." + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/package-export-status-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "400": { + "description": "Error codes:\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "401": { + "description": "The user could not be identified.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "403": { + "description": "Error codes:\n* \"forbidden\": the authenticated user is not allowed to view task.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "404": { + "description": "Error codes:\n* \"notFound\": the Task could not be found by identifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + } + } + } + }, + "/packages/import": { + "post": { + "summary": "Import tasks in packages", + "tags": [ + "Packages" ], + "description": "", + "parameters": [ + { + "$ref": "#/components/parameters/Authorization" + }, + { + "$ref": "#/components/parameters/X-LC-Tenant" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/package-import-request" + } + } + } + }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/list-perfect-match-candidates-response" + "type": "object", + "properties": { + "taskId": { + "type": "string", + "description": "The id of the export task created, used to check on its status. " + } + } } } }, @@ -4300,7 +4830,7 @@ } }, "400": { - "description": "Error codes: \r\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", + "description": "Error codes:\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", "content": { "application/json": { "schema": { @@ -4330,7 +4860,7 @@ } }, "403": { - "description": "Error codes: \r\n* \"forbidden\": the authenticated user is not allowed to read the resource.", + "description": "Error codes:\n* \"forbidden\": the authenticated user is not allowed to import a package.", "content": { "application/json": { "schema": { @@ -4345,54 +4875,153 @@ } }, "404": { - "description": "Error codes:\r\n* \"notFound\": the resource could not be found by identifier.", - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - }, + "description": "Error codes:\n* \"notFound\": the Package could not be found by identifier.", "content": { "application/json": { "schema": { - "type": "object", "$ref": "#/components/schemas/error-response" } } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } } } - }, - "operationId": "GetPerfectMatchCandidates", + } + } + }, + "/packages/import/{taskId}": { + "get": { + "summary": "Get status of the import", + "tags": [ + "Packages" + ], + "description": "", "parameters": [ { - "$ref": "#/components/parameters/Authorization" + "schema": { + "type": "string" + }, + "name": "taskId", + "in": "path", + "required": true, + "description": "The export task identifier." + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/package-import-status-response" + } + } }, - { - "$ref": "#/components/parameters/X-LC-Tenant" + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "400": { + "description": "Error codes:\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } }, - { - "$ref": "#/components/parameters/fields" + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } } - ] + }, + "401": { + "description": "The user could not be identified.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "403": { + "description": "Error codes:\n* \"forbidden\": the authenticated user is not allowed to view the task.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "404": { + "description": "Error codes:\n* \"notFound\": the Task could not be found by identifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + } } + } }, - "/machine-translation": { - "parameters": [], + "/preference/getFilters": { "get": { - "summary": "List Machine Translations", - "operationId": "ListMachineTranslations", + "summary": "Get Filters", + "tags": [ + "Preference" + ], + "description": "", + "parameters": [ + { + "$ref": "#/components/parameters/Authorization" + }, + { + "$ref": "#/components/parameters/X-LC-Tenant" + } + ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/list-machine-translations-response" + "$ref": "#/components/schemas/translation-memories-filters" } } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } } }, "400": { - "description": "Error codes:\n* \"invalid\": Invalid input in the query parameter mentioned in the \"name\" field on the error response.", + "description": "Error codes:\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", "content": { "application/json": { "schema": { @@ -4408,53 +5037,20 @@ }, "401": { "description": "The user could not be identified.", - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/error-response" } } - } - } - }, - "description": "Retrieves a list of machine translations that can be used in a translation engine.", - "parameters": [ - { - "$ref": "#/components/parameters/Authorization" - }, - { - "$ref": "#/components/parameters/X-LC-Tenant" - }, - { - "schema": { - "type": "string" }, - "in": "query", - "name": "sourceLanguage", - "required": true, - "description": "Language code expressed as generic language (example: \"en\") or specific language (example: \"en-US\")" - }, - { - "schema": { - "type": "array", - "items": { - "type": "string" + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" } - }, - "in": "query", - "name": "targetLanguage", - "required": true, - "description": "List of language codes separated by comma, values can be generic language code or specific language code." + } } - ], - "tags": [ - "Machine Translation" - ] + } } }, "/pricing-models": { @@ -17495,7 +18091,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/list-translation-memories-reposne" + "$ref": "#/components/schemas/list-translation-memories-response" } } }, @@ -22940,7 +23536,7 @@ ], "description": "A response for the List Translation Engines endpoint." }, - "list-translation-memories-reposne": { + "list-translation-memories-response": { "title": "List Translation Memories Response", "type": "object", "properties": { @@ -23015,6 +23611,32 @@ } } }, + "translation-memories-filters": { + "title": "Translation Memories Filters", + "type": "object", + "properties": { + "tmFilters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/translation-memories-filter" + } + } + } + }, + "translation-memories-filter": { + "title": "Translation Memories Filter", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the filter" + }, + "filterExpression": { + "type": "string", + "description": "Actual expression, you should be using at Translation Memories Import/Export" + } + } + }, "list-users-response": { "title": "List Users Response", "type": "object", @@ -23770,6 +24392,128 @@ } } }, + "package-export-request": { + "title": "Package Export Request", + "type": "object", + "required": [ + "projectId", + "taskIds" + ], + "properties": { + "projectId": { + "type": "string", + "description": "The Id of the project" + }, + "taskIds": { + "type": "array", + "description": "The Ids of the tasks being exported", + "items": { + "type": "string" + } + }, + "includeTB": { + "type": "boolean", + "description": "Set true to include Termbases" + }, + "onlinePackage": { + "type": "boolean", + "description": "Set true for online Termbases and false for offline Termbases. Only relevant if \"includeTB\" is true" + }, + "includeTM": { + "type": "boolean", + "description": "Set true to include Translation Memories" + }, + "includeReferenceFiles": { + "type": "boolean", + "description": "Set true to include Reference Files" + }, + "splitByLanguage": { + "type": "boolean", + "description": "Set true if you want the packages split by language" + }, + "filesPerPackage": { + "type": "integer", + "description": "Number of files per package. Only usable if \"splitByLanguage\" is set to false" + } + } + }, + "package-export-status-response": { + "title": "Package Export Status Response", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The id of the export task" + }, + "status": { + "type": "string", + "description": "The status of the export task", + "export": [ + "Queued", + "InProgress", + "Done", + "Failed" + ] + }, + "projectId": { + "type": "string", + "description": "The id of the project" + }, + "taskIds": { + "type": "array", + "description": "Ids for the tasks being exported", + "items": { + "type": "string" + } + }, + "packageFileId": { + "type": "string", + "description": "The id for the package, use this to download the file" + }, + "expiresAtUtc": { + "type": "string", + "description": "Timestamp of the expiration date, UTC timezone" + } + } + }, + "package-import-request": { + "title": "Package Export Request", + "type": "object", + "required": [ + "projectId", + "taskIds" + ], + "properties": { + "packageFileId": { + "type": "string", + "description": "The Id of the file uploaded for import" + } + } + }, + "package-import-status-response": { + "title": "Package Import Status Response", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The id of the export task" + }, + "status": { + "type": "string", + "description": "The status of the export task", + "export": [ + "Queued", + "InProgress", + "Done", + "Failed" + ] + }, + "packageFileId": { + "string": "string", + "description": "The id for the package" + } + } + }, "pricing-model-create-request": { "title": "Pricing Model Create Request", "type": "object", @@ -31032,6 +31776,9 @@ "rejectedSignOff" ] } + }, + "filterExpression": { + "type": "string" } }, "required": [ @@ -31298,6 +32045,9 @@ "properties": { "languageDirection": { "$ref": "#/components/schemas/translation-memory-export-language-direction" + }, + "filterExpression": { + "type": "string" } }, "required": [ From 27d6022f4bf532fd696d15db9e561b7bd2e955d8 Mon Sep 17 00:00:00 2001 From: vblajan Date: Fri, 8 May 2026 09:51:30 +0300 Subject: [PATCH 02/37] Renamed endpoint summary --- articles/LCPublicAPI/api/Public-API.v1.json | 22 ++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 45bcbf4..696f29a 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -73,10 +73,6 @@ "name": "PerfectMatch Mapping", "description": "PerfectMatch Mapping" }, - { - "name": "Preference", - "description": "Preference" - }, { "name": "Pricing Model", "description": "Pricing Model" @@ -113,6 +109,10 @@ "name": "Schedule Template", "description": "Schedule Template" }, + { + "name": "Settings", + "description": "Settings" + }, { "name": "Source File", "description": "Source File" @@ -2293,7 +2293,7 @@ "tags": [ "File" ], - "summary": "Download the file at the given Id", + "summary": "Download File", "parameters": [ { "$ref": "#/components/parameters/Authorization" @@ -4579,7 +4579,7 @@ }, "/packages/export": { "post": { - "summary": "Export tasks in packages", + "summary": "Export Tasks", "tags": [ "Packages" ], @@ -4688,7 +4688,7 @@ }, "/packages/export/{taskId}": { "get": { - "summary": "Get status of the export", + "summary": "Get Export Status", "tags": [ "Packages" ], @@ -4785,7 +4785,7 @@ }, "/packages/import": { "post": { - "summary": "Import tasks in packages", + "summary": "Import Tasks", "tags": [ "Packages" ], @@ -4894,7 +4894,7 @@ }, "/packages/import/{taskId}": { "get": { - "summary": "Get status of the import", + "summary": "Get Import Status", "tags": [ "Packages" ], @@ -4989,11 +4989,11 @@ } } }, - "/preference/getFilters": { + "/settings/getFilters": { "get": { "summary": "Get Filters", "tags": [ - "Preference" + "Settings" ], "description": "", "parameters": [ From 2cbbb95ca15c56a5eced60cd3439ab4e581cc8be Mon Sep 17 00:00:00 2001 From: vblajan Date: Fri, 22 May 2026 09:41:19 +0300 Subject: [PATCH 03/37] added description and examples to filterExpressions --- articles/LCPublicAPI/api/Public-API.v1.json | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 696f29a..af342a7 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -31778,7 +31778,9 @@ } }, "filterExpression": { - "type": "string" + "type": "string", + "description": "The filter expression is a set of atomic expressions connected by logical operators. An atomic expression describes the relationship of a field to a value.", + "example": "!(\"usd\" <= \"2026-05-22T06:00:00.425Z\") & (\"usc\" = 1) & (\"src\" @ \"fish\")" } }, "required": [ @@ -32047,7 +32049,9 @@ "$ref": "#/components/schemas/translation-memory-export-language-direction" }, "filterExpression": { - "type": "string" + "type": "string", + "description": "The filter expression is a set of atomic expressions connected by logical operators. An atomic expression describes the relationship of a field to a value.", + "example": "!(\"usd\" <= \"2026-05-22T06:00:00.425Z\") & (\"usc\" = 1) & (\"src\" @ \"fish\")" } }, "required": [ From d6bf2aefb02aee695a7f80e612521e56aefec2a4 Mon Sep 17 00:00:00 2001 From: vblajan Date: Tue, 2 Jun 2026 13:55:56 +0300 Subject: [PATCH 04/37] updated list filters response --- articles/LCPublicAPI/api/Public-API.v1.json | 146 ++++++++++---------- 1 file changed, 75 insertions(+), 71 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index af342a7..1b200f1 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -109,10 +109,6 @@ "name": "Schedule Template", "description": "Schedule Template" }, - { - "name": "Settings", - "description": "Settings" - }, { "name": "Source File", "description": "Source File" @@ -4989,70 +4985,6 @@ } } }, - "/settings/getFilters": { - "get": { - "summary": "Get Filters", - "tags": [ - "Settings" - ], - "description": "", - "parameters": [ - { - "$ref": "#/components/parameters/Authorization" - }, - { - "$ref": "#/components/parameters/X-LC-Tenant" - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/translation-memories-filters" - } - } - }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - }, - "400": { - "description": "Error codes:\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" - } - } - }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - }, - "401": { - "description": "The user could not be identified.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" - } - } - }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - } - } - } - }, "/pricing-models": { "get": { "tags": [ @@ -19161,6 +19093,70 @@ ] } }, + "/translation-memory/filters": { + "get": { + "summary": "List Filters", + "tags": [ + "Translation Memory Export" + ], + "description": "", + "parameters": [ + { + "$ref": "#/components/parameters/Authorization" + }, + { + "$ref": "#/components/parameters/X-LC-Tenant" + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/translation-memories-filters" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "400": { + "description": "Error codes:\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "401": { + "description": "The user could not be identified.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + } + } + } + }, "/translations/lookup": { "post": { "summary": "Lookup", @@ -23612,16 +23608,24 @@ } }, "translation-memories-filters": { - "title": "Translation Memories Filters", + "title": "List Translation Memories Filters", "type": "object", "properties": { - "tmFilters": { + "itemCount": { + "type": "integer" + }, + "items": { "type": "array", "items": { "$ref": "#/components/schemas/translation-memories-filter" } } - } + }, + "required": [ + "itemCount", + "items" + ], + "description": "A response for the List Translation Memories endpoint." }, "translation-memories-filter": { "title": "Translation Memories Filter", From 43fa6c31bf7d499e75bf5b652c8ca15247d3fef7 Mon Sep 17 00:00:00 2001 From: vblajan Date: Wed, 3 Jun 2026 01:00:47 +0300 Subject: [PATCH 05/37] updating filter expression usage --- articles/LCPublicAPI/api/Public-API.v1.json | 101 +++----------------- 1 file changed, 11 insertions(+), 90 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 1b200f1..756f070 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -19093,70 +19093,6 @@ ] } }, - "/translation-memory/filters": { - "get": { - "summary": "List Filters", - "tags": [ - "Translation Memory Export" - ], - "description": "", - "parameters": [ - { - "$ref": "#/components/parameters/Authorization" - }, - { - "$ref": "#/components/parameters/X-LC-Tenant" - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/translation-memories-filters" - } - } - }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - }, - "400": { - "description": "Error codes:\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" - } - } - }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - }, - "401": { - "description": "The user could not be identified.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" - } - } - }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - } - } - } - }, "/translations/lookup": { "post": { "summary": "Lookup", @@ -23607,26 +23543,6 @@ } } }, - "translation-memories-filters": { - "title": "List Translation Memories Filters", - "type": "object", - "properties": { - "itemCount": { - "type": "integer" - }, - "items": { - "type": "array", - "items": { - "$ref": "#/components/schemas/translation-memories-filter" - } - } - }, - "required": [ - "itemCount", - "items" - ], - "description": "A response for the List Translation Memories endpoint." - }, "translation-memories-filter": { "title": "Translation Memories Filter", "type": "object", @@ -23637,7 +23553,8 @@ }, "filterExpression": { "type": "string", - "description": "Actual expression, you should be using at Translation Memories Import/Export" + "example": "(NOT \"TU confirmation level\" = \"Not Translated\" OR \"Last modified on\" > 2024-02-29T10:00:00.000Z\") AND \"Source segment length\" >= 10", + "description": "The filter expression is a set of atomic expressions connected by logical operators. An atomic expression describes the relationship of a field to a value." } } }, @@ -31456,6 +31373,12 @@ "example": "2022-01-12T12:00:00Z", "description": "The `DateTime` when the translation memory reindexing was performed.
UTC Timezone
Allowed formats:
\"YYYY-MM-DDThh:mmZ\"
\"YYYY-MM-DDThh:mm:ssZ\"
\"YYYY-MM-DDThh:mm:ss.sZ\"
\"YYYY-MM-DDThh:mm:ss.ssZ\"
\"YYYY-MM-DDThh:mm:ss.sss", "nullable": true + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/translation-memories-filter" + } } }, "required": [ @@ -31781,10 +31704,9 @@ ] } }, - "filterExpression": { + "filterExpressionName": { "type": "string", - "description": "The filter expression is a set of atomic expressions connected by logical operators. An atomic expression describes the relationship of a field to a value.", - "example": "!(\"usd\" <= \"2026-05-22T06:00:00.425Z\") & (\"usc\" = 1) & (\"src\" @ \"fish\")" + "description": "The name of the filter expression." } }, "required": [ @@ -32054,8 +31976,7 @@ }, "filterExpression": { "type": "string", - "description": "The filter expression is a set of atomic expressions connected by logical operators. An atomic expression describes the relationship of a field to a value.", - "example": "!(\"usd\" <= \"2026-05-22T06:00:00.425Z\") & (\"usc\" = 1) & (\"src\" @ \"fish\")" + "description": "The name of the filter expression." } }, "required": [ From d6504d040d56661f6eefbc2c2982b238f5431da4 Mon Sep 17 00:00:00 2001 From: vblajan Date: Wed, 3 Jun 2026 14:43:21 +0300 Subject: [PATCH 06/37] updating filter expression naming --- articles/LCPublicAPI/api/Public-API.v1.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 756f070..8b6e73e 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -23549,7 +23549,7 @@ "properties": { "name": { "type": "string", - "description": "Name of the filter" + "description": "The name of the filter, this should be used in the import/export TM request" }, "filterExpression": { "type": "string", @@ -31704,7 +31704,7 @@ ] } }, - "filterExpressionName": { + "filterName": { "type": "string", "description": "The name of the filter expression." } @@ -31974,7 +31974,7 @@ "languageDirection": { "$ref": "#/components/schemas/translation-memory-export-language-direction" }, - "filterExpression": { + "filterName": { "type": "string", "description": "The name of the filter expression." } From 2bb793dd9a4d60e587785c8dfe8ebc8036a70ba2 Mon Sep 17 00:00:00 2001 From: vblajan Date: Wed, 3 Jun 2026 15:58:47 +0300 Subject: [PATCH 07/37] linked updated TM advanced config and linked to filter expression related docs --- articles/LCPublicAPI/api/Public-API.v1.json | 6 +++--- .../Translation-memory-advanced-configuration.md | 6 ++++++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 8b6e73e..2b6758b 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -23554,7 +23554,7 @@ "filterExpression": { "type": "string", "example": "(NOT \"TU confirmation level\" = \"Not Translated\" OR \"Last modified on\" > 2024-02-29T10:00:00.000Z\") AND \"Source segment length\" >= 10", - "description": "The filter expression is a set of atomic expressions connected by logical operators. An atomic expression describes the relationship of a field to a value." + "description": "The filter expression is a set of atomic expressions connected by logical operators. An atomic expression describes the relationship of a field to a value. Check the [advanced configuration documentation](../docs/translation-memory/Translation-memory-advanced-configuration) for more information." } } }, @@ -31706,7 +31706,7 @@ }, "filterName": { "type": "string", - "description": "The name of the filter expression." + "description": "The name of the filter expression you want to apply, it's available in the response body of [GET](Public-API.v1-fv.html#/operations/GetTranslationMemory) and [LIST](Public-API.v1-fv.html#/operations/ListTranslationMemories) TM" } }, "required": [ @@ -31976,7 +31976,7 @@ }, "filterName": { "type": "string", - "description": "The name of the filter expression." + "description": "The name of the filter expression you want to apply, it's available in the response body of [GET](Public-API.v1-fv.html#/operations/GetTranslationMemory) and [LIST](Public-API.v1-fv.html#/operations/ListTranslationMemories) TM" } }, "required": [ diff --git a/articles/LCPublicAPI/docs/translation-memory/Translation-memory-advanced-configuration.md b/articles/LCPublicAPI/docs/translation-memory/Translation-memory-advanced-configuration.md index ee19c96..3fa3017 100644 --- a/articles/LCPublicAPI/docs/translation-memory/Translation-memory-advanced-configuration.md +++ b/articles/LCPublicAPI/docs/translation-memory/Translation-memory-advanced-configuration.md @@ -16,6 +16,12 @@ Project template endpoints: - [Get Project Template](../../api/Public-API.v1-fv.html#/operations/GetProjectTemplate) - Retrieve project template details, including Translation Memory settings - [Update Project Template](../../api/Public-API.v1-fv.html#/operations/UpdateProjectTemplate) - Update project template configuration, including Translation Memory settings +Translation Memory Import endpoint: +- [Import Translation Memory](../../api/Public-API.v1-fv.html#/operations/ImportTranslationMemory) - Import TUs from a file, with optional filter criteria + +Translation Memory Export endpoint: +- [Export Translation Memory](../../api/Public-API.v1-fv.html#/operations/ExportTranslationMemory) - Export TUs matching specified filter criteria + ## Translation Memory filters Translation Memory filters let you apply complex criteria during TM operations. Filters can reference system and custom fields, and support multiple data types and operators. From b2ea40be92e3bb02d4454cc2f3cc62cd8be85d6d Mon Sep 17 00:00:00 2001 From: vblajan Date: Thu, 4 Jun 2026 00:57:00 +0300 Subject: [PATCH 08/37] removing List TM from description --- articles/LCPublicAPI/api/Public-API.v1.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 2b6758b..3ca4ad6 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -31706,7 +31706,7 @@ }, "filterName": { "type": "string", - "description": "The name of the filter expression you want to apply, it's available in the response body of [GET](Public-API.v1-fv.html#/operations/GetTranslationMemory) and [LIST](Public-API.v1-fv.html#/operations/ListTranslationMemories) TM" + "description": "The name of the filter expression you want to apply, it's available in the response body of [GET](Public-API.v1-fv.html#/operations/GetTranslationMemory)" } }, "required": [ @@ -31976,7 +31976,7 @@ }, "filterName": { "type": "string", - "description": "The name of the filter expression you want to apply, it's available in the response body of [GET](Public-API.v1-fv.html#/operations/GetTranslationMemory) and [LIST](Public-API.v1-fv.html#/operations/ListTranslationMemories) TM" + "description": "The name of the filter expression you want to apply, it's available in the response body of [GET](Public-API.v1-fv.html#/operations/GetTranslationMemory" } }, "required": [ From 8bf3371f49e9611ac4ad9374d5fe1c01d9d69432 Mon Sep 17 00:00:00 2001 From: vblajan Date: Fri, 19 Jun 2026 09:52:26 +0300 Subject: [PATCH 09/37] fixing url --- articles/LCPublicAPI/api/Public-API.v1.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 3ca4ad6..29806e3 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -31976,7 +31976,7 @@ }, "filterName": { "type": "string", - "description": "The name of the filter expression you want to apply, it's available in the response body of [GET](Public-API.v1-fv.html#/operations/GetTranslationMemory" + "description": "The name of the filter expression you want to apply, it's available in the response body of [GET](Public-API.v1-fv.html#/operations/GetTranslationMemory)" } }, "required": [ From f329923a279557978d2e5439508c7e21fe913c29 Mon Sep 17 00:00:00 2001 From: vblajan Date: Mon, 22 Jun 2026 14:34:05 +0300 Subject: [PATCH 10/37] updating packages endpoints --- articles/LCPublicAPI/api/Public-API.v1.json | 146 +++----------------- 1 file changed, 16 insertions(+), 130 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 29806e3..2558edf 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -2273,118 +2273,6 @@ ] } }, - "/files/download/{id}": { - "parameters": [ - { - "schema": { - "type": "string" - }, - "name": "fileId", - "in": "path", - "required": true, - "description": "The file id" - } - ], - "get": { - "tags": [ - "File" - ], - "summary": "Download File", - "parameters": [ - { - "$ref": "#/components/parameters/Authorization" - }, - { - "$ref": "#/components/parameters/X-LC-Tenant" - } - ], - "responses": { - "200": { - "description": "", - "content": { - "multipart/form-data": { - "schema": { - "type": "object", - "format": "byte", - "properties": { - "file": { - "type": "string", - "format": "binary", - "description": "The .zip file to be downloaded (binary string). " - } - } - } - } - }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - }, - "400": { - "description": "Error codes:\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" - } - } - }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - }, - "401": { - "description": "The user could not be identified.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" - } - } - }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - }, - "403": { - "description": "Error codes:\n* \"forbidden\": the authenticated user is not allowed to download the file.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" - } - } - }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - }, - "404": { - "description": "Error codes:\n* \"notFound\": the File could not be found by identifier.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" - } - } - }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - } - } - } - }, "/folders/{folderId}": { "get": { "tags": [ @@ -4575,7 +4463,7 @@ }, "/packages/export": { "post": { - "summary": "Export Tasks", + "summary": "Export Package", "tags": [ "Packages" ], @@ -4684,7 +4572,7 @@ }, "/packages/export/{taskId}": { "get": { - "summary": "Get Export Status", + "summary": "Poll Export Package", "tags": [ "Packages" ], @@ -4781,7 +4669,7 @@ }, "/packages/import": { "post": { - "summary": "Import Tasks", + "summary": "Import Package", "tags": [ "Packages" ], @@ -4890,7 +4778,7 @@ }, "/packages/import/{taskId}": { "get": { - "summary": "Get Import Status", + "summary": "Poll Import Package", "tags": [ "Packages" ], @@ -24387,10 +24275,6 @@ "type": "string" } }, - "packageFileId": { - "type": "string", - "description": "The id for the package, use this to download the file" - }, "expiresAtUtc": { "type": "string", "description": "Timestamp of the expiration date, UTC timezone" @@ -24398,16 +24282,16 @@ } }, "package-import-request": { - "title": "Package Export Request", + "title": "Package Import Request", "type": "object", "required": [ - "projectId", - "taskIds" + "file" ], "properties": { - "packageFileId": { + "file": { "type": "string", - "description": "The Id of the file uploaded for import" + "format": "binary", + "description": "The file to be uploaded (binary string). " } } }, @@ -24417,11 +24301,11 @@ "properties": { "id": { "type": "string", - "description": "The id of the export task" + "description": "The id of the import task" }, "status": { "type": "string", - "description": "The status of the export task", + "description": "The status of the import task", "export": [ "Queued", "InProgress", @@ -24429,9 +24313,11 @@ "Failed" ] }, - "packageFileId": { - "string": "string", - "description": "The id for the package" + "createdAt": { + "type": "string", + "example": "2022-01-12T12:00:00Z", + "description": "The task''s creation date and time in UTC time zone.", + "format": "date-time" } } }, From dde35f8eb1826fdc7a2f8e4916e0c34f05e18803 Mon Sep 17 00:00:00 2001 From: vblajan Date: Mon, 22 Jun 2026 14:39:46 +0300 Subject: [PATCH 11/37] adding download exported files --- articles/LCPublicAPI/api/Public-API.v1.json | 90 +++++++++++++++++++++ 1 file changed, 90 insertions(+) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 2558edf..5606f43 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -4667,6 +4667,96 @@ } } }, + "/packages/export/download/{taskId}": { + "get": { + "summary": "Download Exported Packages", + "tags": [ + "Packages" + ], + "description": "", + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "taskId", + "in": "path", + "required": true, + "description": "The export task identifier." + } + ], + "responses": { + "200": { + "description": "OK", + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "400": { + "description": "Error codes:\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "401": { + "description": "The user could not be identified.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "403": { + "description": "Error codes:\n* \"forbidden\": the authenticated user is not allowed to view task.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "404": { + "description": "Error codes:\n* \"notFound\": the Task could not be found by identifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + } + } + } + }, "/packages/import": { "post": { "summary": "Import Package", From e87fbcb4560df55beb004565820b84cd13f6f68d Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Thu, 2 Jul 2026 05:19:40 +0300 Subject: [PATCH 12/37] package changes after refinement --- articles/LCPublicAPI/api/Public-API.v1.json | 36 +++++++++------------ 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 5606f43..6db03e0 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -4493,7 +4493,7 @@ "schema": { "type": "object", "properties": { - "taskId": { + "exportId": { "type": "string", "description": "The id of the export task created, used to check on its status. " } @@ -4582,7 +4582,7 @@ "schema": { "type": "string" }, - "name": "taskId", + "name": "exportId", "in": "path", "required": true, "description": "The export task identifier." @@ -4679,7 +4679,7 @@ "schema": { "type": "string" }, - "name": "taskId", + "name": "exportId", "in": "path", "required": true, "description": "The export task identifier." @@ -4789,7 +4789,7 @@ "schema": { "type": "object", "properties": { - "taskId": { + "importId": { "type": "string", "description": "The id of the export task created, used to check on its status. " } @@ -4878,7 +4878,7 @@ "schema": { "type": "string" }, - "name": "taskId", + "name": "importId", "in": "path", "required": true, "description": "The export task identifier." @@ -24310,29 +24310,31 @@ "type": "string" } }, - "includeTB": { - "type": "boolean", - "description": "Set true to include Termbases" - }, "onlinePackage": { "type": "boolean", - "description": "Set true for online Termbases and false for offline Termbases. Only relevant if \"includeTB\" is true" + "description": "Set true for online Termbases and false for offline Termbases. If null it will not include termbases", + "default": false, + "nullable": true }, "includeTM": { "type": "boolean", - "description": "Set true to include Translation Memories" + "description": "Set true to include Translation Memories", + "default": true }, "includeReferenceFiles": { "type": "boolean", - "description": "Set true to include Reference Files" + "description": "Set true to include Reference Files", + "default": true }, "splitByLanguage": { "type": "boolean", - "description": "Set true if you want the packages split by language" + "description": "Set true if you want the packages split by language", + "default": false }, "filesPerPackage": { "type": "integer", - "description": "Number of files per package. Only usable if \"splitByLanguage\" is set to false" + "description": "Number of files per package. Only usable if \"splitByLanguage\" is set to false", + "default": 1 } } }, @@ -24402,12 +24404,6 @@ "Done", "Failed" ] - }, - "createdAt": { - "type": "string", - "example": "2022-01-12T12:00:00Z", - "description": "The task''s creation date and time in UTC time zone.", - "format": "date-time" } } }, From de1b9398e18d3569b5f228c9a956bef08a893685 Mon Sep 17 00:00:00 2001 From: ldavidsdl <141138976+ldavidsdl@users.noreply.github.com> Date: Fri, 10 Jul 2026 15:05:44 +0300 Subject: [PATCH 13/37] Add Authorization and Tenant parameters to API endpoints --- articles/LCPublicAPI/api/Public-API.v1.json | 39 ++++++++++++++++++--- 1 file changed, 35 insertions(+), 4 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 15b3306..82add3e 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -6917,7 +6917,15 @@ } } } - } + }, + "parameters": [ + { + "$ref": "#/components/parameters/Authorization" + }, + { + "$ref": "#/components/parameters/X-LC-Tenant" + } + ] } }, "/projects/{projectId}/source-files/attach-files": { @@ -7226,7 +7234,14 @@ } } }, - "parameters": [] + "parameters": [ + { + "$ref": "#/components/parameters/Authorization" + }, + { + "$ref": "#/components/parameters/X-LC-Tenant" + } + ] }, "parameters": [ { @@ -8004,7 +8019,15 @@ } } } - } + }, + "parameters": [ + { + "$ref": "#/components/parameters/Authorization" + }, + { + "$ref": "#/components/parameters/X-LC-Tenant" + } + ] }, "parameters": [ { @@ -8247,7 +8270,15 @@ } } } - } + }, + "parameters": [ + { + "$ref": "#/components/parameters/Authorization" + }, + { + "$ref": "#/components/parameters/X-LC-Tenant" + } + ] }, "parameters": [ { From 91e75f8631e4cb99a875765282cd8993d255b7b2 Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Wed, 15 Jul 2026 11:16:05 +0300 Subject: [PATCH 14/37] returning list of exportTaskIds --- articles/LCPublicAPI/api/Public-API.v1.json | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 6db03e0..875bc04 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -4493,9 +4493,12 @@ "schema": { "type": "object", "properties": { - "exportId": { - "type": "string", - "description": "The id of the export task created, used to check on its status. " + "exportIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The ids of the export tasks created, used to check on their status. " } } } From ffc86443af4ed191ef5559728fa23fdafa3297ae Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Wed, 15 Jul 2026 11:19:37 +0300 Subject: [PATCH 15/37] renaming variables and path params --- articles/LCPublicAPI/api/Public-API.v1.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 875bc04..412d380 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -4573,7 +4573,7 @@ } } }, - "/packages/export/{taskId}": { + "/packages/export/{exportId}": { "get": { "summary": "Poll Export Package", "tags": [ @@ -4670,7 +4670,7 @@ } } }, - "/packages/export/download/{taskId}": { + "/packages/export/download/{exportId}": { "get": { "summary": "Download Exported Packages", "tags": [ @@ -4869,7 +4869,7 @@ } } }, - "/packages/import/{taskId}": { + "/packages/import/{importId}": { "get": { "summary": "Poll Import Package", "tags": [ @@ -24370,7 +24370,7 @@ "type": "string" } }, - "expiresAtUtc": { + "expiresAt": { "type": "string", "description": "Timestamp of the expiration date, UTC timezone" } From 706854193c1dc8021f90fd7f58062a53f28d75d9 Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Thu, 16 Jul 2026 10:44:13 +0300 Subject: [PATCH 16/37] Added additional info for import package --- articles/LCPublicAPI/api/Public-API.v1.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 412d380..3693e72 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -4766,7 +4766,7 @@ "tags": [ "Packages" ], - "description": "", + "description": "The system associates the imported package to the appropriate project and task automatically based on its contents. The .sdlproj file contains the required information. You can also check the related [UI documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/returning-translation-packages-719556).", "parameters": [ { "$ref": "#/components/parameters/Authorization" From 93c4eb7e1a336c665d15edf60fe865017eb38967 Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Wed, 22 Jul 2026 05:40:57 +0300 Subject: [PATCH 17/37] Updating docs --- articles/LCPublicAPI/api/Public-API.v1.json | 55 +++++++++------------ 1 file changed, 22 insertions(+), 33 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 3693e72..89d6189 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -66,8 +66,8 @@ "description": "Machine Translation" }, { - "name": "Packages", - "description": "Packages" + "name": "Package", + "description": "Package" }, { "name": "PerfectMatch Mapping", @@ -4461,13 +4461,13 @@ ] } }, - "/packages/export": { + "/package/export": { "post": { "summary": "Export Package", "tags": [ - "Packages" + "Package" ], - "description": "", + "description": "Creates a task for exporting the selected tasks in a given number of packages, for more information check the [documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/downloading-packages-for-translation-719552) on downloading packages for translation", "parameters": [ { "$ref": "#/components/parameters/Authorization" @@ -4554,32 +4554,17 @@ "$ref": "#/components/headers/X-LC-TraceId" } } - }, - "404": { - "description": "Error codes:\n* \"notFound\": the Task could not be found by identifier.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" - } - } - }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } } } } }, - "/packages/export/{exportId}": { + "/package/export/{exportId}": { "get": { "summary": "Poll Export Package", "tags": [ - "Packages" + "Package" ], - "description": "", + "description": "Poll the status of the export task created in the [export endpoint.](#/operations/Export Package)", "parameters": [ { "schema": { @@ -4653,7 +4638,7 @@ } }, "404": { - "description": "Error codes:\n* \"notFound\": the Task could not be found by identifier.", + "description": "Error codes:\n* \"notFound\": the Package could not be found by identifier.", "content": { "application/json": { "schema": { @@ -4670,13 +4655,13 @@ } } }, - "/packages/export/download/{exportId}": { + "/package/export/download/{exportId}": { "get": { - "summary": "Download Exported Packages", + "summary": "Download Exported Package", "tags": [ - "Packages" + "Package" ], - "description": "", + "description": "Downloads an exported Package in with the .sdlppx extension", "parameters": [ { "schema": { @@ -4760,11 +4745,11 @@ } } }, - "/packages/import": { + "/package/import": { "post": { "summary": "Import Package", "tags": [ - "Packages" + "Package" ], "description": "The system associates the imported package to the appropriate project and task automatically based on its contents. The .sdlproj file contains the required information. You can also check the related [UI documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/returning-translation-packages-719556).", "parameters": [ @@ -4869,13 +4854,13 @@ } } }, - "/packages/import/{importId}": { + "/package/import/{importId}": { "get": { "summary": "Poll Import Package", "tags": [ - "Packages" + "Package" ], - "description": "", + "description": "Poll the status of the created at the [import endpoint](#/operations/ImportPackage)", "parameters": [ { "schema": { @@ -24344,6 +24329,10 @@ "package-export-status-response": { "title": "Package Export Status Response", "type": "object", + "required": [ + "id", + "status" + ], "properties": { "id": { "type": "string", From a56d7265095549f1e3beffd15580c634d2f16cdd Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Wed, 22 Jul 2026 06:14:32 +0300 Subject: [PATCH 18/37] Attempting to fix links --- articles/LCPublicAPI/api/Public-API.v1.json | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 89d6189..994705b 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -4464,11 +4464,12 @@ "/package/export": { "post": { "summary": "Export Package", + "operationId": "ExportPackage", "tags": [ "Package" ], - "description": "Creates a task for exporting the selected tasks in a given number of packages, for more information check the [documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/downloading-packages-for-translation-719552) on downloading packages for translation", - "parameters": [ + "description": "Creates a task for exporting the selected tasks in a given number of packages, for more information check the [documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/downloading-packages-for-translation-719552) on downloading packages for translation", + "parameters": [ { "$ref": "#/components/parameters/Authorization" }, @@ -4564,7 +4565,7 @@ "tags": [ "Package" ], - "description": "Poll the status of the export task created in the [export endpoint.](#/operations/Export Package)", + "description": "Poll the status of the export task created in the [export endpoint.](../api/Public-API.v1-fv.html#/operations/ExportPackage)", "parameters": [ { "schema": { @@ -4748,11 +4749,12 @@ "/package/import": { "post": { "summary": "Import Package", + "operationId": "ImportPackage", "tags": [ "Package" ], - "description": "The system associates the imported package to the appropriate project and task automatically based on its contents. The .sdlproj file contains the required information. You can also check the related [UI documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/returning-translation-packages-719556).", - "parameters": [ + "description": "The system associates the imported package to the appropriate project and task automatically based on its contents. The .sdlproj file contains the required information. You can also check the related [UI documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/returning-translation-packages-719556).", + "parameters": [ { "$ref": "#/components/parameters/Authorization" }, @@ -4860,7 +4862,7 @@ "tags": [ "Package" ], - "description": "Poll the status of the created at the [import endpoint](#/operations/ImportPackage)", + "description": "Poll the status of the created at the [import endpoint](../api/Public-API.v1-fv.html#/operations/ImportPackage)", "parameters": [ { "schema": { From 9fd6cd4415564fc7ee2f4d847c1ec005b47be8a7 Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Wed, 22 Jul 2026 09:15:35 +0300 Subject: [PATCH 19/37] restoring endpoint urls --- articles/LCPublicAPI/api/Public-API.v1.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 994705b..a43ccb3 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -4461,7 +4461,7 @@ ] } }, - "/package/export": { + "/packages/export": { "post": { "summary": "Export Package", "operationId": "ExportPackage", @@ -4559,7 +4559,7 @@ } } }, - "/package/export/{exportId}": { + "/packages/export/{exportId}": { "get": { "summary": "Poll Export Package", "tags": [ @@ -4656,7 +4656,7 @@ } } }, - "/package/export/download/{exportId}": { + "/packages/export/download/{exportId}": { "get": { "summary": "Download Exported Package", "tags": [ @@ -4746,7 +4746,7 @@ } } }, - "/package/import": { + "/packages/import": { "post": { "summary": "Import Package", "operationId": "ImportPackage", @@ -4856,7 +4856,7 @@ } } }, - "/package/import/{importId}": { + "/packages/import/{importId}": { "get": { "summary": "Poll Import Package", "tags": [ From f8d390d7ffc30ef88011a1017533d9c3d32e3040 Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Mon, 3 Aug 2026 13:03:04 +0300 Subject: [PATCH 20/37] small renaming --- articles/LCPublicAPI/api/Public-API.v1.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index a43ccb3..4e4f0af 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -4729,7 +4729,7 @@ } }, "404": { - "description": "Error codes:\n* \"notFound\": the Task could not be found by identifier.", + "description": "Error codes:\n* \"notFound\": the Package could not be found by identifier.", "content": { "application/json": { "schema": { From 309a815e6ebf7019399fa4e3f884097e43c16eef Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Mon, 3 Aug 2026 13:23:22 +0300 Subject: [PATCH 21/37] adding assignees as required in the request body --- articles/LCPublicAPI/api/Public-API.v1.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 15b3306..2f909c0 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -29442,7 +29442,10 @@ "$ref": "#/components/schemas/task-assignee-request" } } - } + }, + "required": [ + "assignees" + ] }, "task-complete-request": { "title": "Task Complete Request", From ccc763a263d15be3b0da7c9de7182fa0c33e6590 Mon Sep 17 00:00:00 2001 From: anicolescu Date: Fri, 14 Aug 2026 16:05:32 +0300 Subject: [PATCH 22/37] LTLC-132850-added list termbase entry templates endpoint --- articles/LCPublicAPI/api/Public-API.v1.json | 125 ++++++++++++++++++++ 1 file changed, 125 insertions(+) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 15b3306..9bc2b6d 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -13829,6 +13829,96 @@ "operationId": "ListTranslationEngines" } }, + "/termbase-entry-templates/{termbaseId}": { + "get": { + "summary": "List Termbase Entry Templates", + "operationId": "ListTermbaseEntryTemplates", + "description": "Retrieves the entry templates that are linked to the termbase.", + "tags": [ + "Termbase Entry Templates" + ], + "parameters": [ + { + "$ref": "#/components/parameters/Authorization" + }, + { + "$ref": "#/components/parameters/X-LC-Tenant" + }, + { + "$ref": "#/components/parameters/fields" + } + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/list-termbase-entry-templates-response" + }, + "examples": { + "termbase-entry-templates-list": { + "value": { + "items": [ + { + "id": "test-id-1", + "name": "test-name-1" + }, + { + "id": "test-id-2", + "name": "test-name-2" + } + ], + "itemCount": 2 + } + } + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "401": { + "description": "The user could not be identified.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, + "403": { + "description": "Error codes:\n* \"forbidden\": - The authenticated user is not allowed to read the resource.\n* \"entitlementMissing\": - Your subscription does not include access to the requested type of benefit.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + } + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/termbaseId" + } + ] + }, "/termbase-templates": { "get": { "summary": "List Termbase Templates", @@ -24381,6 +24471,26 @@ "itemCount" ] }, + "list-termbase-entry-templates-response": { + "title": "List Termbase Entry Templates Response", + "type": "object", + "description": "The termbase entry templates response.", + "properties": { + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/termbase-entry-template" + } + }, + "itemCount": { + "type": "integer" + } + }, + "required": [ + "items", + "itemCount" + ] + }, "list-termbases-response": { "title": "List Termbases Response", "type": "object", @@ -30117,6 +30227,21 @@ "type" ] }, + "termbase-entry-template": { + "title": "Termbase Entry Template", + "type": "object", + "description": "The termbase entry template.", + "properties": { + "id": { + "type": "string", + "description": "The identifier of the termbase entry template." + }, + "name": { + "type": "string", + "description": "The name of the termbase entry template." + } + } + }, "termbase-template-update-request": { "title": "Termbase Template Update Request", "type": "object", From ec2004d1b7e934143d24b00a4daf6ef486293ae6 Mon Sep 17 00:00:00 2001 From: anicolescu Date: Mon, 17 Aug 2026 13:34:05 +0300 Subject: [PATCH 23/37] added Termbase Entry Templates tag --- articles/LCPublicAPI/api/Public-API.v1.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 9bc2b6d..00361d9 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -134,6 +134,10 @@ "name": "Termbase", "description": "Termbase" }, + { + "name": "Termbase Entry Templates", + "description": "Termbase Entry Templates" + }, { "name": "Termbase Export", "description": "Termbase Export" From 6cf41e70fc521d4273313855b86aa7c85767904d Mon Sep 17 00:00:00 2001 From: anicolescu Date: Thu, 20 Aug 2026 09:55:59 +0300 Subject: [PATCH 24/37] Modified URL, added default and required fields --- articles/LCPublicAPI/api/Public-API.v1.json | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 00361d9..41e3e8b 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -13833,7 +13833,7 @@ "operationId": "ListTranslationEngines" } }, - "/termbase-entry-templates/{termbaseId}": { + "/termbases/{termbaseId}/entry-templates": { "get": { "summary": "List Termbase Entry Templates", "operationId": "ListTermbaseEntryTemplates", @@ -30242,9 +30242,13 @@ }, "name": { "type": "string", - "description": "The name of the termbase entry template." + "description": "The name of the termbase entry template.", + "x-default-field": true } - } + }, + "required": [ + "id" + ] }, "termbase-template-update-request": { "title": "Termbase Template Update Request", From fd2df9336a151c50bfd7b29671694fb8746081c7 Mon Sep 17 00:00:00 2001 From: anicolescu Date: Thu, 20 Aug 2026 10:37:06 +0300 Subject: [PATCH 25/37] Added default notation on the UI (manual way) --- articles/LCPublicAPI/api/Public-API.v1.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 41e3e8b..504c4a6 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -30242,7 +30242,7 @@ }, "name": { "type": "string", - "description": "The name of the termbase entry template.", + "description": "
default
The name of the termbase entry template.
", "x-default-field": true } }, From 0fbcc70fc48aaa02a723868a86396546f10b68e4 Mon Sep 17 00:00:00 2001 From: anicolescu Date: Thu, 20 Aug 2026 10:48:19 +0300 Subject: [PATCH 26/37] extra "s" removed --- articles/LCPublicAPI/api/Public-API.v1.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 504c4a6..7cba871 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -13833,7 +13833,7 @@ "operationId": "ListTranslationEngines" } }, - "/termbases/{termbaseId}/entry-templates": { + "/termbase/{termbaseId}/entry-templates": { "get": { "summary": "List Termbase Entry Templates", "operationId": "ListTermbaseEntryTemplates", From ef1f285ce88a7bed14d2ab3a1a91f616c1e9670d Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Fri, 28 Aug 2026 08:08:16 +0300 Subject: [PATCH 27/37] Remove TM filter changes (moved to TM-filter branch) --- articles/LCPublicAPI/api/Public-API.v1.json | 376 +++++++++--------- ...anslation-memory-advanced-configuration.md | 6 - 2 files changed, 183 insertions(+), 199 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 4e4f0af..0be61b5 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -4470,22 +4470,22 @@ ], "description": "Creates a task for exporting the selected tasks in a given number of packages, for more information check the [documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/downloading-packages-for-translation-719552) on downloading packages for translation", "parameters": [ - { - "$ref": "#/components/parameters/Authorization" - }, - { - "$ref": "#/components/parameters/X-LC-Tenant" - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/package-export-request" + { + "$ref": "#/components/parameters/Authorization" + }, + { + "$ref": "#/components/parameters/X-LC-Tenant" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/package-export-request" + } } } - } - }, + }, "responses": { "200": { "description": "", @@ -4557,7 +4557,7 @@ } } } - } + } }, "/packages/export/{exportId}": { "get": { @@ -4577,84 +4577,84 @@ "description": "The export task identifier." } ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/package-export-status-response" + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/package-export-status-response" + } } - } - }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - }, - "400": { - "description": "Error codes:\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" } } }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - }, - "401": { - "description": "The user could not be identified.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" + "400": { + "description": "Error codes:\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" } } }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - }, - "403": { - "description": "Error codes:\n* \"forbidden\": the authenticated user is not allowed to view task.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" + "401": { + "description": "The user could not be identified.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" } } }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - }, - "404": { - "description": "Error codes:\n* \"notFound\": the Package could not be found by identifier.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" + "403": { + "description": "Error codes:\n* \"forbidden\": the authenticated user is not allowed to view task.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" } } }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" + "404": { + "description": "Error codes:\n* \"notFound\": the Package could not be found by identifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } } } } } - } }, "/packages/export/download/{exportId}": { "get": { @@ -4755,22 +4755,22 @@ ], "description": "The system associates the imported package to the appropriate project and task automatically based on its contents. The .sdlproj file contains the required information. You can also check the related [UI documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/returning-translation-packages-719556).", "parameters": [ - { - "$ref": "#/components/parameters/Authorization" - }, - { - "$ref": "#/components/parameters/X-LC-Tenant" - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/package-import-request" + { + "$ref": "#/components/parameters/Authorization" + }, + { + "$ref": "#/components/parameters/X-LC-Tenant" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/package-import-request" + } } } - } - }, + }, "responses": { "200": { "description": "", @@ -4854,7 +4854,7 @@ } } } - } + } }, "/packages/import/{importId}": { "get": { @@ -4862,7 +4862,7 @@ "tags": [ "Package" ], - "description": "Poll the status of the created at the [import endpoint](../api/Public-API.v1-fv.html#/operations/ImportPackage)", + "description": "Poll the status of the created at the [import endpoint](../api/Public-API.v1-fv.html#/operations/ImportPackage)", "parameters": [ { "schema": { @@ -4874,84 +4874,84 @@ "description": "The export task identifier." } ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/package-import-status-response" + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/package-import-status-response" + } } - } - }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - }, - "400": { - "description": "Error codes:\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" } } }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - }, - "401": { - "description": "The user could not be identified.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" + "400": { + "description": "Error codes:\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" } } }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - }, - "403": { - "description": "Error codes:\n* \"forbidden\": the authenticated user is not allowed to view the task.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" + "401": { + "description": "The user could not be identified.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" } } }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" - } - } - }, - "404": { - "description": "Error codes:\n* \"notFound\": the Task could not be found by identifier.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error-response" + "403": { + "description": "Error codes:\n* \"forbidden\": the authenticated user is not allowed to view the task.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" } } }, - "headers": { - "X-LC-TraceId": { - "$ref": "#/components/headers/X-LC-TraceId" + "404": { + "description": "Error codes:\n* \"notFound\": the Task could not be found by identifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } } } } } - } }, "/pricing-models": { "get": { @@ -23511,21 +23511,6 @@ } } }, - "translation-memories-filter": { - "title": "Translation Memories Filter", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the filter, this should be used in the import/export TM request" - }, - "filterExpression": { - "type": "string", - "example": "(NOT \"TU confirmation level\" = \"Not Translated\" OR \"Last modified on\" > 2024-02-29T10:00:00.000Z\") AND \"Source segment length\" >= 10", - "description": "The filter expression is a set of atomic expressions connected by logical operators. An atomic expression describes the relationship of a field to a value. Check the [advanced configuration documentation](../docs/translation-memory/Translation-memory-advanced-configuration) for more information." - } - } - }, "list-users-response": { "title": "List Users Response", "type": "object", @@ -24302,7 +24287,7 @@ }, "onlinePackage": { "type": "boolean", - "description": "Set true for online Termbases and false for offline Termbases. If null it will not include termbases", + "description": "Set true for online Termbases and false for offline Termbases. If null it will not include termbases", "default": false, "nullable": true }, @@ -24319,12 +24304,12 @@ "splitByLanguage": { "type": "boolean", "description": "Set true if you want the packages split by language", - "default": false + "default": false }, "filesPerPackage": { "type": "integer", - "description": "Number of files per package. Only usable if \"splitByLanguage\" is set to false", - "default": 1 + "description": "Number of files per package. Only usable if \"splitByLanguage\" is set to false", + "default": 1 } } }, @@ -24357,7 +24342,7 @@ "taskIds": { "type": "array", "description": "Ids for the tasks being exported", - "items": { + "items": { "type": "string" } }, @@ -28831,12 +28816,20 @@ "deprecated": true }, "account": { - "allOf": [{ "$ref": "#/components/schemas/account" }], + "allOf": [ + { + "$ref": "#/components/schemas/account" + } + ], "description": "The account the user is part of.", "deprecated": true }, "location": { - "allOf": [{ "$ref": "#/components/schemas/folder-v2" }], + "allOf": [ + { + "$ref": "#/components/schemas/folder-v2" + } + ], "deprecated": true }, "groups": { @@ -28847,11 +28840,19 @@ "deprecated": true }, "userType": { - "allOf": [{ "$ref": "#/components/schemas/user-type" }], + "allOf": [ + { + "$ref": "#/components/schemas/user-type" + } + ], "deprecated": true }, "status": { - "allOf": [{ "$ref": "#/components/schemas/user-status" }], + "allOf": [ + { + "$ref": "#/components/schemas/user-status" + } + ], "deprecated": true }, "invitationLink": { @@ -28860,7 +28861,11 @@ "deprecated": true }, "membership": { - "allOf": [{ "$ref": "#/components/schemas/account-membership-type" }], + "allOf": [ + { + "$ref": "#/components/schemas/account-membership-type" + } + ], "deprecated": true } }, @@ -31339,12 +31344,6 @@ "example": "2022-01-12T12:00:00Z", "description": "The `DateTime` when the translation memory reindexing was performed.
UTC Timezone
Allowed formats:
\"YYYY-MM-DDThh:mmZ\"
\"YYYY-MM-DDThh:mm:ssZ\"
\"YYYY-MM-DDThh:mm:ss.sZ\"
\"YYYY-MM-DDThh:mm:ss.ssZ\"
\"YYYY-MM-DDThh:mm:ss.sss", "nullable": true - }, - "filters": { - "type": "array", - "items": { - "$ref": "#/components/schemas/translation-memories-filter" - } } }, "required": [ @@ -31669,10 +31668,6 @@ "rejectedSignOff" ] } - }, - "filterName": { - "type": "string", - "description": "The name of the filter expression you want to apply, it's available in the response body of [GET](Public-API.v1-fv.html#/operations/GetTranslationMemory)" } }, "required": [ @@ -31939,10 +31934,6 @@ "properties": { "languageDirection": { "$ref": "#/components/schemas/translation-memory-export-language-direction" - }, - "filterName": { - "type": "string", - "description": "The name of the filter expression you want to apply, it's available in the response body of [GET](Public-API.v1-fv.html#/operations/GetTranslationMemory)" } }, "required": [ @@ -31952,7 +31943,6 @@ "translation-memory-settings-filters-response": { "type": "object", "title": "Translation Memory Filters", - "description": "Translation Memory filter settings.", "properties": { "hardFilter": { "$ref": "#/components/schemas/translation-memory-settings-hard-filter-response", diff --git a/articles/LCPublicAPI/docs/translation-memory/Translation-memory-advanced-configuration.md b/articles/LCPublicAPI/docs/translation-memory/Translation-memory-advanced-configuration.md index 3fa3017..ee19c96 100644 --- a/articles/LCPublicAPI/docs/translation-memory/Translation-memory-advanced-configuration.md +++ b/articles/LCPublicAPI/docs/translation-memory/Translation-memory-advanced-configuration.md @@ -16,12 +16,6 @@ Project template endpoints: - [Get Project Template](../../api/Public-API.v1-fv.html#/operations/GetProjectTemplate) - Retrieve project template details, including Translation Memory settings - [Update Project Template](../../api/Public-API.v1-fv.html#/operations/UpdateProjectTemplate) - Update project template configuration, including Translation Memory settings -Translation Memory Import endpoint: -- [Import Translation Memory](../../api/Public-API.v1-fv.html#/operations/ImportTranslationMemory) - Import TUs from a file, with optional filter criteria - -Translation Memory Export endpoint: -- [Export Translation Memory](../../api/Public-API.v1-fv.html#/operations/ExportTranslationMemory) - Export TUs matching specified filter criteria - ## Translation Memory filters Translation Memory filters let you apply complex criteria during TM operations. Filters can reference system and custom fields, and support multiple data types and operators. From 85e75f36df2fe99775493c023e99a15fdde15411 Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Fri, 28 Aug 2026 11:18:57 +0300 Subject: [PATCH 28/37] updating package docs --- articles/LCPublicAPI/api/Public-API.v1.json | 38 +++++++++++++-------- 1 file changed, 23 insertions(+), 15 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 0be61b5..f388f83 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -4468,7 +4468,7 @@ "tags": [ "Package" ], - "description": "Creates a task for exporting the selected tasks in a given number of packages, for more information check the [documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/downloading-packages-for-translation-719552) on downloading packages for translation", + "description": "Creates an operation for exporting the selected tasks into a given number of packages. For more information, check the [documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/downloading-packages-for-translation-719552) on downloading packages for translation.", "parameters": [ { "$ref": "#/components/parameters/Authorization" @@ -4499,7 +4499,7 @@ "items": { "type": "string" }, - "description": "The ids of the export tasks created, used to check on their status. " + "description": "The ids of the export operations created, used to check on their status." } } } @@ -4565,7 +4565,7 @@ "tags": [ "Package" ], - "description": "Poll the status of the export task created in the [export endpoint.](../api/Public-API.v1-fv.html#/operations/ExportPackage)", + "description": "Polls the status of the export operation created by the [Export Package operation](../api/Public-API.v1-fv.html#/operations/ExportPackage).", "parameters": [ { "schema": { @@ -4574,7 +4574,7 @@ "name": "exportId", "in": "path", "required": true, - "description": "The export task identifier." + "description": "The export operation identifier." } ], "responses": { @@ -4662,7 +4662,7 @@ "tags": [ "Package" ], - "description": "Downloads an exported Package in with the .sdlppx extension", + "description": "Downloads an exported package with the .sdlppx extension.", "parameters": [ { "schema": { @@ -4671,7 +4671,7 @@ "name": "exportId", "in": "path", "required": true, - "description": "The export task identifier." + "description": "The export operation identifier." } ], "responses": { @@ -4753,7 +4753,7 @@ "tags": [ "Package" ], - "description": "The system associates the imported package to the appropriate project and task automatically based on its contents. The .sdlproj file contains the required information. You can also check the related [UI documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/returning-translation-packages-719556).", + "description": "Creates an operation for importing a translation package. The accepted file types are .sdlppx and .sdlrpx. The system associates the imported package with the appropriate project and task automatically based on its contents, using the information contained in the file. You can also check the related [documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/returning-translation-packages-719556).", "parameters": [ { "$ref": "#/components/parameters/Authorization" @@ -4781,7 +4781,7 @@ "properties": { "importId": { "type": "string", - "description": "The id of the export task created, used to check on its status. " + "description": "The id of the import operation created, used to check on its status." } } } @@ -4862,7 +4862,7 @@ "tags": [ "Package" ], - "description": "Poll the status of the created at the [import endpoint](../api/Public-API.v1-fv.html#/operations/ImportPackage)", + "description": "Polls the status of the import operation created by the [Import Package operation](../api/Public-API.v1-fv.html#/operations/ImportPackage).", "parameters": [ { "schema": { @@ -4871,7 +4871,7 @@ "name": "importId", "in": "path", "required": true, - "description": "The export task identifier." + "description": "The import operation identifier." } ], "responses": { @@ -24369,20 +24369,28 @@ "package-import-status-response": { "title": "Package Import Status Response", "type": "object", + "required": [ + "id", + "status" + ], "properties": { "id": { "type": "string", - "description": "The id of the import task" + "description": "The id of the import operation" }, "status": { "type": "string", - "description": "The status of the import task", - "export": [ + "description": "The status of the import operation", + "enum": [ "Queued", "InProgress", - "Done", - "Failed" + "Failed", + "Done" ] + }, + "error": { + "$ref": "#/components/schemas/error-response", + "description": "The error details, present only when the import operation has failed." } } }, From 7b8b31df02c11ff0159f902760e6fcfd41ef576b Mon Sep 17 00:00:00 2001 From: anicolescu Date: Wed, 2 Sep 2026 15:58:37 +0300 Subject: [PATCH 29/37] changed path / added top and skip parameters --- articles/LCPublicAPI/api/Public-API.v1.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 7cba871..c12f3c3 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -13833,7 +13833,7 @@ "operationId": "ListTranslationEngines" } }, - "/termbase/{termbaseId}/entry-templates": { + "/termbases/{termbaseId}/entry-templates": { "get": { "summary": "List Termbase Entry Templates", "operationId": "ListTermbaseEntryTemplates", @@ -13920,6 +13920,12 @@ "parameters": [ { "$ref": "#/components/parameters/termbaseId" + }, + { + "$ref": "#/components/parameters/top" + }, + { + "$ref": "#/components/parameters/skip" } ] }, From 724898fecd257ab47208a596f4f5489ca17d98a6 Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Wed, 2 Sep 2026 16:10:58 +0300 Subject: [PATCH 30/37] Update package API responses and parameters --- articles/LCPublicAPI/api/Public-API.v1.json | 64 +++++++++++++-------- 1 file changed, 39 insertions(+), 25 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index f388f83..011d89d 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -4468,7 +4468,7 @@ "tags": [ "Package" ], - "description": "Creates an operation for exporting the selected tasks into a given number of packages. For more information, check the [documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/downloading-packages-for-translation-719552) on downloading packages for translation.", + "description": "Creates a task for exporting the selected tasks in a given number of packages, for more information check the [documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/downloading-packages-for-translation-719552) on downloading packages for translation", "parameters": [ { "$ref": "#/components/parameters/Authorization" @@ -4499,7 +4499,7 @@ "items": { "type": "string" }, - "description": "The ids of the export operations created, used to check on their status." + "description": "The ids of the export tasks created, used to check on their status. " } } } @@ -4565,8 +4565,11 @@ "tags": [ "Package" ], - "description": "Polls the status of the export operation created by the [Export Package operation](../api/Public-API.v1-fv.html#/operations/ExportPackage).", + "description": "Poll the status of the export task created in the [export endpoint.](../api/Public-API.v1-fv.html#/operations/ExportPackage)", "parameters": [ + { + "$ref": "#/components/parameters/fields" + }, { "schema": { "type": "string" @@ -4574,7 +4577,7 @@ "name": "exportId", "in": "path", "required": true, - "description": "The export operation identifier." + "description": "The export task identifier." } ], "responses": { @@ -4662,7 +4665,7 @@ "tags": [ "Package" ], - "description": "Downloads an exported package with the .sdlppx extension.", + "description": "Downloads an exported Package in with the .sdlppx extension", "parameters": [ { "schema": { @@ -4671,7 +4674,7 @@ "name": "exportId", "in": "path", "required": true, - "description": "The export operation identifier." + "description": "The export task identifier." } ], "responses": { @@ -4742,6 +4745,21 @@ "$ref": "#/components/headers/X-LC-TraceId" } } + }, + "409": { + "description": "The export task is not yet done.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } } } } @@ -4753,7 +4771,7 @@ "tags": [ "Package" ], - "description": "Creates an operation for importing a translation package. The accepted file types are .sdlppx and .sdlrpx. The system associates the imported package with the appropriate project and task automatically based on its contents, using the information contained in the file. You can also check the related [documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/returning-translation-packages-719556).", + "description": "The system associates the imported package to the appropriate project and task automatically based on its contents. The .sdlproj file contains the required information. You can also check the related [UI documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/returning-translation-packages-719556).", "parameters": [ { "$ref": "#/components/parameters/Authorization" @@ -4781,7 +4799,7 @@ "properties": { "importId": { "type": "string", - "description": "The id of the import operation created, used to check on its status." + "description": "The id of the export task created, used to check on its status. " } } } @@ -4862,7 +4880,7 @@ "tags": [ "Package" ], - "description": "Polls the status of the import operation created by the [Import Package operation](../api/Public-API.v1-fv.html#/operations/ImportPackage).", + "description": "Poll the status of the created at the [import endpoint](../api/Public-API.v1-fv.html#/operations/ImportPackage)", "parameters": [ { "schema": { @@ -4871,7 +4889,7 @@ "name": "importId", "in": "path", "required": true, - "description": "The import operation identifier." + "description": "The export task identifier." } ], "responses": { @@ -24349,6 +24367,10 @@ "expiresAt": { "type": "string", "description": "Timestamp of the expiration date, UTC timezone" + }, + "error": { + "$ref": "#/components/schemas/error-response", + "description": "The error details, present only when the export operation has failed." } } }, @@ -24362,35 +24384,27 @@ "file": { "type": "string", "format": "binary", - "description": "The file to be uploaded (binary string). " + "description": "The file to be uploaded (binary string).\nAccepted file types: .sdlppx, .sdlrpx." } } }, "package-import-status-response": { "title": "Package Import Status Response", "type": "object", - "required": [ - "id", - "status" - ], "properties": { "id": { "type": "string", - "description": "The id of the import operation" + "description": "The id of the import task" }, "status": { "type": "string", - "description": "The status of the import operation", - "enum": [ + "description": "The status of the import task", + "export": [ "Queued", "InProgress", - "Failed", - "Done" + "Done", + "Failed" ] - }, - "error": { - "$ref": "#/components/schemas/error-response", - "description": "The error details, present only when the import operation has failed." } } }, @@ -33652,4 +33666,4 @@ } } } -} \ No newline at end of file +} From a48e9eb36d4be5b7c3686936ba99f3f70d4b9a29 Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Wed, 2 Sep 2026 16:30:21 +0300 Subject: [PATCH 31/37] Restore package description updates --- articles/LCPublicAPI/api/Public-API.v1.json | 24 ++++++++++++--------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 011d89d..b31094a 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -4565,7 +4565,7 @@ "tags": [ "Package" ], - "description": "Poll the status of the export task created in the [export endpoint.](../api/Public-API.v1-fv.html#/operations/ExportPackage)", + "description": "Polls the status of the export operation created by the [Export Package operation](../api/Public-API.v1-fv.html#/operations/ExportPackage).", "parameters": [ { "$ref": "#/components/parameters/fields" @@ -4577,7 +4577,7 @@ "name": "exportId", "in": "path", "required": true, - "description": "The export task identifier." + "description": "The export operation identifier." } ], "responses": { @@ -4665,7 +4665,7 @@ "tags": [ "Package" ], - "description": "Downloads an exported Package in with the .sdlppx extension", + "description": "Downloads an exported package with the .sdlppx extension.", "parameters": [ { "schema": { @@ -4674,7 +4674,7 @@ "name": "exportId", "in": "path", "required": true, - "description": "The export task identifier." + "description": "The export operation identifier." } ], "responses": { @@ -4771,7 +4771,7 @@ "tags": [ "Package" ], - "description": "The system associates the imported package to the appropriate project and task automatically based on its contents. The .sdlproj file contains the required information. You can also check the related [UI documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/returning-translation-packages-719556).", + "description": "Creates an operation for importing a translation package. The accepted file types are .sdlppx and .sdlrpx. The system associates the imported package with the appropriate project and task automatically based on its contents, using the information contained in the file. You can also check the related [documentation](https://docs.rws.com/en-US/trados-enterprise-accelerate-791595/returning-translation-packages-719556).", "parameters": [ { "$ref": "#/components/parameters/Authorization" @@ -4799,7 +4799,7 @@ "properties": { "importId": { "type": "string", - "description": "The id of the export task created, used to check on its status. " + "description": "The id of the import operation created, used to check on its status." } } } @@ -4880,7 +4880,7 @@ "tags": [ "Package" ], - "description": "Poll the status of the created at the [import endpoint](../api/Public-API.v1-fv.html#/operations/ImportPackage)", + "description": "Polls the status of the import operation created by the [Import Package operation](../api/Public-API.v1-fv.html#/operations/ImportPackage).", "parameters": [ { "schema": { @@ -4889,7 +4889,7 @@ "name": "importId", "in": "path", "required": true, - "description": "The export task identifier." + "description": "The import operation identifier." } ], "responses": { @@ -24394,17 +24394,21 @@ "properties": { "id": { "type": "string", - "description": "The id of the import task" + "description": "The id of the import operation" }, "status": { "type": "string", - "description": "The status of the import task", + "description": "The status of the import operation", "export": [ "Queued", "InProgress", "Done", "Failed" ] + }, + "error": { + "$ref": "#/components/schemas/error-response", + "description": "The error details, present only when the import operation has failed." } } }, From 864cc6d0d608c9e647132e447e745a9d7798c4a2 Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Wed, 2 Sep 2026 17:49:20 +0300 Subject: [PATCH 32/37] updating 409 error description --- articles/LCPublicAPI/api/Public-API.v1.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index b31094a..44233ba 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -4747,7 +4747,7 @@ } }, "409": { - "description": "The export task is not yet done.", + "description": "Error codes:\n* \"conflict\": Cannot download package export if status is not done.", "content": { "application/json": { "schema": { From 3a55aab624f287ff2f537568b80753833db34f24 Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Wed, 9 Sep 2026 04:41:06 +0300 Subject: [PATCH 33/37] making name in VOT response required --- articles/LCPublicAPI/api/Public-API.v1.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 776f528..586a487 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -34080,7 +34080,7 @@ } } }, - "required": ["id"] + "required": ["id", "name"] }, "list-vendor-order-templates-response": { "title": "List Vendor Order Templates Response", From dcd7b3c9c21d52fcecbcec44cb14dafabe5902a0 Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Wed, 9 Sep 2026 10:44:37 +0300 Subject: [PATCH 34/37] adding operationIds to package endpoints --- articles/LCPublicAPI/api/Public-API.v1.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index f5ebb6c..26dabfb 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -4582,6 +4582,7 @@ "/packages/export/{exportId}": { "get": { "summary": "Poll Export Package", + "operationId": "PollExportPackage", "tags": [ "Package" ], @@ -4682,6 +4683,7 @@ "/packages/export/download/{exportId}": { "get": { "summary": "Download Exported Package", + "operationId": "DownloadExportedPackage", "tags": [ "Package" ], @@ -4897,6 +4899,7 @@ "/packages/import/{importId}": { "get": { "summary": "Poll Import Package", + "operationId": "PollImportPackage", "tags": [ "Package" ], From 16be39295b57cb331bf2d1993e356ee10892fd4c Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Wed, 9 Sep 2026 15:45:27 +0300 Subject: [PATCH 35/37] What's new and adding missing error --- articles/LCPublicAPI/api/Public-API.v1.json | 15 +++++++++++++++ articles/LCPublicAPI/docs/Whats-New.md | 5 +++++ 2 files changed, 20 insertions(+) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index 26dabfb..a73eb14 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -14433,6 +14433,21 @@ } } }, + "400": { + "description": "Error codes:\n* “invalid”: Invalid input in the query parameter mentioned in the “name” field on the error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error-response" + } + } + }, + "headers": { + "X-LC-TraceId": { + "$ref": "#/components/headers/X-LC-TraceId" + } + } + }, "401": { "description": "The user could not be identified.", "content": { diff --git a/articles/LCPublicAPI/docs/Whats-New.md b/articles/LCPublicAPI/docs/Whats-New.md index 73db615..dd7b2a9 100644 --- a/articles/LCPublicAPI/docs/Whats-New.md +++ b/articles/LCPublicAPI/docs/Whats-New.md @@ -2,6 +2,11 @@
+## 09 September 2026 +- You can now export and import translation packages via the public API. Use [Export Package](../api/Public-API.v1-fv.html#/operations/ExportPackage), [Poll Export Package](../api/Public-API.v1-fv.html#/operations/PollExportPackage), and [Download Exported Package](../api/Public-API.v1-fv.html#/operations/DownloadExportedPackage) to generate and download `.sdlppx` packages, and [Import Package](../api/Public-API.v1-fv.html#/operations/ImportPackage) together with [Poll Import Package](../api/Public-API.v1-fv.html#/operations/PollImportPackage) to return completed `.sdlppx`/`.sdlrpx` packages. +- You can now retrieve the entry templates linked to a termbase via the new [List Termbase Entry Templates](../api/Public-API.v1-fv.html#/operations/ListTermbaseEntryTemplates) endpoint. +- We fixed various bugs. + ## 02 July 2026 - With this release we deliver full vendor management capabilities. You can now [Get](../api/Public-API.v1-fv.html#/operations/GetVendor), [List](../api/Public-API.v1-fv.html#/operations/ListVendors), [Create](../api/Public-API.v1-fv.html#/operations/CreateVendor), [Update](../api/Public-API.v1-fv.html#/operations/UpdateVendor), and [Delete](../api/Public-API.v1-fv.html#/operations/DeleteVendor) vendors via the public API. - We have also introduced vendor order template management. You can now [Get](../api/Public-API.v1-fv.html#/operations/GetVendorOrderTemplate), [List](../api/Public-API.v1-fv.html#/operations/ListVendorOrderTemplates), [Create](../api/Public-API.v1-fv.html#/operations/CreateVendorOrderTemplate), [Update](../api/Public-API.v1-fv.html#/operations/UpdateVendorOrderTemplate), and [Delete](../api/Public-API.v1-fv.html#/operations/DeleteVendorOrderTemplate) vendor order templates. From 1769b8053c7352b67f36694ca04ead3eb16e5d74 Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Wed, 9 Sep 2026 16:29:13 +0300 Subject: [PATCH 36/37] updating Whats-New.md --- articles/LCPublicAPI/docs/Whats-New.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/articles/LCPublicAPI/docs/Whats-New.md b/articles/LCPublicAPI/docs/Whats-New.md index dd7b2a9..58bfc9b 100644 --- a/articles/LCPublicAPI/docs/Whats-New.md +++ b/articles/LCPublicAPI/docs/Whats-New.md @@ -3,7 +3,7 @@
## 09 September 2026 -- You can now export and import translation packages via the public API. Use [Export Package](../api/Public-API.v1-fv.html#/operations/ExportPackage), [Poll Export Package](../api/Public-API.v1-fv.html#/operations/PollExportPackage), and [Download Exported Package](../api/Public-API.v1-fv.html#/operations/DownloadExportedPackage) to generate and download `.sdlppx` packages, and [Import Package](../api/Public-API.v1-fv.html#/operations/ImportPackage) together with [Poll Import Package](../api/Public-API.v1-fv.html#/operations/PollImportPackage) to return completed `.sdlppx`/`.sdlrpx` packages. +- You can now export and import translation packages. Use [Export Package](../api/Public-API.v1-fv.html#/operations/ExportPackage), [Poll Export Package](../api/Public-API.v1-fv.html#/operations/PollExportPackage), and [Download Exported Package](../api/Public-API.v1-fv.html#/operations/DownloadExportedPackage) to generate and download `.sdlppx` packages. Use [Import Package](../api/Public-API.v1-fv.html#/operations/ImportPackage) together with [Poll Import Package](../api/Public-API.v1-fv.html#/operations/PollImportPackage) to return completed `.sdlppx`/`.sdlrpx` packages. - You can now retrieve the entry templates linked to a termbase via the new [List Termbase Entry Templates](../api/Public-API.v1-fv.html#/operations/ListTermbaseEntryTemplates) endpoint. - We fixed various bugs. From d480602f69b785267a71b2ab27c4d6fc9ead382b Mon Sep 17 00:00:00 2001 From: vblajan_RWSGroup Date: Wed, 9 Sep 2026 17:07:45 +0300 Subject: [PATCH 37/37] updating warning --- articles/LCPublicAPI/api/Public-API.v1.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/articles/LCPublicAPI/api/Public-API.v1.json b/articles/LCPublicAPI/api/Public-API.v1.json index a73eb14..4f67de7 100644 --- a/articles/LCPublicAPI/api/Public-API.v1.json +++ b/articles/LCPublicAPI/api/Public-API.v1.json @@ -6763,7 +6763,7 @@ ], "summary": "Export Project Files", "operationId": "ExportProjectFiles", - "description": "Generates an asynchronous export operation. To monitor the progress until completion, use the [Poll Project Files Export](../api/Public-API.v1-fv.html#/operations/ExportProjectFilesStatus) endpoint. \n\nThis operation triggers the packaging of the project files into a `zip` format.\n> [!WARNING] \n> The export ID has a time-to-live (TTL) of 20 minutes, starting from when this export operation is initiated (not when the underlying async operation completes). Ensure you poll and download the export within this timeframe, or you will receive a `404 Not Found` error.", + "description": "Generates an asynchronous export operation. To monitor the progress until completion, use the [Poll Project Files Export](../api/Public-API.v1-fv.html#/operations/ExportProjectFilesStatus) endpoint. \n\nThis operation triggers the packaging of the project files into a `zip` format.\n\n> **WARNING** \n> The export ID has a time-to-live (TTL) of 20 minutes, starting from when this export operation is initiated (not when the underlying async operation completes). Ensure you poll and download the export within this timeframe, or you will receive a `404 Not Found` error.", "parameters": [ { "$ref": "#/components/parameters/Authorization" @@ -6872,7 +6872,7 @@ ], "summary": "Poll Project Files Export", "operationId": "ExportProjectFilesStatus", - "description": "Retrieves the state of the export operation. \n\n Once the state is marked as `done`, you can download the generated `zip` file using the following endpoint: [Download Exported Project Files](../api/Public-API.v1-fv.html#/operations/DownloadFile).\n\n> [!WARNING] \n> The export ID has a time-to-live (TTL) of 20 minutes, starting from when the export operation was initiated (not when the underlying async operation completes). If the TTL expires, this endpoint will return a `404 Not Found` error. Ensure you poll and download the export within this timeframe.", + "description": "Retrieves the state of the export operation. \n\n Once the state is marked as `done`, you can download the generated `zip` file using the following endpoint: [Download Exported Project Files](../api/Public-API.v1-fv.html#/operations/DownloadFile).\n\n> **WARNING** \n> The export ID has a time-to-live (TTL) of 20 minutes, starting from when the export operation was initiated (not when the underlying async operation completes). If the TTL expires, this endpoint will return a `404 Not Found` error. Ensure you poll and download the export within this timeframe.", "responses": { "200": { "description": "OK", @@ -10012,7 +10012,7 @@ } } }, - "description": "Generates an asynchronous quote export operation for the project in either PDF or Excel format. Use the [polling endpoint](../api/Public-API.v1-fv.html#/operations/PollQuoteReportExport) to check when the export is completed.

\nBuilt-in quotes are only available in the same languages as the user interface. See [this page](https://docs.rws.com/791595/1084405/trados-enterprise---accelerate/ui-languages) for more information.
\nCustomers who use non-default quote templates are responsible for the implementation of a suitable localization approach.\n\n> [!WARNING] \n> The export ID has a time-to-live (TTL) of 20 minutes, starting from when this export operation is initiated (not when the underlying async operation completes). Ensure you poll and download the export within this timeframe, or you will receive a `404 Not Found` error.", + "description": "Generates an asynchronous quote export operation for the project in either PDF or Excel format. Use the [polling endpoint](../api/Public-API.v1-fv.html#/operations/PollQuoteReportExport) to check when the export is completed.

\nBuilt-in quotes are only available in the same languages as the user interface. See [this page](https://docs.rws.com/791595/1084405/trados-enterprise---accelerate/ui-languages) for more information.
\nCustomers who use non-default quote templates are responsible for the implementation of a suitable localization approach.\n\n> **WARNING** \n> The export ID has a time-to-live (TTL) of 20 minutes, starting from when this export operation is initiated (not when the underlying async operation completes). Ensure you poll and download the export within this timeframe, or you will receive a `404 Not Found` error.", "parameters": [ { "$ref": "#/components/parameters/Authorization" @@ -10120,7 +10120,7 @@ } } }, - "description": "Polls a quote report via an export operation. The quote report can be [downloaded](../api/Public-API.v1-fv.html#/operations/DownloadQuoteReport) once the status is \"completed\". The recommended polling interval is 20 seconds.\n\nIf the `exportId` query parameter is not provided, the polling action will return the status for the last generated export.\n\n> [!WARNING] \n> The export ID has a time-to-live (TTL) of 20 minutes, starting from when the export operation was initiated (not when the underlying async operation completes). If the TTL expires, this endpoint will return a `404 Not Found` error. Ensure you poll and download the export within this timeframe.\n", + "description": "Polls a quote report via an export operation. The quote report can be [downloaded](../api/Public-API.v1-fv.html#/operations/DownloadQuoteReport) once the status is \"completed\". The recommended polling interval is 20 seconds.\n\nIf the `exportId` query parameter is not provided, the polling action will return the status for the last generated export.\n\n> **WARNING** \n> The export ID has a time-to-live (TTL) of 20 minutes, starting from when the export operation was initiated (not when the underlying async operation completes). If the TTL expires, this endpoint will return a `404 Not Found` error. Ensure you poll and download the export within this timeframe.\n", "parameters": [ { "$ref": "#/components/parameters/Authorization"