{ "openapi": "3.0.1", "info": { "title": "Fenergo Nebula Localisation Command", "description": "**Localisation Command API**:\n\n
Localisation Command API provides both configurational and operational methods related to the client localisations. Use the Localisation Command API to create and update new and existing localisations and versions. Use the Query API to retrieve localisations and aggregates.\n\n
**Localisation Command API provides**:
", "version": "1.0" }, "servers": [ { "url": "/localisationcommand" } ], "paths": { "/api/localisation": { "post": { "tags": [ "Localisation" ], "summary": "Create a new Localisation", "description": "\nThis method creates new Localisations with a first draft version.\r\n\nThe new version initializes with the DTO data and has the default status of Draft\r\n and the Author as the only required Signee.

Required permissions:
Following permissions are required: LocalisationEdit", "operationId": "CreateLocalisation", "parameters": [ { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocalisationDtoServiceRequest" } }, "text/json": { "schema": { "$ref": "#/components/schemas/LocalisationDtoServiceRequest" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/LocalisationDtoServiceRequest" } } } }, "responses": { "202": { "description": "Accepted for processing", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/LocalisationDtoServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/LocalisationDtoServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/LocalisationDtoServiceResponse" } } } }, "400": { "description": "Invalid request", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } } }, "/api/localisation/{localisationId}": { "put": { "tags": [ "Localisation" ], "summary": "Update Localisations Settings.", "description": "\nUpdate the settings of a localisation, specifically the IsDefaultLocalisation flag.\r\n\nTo convert to a default localisation, set IsDefaultLocalisation to (true), and to revert to a standard localisation set it to (false)\r\n\nThis affect to all versions of a Localisation

Required permissions:
Following permissions are required: LocalisationEdit", "operationId": "UpdateLocalisation", "parameters": [ { "name": "localisationId", "in": "path", "description": "The Id of the existing model", "required": true, "schema": { "type": "string", "format": "uuid" } }, { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "requestBody": { "description": "ServiceRequest with the options", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateLocalisationDto" } }, "text/json": { "schema": { "$ref": "#/components/schemas/UpdateLocalisationDto" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/UpdateLocalisationDto" } } } }, "responses": { "202": { "description": "Accepted for processing" }, "400": { "description": "Invalid request", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "404": { "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Localisation with given ID does not exists", "type": "Error", "errorCode": "Error Code" } ] } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } }, "delete": { "tags": [ "Localisation" ], "summary": "Delete Localisation and all it's versions", "description": "\nThis method deletes an existing Localisation as well as all its versions.

Required permissions:
Following permissions are required: LocalisationDelete", "operationId": "DeleteLocalisation", "parameters": [ { "name": "localisationId", "in": "path", "description": "Localisation Id", "required": true, "schema": { "type": "string", "format": "uuid" } }, { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "responses": { "202": { "description": "Accepted for processing" }, "400": { "description": "Invalid request", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "404": { "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Localisation with given ID does not exists", "type": "Error", "errorCode": "Error Code" } ] } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } }, "post": { "tags": [ "Localisation" ], "summary": "Create a new Version for an existing Localisation", "description": "\nThis method creates a new Localisation version.\r\n\nThe new version initializes with the DTO data. It is assigned the next available version number,\r\n the default status of Draft and the Author as the only required Signee.

Required permissions:
Following permissions are required: LocalisationEdit", "operationId": "CreateLocalisationVersion", "parameters": [ { "name": "localisationId", "in": "path", "description": "The Id of the existing model", "required": true, "schema": { "type": "string", "format": "uuid" } }, { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "requestBody": { "description": "ServiceRequest with the new version data", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocalisationDtoServiceRequest" } }, "text/json": { "schema": { "$ref": "#/components/schemas/LocalisationDtoServiceRequest" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/LocalisationDtoServiceRequest" } } } }, "responses": { "202": { "description": "Accepted for processing", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/LocalisationDtoServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/LocalisationDtoServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/LocalisationDtoServiceResponse" } } } }, "400": { "description": "Invalid request", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "404": { "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Localisation with given ID does not exists", "type": "Error", "errorCode": "Error Code" } ] } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } } }, "/api/localisation/{localisationId}/version/{versionNumber}": { "put": { "tags": [ "Localisation" ], "summary": "Updates an existing Version of a Localisation", "description": "\nThis method updates an existing Localisation version.\r\n\nOnly Draft and Rejected versions are allowed to be updated.

Required permissions:
Following permissions are required: LocalisationEdit", "operationId": "UpdateLocalisationVersion", "parameters": [ { "name": "localisationId", "in": "path", "description": "The Id of the existing model", "required": true, "schema": { "type": "string", "format": "uuid" } }, { "name": "versionNumber", "in": "path", "description": "Number of version to update", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "requestBody": { "description": "ServiceRequest with the updated version data", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateLocalisationVersionDtoServiceRequest" } }, "text/json": { "schema": { "$ref": "#/components/schemas/UpdateLocalisationVersionDtoServiceRequest" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/UpdateLocalisationVersionDtoServiceRequest" } } } }, "responses": { "202": { "description": "Accepted for processing" }, "400": { "description": "Invalid request", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "404": { "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Localisation with given ID does not exists", "type": "Error", "errorCode": "Error Code" } ] } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } }, "delete": { "tags": [ "Localisation" ], "summary": "Delete an existing Version of a Localisation", "description": "\nThis method deletes the selected version of an existing Localisation.\r\n If the version is the last one, then the version number of it will become the next available one for the model.\r\n Otherwise, the version number will be flagged as Deleted and become unavailable.

Required permissions:
Following permissions are required: LocalisationDelete", "operationId": "DeleteLocalisationVersion", "parameters": [ { "name": "localisationId", "in": "path", "description": "Localisation Id", "required": true, "schema": { "type": "string", "format": "uuid" } }, { "name": "versionNumber", "in": "path", "description": "Version number to delete", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "responses": { "202": { "description": "Accepted for processing" }, "400": { "description": "Invalid request", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "404": { "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Localisation with given ID does not exists", "type": "Error", "errorCode": "Error Code" } ] } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } } }, "/api/localisation/{localisationId}/version/{versionNumber}/submit-for-approval": { "put": { "tags": [ "Localisation" ], "summary": "Submit an existing Version of a Localisation for Approval", "description": "\nThis method submits the selected version of an existing Localisation for Approval.

Required permissions:
Following permissions are required: LocalisationEdit", "operationId": "SubmitLocalisationVersion", "parameters": [ { "name": "localisationId", "in": "path", "description": "The Id of the existing model", "required": true, "schema": { "type": "string", "format": "uuid" } }, { "name": "versionNumber", "in": "path", "description": "The version number of the version to submit", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "responses": { "202": { "description": "Accepted for processing" }, "400": { "description": "Validation error", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "404": { "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Localisation with given ID does not exists", "type": "Error", "errorCode": "Error Code" } ] } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } } }, "/api/localisation/{localisationId}/version/{versionNumber}/sign": { "put": { "tags": [ "Localisation" ], "summary": "Sign an existing Version of a Localisation", "description": "\nThis method signs the selected version of an existing Localisation.\r\n The Status of the version changes according to the action sent (Approve/Reject).

Required permissions:
Following permissions are required: LocalisationApprove", "operationId": "SignLocalisationVersion", "parameters": [ { "name": "localisationId", "in": "path", "description": "The Id of the existing model", "required": true, "schema": { "type": "string", "format": "uuid" } }, { "name": "versionNumber", "in": "path", "description": "The version number of the version to sign", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "requestBody": { "description": "ServiceRequest with the Fenergo.Nebula.Versioning.Models.ApproveAction signing data", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ApproveActionServiceRequest" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ApproveActionServiceRequest" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/ApproveActionServiceRequest" } } } }, "responses": { "202": { "description": "Accepted for processing", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/LocalisationVersionSignResponseServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/LocalisationVersionSignResponseServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/LocalisationVersionSignResponseServiceResponse" } } } }, "400": { "description": "Validation error", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "404": { "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Localisation with given ID does not exists", "type": "Error", "errorCode": "Error Code" } ] } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } } }, "/api/localisation/{localisationId}/version/{versionNumber}/archive": { "put": { "tags": [ "Localisation" ], "summary": "Archive an existing Version of a Localisation", "description": "\nThis method archives the selected version of an existing Localisation.

Required permissions:
Following permissions are required: LocalisationArchive", "operationId": "ArchiveLocalisationVersion", "parameters": [ { "name": "localisationId", "in": "path", "description": "The Id of the existing model", "required": true, "schema": { "type": "string", "format": "uuid" } }, { "name": "versionNumber", "in": "path", "description": "The version number of the version to archive", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "responses": { "202": { "description": "Accepted for processing" }, "400": { "description": "Validation error", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "404": { "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Localisation with given ID does not exists", "type": "Error", "errorCode": "Error Code" } ] } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } } }, "/api/localisationcontext/{localisationId}/version/{versionNumber}": { "post": { "tags": [ "LocalisationContext" ], "summary": "Create a new Localisation Context", "description": "\nThis method creates new Localisation Context to an existing Localisation\r\n\nPlease be awared only context with name Default will work for localisation\r\n\nContext is a logical area which groups fen-x pages or features\r\n\nFor example Default context is the generic context which is used by all fen-x components.

Required permissions:
Following permissions are required: LocalisationEdit", "operationId": "CreateLocalisationContext", "parameters": [ { "name": "localisationId", "in": "path", "required": true, "schema": { "type": "string", "format": "uuid" } }, { "name": "versionNumber", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocalisationContextDtoServiceRequest" } }, "text/json": { "schema": { "$ref": "#/components/schemas/LocalisationContextDtoServiceRequest" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/LocalisationContextDtoServiceRequest" } } } }, "responses": { "202": { "description": "Accepted for processing", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/LocalisationContextDtoServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/LocalisationContextDtoServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/LocalisationContextDtoServiceResponse" } } } }, "400": { "description": "Invalid request", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "404": { "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Localisation with given ID does not exists", "type": "Error", "errorCode": "Error Code" } ] } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } } }, "/api/localisationcontext/{localisationId}/version/{versionNumber}/context/{contextName}/metadata": { "put": { "tags": [ "LocalisationContext" ], "summary": "Update Localisation Context Metadata.", "description": "\nUpdate the Context metadata.\r\n\nThis can only affect the current context

Required permissions:
Following permissions are required: LocalisationEdit", "operationId": "UpdateLocalisationContextMetadata", "parameters": [ { "name": "localisationId", "in": "path", "description": "Localisation Id", "required": true, "schema": { "type": "string", "format": "uuid" } }, { "name": "versionNumber", "in": "path", "description": "Version Number", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "contextName", "in": "path", "description": "Context Name", "required": true, "schema": { "type": "string" } }, { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "requestBody": { "description": "ServiceRequest with the options", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateLocalisationContextMetadataDtoServiceRequest" } }, "text/json": { "schema": { "$ref": "#/components/schemas/UpdateLocalisationContextMetadataDtoServiceRequest" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/UpdateLocalisationContextMetadataDtoServiceRequest" } } } }, "responses": { "202": { "description": "Accepted for processing", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/UpdateLocalisationContextMetadataDtoServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/UpdateLocalisationContextMetadataDtoServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/UpdateLocalisationContextMetadataDtoServiceResponse" } } } }, "400": { "description": "Invalid request", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "404": { "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Localisation with given ID does not exists", "type": "Error", "errorCode": "Error Code" } ] } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } } }, "/api/localisationcontext/{localisationId}/version/{versionNumber}/context/{contextName}": { "delete": { "tags": [ "LocalisationContext" ], "summary": "Delete Localisation Context", "description": "\nThis method deletes an existing Localisation context and it's data as well.

Required permissions:
Following permissions are required: LocalisationDelete", "operationId": "DeleteLocalisationContext", "parameters": [ { "name": "localisationId", "in": "path", "description": "Localisation Id", "required": true, "schema": { "type": "string", "format": "uuid" } }, { "name": "versionNumber", "in": "path", "description": "Version Number", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "contextName", "in": "path", "description": "Context Name", "required": true, "schema": { "type": "string" } }, { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "responses": { "202": { "description": "Accepted for processing" }, "400": { "description": "Invalid request", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "404": { "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Localisation with given ID does not exists", "type": "Error", "errorCode": "Error Code" } ] } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } } }, "/api/localisationcontext/{localisationId}/version/{versionNumber}/context/{contextName}/filelite": { "put": { "tags": [ "LocalisationContext" ], "summary": "Update Localisation Context file by uploading a json file less than 5MB", "description": "\nUpdate the Context file and its values.\r\n\nBy updating the localisation context, you will replace the existing file\r\n\nThis can only affect the current context

Required permissions:
Following permissions are required: LocalisationEdit", "operationId": "UpdateLocalisationContextFileLite", "parameters": [ { "name": "localisationId", "in": "path", "description": "Localisation Id", "required": true, "schema": { "type": "string", "format": "uuid" } }, { "name": "versionNumber", "in": "path", "description": "Version Number", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "contextName", "in": "path", "description": "Context Name", "required": true, "schema": { "type": "string" } }, { "name": "displayName", "in": "query", "description": "Display Name", "schema": { "type": "string" } }, { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "requestBody": { "content": { "multipart/form-data": { "schema": { "required": [ "Data.File" ], "type": "object", "properties": { "Data.File": { "type": "string", "description": "File to be saved in the S3 storage\r\nFile must be in json type and max size is 6 MB", "format": "binary" } } }, "encoding": { "Data.File": { "style": "form" } } } } }, "responses": { "202": { "description": "Accepted for processing", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/UpdateLocalisationContextDtoServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/UpdateLocalisationContextDtoServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/UpdateLocalisationContextDtoServiceResponse" } } } }, "400": { "description": "Invalid request", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "404": { "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Localisation with given ID does not exists", "type": "Error", "errorCode": "Error Code" } ] } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } } }, "/api/localisationcontext/{localisationId}/version/{versionNumber}/context/{contextName}/file": { "delete": { "tags": [ "LocalisationContext" ], "summary": "Delete Localisation Context file", "description": "\nDelete the Context file.\r\n\nThis can only affect the current context

Required permissions:
Following permissions are required: LocalisationEdit", "operationId": "DeleteLocalisationContextFile", "parameters": [ { "name": "localisationId", "in": "path", "description": "Localisation Id", "required": true, "schema": { "type": "string", "format": "uuid" } }, { "name": "versionNumber", "in": "path", "description": "Version Number", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "contextName", "in": "path", "description": "Context Name", "required": true, "schema": { "type": "string" } }, { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "responses": { "202": { "description": "Accepted for processing", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/BooleanServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/BooleanServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/BooleanServiceResponse" } } } }, "400": { "description": "Invalid request", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "404": { "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Localisation with given ID does not exists", "type": "Error", "errorCode": "Error Code" } ] } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } } }, "/api/localisationcontext/{localisationId}/version/{versionNumber}/context/{contextName}/validate": { "post": { "tags": [ "LocalisationContext" ], "summary": "Validate Localisation Context File, Update Data Model and Refresh Cache if Pass Validation.", "description": "\nValidate localisation context json file, refresh data model and cache.\r\n\nIf validatation pass, data model and file cache will be refreshed.\r\n\nIf validatation fail, it will not refresh data model and cache.

Required permissions:
Following permissions are required: LocalisationEdit", "operationId": "ValidateContextAndRefreshCache", "parameters": [ { "name": "localisationId", "in": "path", "description": "Localisation Id", "required": true, "schema": { "type": "string", "format": "uuid" } }, { "name": "versionNumber", "in": "path", "description": "Version Number", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "contextName", "in": "path", "description": "Context Name", "required": true, "schema": { "type": "string" } }, { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "responses": { "202": { "description": "Accepted for processing", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidateContextAndRefreshCacheDtoServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidateContextAndRefreshCacheDtoServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidateContextAndRefreshCacheDtoServiceResponse" } } } }, "400": { "description": "Invalid request", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "404": { "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Localisation with given ID does not exists", "type": "Error", "errorCode": "Error Code" } ] } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } } }, "/api/userpreference": { "put": { "tags": [ "UserPreference" ], "summary": "Create or Update the user language preference", "description": "\nThis method creates or updates the user language preference.\r\n\nIf a user has not selected a language then tenant default language will be used.", "operationId": "UpdateUserPreference", "parameters": [ { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateUserPreferenceDtoServiceRequest" } }, "text/json": { "schema": { "$ref": "#/components/schemas/CreateUserPreferenceDtoServiceRequest" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/CreateUserPreferenceDtoServiceRequest" } } } }, "responses": { "202": { "description": "Accepted for processing", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/UserPreferenceDtoServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/UserPreferenceDtoServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/UserPreferenceDtoServiceResponse" } } } }, "400": { "description": "Invalid request", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } }, "delete": { "tags": [ "UserPreference" ], "summary": "Delete the user language preference", "description": "\nThis method delete the user language preference.\r\n\nIf a user has not selected a language then tenant default language will be used.", "operationId": "DeleteUserPreference", "parameters": [ { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "responses": { "202": { "description": "Accepted for processing" }, "400": { "description": "Invalid request", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "404": { "description": "Resource not found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "User does not exists", "type": "Error", "errorCode": "Error Code" } ] } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } } }, "/api/userpreference/systemdefault": { "put": { "tags": [ "UserPreference" ], "summary": "Set user localisation to System Language", "description": "\nThis method update user localisation to system language.", "operationId": "UpdateUserPreferenceToSystemDefault", "parameters": [ { "name": "X-TENANT-ID", "in": "header", "description": "The UiD of the tenant representing organization", "required": true, "schema": { "type": "string" }, "example": "b11f8be3-f29b-4959-8964-956d4af7c468" } ], "responses": { "202": { "description": "Accepted for processing", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/UserPreferenceDtoServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/UserPreferenceDtoServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/UserPreferenceDtoServiceResponse" } } } }, "400": { "description": "Invalid request", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidationErrorModelListServiceResponse" } } } }, "401": { "description": "User is not authorized to perform this request", "content": { "application/json": { "example": { "message": "Unauthorized" } } } }, "403": { "description": "Access to resource is forbidden.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": { }, "messages": [ { "message": "Access denied. Following permissions are required: Permission1, Permission2", "type": "Forbidden", "errorCode": "Error Code" } ] } } } }, "500": { "description": "Internal server exception. Please, contact your provider.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ObjectServiceResponse" }, "example": { "data": null, "messages": [ { "message": "Internal server exception. Please, contact your provider.", "type": "Error", "errorCode": "INTERNAL_SERVER_ERROR" } ] } } } }, "410": { "description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringServiceResponse" }, "example": { "data": null, "messages": [ { "message": "This endpoint is obsolete and was terminated on yyyy-MM-dd", "type": "Error", "errorCode": "OBSOLETE_ENDPOINT" } ] } } } } } } } }, "components": { "schemas": { "ApproveAction": { "type": "object", "properties": { "comment": { "type": "string", "nullable": true }, "decision": { "$ref": "#/components/schemas/Decision" }, "created": { "type": "string", "format": "date-time" } }, "additionalProperties": false }, "ApproveActionServiceRequest": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/ApproveAction" } }, "additionalProperties": false }, "Approver": { "type": "object", "properties": { "subject": { "type": "string", "nullable": true }, "successor": { "$ref": "#/components/schemas/Approver" }, "action": { "$ref": "#/components/schemas/ApproveAction" }, "hasProcessedRequest": { "type": "boolean", "readOnly": true } }, "additionalProperties": false }, "BooleanServiceResponse": { "type": "object", "properties": { "data": { "type": "boolean" }, "messages": { "type": "array", "items": { "$ref": "#/components/schemas/ServiceResponseMessage" }, "nullable": true } }, "additionalProperties": false }, "CreateUserPreferenceDto": { "required": [ "localisationId" ], "type": "object", "properties": { "localisationId": { "type": "string", "description": "Selected Localisation Id", "format": "uuid" } }, "additionalProperties": false }, "CreateUserPreferenceDtoServiceRequest": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/CreateUserPreferenceDto" } }, "additionalProperties": false }, "Decision": { "enum": [ "Approve", "Reject" ], "type": "string" }, "LocalisationContextDto": { "required": [ "values" ], "type": "object", "properties": { "name": { "type": "string", "description": "Name of the context", "nullable": true, "example": "Default" }, "description": { "type": "string", "description": "Description of the context", "nullable": true, "example": "Translation for Chinese" }, "displayName": { "type": "string", "description": "json File display name", "nullable": true }, "values": { "type": "object", "additionalProperties": { }, "description": "Localisation file for current context" } }, "additionalProperties": false, "description": "Defines the context of the localisation file" }, "LocalisationContextDtoServiceRequest": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/LocalisationContextDto" } }, "additionalProperties": false }, "LocalisationContextDtoServiceResponse": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/LocalisationContextDto" }, "messages": { "type": "array", "items": { "$ref": "#/components/schemas/ServiceResponseMessage" }, "nullable": true } }, "additionalProperties": false }, "LocalisationDto": { "type": "object", "properties": { "localisationId": { "type": "string", "description": "Localisation UiD", "format": "uuid", "example": "e1809731-77df-4e72-98e7-0d314b7a5151" }, "localisationIsoCode": { "type": "string", "description": "Localisation Iso Code in BCP47 standard", "nullable": true, "example": "en-AU" }, "versionNumber": { "type": "integer", "description": "The number of the model version", "format": "int32", "example": 1 }, "effectiveFrom": { "type": "string", "description": "The date that the version takes effect when published", "format": "date-time", "example": "2021-12-12T15:55:00.000Z" }, "created": { "type": "string", "description": "The creation date of the version (Read-only)", "format": "date-time", "example": "2021-12-12T15:55:00.000Z" }, "status": { "$ref": "#/components/schemas/VersionStatus" }, "isDefaultLocalisation": { "type": "boolean", "description": "Flag to display if this is a System Localisation. System Localisations cannot be deleted and LocalisationName cannot be updated", "example": false }, "initialiseLanguageWithDefaultData": { "type": "boolean", "description": "Flag to initialise language with default data", "example": true }, "signees": { "type": "array", "items": { "$ref": "#/components/schemas/Signee" }, "description": "The defined list of signees for the version", "nullable": true } }, "additionalProperties": false, "description": "Localisation representation" }, "LocalisationDtoServiceRequest": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/LocalisationDto" } }, "additionalProperties": false }, "LocalisationDtoServiceResponse": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/LocalisationDto" }, "messages": { "type": "array", "items": { "$ref": "#/components/schemas/ServiceResponseMessage" }, "nullable": true } }, "additionalProperties": false }, "LocalisationVersionSignResponse": { "type": "object", "properties": { "localisationId": { "type": "string", "description": "The Id of the Localisation Link the version belongs to", "format": "uuid" }, "versionNumber": { "type": "integer", "description": "The number of the version that has been signed", "format": "int32" }, "status": { "$ref": "#/components/schemas/VersionStatus" } }, "additionalProperties": false, "description": "Contains the new version Status, after a version sign operation" }, "LocalisationVersionSignResponseServiceResponse": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/LocalisationVersionSignResponse" }, "messages": { "type": "array", "items": { "$ref": "#/components/schemas/ServiceResponseMessage" }, "nullable": true } }, "additionalProperties": false }, "ObjectServiceResponse": { "type": "object", "properties": { "data": { "nullable": true }, "messages": { "type": "array", "items": { "$ref": "#/components/schemas/ServiceResponseMessage" }, "nullable": true } }, "additionalProperties": false }, "ProblemDetails": { "type": "object", "properties": { "type": { "type": "string", "nullable": true }, "title": { "type": "string", "nullable": true }, "status": { "type": "integer", "format": "int32", "nullable": true }, "detail": { "type": "string", "nullable": true }, "instance": { "type": "string", "nullable": true } }, "additionalProperties": { } }, "ServiceResponseMessage": { "type": "object", "properties": { "message": { "type": "string", "nullable": true }, "type": { "type": "string", "nullable": true }, "errorCode": { "type": "string", "nullable": true } }, "additionalProperties": false }, "Signee": { "type": "object", "properties": { "subject": { "type": "string", "nullable": true }, "successor": { "$ref": "#/components/schemas/Approver" }, "action": { "$ref": "#/components/schemas/ApproveAction" }, "hasProcessedRequest": { "type": "boolean", "readOnly": true } }, "additionalProperties": false }, "StringServiceResponse": { "type": "object", "properties": { "data": { "type": "string", "nullable": true }, "messages": { "type": "array", "items": { "$ref": "#/components/schemas/ServiceResponseMessage" }, "nullable": true } }, "additionalProperties": false }, "UpdateLocalisationContextDto": { "required": [ "values" ], "type": "object", "properties": { "description": { "type": "string", "description": "Description of the context", "nullable": true, "example": "Translation for Chinese" }, "values": { "type": "object", "additionalProperties": { }, "description": "Localisation file for current context" }, "displayName": { "type": "string", "description": "User desired name to display of the file", "nullable": true, "example": "ThaiTranslation" } }, "additionalProperties": false, "description": "Defines the context of the localisation file" }, "UpdateLocalisationContextDtoServiceResponse": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/UpdateLocalisationContextDto" }, "messages": { "type": "array", "items": { "$ref": "#/components/schemas/ServiceResponseMessage" }, "nullable": true } }, "additionalProperties": false }, "UpdateLocalisationContextMetadataDto": { "type": "object", "properties": { "description": { "type": "string", "description": "Description of the context", "nullable": true, "example": "Translation for Chinese" } }, "additionalProperties": false, "description": "Defines the context of the localisation file" }, "UpdateLocalisationContextMetadataDtoServiceRequest": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/UpdateLocalisationContextMetadataDto" } }, "additionalProperties": false }, "UpdateLocalisationContextMetadataDtoServiceResponse": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/UpdateLocalisationContextMetadataDto" }, "messages": { "type": "array", "items": { "$ref": "#/components/schemas/ServiceResponseMessage" }, "nullable": true } }, "additionalProperties": false }, "UpdateLocalisationDto": { "type": "object", "properties": { "isDefaultLocalisation": { "type": "boolean", "description": "`true` to set System, Localisation `false` standard Localisation", "example": true } }, "additionalProperties": false }, "UpdateLocalisationVersionDto": { "type": "object", "properties": { "localisationId": { "type": "string", "description": "Localisation UiD", "format": "uuid", "example": "e1809731-77df-4e72-98e7-0d314b7a5151" }, "localisationIsoCode": { "type": "string", "description": "Localisation Iso Code in BCP47 standard", "nullable": true, "example": "en-AU" }, "isNumberSeparatorEnabled": { "type": "boolean", "description": "Flag to enable number separator", "example": false }, "isMasterFileEnabled": { "type": "boolean", "description": "Flag to enable master file for the language pack", "example": false }, "versionNumber": { "type": "integer", "description": "The number of the model version", "format": "int32", "example": 1 }, "effectiveFrom": { "type": "string", "description": "The date that the version takes effect when published", "format": "date-time", "example": "2021-12-12T15:55:00.000Z" }, "signees": { "type": "array", "items": { "$ref": "#/components/schemas/Signee" }, "description": "The defined list of signees for the version", "nullable": true } }, "additionalProperties": false, "description": "Set of properties which define new version of Localisation" }, "UpdateLocalisationVersionDtoServiceRequest": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/UpdateLocalisationVersionDto" } }, "additionalProperties": false }, "UserPreferenceDto": { "type": "object", "properties": { "id": { "type": "string", "description": "UserPreference Model Id", "format": "uuid" }, "userId": { "type": "string", "description": "User Id", "nullable": true }, "localisationId": { "type": "string", "description": "Selected Localisation Id", "format": "uuid" } }, "additionalProperties": false }, "UserPreferenceDtoServiceResponse": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/UserPreferenceDto" }, "messages": { "type": "array", "items": { "$ref": "#/components/schemas/ServiceResponseMessage" }, "nullable": true } }, "additionalProperties": false }, "ValidateContextAndRefreshCacheDto": { "type": "object", "properties": { "isContextValid": { "type": "boolean" }, "message": { "type": "string", "nullable": true } }, "additionalProperties": false, "description": "Response of ValidateContextAndRefreshCache" }, "ValidateContextAndRefreshCacheDtoServiceResponse": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/ValidateContextAndRefreshCacheDto" }, "messages": { "type": "array", "items": { "$ref": "#/components/schemas/ServiceResponseMessage" }, "nullable": true } }, "additionalProperties": false }, "ValidationErrorModel": { "type": "object", "properties": { "propertyName": { "type": "string", "nullable": true }, "errorMessage": { "type": "string", "nullable": true }, "attemptedValue": { "nullable": true }, "errorCode": { "type": "string", "nullable": true } }, "additionalProperties": false }, "ValidationErrorModelListServiceResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/ValidationErrorModel" }, "nullable": true }, "messages": { "type": "array", "items": { "$ref": "#/components/schemas/ServiceResponseMessage" }, "nullable": true } }, "additionalProperties": false, "example": { "data": [ { "propertyName": "data", "errorMessage": "Data is required", "attemptedValue": "", "errorCode": "NotNullValidator" } ], "messages": [ { "message": "Data is required", "type": "Error", "errorCode": "Error Code" } ] } }, "VersionStatus": { "enum": [ "Draft", "Pending", "Rejected", "Published", "Archived", "Deleted" ], "type": "string" } }, "securitySchemes": { "Bearer": { "type": "apiKey", "description": "Please insert JWT with Bearer into field", "name": "Authorization", "in": "header" } } }, "security": [ { "Bearer": [ ] } ] }