{
"openapi": "3.0.4",
"info": {
"title": "Fenergo Nebula Policy Command",
"description": "Policy Command API is part of FenX eco-system to manage Requirement Sets, Requirements, Data Groups and Data Group Fields Instances. All the operations require valid access token obtained from Identity service.",
"version": "2.0"
},
"servers": [
{
"url": "/policycommand"
}
],
"paths": {
"/api/v2/policies/{entityPolicyId}/document-requirements": {
"post": {
"tags": [
"DocumentRequirement"
],
"summary": "Create a new policy document requirement",
"description": "Creates a new document requirement within the specified policy context
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "CreateDocumentRequirement",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Create document requirement request",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/DocumentRequirementRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. Document requirement created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateDocumentRequirementResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/document-requirements/{documentRequirementId}": {
"put": {
"tags": [
"DocumentRequirement"
],
"summary": "Update a policy document requirement",
"description": "Updates an existing document requirement within the specified policy context
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "UpdateDocumentRequirement",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "documentRequirementId",
"in": "path",
"description": "Document Requirement ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Update document requirement request",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/DocumentRequirementRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. Document requirement updated",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateDocumentRequirementResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or document requirement with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
},
"delete": {
"tags": [
"DocumentRequirement"
],
"summary": "Delete a policy document requirement",
"description": "Deletes an existing document requirement from the specified policy context
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "DeleteDocumentRequirement",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "documentRequirementId",
"in": "path",
"description": "Document requirement ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Success. Document requirement deleted"
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or document requirement with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/document-requirements/{documentRequirementId}/revert": {
"put": {
"tags": [
"DocumentRequirement"
],
"summary": "Revert a policy document requirement changes",
"description": "Reverts changes made to an existing document requirement within the specified workspace context.
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "RevertDocumentRequirement",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "documentRequirementId",
"in": "path",
"description": "Document requirement ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Success. Document requirement updated",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or document requirement with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/e-signature-document-requirements": {
"post": {
"tags": [
"ESignatureDocumentRequirement"
],
"summary": "Create a new policy e-signature document requirement",
"description": "Creates a new e-signature document requirement within the specified policy context
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "CreateESignatureDocumentRequirement",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Create e-signature document requirement request",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/ESignatureDocumentRequirementRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. E-Signature document requirement created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateESignatureDocumentRequirementResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/e-signature-document-requirements/{eSignatureDocumentRequirementId}": {
"put": {
"tags": [
"ESignatureDocumentRequirement"
],
"summary": "Update a e-signature policy document requirement",
"description": "Updates an existing e-signature document requirement within the specified policy context
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "UpdateESignatureDocumentRequirement",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "eSignatureDocumentRequirementId",
"in": "path",
"description": "E-Signature Document Requirement ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Update e-signature document requirement request",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/ESignatureDocumentRequirementRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. E-Signature Document requirement updated",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateESignatureDocumentRequirementResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or e-signature document requirement with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
},
"delete": {
"tags": [
"ESignatureDocumentRequirement"
],
"summary": "Delete a e-signature policy document requirement",
"description": "Deletes an existing e-signature document requirement from the specified policy context
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "DeleteESignatureDocumentRequirement",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "eSignatureDocumentRequirementId",
"in": "path",
"description": "E-Signature Document requirement ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Success. E-Signature Document requirement deleted"
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or e-signature document requirement with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/e-signature-document-requirements/{eSignatureDocumentRequirementId}/revert": {
"put": {
"tags": [
"ESignatureDocumentRequirement"
],
"summary": "Revert a e-signature policy document requirement changes",
"description": "Reverts changes made to an existing e-signature document requirement within the specified workspace context.
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "RevertESignatureDocumentRequirement",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "eSignatureDocumentRequirementId",
"in": "path",
"description": "E-Signature Document requirement ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Success. E-Signature Document requirement updated",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or e-signature document requirement with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/fields": {
"post": {
"tags": [
"Field"
],
"summary": "Create a new policy field",
"description": "Creates a new field within the specified policy context
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "CreatePolicyField",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Create field request",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/PolicyFieldRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. Field created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreatePolicyFieldResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy with a given ID does not exist",
"status": 404
}
}
}
},
"409": {
"description": "Conflict saving changes in expected version",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.8",
"title": "There are conflicts that cannot be resolved automatically, get latest and apply your changes",
"detail": "There are conflicts that cannot be resolved automatically, get latest and apply your changes",
"status": 409,
"errorCode": "CONFLICT"
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/fields/{fieldId}": {
"put": {
"tags": [
"Field"
],
"summary": "Update a policy field",
"description": "Updates an existing field within the specified policy context
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "UpdatePolicyField",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "fieldId",
"in": "path",
"description": "Field ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Update field request",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/PolicyFieldRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. Field updated",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdatePolicyFieldResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or field with a given ID does not exist",
"status": 404
}
}
}
},
"409": {
"description": "Conflict saving changes in expected version",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.8",
"title": "There are conflicts that cannot be resolved automatically, get latest and apply your changes",
"detail": "There are conflicts that cannot be resolved automatically, get latest and apply your changes",
"status": 409,
"errorCode": "CONFLICT"
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
},
"delete": {
"tags": [
"Field"
],
"summary": "Delete a policy field",
"description": "Deletes an existing field from the specified policy context
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "DeletePolicyField",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "fieldId",
"in": "path",
"description": "Field ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Success. Field deleted"
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or field with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/fields/{fieldId}/revert": {
"put": {
"tags": [
"Field"
],
"summary": "Revert a policy field changes",
"description": "Reverts changes made to an existing field within the specified workspace context.
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "RevertPolicyField",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "fieldId",
"in": "path",
"description": "Field ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Success. Field updated",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or field with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/jurisdictions": {
"post": {
"tags": [
"Jurisdiction"
],
"summary": "Create a new policy jurisdiction",
"description": "Creates a new jurisdiction within the specified policy context
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "CreatePolicyJurisdiction",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Create jurisdiction request",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/CreateEntityPolicyJurisdictionRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. Jurisdiction created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateEntityPolicyJurisdictionResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/jurisdictions/{jurisdictionId}": {
"put": {
"tags": [
"Jurisdiction"
],
"summary": "Update a policy jurisdiction",
"description": "Updates an existing jurisdiction within the specified policy context
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "UpdatePolicyJurisdiction",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "jurisdictionId",
"in": "path",
"description": "Jurisdiction ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Update jurisdiction request",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateEntityPolicyJurisdictionRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. Jurisdiction updated",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateEntityPolicyJurisdictionResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or jurisdiction with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
},
"delete": {
"tags": [
"Jurisdiction"
],
"summary": "Delete a policy jurisdiction",
"description": "Deletes an existing jurisdiction from the specified policy context
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "DeletePolicyJurisdiction",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "jurisdictionId",
"in": "path",
"description": "Jurisdiction ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Success. Jurisdiction deleted"
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or jurisdiction with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/jurisdictions/{jurisdictionId}/revert": {
"put": {
"tags": [
"Jurisdiction"
],
"summary": "Revert a policy jurisdiction changes",
"description": "Reverts changes made to an existing jurisdiction within the specified workspace context
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "RevertPolicyJurisdiction",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "jurisdictionId",
"in": "path",
"description": "Jurisdiction ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Success. Jurisdiction reverted"
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or jurisdiction with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies": {
"post": {
"tags": [
"Policy"
],
"summary": "Create a new entity policy",
"description": "Creates a new policy for the specified entity type
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "CreatePolicy",
"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": {
"description": "Create entity policy request",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/CreateEntityPolicyRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. Entity policy created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateEntityPolicyResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/versions/draft": {
"post": {
"tags": [
"Policy"
],
"summary": "Create a draft version of an existing policy",
"description": "Creates a new draft version for the specified policy that can be edited
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "CreatePolicyDraft",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy 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": "Success. Policy draft created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateEntityPolicyDraftResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/versions/draft-from-version": {
"post": {
"tags": [
"Policy"
],
"summary": "Create a draft version from an older version of a policy",
"description": "Creates a new draft version whose content mirrors an older published or archived version\nof the specified policy. The changes are applied within the supplied workspace.
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "CreatePolicyDraftFromVersion",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy 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"
}
],
"requestBody": {
"description": "Create draft from version request",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/CreateDraftFromVersionRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. Policy draft created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateEntityPolicyDraftResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or source version with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/publish": {
"put": {
"tags": [
"Policy"
],
"summary": "Publish a policy version",
"description": "Publishes the current draft version of a policy, making it active
Required permissions:
Following permissions are required: PolicyConfigurationApprove",
"operationId": "PublishPolicy",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Success. Policy published",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy with a given ID does not exist",
"status": 404
}
}
}
},
"409": {
"description": "Conflict saving changes in expected version",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.8",
"title": "There are conflicts that cannot be resolved automatically, get latest and apply your changes",
"detail": "There are conflicts that cannot be resolved automatically, get latest and apply your changes",
"status": 409,
"errorCode": "CONFLICT"
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/version/{versionNumber}/archive": {
"put": {
"tags": [
"Policy"
],
"summary": "Archive a specific policy version",
"description": "Archives the specified version of a policy, making it inactive.\nOnly the last published version can be archived.
Required permissions:
Following permissions are required: PolicyConfigurationArchive",
"operationId": "ArchivePolicy",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "versionNumber",
"in": "path",
"description": "Version number to archive",
"required": true,
"schema": {
"minimum": 1,
"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": "Archive policy request with reason",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/ArchiveEntityPolicyRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. Policy version archived",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ArchiveEntityPolicyResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or version with given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/lock-workspace": {
"put": {
"tags": [
"Policy"
],
"summary": "Lock a policy workspace",
"description": "Locks the specified workspace for a policy, preventing other users from making changes
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "LockPolicyWorkspace",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Success. Policy workspace locked",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/unlock-workspace": {
"put": {
"tags": [
"Policy"
],
"summary": "Unlock a policy workspace",
"description": "Unlocks the specified workspace for a policy, allowing other users to make changes
Required permissions:
Following permissions are required: PolicyConfigurationApprove",
"operationId": "UnlockPolicyWorkspace",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Success. Policy workspace unlocked",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/details": {
"put": {
"tags": [
"Policy"
],
"summary": "Update policy details",
"description": "Updates the details of a policy such as version notes and other metadata
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "UpdatePolicyDetails",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Update policy details request",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateEntityPolicyDetailsRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. Policy details updated",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/revert": {
"put": {
"tags": [
"Policy"
],
"summary": "Revert all draft changes in a policy workspace",
"description": "Reverts all changes made in the specified workspace back to the last published state.
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "RevertPolicyWorkspace",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Success. Workspace changes reverted",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policy-diff": {
"post": {
"tags": [
"PolicyDiff"
],
"summary": "Start a Policy Diff for an uploaded source policy configuration.",
"description": "Stores the uploaded config, creates a tracking business process and triggers asynchronous\ndiff computation. Returns the business process id used to poll for the result.
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "StartPolicyDiff",
"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": {
"allOf": [
{
"$ref": "#/components/schemas/PolicyDiffInputDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Accepted. Diff processing has started.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StartPolicyDiffResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policy-diff/{diffGenerationBusinessProcessId}": {
"get": {
"tags": [
"PolicyDiff"
],
"summary": "Get the result of a previously started Policy Diff.",
"description": "Returns the business process status. When completed, the payload carries a short-lived\npresigned URL to the diff artifact.
Required permissions:
Following permissions are required: PolicyConfigurationAccess",
"operationId": "GetPolicyDiffResult",
"parameters": [
{
"name": "diffGenerationBusinessProcessId",
"in": "path",
"description": "Business process id returned when the diff was started",
"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": {
"200": {
"description": "Success. Returns the diff status (and artifact URL when completed).",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PolicyDiffResultDtoServiceResponse"
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. No diff exists for the given business process id.",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/related-party-requirements": {
"post": {
"tags": [
"RelatedPartyRequirement"
],
"summary": "Create a new policy related party requirement",
"description": "Creates a new related party requirement within the specified policy context
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "CreateRelatedPartyRequirement",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Create related party requirement request",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/RelatedPartyRequirementRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. Related party requirement created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateRelatedPartyRequirementResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/related-party-requirements/{relatedPartyRequirementId}": {
"put": {
"tags": [
"RelatedPartyRequirement"
],
"summary": "Update a related party policy requirement",
"description": "Updates an existing related party requirement within the specified policy context
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "UpdateRelatedPartyRequirement",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "relatedPartyRequirementId",
"in": "path",
"description": "Related Party Requirement ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Update related party requirement request",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/RelatedPartyRequirementRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. Related party requirement updated",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateRelatedPartyRequirementResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or related party requirement with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
},
"delete": {
"tags": [
"RelatedPartyRequirement"
],
"summary": "Delete a related party policy requirement",
"description": "Deletes an existing related party requirement from the specified policy context
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "DeleteRelatedPartyRequirement",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "relatedPartyRequirementId",
"in": "path",
"description": "Related Party Requirement ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Success. Related Party Requirement deleted"
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or related party requirement with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/policies/{entityPolicyId}/related-party-requirements/{relatedPartyRequirementId}/revert": {
"put": {
"tags": [
"RelatedPartyRequirement"
],
"summary": "Revert a related party policy requirement changes",
"description": "Reverts changes made to an existing related party requirement within the specified workspace context.
Required permissions:
Following permissions are required: PolicyConfigurationEdit",
"operationId": "RevertRelatedPartyRequirement",
"parameters": [
{
"name": "entityPolicyId",
"in": "path",
"description": "Policy ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "relatedPartyRequirementId",
"in": "path",
"description": "Related Party Requirement ID",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "workspaceId",
"in": "query",
"description": "Optional workspace ID",
"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": "Success. Related Party Requirement updated",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found. Policy or related party requirement with a given ID does not exist",
"status": 404
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/workspaces": {
"post": {
"tags": [
"Workspace"
],
"summary": "Create workspace",
"description": "
Required permissions:
Following permissions are required: PolicyWorkspaceConfigurationEdit",
"operationId": "CreateWorkspace",
"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": {
"allOf": [
{
"$ref": "#/components/schemas/CreateWorkspaceRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. Workspace created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateWorkspaceResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/workspaces/{workspaceId}": {
"put": {
"tags": [
"Workspace"
],
"summary": "Update workspace",
"description": "
Required permissions:
Following permissions are required: PolicyWorkspaceConfigurationEdit",
"operationId": "UpdateWorkspace",
"parameters": [
{
"name": "workspaceId",
"in": "path",
"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": {
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateWorkspaceRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. Workspace updated"
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.4",
"title": "Resource not found",
"detail": "Not Found",
"status": 404
}
}
}
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/workspaces/bulk-delete": {
"put": {
"tags": [
"Workspace"
],
"summary": "Bulk soft delete workspaces",
"description": "
Required permissions:
Following permissions are required: PolicyWorkspaceConfigurationEdit",
"operationId": "BulkDeleteWorkspaces",
"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": {
"allOf": [
{
"$ref": "#/components/schemas/BulkSoftDeleteWorkspaceRequestDtoServiceRequest"
}
],
"description": "Service request data"
}
}
}
},
"responses": {
"202": {
"description": "Success. Workspaces soft deleted"
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
},
"/api/v2/workspaces/current": {
"put": {
"tags": [
"Workspace"
],
"summary": "Update workspace preference for the current user",
"operationId": "UpdateCurrentUserWorkspace",
"parameters": [
{
"name": "workspaceId",
"in": "query",
"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": "Success. Present workspace updated"
},
"400": {
"description": "One or more validation errors occurred",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred",
"detail": "Name is required",
"status": 400,
"errorCode": "VALIDATION_ERROR",
"validationErrors": [
{
"propertyName": "Name",
"errorMessage": "Name is required",
"attemptedValue": "",
"validatorType": "NotEmptyValidator"
}
]
}
}
}
},
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.3",
"title": "Access to resource is forbidden.",
"detail": "Access denied. Following permissions are required: Permission1, Permission2",
"status": 403
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.6.1",
"title": "Internal server exception. Please, contact your provider.",
"detail": null,
"status": 500,
"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/ProblemDetails"
},
"example": {
"type": "https://datatracker.ietf.org/doc/html/rfc7231#section-6.5.9",
"title": "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.",
"detail": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"status": 410,
"errorCode": "OBSOLETE_ENDPOINT"
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"AccessLayerDto": {
"required": [
"businessRelated",
"geographic"
],
"type": "object",
"properties": {
"geographic": {
"type": "array",
"items": {
"maxLength": 500,
"minLength": 1,
"type": "string"
},
"description": "Collection of geographic access layers"
},
"businessRelated": {
"type": "array",
"items": {
"maxLength": 500,
"minLength": 1,
"type": "string"
},
"description": "Collection of business related access layers"
}
},
"additionalProperties": false,
"description": "DTO representing associated access layers"
},
"AccessLayerDto2": {
"type": "object",
"properties": {
"geographic": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"businessRelated": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
}
},
"additionalProperties": false
},
"ArchiveEntityPolicyRequestDto": {
"type": "object",
"properties": {
"reason": {
"maxLength": 100,
"type": "string",
"description": "Represents the reason provided for archiving a policy entity",
"nullable": true,
"example": "Archived due to invalid KYC field configuration."
}
},
"additionalProperties": false
},
"ArchiveEntityPolicyRequestDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/ArchiveEntityPolicyRequestDto"
}
],
"description": "The service request DTO",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service request data"
},
"ArchiveEntityPolicyResponseDto": {
"type": "object",
"properties": {
"archivedVersionNumber": {
"type": "integer",
"format": "int32"
},
"lastPublishedVersionNumber": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"ArchiveEntityPolicyResponseDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/ArchiveEntityPolicyResponseDto"
}
],
"description": "The service response DTO",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"BasicRuleDto": {
"type": "object",
"properties": {
"active": {
"type": "boolean",
"description": "Validation rule active flag",
"example": true
},
"message": {
"type": "string",
"description": "Validation rule error message",
"nullable": true,
"example": "Validation error occurred"
}
},
"additionalProperties": false,
"description": "Request DTO representing basic validation rule metadata"
},
"BasicRuleDto2": {
"required": [
"errorMessage"
],
"type": "object",
"properties": {
"errorMessage": {
"minLength": 1,
"type": "string",
"description": "Validation rule error message",
"example": "Validation error occurred"
}
},
"additionalProperties": false,
"description": "Request DTO representing basic validation rule metadata"
},
"BasicRuleDtoConditionalValidationRuleDto": {
"type": "object",
"properties": {
"isActive": {
"type": "boolean",
"description": "Validation rule active flag",
"example": true
},
"staticRule": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto2"
}
],
"description": "Static validation rule always applied when active",
"nullable": true
},
"dynamicRules": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BasicRuleDtoConditionalValueDto"
},
"description": "Conditional validation rules",
"nullable": true
}
},
"additionalProperties": false
},
"BasicRuleDtoConditionalValueDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the condition",
"format": "uuid",
"example": "118313c6-91e6-4b05-a537-5a1ab906418f"
},
"name": {
"type": "string",
"description": "The name of the condition",
"nullable": true,
"example": "Company-type only"
},
"description": {
"type": "string",
"description": "The description of the condition",
"nullable": true,
"example": "Applicable only when EntityType=Company"
},
"logicalOperation": {
"type": "string",
"description": "Logical operation on the Fenergo.Nebula.Platform.LogicEngine.Model.Dto.ConditionDto.Operands collection",
"nullable": true,
"example": "AND"
},
"operands": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDefinitionDto"
},
"description": "Collection of operands for given condition. These might contain additional, nested conditions of type Fenergo.Nebula.Platform.LogicEngine.Model.Dto.ConditionDefinitionDto",
"nullable": true
},
"value": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto2"
}
],
"description": "Request DTO representing basic validation rule metadata",
"nullable": true
},
"priority": {
"type": "integer",
"description": "Priority of the value in case when multiple conditional values are evaluated",
"format": "int32",
"example": 1
}
},
"additionalProperties": false
},
"BasicRuleDtoValidationRuleDto": {
"required": [
"staticRule"
],
"type": "object",
"properties": {
"isActive": {
"type": "boolean",
"description": "Validation rule active flag",
"example": true
},
"staticRule": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto2"
}
],
"description": "Static validation rule always applied when active"
}
},
"additionalProperties": false
},
"BulkSoftDeleteWorkspaceRequestDto": {
"required": [
"ids"
],
"type": "object",
"properties": {
"ids": {
"minItems": 1,
"uniqueItems": true,
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"description": "List of workspace IDs to delete. A maximum of 20 IDs can be provided per request."
}
},
"additionalProperties": false,
"description": "Delete workspaces in bulk request"
},
"BulkSoftDeleteWorkspaceRequestDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/BulkSoftDeleteWorkspaceRequestDto"
}
],
"description": "Delete workspaces in bulk request",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service request data"
},
"CollectionMaximumCountRuleDto": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto"
},
{
"type": "object",
"properties": {
"requiredTypesMaxCount": {
"type": "object",
"additionalProperties": {
"type": "integer",
"format": "int32"
},
"description": "Dictionary of required Primary Data Group Field values with maximum count",
"nullable": true,
"example": {
"Registered": 1
}
},
"overallMaximumCount": {
"type": "integer",
"description": "Overall maximum count",
"format": "int32",
"nullable": true,
"example": 1
}
},
"additionalProperties": false
}
],
"description": "Request DTO representing collection maximum count validation rule metadata"
},
"CollectionMaximumCountRuleDto2": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto2"
},
{
"type": "object",
"properties": {
"requiredTypesMaxCount": {
"type": "object",
"additionalProperties": {
"type": "integer",
"format": "int32"
},
"description": "Dictionary of required Primary Data Group Field values with maximum count",
"nullable": true,
"example": {
"Registered": 1
}
},
"overallMaximumCount": {
"type": "integer",
"description": "Overall maximum count",
"format": "int32",
"nullable": true,
"example": 1
}
},
"additionalProperties": false
}
],
"description": "Request DTO representing collection maximum count validation rule metadata"
},
"CollectionMaximumCountRuleDtoValidationRuleDto": {
"type": "object",
"properties": {
"isActive": {
"type": "boolean",
"description": "Validation rule active flag",
"example": true
},
"staticRule": {
"allOf": [
{
"$ref": "#/components/schemas/CollectionMaximumCountRuleDto2"
}
],
"description": "Static validation rule always applied when active",
"nullable": true
}
},
"additionalProperties": false
},
"CollectionMinimumCountRuleDto": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto"
},
{
"type": "object",
"properties": {
"requiredTypesMinCount": {
"type": "object",
"additionalProperties": {
"type": "integer",
"format": "int32"
},
"description": "Dictionary of required Primary Data Group Field values with minimum count",
"nullable": true,
"example": {
"Registered": 1
}
},
"overallMinimumCount": {
"type": "integer",
"description": "Overall minimum count",
"format": "int32",
"example": 1
}
},
"additionalProperties": false
}
],
"description": "Request DTO representing collection minimum count validation rule metadata"
},
"CollectionMinimumCountRuleDto2": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto2"
},
{
"type": "object",
"properties": {
"requiredTypesMinCount": {
"type": "object",
"additionalProperties": {
"type": "integer",
"format": "int32"
},
"description": "Dictionary of required Primary Data Group Field values with minimum count",
"nullable": true,
"example": {
"Registered": 1
}
},
"overallMinimumCount": {
"type": "integer",
"description": "Overall minimum count",
"format": "int32",
"example": 1
}
},
"additionalProperties": false
}
],
"description": "Request DTO representing collection minimum count validation rule metadata"
},
"CollectionMinimumCountRuleDtoValidationRuleDto": {
"type": "object",
"properties": {
"isActive": {
"type": "boolean",
"description": "Validation rule active flag",
"example": true
},
"staticRule": {
"allOf": [
{
"$ref": "#/components/schemas/CollectionMinimumCountRuleDto2"
}
],
"description": "Static validation rule always applied when active",
"nullable": true
}
},
"additionalProperties": false
},
"ConditionDefinitionDto": {
"type": "object",
"properties": {
"fieldName": {
"type": "string",
"description": "Name of the field to evaluate",
"nullable": true,
"example": "EntityType"
},
"value": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of values",
"nullable": true
},
"valueId": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of value ids",
"nullable": true
},
"valueType": {
"type": "string",
"description": "Type of the value",
"nullable": true,
"example": "text"
},
"dataSource": {
"type": "string",
"description": "Data source from which field is retrieved. If empty then Entity Data properties will be used.",
"nullable": true,
"example": "entityDataMetadata"
},
"operation": {
"type": "string",
"description": "Logical operation to be performed to match the values",
"nullable": true,
"example": "equal"
},
"logicalOperation": {
"type": "string",
"description": "Logical operation to be performed on the operands collection",
"nullable": true,
"example": "AND"
},
"operands": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDefinitionDto"
},
"description": "Collection of operands for given condition. These might contain additional, nested conditions of type Fenergo.Nebula.Platform.LogicEngine.Model.Dto.ConditionDefinitionDto",
"nullable": true
},
"valueField": {
"allOf": [
{
"$ref": "#/components/schemas/ValueField"
}
],
"description": "Field value used for conditional limit validation",
"nullable": true
}
},
"additionalProperties": false,
"description": "Represents condition"
},
"ConditionDto": {
"required": [
"logicalOperation",
"name",
"operands"
],
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the condition",
"format": "uuid",
"example": "118313c6-91e6-4b05-a537-5a1ab906418f"
},
"name": {
"minLength": 1,
"type": "string",
"description": "The name of the condition",
"example": "Company-type only"
},
"description": {
"type": "string",
"description": "The description of the condition",
"nullable": true,
"example": "Applicable only when EntityType=Company"
},
"logicalOperation": {
"minLength": 1,
"type": "string",
"description": "Logical operation on the Fenergo.Nebula.Platform.LogicEngine.Model.Dto.ConditionDto.Operands collection",
"example": "AND"
},
"operands": {
"minItems": 1,
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDefinitionDto"
},
"description": "Collection of operands for given condition. These might contain additional, nested conditions of type Fenergo.Nebula.Platform.LogicEngine.Model.Dto.ConditionDefinitionDto"
}
},
"additionalProperties": false,
"description": "Represents condition root",
"example": {
"id": "118313c6-91e6-4b05-a537-5a1ab906418f",
"name": "Company-type only",
"description": "Applicable only when EntityType=Company",
"logicalOperation": "AND",
"operands": [
{
"fieldName": "EntityType",
"value": [
"string"
],
"valueType": "text",
"operation": "equal",
"operands": [ ]
}
]
}
},
"ConditionalValueDto": {
"allOf": [
{
"$ref": "#/components/schemas/StringConditionalValueDto"
},
{
"type": "object",
"properties": {
"valueId": {
"type": "string",
"description": "Value Id that should be returned when conditions are met",
"nullable": true,
"example": "RM"
}
},
"additionalProperties": false
}
]
},
"ConditionalValueDto`1": {
"allOf": [
{
"$ref": "#/components/schemas/ConditionDto"
},
{
"type": "object",
"properties": {
"value": {
"allOf": [
{
"$ref": "#/components/schemas/T"
}
],
"description": "Value that should be returned when conditions are met",
"nullable": true
},
"priority": {
"type": "integer",
"description": "Priority of the value in case when multiple conditional values are evaluated",
"format": "int32",
"example": 1
}
},
"additionalProperties": false
}
]
},
"CreateDocumentRequirementResponseDto": {
"required": [
"documentRequirementId"
],
"type": "object",
"properties": {
"documentRequirementId": {
"type": "string",
"description": "Gets the unique identifier for a policy document requirement.",
"format": "uuid",
"example": "e8283926-9059-4381-99b7-4f7e3da99a83"
}
},
"additionalProperties": false,
"description": "Represents the response for creating a new policy document requirement."
},
"CreateDocumentRequirementResponseDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/CreateDocumentRequirementResponseDto"
}
],
"description": "Represents the response for creating a new policy document requirement.",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"CreateDraftFromVersionRequestDto": {
"required": [
"sourceVersionNumber",
"workspaceId"
],
"type": "object",
"properties": {
"sourceVersionNumber": {
"type": "integer",
"description": "The published/archived version number to create the draft from.",
"format": "int32",
"example": 3
},
"workspaceId": {
"type": "string",
"description": "The workspace the draft changes are applied in.",
"format": "uuid",
"example": "46b34a29-d426-407e-b1cc-98d727ed4883"
},
"versionNote": {
"maxLength": 2000,
"type": "string",
"description": "Optional version notes for the new draft. When omitted a default note is generated.",
"nullable": true,
"example": "Restoring configuration from version 3"
}
},
"additionalProperties": false,
"description": "Request to create a new draft from an older published/archived version of a policy."
},
"CreateDraftFromVersionRequestDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/CreateDraftFromVersionRequestDto"
}
],
"description": "Request to create a new draft from an older published/archived version of a policy.",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service request data"
},
"CreateESignatureDocumentRequirementResponseDto": {
"required": [
"eSignatureDocumentRequirementId"
],
"type": "object",
"properties": {
"eSignatureDocumentRequirementId": {
"type": "string",
"description": "Gets the unique identifier for a policy e-signature document requirement.",
"format": "uuid",
"example": "e8283926-9059-4381-99b7-4f7e3da99a83"
}
},
"additionalProperties": false,
"description": "Represents the response for creating a new policy e-signature document requirement."
},
"CreateESignatureDocumentRequirementResponseDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/CreateESignatureDocumentRequirementResponseDto"
}
],
"description": "Represents the response for creating a new policy e-signature document requirement.",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"CreateEntityPolicyDraftResponseDto": {
"required": [
"entityPolicyId",
"entityType",
"status",
"versionNumber"
],
"type": "object",
"properties": {
"entityPolicyId": {
"type": "string",
"description": "Unique identifier of Policy",
"format": "uuid",
"example": "46b34a29-d426-407e-b1cc-98d727ed4883"
},
"versionNumber": {
"type": "integer",
"description": "Version of created Policy",
"format": "int32",
"example": 1
},
"entityType": {
"enum": [
"Individual",
"Company",
"Other",
"Entity Group",
"Managed Relationship",
"Financial Crime Report",
"Team Metadata",
"Transaction Monitoring Case"
],
"type": "string",
"description": "Related type of the entity",
"nullable": true,
"example": "Company"
},
"status": {
"enum": [
"Draft",
"Published",
"Archived"
],
"type": "string",
"description": "Status of created Policy",
"nullable": true,
"example": "Draft"
}
},
"additionalProperties": false,
"description": "Response DTO representing created Policy"
},
"CreateEntityPolicyDraftResponseDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/CreateEntityPolicyDraftResponseDto"
}
],
"description": "Response DTO representing created Policy",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"CreateEntityPolicyJurisdictionRequestDto": {
"required": [
"description",
"name"
],
"type": "object",
"properties": {
"name": {
"maxLength": 60,
"minLength": 1,
"type": "string",
"description": "Name of the jurisdiction",
"example": "Global"
},
"description": {
"maxLength": 255,
"minLength": 1,
"type": "string",
"description": "Description of the jurisdiction",
"example": "Default jurisdiction"
},
"conditions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDto"
},
"description": "Conditions when the jurisdiction is applicable",
"nullable": true
}
},
"additionalProperties": false,
"description": "Create jurisdiction request"
},
"CreateEntityPolicyJurisdictionRequestDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/CreateEntityPolicyJurisdictionRequestDto"
}
],
"description": "Create jurisdiction request",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service request data"
},
"CreateEntityPolicyJurisdictionResponseDto": {
"required": [
"jurisdictionId"
],
"type": "object",
"properties": {
"jurisdictionId": {
"type": "string",
"description": "ID of the jurisdiction",
"format": "uuid",
"example": "102c63eb-6be0-481f-98f0-eea7fa29cc01"
}
},
"additionalProperties": false,
"description": "Create jurisdiction response"
},
"CreateEntityPolicyJurisdictionResponseDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/CreateEntityPolicyJurisdictionResponseDto"
}
],
"description": "Create jurisdiction response",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"CreateEntityPolicyRequestDto": {
"required": [
"entityType"
],
"type": "object",
"properties": {
"entityType": {
"minLength": 1,
"enum": [
"Individual",
"Company",
"Other",
"Entity Group",
"Managed Relationship",
"Financial Crime Report",
"Team Metadata",
"Transaction Monitoring Case"
],
"type": "string",
"description": "Related type of the entity",
"example": "Company"
}
},
"additionalProperties": false,
"description": "Create policy request"
},
"CreateEntityPolicyRequestDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/CreateEntityPolicyRequestDto"
}
],
"description": "Create policy request",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service request data"
},
"CreateEntityPolicyResponseDto": {
"required": [
"entityPolicyId",
"entityType",
"status",
"versionNumber"
],
"type": "object",
"properties": {
"entityPolicyId": {
"type": "string",
"description": "Unique identifier of Policy",
"format": "uuid",
"example": "46b34a29-d426-407e-b1cc-98d727ed4883"
},
"versionNumber": {
"type": "integer",
"description": "Version of created Policy",
"format": "int32",
"example": 1
},
"entityType": {
"enum": [
"Individual",
"Company",
"Other",
"Entity Group",
"Managed Relationship",
"Financial Crime Report",
"Team Metadata",
"Transaction Monitoring Case"
],
"type": "string",
"description": "Related type of the entity",
"nullable": true,
"example": "Company"
},
"status": {
"enum": [
"Draft",
"Published",
"Archived"
],
"type": "string",
"description": "Status of created Policy",
"nullable": true,
"example": "Draft"
}
},
"additionalProperties": false,
"description": "Response DTO representing created Policy"
},
"CreateEntityPolicyResponseDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/CreateEntityPolicyResponseDto"
}
],
"description": "Response DTO representing created Policy",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"CreatePolicyFieldResponseDto": {
"required": [
"fieldId"
],
"type": "object",
"properties": {
"fieldId": {
"type": "string",
"description": "Gets the unique identifier for a policy field.",
"format": "uuid",
"example": "102c63eb-6be0-481f-98f0-eea7fa29cc01"
}
},
"additionalProperties": false,
"description": "Represents the response for creating a new policy field."
},
"CreatePolicyFieldResponseDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/CreatePolicyFieldResponseDto"
}
],
"description": "Represents the response for creating a new policy field.",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"CreateRelatedPartyRequirementResponseDto": {
"required": [
"relatedPartyRequirementId"
],
"type": "object",
"properties": {
"relatedPartyRequirementId": {
"type": "string",
"description": "Gets the unique identifier for a policy related party requirement.",
"format": "uuid",
"example": "e8283926-9059-4381-99b7-4f7e3da99a83"
}
},
"additionalProperties": false,
"description": "Represents the response for creating a new policy related party requirement."
},
"CreateRelatedPartyRequirementResponseDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/CreateRelatedPartyRequirementResponseDto"
}
],
"description": "Represents the response for creating a new policy related party requirement.",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"CreateWorkspaceRequestDto": {
"required": [
"name"
],
"type": "object",
"properties": {
"name": {
"maxLength": 60,
"minLength": 1,
"type": "string",
"description": "Name of Workspace",
"example": "Global configurators"
},
"description": {
"maxLength": 255,
"type": "string",
"description": "Description of Workspace",
"nullable": true,
"example": "Workspace for global configurators"
}
},
"additionalProperties": false,
"description": "Create workspace request"
},
"CreateWorkspaceRequestDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/CreateWorkspaceRequestDto"
}
],
"description": "Create workspace request",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service request data"
},
"CreateWorkspaceResponseDto": {
"required": [
"workspaceId"
],
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"description": "Unique identifier of Workspace",
"format": "uuid",
"example": "46b34a29-d426-407e-b1cc-98d727ed4883"
}
},
"additionalProperties": false,
"description": "Response DTO representing created Workspace"
},
"CreateWorkspaceResponseDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/CreateWorkspaceResponseDto"
}
],
"description": "Response DTO representing created Workspace",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"DataValidationRulesDto": {
"type": "object",
"properties": {
"mandatory": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDtoConditionalValidationRuleDto"
}
],
"description": "Mandatory Rule - does not allow empty value",
"nullable": true
},
"specialCharacters": {
"allOf": [
{
"$ref": "#/components/schemas/SpecialCharactersRuleDtoValidationRuleDto"
}
],
"description": "Special characters validation rule - does not allow special characters,\nbut allows define array of characters which can be ignored by the validation",
"nullable": true
},
"noNumbers": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDtoValidationRuleDto"
}
],
"description": "Validation rule that does not allow numbers",
"nullable": true
},
"onlyInteger": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDtoValidationRuleDto"
}
],
"description": "Validation rule that allows only integers",
"nullable": true
},
"noNegative": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDtoValidationRuleDto"
}
],
"description": "Validation rule that does not allow negative numbers",
"nullable": true
},
"onlyDecimal": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDtoValidationRuleDto"
}
],
"description": "Validation rule that allows numbers up to two decimal places",
"nullable": true
},
"regex": {
"allOf": [
{
"$ref": "#/components/schemas/RegexRuleDtoConditionalValidationRuleDto"
}
],
"description": "Validation rule that validates the value against provided regex",
"nullable": true
},
"characterLimit": {
"allOf": [
{
"$ref": "#/components/schemas/ValueLimitRuleDtoValidationRuleDto"
}
],
"description": "Validation rule that allows to set minimum and maximum count of characters",
"nullable": true
},
"numberLimit": {
"allOf": [
{
"$ref": "#/components/schemas/ValueLimitRuleDtoValidationRuleDto"
}
],
"description": "Validation rule that allows to set number range",
"nullable": true
},
"noFutureDates": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDtoValidationRuleDto"
}
],
"description": "Validation rule that does not allow future dates",
"nullable": true
},
"noPastDates": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDtoValidationRuleDto"
}
],
"description": "Validation rule that does not allow past dates",
"nullable": true
},
"dateLimit": {
"allOf": [
{
"$ref": "#/components/schemas/DateLimitRuleDtoConditionalValidationRuleDto"
}
],
"description": "Validation rule that allows to set date range",
"nullable": true
},
"multiSelectLimit": {
"allOf": [
{
"$ref": "#/components/schemas/ValueLimitRuleDtoConditionalValidationRuleDto"
}
],
"description": "Validation rule that allows to set selection range",
"nullable": true
},
"collectionMinimumCount": {
"allOf": [
{
"$ref": "#/components/schemas/CollectionMinimumCountRuleDtoValidationRuleDto"
}
],
"description": "Validation rule that allows to set minimum count requirements for collection",
"nullable": true
},
"collectionMaximumCount": {
"allOf": [
{
"$ref": "#/components/schemas/CollectionMaximumCountRuleDtoValidationRuleDto"
}
],
"description": "Validation rule that allows to set maximum count requirements for collection",
"nullable": true
},
"externalProvider": {
"allOf": [
{
"$ref": "#/components/schemas/ExternalProviderRuleDtoValidationRuleDto"
}
],
"description": "Validation rule that allows to use external provider for validation",
"nullable": true
},
"externalDataGroupProvider": {
"allOf": [
{
"$ref": "#/components/schemas/ExternalProviderRuleDtoValidationRuleDto"
}
],
"description": "Validation rule that allows to use external provider for validation of one field with other fields as context",
"nullable": true
},
"readOnly": {
"allOf": [
{
"$ref": "#/components/schemas/EmptyRuleDtoConditionalValidationRuleDto"
}
],
"description": "Validation rule that allows to set if field should be read only",
"nullable": true
},
"conditionalLimit": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDtoConditionalValidationRuleDto"
}
],
"description": "Validation rule that validates the dynamic value against provided condition",
"nullable": true
},
"timeZoneId": {
"type": "string",
"description": "Time zone id used for date values validation in order to determine exact Today time range",
"nullable": true,
"example": "Europe/Warsaw"
}
},
"additionalProperties": false,
"description": "Request DTO representing validation data metadata"
},
"DateLimitRuleDto": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto"
},
{
"type": "object",
"properties": {
"minDate": {
"type": "string",
"description": "Minimum date",
"format": "date-time",
"nullable": true,
"example": "2020-01-01T14:48:00.000Z"
},
"maxDate": {
"type": "string",
"description": "Maximum date",
"format": "date-time",
"nullable": true,
"example": "2021-01-01T14:48:00.000Z"
}
},
"additionalProperties": false
}
],
"description": "Request DTO representing date limit rule metadata"
},
"DateLimitRuleDto2": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto2"
},
{
"type": "object",
"properties": {
"minDate": {
"type": "string",
"description": "Minimum date",
"format": "date-time",
"nullable": true,
"example": "2020-01-01T14:48:00.000Z"
},
"maxDate": {
"type": "string",
"description": "Maximum date",
"format": "date-time",
"nullable": true,
"example": "2021-01-01T14:48:00.000Z"
}
},
"additionalProperties": false
}
],
"description": "Request DTO representing date limit rule metadata"
},
"DateLimitRuleDtoConditionalValidationRuleDto": {
"type": "object",
"properties": {
"isActive": {
"type": "boolean",
"description": "Validation rule active flag",
"example": true
},
"staticRule": {
"allOf": [
{
"$ref": "#/components/schemas/DateLimitRuleDto2"
}
],
"description": "Static validation rule always applied when active",
"nullable": true
},
"dynamicRules": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DateLimitRuleDtoConditionalValueDto"
},
"description": "Conditional validation rules",
"nullable": true
}
},
"additionalProperties": false
},
"DateLimitRuleDtoConditionalValueDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the condition",
"format": "uuid",
"example": "118313c6-91e6-4b05-a537-5a1ab906418f"
},
"name": {
"type": "string",
"description": "The name of the condition",
"nullable": true,
"example": "Company-type only"
},
"description": {
"type": "string",
"description": "The description of the condition",
"nullable": true,
"example": "Applicable only when EntityType=Company"
},
"logicalOperation": {
"type": "string",
"description": "Logical operation on the Fenergo.Nebula.Platform.LogicEngine.Model.Dto.ConditionDto.Operands collection",
"nullable": true,
"example": "AND"
},
"operands": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDefinitionDto"
},
"description": "Collection of operands for given condition. These might contain additional, nested conditions of type Fenergo.Nebula.Platform.LogicEngine.Model.Dto.ConditionDefinitionDto",
"nullable": true
},
"value": {
"allOf": [
{
"$ref": "#/components/schemas/DateLimitRuleDto2"
}
],
"description": "Request DTO representing date limit rule metadata",
"nullable": true
},
"priority": {
"type": "integer",
"description": "Priority of the value in case when multiple conditional values are evaluated",
"format": "int32",
"example": 1
}
},
"additionalProperties": false
},
"DateTimePeriodFormulaSchemaDto": {
"required": [
"formulaSetId",
"formulaString"
],
"type": "object",
"properties": {
"formulaSetId": {
"minLength": 1,
"type": "string",
"format": "uuid"
},
"versionNumber": {
"type": "integer",
"format": "int32",
"nullable": true
},
"formulaString": {
"minLength": 1,
"type": "string"
},
"dateTimePeriodFormulaVariables": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/DateTimePeriodFormulaVariableDto"
},
"nullable": true
}
},
"additionalProperties": false
},
"DateTimePeriodFormulaVariableDto": {
"type": "object",
"properties": {
"dataSource": {
"type": "string",
"nullable": true
},
"timePeriodKind": {
"type": "string",
"nullable": true
},
"value": {
"type": "string",
"nullable": true
},
"type": {
"type": "string",
"nullable": true
},
"timeZoneId": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"DocumentRequirementRequestDto": {
"required": [
"categories",
"conditions",
"dataKey",
"description",
"jurisdictionIds",
"name",
"references",
"tags",
"targetEntities"
],
"type": "object",
"properties": {
"name": {
"maxLength": 700,
"minLength": 1,
"type": "string",
"description": "Name of the document requirement",
"example": "First Name"
},
"dataKey": {
"maxLength": 700,
"minLength": 1,
"type": "string",
"description": "Data key for the document requirement",
"example": "firstName"
},
"description": {
"maxLength": 1200,
"minLength": 1,
"type": "string",
"description": "Description of the document requirement",
"example": "Client's first name"
},
"tooltipDescription": {
"maxLength": 1200,
"type": "string",
"description": "Description of the document requirement tooltip",
"nullable": true,
"example": "Client's first name"
},
"classification": {
"type": "string",
"description": "Classification of the document requirement",
"nullable": true,
"example": "FATCA"
},
"categories": {
"minItems": 1,
"type": "array",
"items": {
"maxLength": 250,
"minLength": 1,
"type": "string"
},
"description": "Categories the document requirement belongs to",
"example": [
"Basic Details",
"Personal Information"
]
},
"targetEntities": {
"minItems": 1,
"type": "array",
"items": {
"type": "string"
},
"description": "Target entities for the document requirement",
"example": [
"Client"
]
},
"accessLayers": {
"allOf": [
{
"$ref": "#/components/schemas/AccessLayerDto"
}
],
"description": "Access layers for the document requirement",
"nullable": true
},
"references": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReferenceDto"
},
"description": "References for the document requirement"
},
"conditions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDto"
},
"description": "Conditions for the document requirement"
},
"legacyValidationRules": {
"allOf": [
{
"$ref": "#/components/schemas/ValidationRuleDto"
}
],
"description": "Legacy Validation Rule - required for compatibility",
"nullable": true,
"deprecated": true
},
"validationRules": {
"allOf": [
{
"$ref": "#/components/schemas/DocumentRequirementValidationRulesDto"
}
],
"description": "Request DTO representing validation data for document requirements",
"nullable": true
},
"acceptableDocumentTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Acceptable document types for the document requirement",
"nullable": true
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "Tags for the document requirement",
"example": [
"Required",
"Personal"
]
},
"jurisdictionIds": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"description": "A collection of unique identifiers that represent jurisdictions\nassociated with the policy document requirement."
},
"dataProtectionJurisdictionId": {
"type": "string",
"description": "Identifier for the jurisdiction in which the data protection regulations apply",
"format": "uuid",
"nullable": true
}
},
"additionalProperties": false,
"description": "Create policy document requirement"
},
"DocumentRequirementRequestDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/DocumentRequirementRequestDto"
}
],
"description": "Create policy document requirement",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service request data"
},
"DocumentRequirementValidationRulesDto": {
"type": "object",
"properties": {
"mandatory": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDtoValidationRuleDto"
}
],
"description": "Mandatory Rule - does not allow empty value",
"nullable": true
}
},
"additionalProperties": false,
"description": "Request DTO representing validation data for document requirements"
},
"DocumentRequirementViewModelDto": {
"type": "object",
"properties": {
"entityPolicyId": {
"type": "string",
"format": "uuid"
},
"versionNumber": {
"type": "integer",
"format": "int32"
},
"documentRequirementId": {
"type": "string",
"format": "uuid"
},
"documentRequirementVersion": {
"type": "integer",
"format": "int32"
},
"changeType": {
"enum": [
"Unchanged",
"Added",
"Updated",
"Deleted",
"Locked"
],
"type": "string",
"nullable": true
},
"lockDetails": {
"allOf": [
{
"$ref": "#/components/schemas/LockDetailsDto"
}
],
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"dataKey": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"tooltipDescription": {
"type": "string",
"nullable": true
},
"classification": {
"type": "string",
"nullable": true
},
"categories": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"targetEntities": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"accessLayers": {
"allOf": [
{
"$ref": "#/components/schemas/AccessLayerDto2"
}
],
"nullable": true
},
"references": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReferenceDto2"
},
"nullable": true
},
"conditions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDto"
},
"nullable": true
},
"validationRules": {
"allOf": [
{
"$ref": "#/components/schemas/DocumentRequirementValidationRulesDto"
}
],
"description": "Request DTO representing validation data for document requirements",
"nullable": true
},
"acceptableDocumentTypes": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"jurisdictionIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"nullable": true
},
"dataProtectionJurisdictionId": {
"type": "string",
"format": "uuid",
"nullable": true
}
},
"additionalProperties": false
},
"ESignatureDocumentRequirementRequestDto": {
"required": [
"categories",
"conditions",
"dataKey",
"description",
"jurisdictionIds",
"name",
"references",
"tags",
"targetEntities"
],
"type": "object",
"properties": {
"name": {
"maxLength": 700,
"minLength": 1,
"type": "string",
"description": "Name of the e-signature document requirement",
"example": "First Name"
},
"dataKey": {
"maxLength": 700,
"minLength": 1,
"type": "string",
"description": "Data key for the e-signature document requirement",
"example": "firstName"
},
"description": {
"maxLength": 1200,
"minLength": 1,
"type": "string",
"description": "Description of the e-signature document requirement",
"example": "Client's first name"
},
"tooltipDescription": {
"maxLength": 1200,
"type": "string",
"description": "Description of the e-signature document requirement tooltip",
"nullable": true,
"example": "Client's first name"
},
"classification": {
"type": "string",
"description": "Classification of the e-signature document requirement",
"nullable": true,
"example": "FATCA"
},
"categories": {
"minItems": 1,
"type": "array",
"items": {
"maxLength": 250,
"minLength": 1,
"type": "string"
},
"description": "Categories the e-signature document requirement belongs to",
"example": [
"Basic Details",
"Personal Information"
]
},
"targetEntities": {
"minItems": 1,
"type": "array",
"items": {
"type": "string"
},
"description": "Target entities for the e-signature document requirement",
"example": [
"Client"
]
},
"accessLayers": {
"allOf": [
{
"$ref": "#/components/schemas/AccessLayerDto"
}
],
"description": "Access layers for the e-signature document requirement",
"nullable": true
},
"references": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReferenceDto"
},
"description": "References for the e-signature document requirement"
},
"conditions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDto"
},
"description": "Conditions for the e-signature document requirement"
},
"legacyValidationRules": {
"allOf": [
{
"$ref": "#/components/schemas/ValidationRuleDto"
}
],
"description": "Legacy Validation Rule - required for compatibility",
"nullable": true,
"deprecated": true
},
"validationRules": {
"allOf": [
{
"$ref": "#/components/schemas/ESignatureDocumentRequirementValidationRulesDto"
}
],
"description": "Request DTO representing validation data for e-signature document requirements",
"nullable": true
},
"acceptableDocumentTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Acceptable document types for the e-signature document requirement",
"nullable": true
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "Tags for the e-signature document requirement",
"example": [
"Required",
"Personal"
]
},
"jurisdictionIds": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"description": "A collection of unique identifiers that represent jurisdictions\nassociated with the policy e-signature document requirement."
},
"dataProtectionJurisdictionId": {
"type": "string",
"description": "Identifier for the jurisdiction in which the data protection regulations apply",
"format": "uuid",
"nullable": true
}
},
"additionalProperties": false,
"description": "Create policy e-signature document requirement"
},
"ESignatureDocumentRequirementRequestDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/ESignatureDocumentRequirementRequestDto"
}
],
"description": "Create policy e-signature document requirement",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service request data"
},
"ESignatureDocumentRequirementValidationRulesDto": {
"type": "object",
"properties": {
"mandatory": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDtoValidationRuleDto"
}
],
"description": "Mandatory Rule - does not allow empty value",
"nullable": true
}
},
"additionalProperties": false,
"description": "Request DTO representing validation data for e-signature document requirements"
},
"ESignatureDocumentRequirementViewModelDto": {
"type": "object",
"properties": {
"entityPolicyId": {
"type": "string",
"format": "uuid"
},
"versionNumber": {
"type": "integer",
"format": "int32"
},
"eSignatureDocumentRequirementId": {
"type": "string",
"format": "uuid"
},
"eSignatureDocumentRequirementVersion": {
"type": "integer",
"format": "int32"
},
"changeType": {
"enum": [
"Unchanged",
"Added",
"Updated",
"Deleted",
"Locked"
],
"type": "string",
"nullable": true
},
"lockDetails": {
"allOf": [
{
"$ref": "#/components/schemas/LockDetailsDto"
}
],
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"dataKey": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"tooltipDescription": {
"type": "string",
"nullable": true
},
"classification": {
"type": "string",
"nullable": true
},
"categories": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"targetEntities": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"accessLayers": {
"allOf": [
{
"$ref": "#/components/schemas/AccessLayerDto2"
}
],
"nullable": true
},
"references": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReferenceDto2"
},
"nullable": true
},
"conditions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDto"
},
"nullable": true
},
"validationRules": {
"allOf": [
{
"$ref": "#/components/schemas/ESignatureDocumentRequirementValidationRulesDto"
}
],
"description": "Request DTO representing validation data for e-signature document requirements",
"nullable": true
},
"acceptableDocumentTypes": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"jurisdictionIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"nullable": true
},
"dataProtectionJurisdictionId": {
"type": "string",
"format": "uuid",
"nullable": true
}
},
"additionalProperties": false
},
"EmptyRuleDto": {
"type": "object",
"additionalProperties": false,
"description": "Request DTO representing rule with no parameters"
},
"EmptyRuleDtoConditionalValidationRuleDto": {
"type": "object",
"properties": {
"isActive": {
"type": "boolean",
"description": "Validation rule active flag",
"example": true
},
"staticRule": {
"allOf": [
{
"$ref": "#/components/schemas/EmptyRuleDto"
}
],
"description": "Static validation rule always applied when active",
"nullable": true
},
"dynamicRules": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EmptyRuleDtoConditionalValueDto"
},
"description": "Conditional validation rules",
"nullable": true
}
},
"additionalProperties": false
},
"EmptyRuleDtoConditionalValueDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the condition",
"format": "uuid",
"example": "118313c6-91e6-4b05-a537-5a1ab906418f"
},
"name": {
"type": "string",
"description": "The name of the condition",
"nullable": true,
"example": "Company-type only"
},
"description": {
"type": "string",
"description": "The description of the condition",
"nullable": true,
"example": "Applicable only when EntityType=Company"
},
"logicalOperation": {
"type": "string",
"description": "Logical operation on the Fenergo.Nebula.Platform.LogicEngine.Model.Dto.ConditionDto.Operands collection",
"nullable": true,
"example": "AND"
},
"operands": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDefinitionDto"
},
"description": "Collection of operands for given condition. These might contain additional, nested conditions of type Fenergo.Nebula.Platform.LogicEngine.Model.Dto.ConditionDefinitionDto",
"nullable": true
},
"value": {
"allOf": [
{
"$ref": "#/components/schemas/EmptyRuleDto"
}
],
"description": "Request DTO representing rule with no parameters",
"nullable": true
},
"priority": {
"type": "integer",
"description": "Priority of the value in case when multiple conditional values are evaluated",
"format": "int32",
"example": 1
}
},
"additionalProperties": false
},
"ExternalProviderRuleDto": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto"
},
{
"type": "object",
"properties": {
"providerId": {
"type": "string",
"description": "Id of external provider.",
"format": "uuid"
}
},
"additionalProperties": false
}
],
"description": "Request DTO representing external provider rule metadata"
},
"ExternalProviderRuleDto2": {
"allOf": [
{
"$ref": "#/components/schemas/EmptyRuleDto"
},
{
"type": "object",
"properties": {
"providerId": {
"type": "string",
"description": "Id of external provider.",
"format": "uuid"
}
},
"additionalProperties": false
}
],
"description": "Request DTO representing external provider rule metadata"
},
"ExternalProviderRuleDtoValidationRuleDto": {
"type": "object",
"properties": {
"isActive": {
"type": "boolean",
"description": "Validation rule active flag",
"example": true
},
"staticRule": {
"allOf": [
{
"$ref": "#/components/schemas/ExternalProviderRuleDto2"
}
],
"description": "Static validation rule always applied when active",
"nullable": true
}
},
"additionalProperties": false
},
"FilterConditionDto": {
"type": "object",
"properties": {
"fieldName": {
"type": "string",
"description": "Field name for the filter condition",
"nullable": true
},
"conditions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDto"
},
"description": "Conditions applied to the field",
"nullable": true
}
},
"additionalProperties": false
},
"HttpValidationProblemDetails": {
"allOf": [
{
"$ref": "#/components/schemas/ProblemDetails"
},
{
"type": "object",
"properties": {
"errors": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
},
"nullable": true
}
},
"additionalProperties": { }
}
]
},
"JurisdictionViewModelDto": {
"type": "object",
"properties": {
"entityPolicyId": {
"type": "string",
"format": "uuid"
},
"versionNumber": {
"type": "integer",
"format": "int32"
},
"jurisdictionId": {
"type": "string",
"format": "uuid"
},
"changeType": {
"enum": [
"Unchanged",
"Added",
"Updated",
"Deleted",
"Locked"
],
"type": "string",
"nullable": true
},
"lockDetails": {
"allOf": [
{
"$ref": "#/components/schemas/LockDetailsDto"
}
],
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"conditions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDto"
},
"nullable": true
}
},
"additionalProperties": false
},
"LockDetailsDto": {
"type": "object",
"properties": {
"lockedByWorkspaceId": {
"type": "string",
"format": "uuid"
},
"lockedByWorkspaceName": {
"type": "string",
"nullable": true
},
"lockChangeType": {
"enum": [
"Updated",
"Deleted"
],
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"NumberFormulaSchemaDto": {
"required": [
"formulaSetId",
"formulaString"
],
"type": "object",
"properties": {
"formulaSetId": {
"minLength": 1,
"type": "string",
"format": "uuid"
},
"versionNumber": {
"type": "integer",
"format": "int32",
"nullable": true
},
"formulaString": {
"minLength": 1,
"type": "string"
},
"formulaVariables": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/NumberFormulaVariableDto"
},
"nullable": true
}
},
"additionalProperties": false
},
"NumberFormulaVariableDto": {
"type": "object",
"properties": {
"dataSource": {
"type": "string",
"nullable": true
},
"propertyName": {
"type": "string",
"nullable": true
},
"filterConditions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/FilterConditionDto"
},
"nullable": true
}
},
"additionalProperties": false
},
"PolicyDiffInputDto": {
"required": [
"entityType"
],
"type": "object",
"properties": {
"entityType": {
"minLength": 1,
"type": "string",
"description": "The entity type of the source policy (also used to resolve the target).",
"example": "Company"
},
"targetVersionNumber": {
"type": "integer",
"description": "Optional target policy version to diff against. When provided, the existing policy at this\nversion is loaded as the diff target; when omitted, the latest published version is used.",
"format": "int32",
"nullable": true,
"example": 5
},
"jurisdictions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/JurisdictionViewModelDto"
},
"nullable": true
},
"policyFields": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PolicyFieldViewModelDto"
},
"nullable": true
},
"documentRequirements": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DocumentRequirementViewModelDto"
},
"nullable": true
},
"eSignatureDocumentRequirements": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ESignatureDocumentRequirementViewModelDto"
},
"nullable": true
},
"relatedPartyRequirements": {
"type": "array",
"items": {
"$ref": "#/components/schemas/RelatedPartyRequirementViewModelDto"
},
"nullable": true
}
},
"additionalProperties": false,
"description": "The source policy configuration uploaded to start a Policy Diff.\nContains the full V2 view-model snapshot of the source policy as typed DTOs."
},
"PolicyDiffInputDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/PolicyDiffInputDto"
}
],
"description": "The source policy configuration uploaded to start a Policy Diff.\nContains the full V2 view-model snapshot of the source policy as typed DTOs.",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service request data"
},
"PolicyDiffResultDto": {
"required": [
"status"
],
"type": "object",
"properties": {
"status": {
"type": "string",
"nullable": true
},
"error": {
"type": "string",
"nullable": true
},
"payload": {
"allOf": [
{
"$ref": "#/components/schemas/PolicyDiffResultPayloadDto"
}
],
"nullable": true
}
},
"additionalProperties": false,
"description": "Result of a Policy Diff lookup. Shape depends on Fenergo.Nebula.Policy.Command.Application.PolicyV2Diff.PolicyDiff.PolicyDiffResultDto.Status:\n- `InProgress`: only Fenergo.Nebula.Policy.Command.Application.PolicyV2Diff.PolicyDiff.PolicyDiffResultDto.Status.
- `Failed`: Fenergo.Nebula.Policy.Command.Application.PolicyV2Diff.PolicyDiff.PolicyDiffResultDto.Status + Fenergo.Nebula.Policy.Command.Application.PolicyV2Diff.PolicyDiff.PolicyDiffResultDto.Error.
- `Completed`: Fenergo.Nebula.Policy.Command.Application.PolicyV2Diff.PolicyDiff.PolicyDiffResultDto.Status + Fenergo.Nebula.Policy.Command.Application.PolicyV2Diff.PolicyDiff.PolicyDiffResultDto.Payload (with presigned URL).
"
},
"PolicyDiffResultDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/PolicyDiffResultDto"
}
],
"description": "Result of a Policy Diff lookup. Shape depends on Fenergo.Nebula.Policy.Command.Application.PolicyV2Diff.PolicyDiff.PolicyDiffResultDto.Status:\n- `InProgress`: only Fenergo.Nebula.Policy.Command.Application.PolicyV2Diff.PolicyDiff.PolicyDiffResultDto.Status.
- `Failed`: Fenergo.Nebula.Policy.Command.Application.PolicyV2Diff.PolicyDiff.PolicyDiffResultDto.Status + Fenergo.Nebula.Policy.Command.Application.PolicyV2Diff.PolicyDiff.PolicyDiffResultDto.Error.
- `Completed`: Fenergo.Nebula.Policy.Command.Application.PolicyV2Diff.PolicyDiff.PolicyDiffResultDto.Status + Fenergo.Nebula.Policy.Command.Application.PolicyV2Diff.PolicyDiff.PolicyDiffResultDto.Payload (with presigned URL).
",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"PolicyDiffResultPayloadDto": {
"required": [
"url"
],
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Presigned URL (valid for 10 minutes) to the diff artifact.",
"nullable": true
},
"targetEntityType": {
"type": "string",
"nullable": true
},
"targetVersionNumber": {
"type": "integer",
"format": "int32",
"nullable": true
},
"targetPolicyId": {
"type": "string",
"description": "Id of the target policy against which the diff was computed.",
"format": "uuid",
"nullable": true
}
},
"additionalProperties": false
},
"PolicyFieldRequestDto": {
"required": [
"categories",
"dataKey",
"fieldType",
"name",
"references",
"tags",
"targetEntities"
],
"type": "object",
"properties": {
"name": {
"maxLength": 700,
"minLength": 1,
"type": "string",
"description": "Name of the field",
"example": "First Name"
},
"description": {
"maxLength": 1200,
"type": "string",
"description": "Description of the field",
"nullable": true,
"example": "Client's first name"
},
"dataKey": {
"maxLength": 700,
"minLength": 1,
"type": "string",
"description": "Data key for the field",
"example": "firstName"
},
"fieldType": {
"minLength": 1,
"type": "string",
"description": "Type of the field",
"example": "text"
},
"fieldTypeId": {
"type": "string",
"description": "ID of the field type",
"format": "uuid",
"nullable": true,
"example": "ab92ecbc-bd77-494b-acad-3d2fb0b8136c"
},
"linkChildFieldDataKey": {
"type": "string",
"description": "Key of the child field linked to this field",
"nullable": true,
"example": "childField"
},
"linkedParentFieldDataKey": {
"type": "string",
"description": "Key of the parent field linked to this field",
"nullable": true,
"example": "parentField"
},
"externalSearchApiProviderId": {
"type": "string",
"description": "External search API Provider ID",
"format": "uuid",
"nullable": true,
"example": "ab92ecbc-bd77-494b-acad-3d2fb0b8136c"
},
"formulaSchema": {
"allOf": [
{
"$ref": "#/components/schemas/NumberFormulaSchemaDto"
}
],
"description": "Number formula schema",
"nullable": true
},
"dateTimePeriodFormulaSchema": {
"allOf": [
{
"$ref": "#/components/schemas/DateTimePeriodFormulaSchemaDto"
}
],
"description": "Date formula schema",
"nullable": true
},
"order": {
"type": "number",
"description": "Order in which the field appears",
"format": "double",
"nullable": true,
"example": 1
},
"defaultValue": {
"maxLength": 500,
"type": "string",
"description": "Default value for the field",
"nullable": true,
"example": "John"
},
"classification": {
"type": "string",
"description": "Classification of the field",
"nullable": true,
"example": "FATCA"
},
"categories": {
"minItems": 1,
"type": "array",
"items": {
"maxLength": 250,
"minLength": 1,
"type": "string"
},
"description": "Categories the field belongs to",
"example": [
"Basic Details",
"Personal Information"
]
},
"targetEntities": {
"type": "array",
"items": {
"type": "string"
},
"description": "Target entities for the field",
"example": [
"Client"
]
},
"isReadOnly": {
"type": "boolean",
"description": "Whether the field is read-only",
"example": false
},
"isJourneyLevelData": {
"type": "boolean",
"description": "Whether the field is journey level data",
"example": false
},
"isIndexable": {
"type": "boolean",
"description": "Whether the field is indexable",
"example": true
},
"isSensitiveData": {
"type": "boolean",
"description": "Whether the field contains sensitive data",
"example": false
},
"isMaterialData": {
"type": "boolean",
"description": "Whether the field is material data",
"example": false
},
"uiDecoration": {
"type": "string",
"description": "UI decoration for the field. Only applicable for (link)select/multi-select and statusV2fields\nFor select/multi-select fields, it defines how the options are presented to the user. Valid values are:\n- RadioButtons\n- Checkboxes\nFor statusV2 fields, it defines where the status chip is displayed. Valid values are:\n- EntityProfile\n- JourneyHub\nFor multiple values '|' is being used as delimiter, e.g. 'EntityProfile|JourneyHub'",
"nullable": true,
"example": "Checkboxes"
},
"uiDecorationColor": {
"type": "string",
"description": "UI decoration color for the field. Only applicable for statusV2 field",
"nullable": true,
"example": "#FF0000"
},
"accessLayers": {
"allOf": [
{
"$ref": "#/components/schemas/AccessLayerDto"
}
],
"description": "Access layers for the field",
"nullable": true
},
"references": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReferenceDto"
},
"description": "References for the field"
},
"conditions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDto"
},
"description": "Conditions for the field",
"nullable": true
},
"conditionalValues": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionalValueDto"
},
"description": "Conditional values for the field",
"nullable": true
},
"legacyValidationRules": {
"allOf": [
{
"$ref": "#/components/schemas/ValidationRuleDto"
}
],
"description": "Legacy Validation Rule - required for compatibility",
"nullable": true,
"deprecated": true
},
"validationRules": {
"allOf": [
{
"$ref": "#/components/schemas/DataValidationRulesDto"
}
],
"description": "Request DTO representing validation data metadata",
"nullable": true
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "Tags for the field",
"example": [
"Required",
"Personal"
]
},
"clearValueIfTriggerConditionNotMet": {
"type": "boolean",
"description": "Whether to clear the field value when all trigger conditions are not met",
"example": false
},
"jurisdictionIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"description": "A collection of unique identifiers that represent jurisdictions\nassociated with the policy field.",
"nullable": true
},
"dataProtectionJurisdictionId": {
"type": "string",
"description": "Identifier for the jurisdiction in which the data protection regulations apply",
"format": "uuid",
"nullable": true
}
},
"additionalProperties": false,
"description": "Create policy field request"
},
"PolicyFieldRequestDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/PolicyFieldRequestDto"
}
],
"description": "Create policy field request",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service request data"
},
"PolicyFieldViewModelDto": {
"type": "object",
"properties": {
"entityPolicyId": {
"type": "string",
"format": "uuid"
},
"versionNumber": {
"type": "integer",
"format": "int32"
},
"fieldId": {
"type": "string",
"format": "uuid"
},
"fieldVersion": {
"type": "integer",
"format": "int32"
},
"changeType": {
"enum": [
"Unchanged",
"Added",
"Updated",
"Deleted",
"Locked"
],
"type": "string",
"nullable": true
},
"lockDetails": {
"allOf": [
{
"$ref": "#/components/schemas/LockDetailsDto"
}
],
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"dataKey": {
"type": "string",
"nullable": true
},
"fieldType": {
"type": "string",
"nullable": true
},
"fieldTypeId": {
"type": "string",
"format": "uuid",
"nullable": true
},
"linkChildFieldDataKey": {
"type": "string",
"nullable": true
},
"linkedParentFieldDataKey": {
"type": "string",
"nullable": true
},
"externalSearchApiProviderId": {
"type": "string",
"format": "uuid",
"nullable": true
},
"formulaSchema": {
"allOf": [
{
"$ref": "#/components/schemas/NumberFormulaSchemaDto"
}
],
"nullable": true
},
"dateTimePeriodFormulaSchema": {
"allOf": [
{
"$ref": "#/components/schemas/DateTimePeriodFormulaSchemaDto"
}
],
"nullable": true
},
"order": {
"type": "number",
"format": "double",
"nullable": true
},
"defaultValue": {
"type": "string",
"nullable": true
},
"classification": {
"type": "string",
"nullable": true
},
"categories": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"targetEntities": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"isReadOnly": {
"type": "boolean"
},
"isJourneyLevelData": {
"type": "boolean"
},
"isIndexable": {
"type": "boolean"
},
"isSensitiveData": {
"type": "boolean"
},
"isMaterialData": {
"type": "boolean"
},
"uiDecoration": {
"type": "string",
"nullable": true
},
"uiDecorationColor": {
"type": "string",
"nullable": true
},
"accessLayers": {
"allOf": [
{
"$ref": "#/components/schemas/AccessLayerDto2"
}
],
"nullable": true
},
"references": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReferenceDto2"
},
"nullable": true
},
"conditions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDto"
},
"nullable": true
},
"conditionalValues": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionalValueDto"
},
"nullable": true
},
"validationRules": {
"allOf": [
{
"$ref": "#/components/schemas/DataValidationRulesDto"
}
],
"description": "Request DTO representing validation data metadata",
"nullable": true
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"clearValueIfTriggerConditionNotMet": {
"type": "boolean"
},
"jurisdictionIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"nullable": true
},
"dataProtectionJurisdictionId": {
"type": "string",
"format": "uuid",
"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": { }
},
"ReferenceDto": {
"required": [
"description",
"type",
"url"
],
"type": "object",
"properties": {
"type": {
"maxLength": 256,
"minLength": 1,
"type": "string",
"description": "Reference type",
"example": "FATCA"
},
"description": {
"maxLength": 2048,
"minLength": 1,
"type": "string",
"description": "Reference description",
"example": "Foreign Account Tax Compliance Act"
},
"url": {
"maxLength": 2048,
"minLength": 1,
"type": "string",
"description": "Reference URL",
"example": "www.irs.gov"
}
},
"additionalProperties": false,
"description": "Request DTO representing reference metadata"
},
"ReferenceDto2": {
"type": "object",
"properties": {
"type": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"url": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"RegexRuleDto": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto"
},
{
"type": "object",
"properties": {
"isCaseSensitive": {
"type": "boolean",
"description": "Flag that indicate if regex is case sensitive",
"example": false
},
"regexValue": {
"type": "string",
"description": "Regex expression",
"nullable": true,
"example": "^[\\\\w-\\\\.]+@([\\\\w-]+\\\\.)+[\\\\w-]{2,4}$"
}
},
"additionalProperties": false
}
],
"description": "Request DTO representing regex rule metadata"
},
"RegexRuleDto2": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto2"
},
{
"type": "object",
"properties": {
"isCaseSensitive": {
"type": "boolean",
"description": "Flag that indicate if regex is case sensitive",
"example": false
},
"regexValue": {
"type": "string",
"description": "Regex expression",
"nullable": true,
"example": "^[\\\\w-\\\\.]+@([\\\\w-]+\\\\.)+[\\\\w-]{2,4}$"
}
},
"additionalProperties": false
}
],
"description": "Request DTO representing regex rule metadata"
},
"RegexRuleDtoConditionalValidationRuleDto": {
"type": "object",
"properties": {
"isActive": {
"type": "boolean",
"description": "Validation rule active flag",
"example": true
},
"staticRule": {
"allOf": [
{
"$ref": "#/components/schemas/RegexRuleDto2"
}
],
"description": "Static validation rule always applied when active",
"nullable": true
},
"dynamicRules": {
"type": "array",
"items": {
"$ref": "#/components/schemas/RegexRuleDtoConditionalValueDto"
},
"description": "Conditional validation rules",
"nullable": true
}
},
"additionalProperties": false
},
"RegexRuleDtoConditionalValueDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the condition",
"format": "uuid",
"example": "118313c6-91e6-4b05-a537-5a1ab906418f"
},
"name": {
"type": "string",
"description": "The name of the condition",
"nullable": true,
"example": "Company-type only"
},
"description": {
"type": "string",
"description": "The description of the condition",
"nullable": true,
"example": "Applicable only when EntityType=Company"
},
"logicalOperation": {
"type": "string",
"description": "Logical operation on the Fenergo.Nebula.Platform.LogicEngine.Model.Dto.ConditionDto.Operands collection",
"nullable": true,
"example": "AND"
},
"operands": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDefinitionDto"
},
"description": "Collection of operands for given condition. These might contain additional, nested conditions of type Fenergo.Nebula.Platform.LogicEngine.Model.Dto.ConditionDefinitionDto",
"nullable": true
},
"value": {
"allOf": [
{
"$ref": "#/components/schemas/RegexRuleDto2"
}
],
"description": "Request DTO representing regex rule metadata",
"nullable": true
},
"priority": {
"type": "integer",
"description": "Priority of the value in case when multiple conditional values are evaluated",
"format": "int32",
"example": 1
}
},
"additionalProperties": false
},
"RelatedPartyRequirementIdvValidationRulesDto": {
"type": "object",
"properties": {
"idvMandatory": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDtoValidationRuleDto"
}
],
"description": "Mandatory ID&V",
"nullable": true
},
"idvPartyCount": {
"allOf": [
{
"$ref": "#/components/schemas/ValueLimitRuleDtoValidationRuleDto"
}
],
"description": "The minimum number of relationships that need to be ID&Vd in order for this requirement to be fulfilled",
"nullable": true
},
"idvAllParties": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDtoValidationRuleDto"
}
],
"description": "All entities that meet the criteria of this requirement need to be ID&Vd",
"nullable": true
}
},
"additionalProperties": false,
"description": "Request DTO representing ID&V validation data for related party requirements"
},
"RelatedPartyRequirementRequestDto": {
"required": [
"categories",
"conditions",
"dataKey",
"jurisdictionIds",
"name",
"references",
"tags"
],
"type": "object",
"properties": {
"name": {
"maxLength": 700,
"minLength": 1,
"type": "string",
"description": "Name of the related party requirement",
"example": "First Name"
},
"dataKey": {
"maxLength": 700,
"minLength": 1,
"type": "string",
"description": "Data key for the related party requirement",
"example": "firstName"
},
"tooltipDescription": {
"maxLength": 1200,
"type": "string",
"description": "Description of the related party requirement tooltip",
"nullable": true,
"example": "Client's first name"
},
"classification": {
"type": "string",
"description": "Classification of the related party requirement",
"nullable": true,
"example": "FATCA"
},
"categories": {
"minItems": 1,
"type": "array",
"items": {
"maxLength": 250,
"minLength": 1,
"type": "string"
},
"description": "Categories the related party requirement belongs to",
"example": [
"Basic Details",
"Personal Information"
]
},
"references": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReferenceDto"
},
"description": "References for the related party requirement"
},
"conditions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDto"
},
"description": "Conditions for the related party requirement"
},
"legacyValidationRules": {
"allOf": [
{
"$ref": "#/components/schemas/ValidationRuleDto"
}
],
"description": "Legacy Validation Rule - required for compatibility",
"nullable": true,
"deprecated": true
},
"validationRules": {
"allOf": [
{
"$ref": "#/components/schemas/RelatedPartyRequirementValidationRulesDto"
}
],
"description": "Request DTO representing validation data for related party requirements",
"nullable": true
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "Tags for the related party requirement",
"example": [
"Required",
"Personal"
]
},
"jurisdictionIds": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"description": "A collection of unique identifiers that represent jurisdictions\nassociated with the policy related party requirement."
},
"dataProtectionJurisdictionId": {
"type": "string",
"description": "Identifier for the jurisdiction in which the data protection regulations apply",
"format": "uuid",
"nullable": true
},
"portalGuidance": {
"type": "string",
"description": "Portal guidance for the related party requirement",
"nullable": true,
"example": "Provide at least one director RP"
},
"partyTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Requirement party types for the related party requirement",
"nullable": true,
"example": [
"CEO",
"Director"
]
},
"relatedPartyEntityTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Requirement related party entity types for the related party requirement",
"nullable": true,
"example": [
"Individual"
]
},
"uboThreshold": {
"type": "number",
"description": "Requirement UBO Threshold for the related party requirement",
"format": "double",
"nullable": true,
"example": 10
},
"directAssociationsOnly": {
"type": "boolean",
"description": "When enabled, only related parties directly associated to the main client entity will be counted towards this\nrequirement",
"example": true
},
"idvOn": {
"type": "boolean",
"description": "Determine if there is an ID&V applicable to this related party requirement",
"example": true
},
"idvName": {
"type": "string",
"description": "Name of the ID&V related party requirement and label which will be applied to the ID&V chip",
"nullable": true,
"example": "ID&V 1 Senior Manager"
},
"idvTooltip": {
"type": "string",
"description": "Tooltip description of the ID&V related party requirement",
"nullable": true,
"example": "At Least one CEO, CFO, COO, CTO, Board Member or Executive Director must be ID&Vd"
},
"idvValidationRules": {
"allOf": [
{
"$ref": "#/components/schemas/RelatedPartyRequirementIdvValidationRulesDto"
}
],
"description": "Request DTO representing ID&V validation data for related party requirements",
"nullable": true
}
},
"additionalProperties": false,
"description": "Create policy related party requirement"
},
"RelatedPartyRequirementRequestDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/RelatedPartyRequirementRequestDto"
}
],
"description": "Create policy related party requirement",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service request data"
},
"RelatedPartyRequirementValidationRulesDto": {
"type": "object",
"properties": {
"mandatory": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDtoValidationRuleDto"
}
],
"description": "Mandatory requirement",
"nullable": true
},
"partyCount": {
"allOf": [
{
"$ref": "#/components/schemas/ValueLimitRuleDtoValidationRuleDto"
}
],
"description": "The minimum number of relationships that need to be added in order for this requirement to be fulfilled",
"nullable": true
},
"allParties": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDtoValidationRuleDto"
}
],
"description": "All entities that meet the criteria of this requirement",
"nullable": true
}
},
"additionalProperties": false,
"description": "Request DTO representing validation data for related party requirements"
},
"RelatedPartyRequirementViewModelDto": {
"type": "object",
"properties": {
"entityPolicyId": {
"type": "string",
"format": "uuid"
},
"versionNumber": {
"type": "integer",
"format": "int32"
},
"relatedPartyRequirementId": {
"type": "string",
"format": "uuid"
},
"relatedPartyRequirementVersion": {
"type": "integer",
"format": "int32"
},
"changeType": {
"enum": [
"Unchanged",
"Added",
"Updated",
"Deleted",
"Locked"
],
"type": "string",
"nullable": true
},
"lockDetails": {
"allOf": [
{
"$ref": "#/components/schemas/LockDetailsDto"
}
],
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"dataKey": {
"type": "string",
"nullable": true
},
"tooltipDescription": {
"type": "string",
"nullable": true
},
"classification": {
"type": "string",
"nullable": true
},
"categories": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"references": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReferenceDto2"
},
"nullable": true
},
"conditions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDto"
},
"nullable": true
},
"validationRules": {
"allOf": [
{
"$ref": "#/components/schemas/RelatedPartyRequirementValidationRulesDto"
}
],
"description": "Request DTO representing validation data for related party requirements",
"nullable": true
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"portalGuidance": {
"type": "string",
"nullable": true
},
"partyTypes": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"relatedPartyEntityTypes": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"uboThreshold": {
"type": "number",
"format": "double",
"nullable": true
},
"directAssociationsOnly": {
"type": "boolean"
},
"idvOn": {
"type": "boolean"
},
"idvName": {
"type": "string",
"nullable": true
},
"idvTooltip": {
"type": "string",
"nullable": true
},
"idvValidationRules": {
"allOf": [
{
"$ref": "#/components/schemas/RelatedPartyRequirementIdvValidationRulesDto"
}
],
"description": "Request DTO representing ID&V validation data for related party requirements",
"nullable": true
},
"jurisdictionIds": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"nullable": true
},
"dataProtectionJurisdictionId": {
"type": "string",
"format": "uuid",
"nullable": true
}
},
"additionalProperties": false
},
"ServiceResponse": {
"type": "object",
"properties": {
"data": {
"type": "string",
"description": "The service response DTO",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"ServiceResponseMessage": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "The message",
"nullable": true,
"example": "Success"
},
"type": {
"type": "string",
"description": "Type of the message\nOne of Info, Warning, Error, Forbidden",
"nullable": true,
"example": "Info"
},
"errorCode": {
"type": "string",
"description": "Error Code",
"nullable": true,
"example": "INTERNAL_SERVER_ERROR"
}
},
"additionalProperties": false,
"description": "The message associated to the service response"
},
"SpecialCharactersRuleDto": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto"
},
{
"type": "object",
"properties": {
"excludedCharacters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of special characters, which will be ignored by validation e.g. [\"!\",\"@\",\"#\"]",
"nullable": true
}
},
"additionalProperties": false
}
],
"description": "Request DTO representing special characters rule metadata"
},
"SpecialCharactersRuleDto2": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto2"
},
{
"type": "object",
"properties": {
"excludedCharacters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of special characters, which will be ignored by validation e.g. [\"!\",\"@\",\"#\"]",
"nullable": true
}
},
"additionalProperties": false
}
],
"description": "Request DTO representing special characters rule metadata"
},
"SpecialCharactersRuleDtoValidationRuleDto": {
"type": "object",
"properties": {
"isActive": {
"type": "boolean",
"description": "Validation rule active flag",
"example": true
},
"staticRule": {
"allOf": [
{
"$ref": "#/components/schemas/SpecialCharactersRuleDto2"
}
],
"description": "Static validation rule always applied when active",
"nullable": true
}
},
"additionalProperties": false
},
"StartPolicyDiffResponseDto": {
"type": "object",
"properties": {
"diffGenerationBusinessProcessId": {
"type": "string",
"description": "The business process ID tracking the diff generation operation",
"format": "uuid"
}
},
"additionalProperties": false
},
"StartPolicyDiffResponseDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/StartPolicyDiffResponseDto"
}
],
"description": "The service response DTO",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"StringConditionalValueDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the condition",
"format": "uuid",
"example": "118313c6-91e6-4b05-a537-5a1ab906418f"
},
"name": {
"type": "string",
"description": "The name of the condition",
"nullable": true,
"example": "Company-type only"
},
"description": {
"type": "string",
"description": "The description of the condition",
"nullable": true,
"example": "Applicable only when EntityType=Company"
},
"logicalOperation": {
"type": "string",
"description": "Logical operation on the Fenergo.Nebula.Platform.LogicEngine.Model.Dto.ConditionDto.Operands collection",
"nullable": true,
"example": "AND"
},
"operands": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDefinitionDto"
},
"description": "Collection of operands for given condition. These might contain additional, nested conditions of type Fenergo.Nebula.Platform.LogicEngine.Model.Dto.ConditionDefinitionDto",
"nullable": true
},
"value": {
"type": "string",
"description": "Value that should be returned when conditions are met",
"nullable": true,
"example": "Relationship Manager"
},
"priority": {
"type": "integer",
"description": "Priority of the value in case when multiple conditional values are evaluated",
"format": "int32",
"example": 1
}
},
"additionalProperties": false
},
"T": {
"type": "object",
"additionalProperties": false
},
"UpdateDocumentRequirementResponseDto": {
"required": [
"documentRequirementId",
"documentRequirementVersion"
],
"type": "object",
"properties": {
"documentRequirementId": {
"type": "string",
"description": "Gets the unique identifier for a policy document requirement.",
"format": "uuid",
"example": "10ea5b77-9cdf-4add-9158-778a33811653"
},
"documentRequirementVersion": {
"type": "integer",
"description": "Version number of the policy document requirement.",
"format": "int32",
"example": 7
}
},
"additionalProperties": false,
"description": "Represents the response for creating an updated policy document requirement."
},
"UpdateDocumentRequirementResponseDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateDocumentRequirementResponseDto"
}
],
"description": "Represents the response for creating an updated policy document requirement.",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"UpdateESignatureDocumentRequirementResponseDto": {
"required": [
"eSignatureDocumentRequirementId",
"eSignatureDocumentRequirementVersion"
],
"type": "object",
"properties": {
"eSignatureDocumentRequirementId": {
"type": "string",
"description": "Gets the unique identifier for a policy e-signature document requirement.",
"format": "uuid",
"example": "10ea5b77-9cdf-4add-9158-778a33811653"
},
"eSignatureDocumentRequirementVersion": {
"type": "integer",
"description": "Version number of the policy e-signature document requirement.",
"format": "int32",
"example": 7
}
},
"additionalProperties": false,
"description": "Represents the response for creating an updated policy e-signature document requirement."
},
"UpdateESignatureDocumentRequirementResponseDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateESignatureDocumentRequirementResponseDto"
}
],
"description": "Represents the response for creating an updated policy e-signature document requirement.",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"UpdateEntityPolicyDetailsRequestDto": {
"type": "object",
"properties": {
"versionNotes": {
"maxLength": 2000,
"type": "string",
"description": "Version notes for the policy.",
"nullable": true,
"example": "Updated Date Of Birth field"
}
},
"additionalProperties": false,
"description": "Update policy details request"
},
"UpdateEntityPolicyDetailsRequestDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateEntityPolicyDetailsRequestDto"
}
],
"description": "Update policy details request",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service request data"
},
"UpdateEntityPolicyJurisdictionRequestDto": {
"required": [
"description",
"name"
],
"type": "object",
"properties": {
"name": {
"maxLength": 60,
"minLength": 1,
"type": "string",
"description": "Name of the jurisdiction",
"example": "Global"
},
"description": {
"maxLength": 255,
"minLength": 1,
"type": "string",
"description": "Description of the jurisdiction",
"example": "Default jurisdiction"
},
"conditions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDto"
},
"description": "Conditions when the jurisdiction is applicable",
"nullable": true
}
},
"additionalProperties": false,
"description": "Create jurisdiction request"
},
"UpdateEntityPolicyJurisdictionRequestDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateEntityPolicyJurisdictionRequestDto"
}
],
"description": "Create jurisdiction request",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service request data"
},
"UpdateEntityPolicyJurisdictionResponseDto": {
"required": [
"jurisdictionId"
],
"type": "object",
"properties": {
"jurisdictionId": {
"type": "string",
"description": "ID of the jurisdiction",
"format": "uuid",
"example": "102c63eb-6be0-481f-98f0-eea7fa29cc01"
}
},
"additionalProperties": false,
"description": "Update jurisdiction response"
},
"UpdateEntityPolicyJurisdictionResponseDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateEntityPolicyJurisdictionResponseDto"
}
],
"description": "Update jurisdiction response",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"UpdatePolicyFieldResponseDto": {
"required": [
"fieldId",
"fieldVersion"
],
"type": "object",
"properties": {
"fieldId": {
"type": "string",
"description": "Gets the unique identifier for a policy field.",
"format": "uuid",
"example": "102c63eb-6be0-481f-98f0-eea7fa29cc01"
},
"fieldVersion": {
"type": "integer",
"description": "Version number of the field",
"format": "int32",
"example": 2
}
},
"additionalProperties": false,
"description": "Represents the response for creating a new policy field."
},
"UpdatePolicyFieldResponseDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/UpdatePolicyFieldResponseDto"
}
],
"description": "Represents the response for creating a new policy field.",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"UpdateRelatedPartyRequirementResponseDto": {
"required": [
"relatedPartyRequirementId",
"relatedPartyRequirementVersion"
],
"type": "object",
"properties": {
"relatedPartyRequirementId": {
"type": "string",
"description": "Gets the unique identifier for a policy related party requirement.",
"format": "uuid",
"example": "10ea5b77-9cdf-4add-9158-778a33811653"
},
"relatedPartyRequirementVersion": {
"type": "integer",
"description": "Version number of the policy related party requirement.",
"format": "int32",
"example": 7
}
},
"additionalProperties": false,
"description": "Represents the response for creating an updated policy related party requirement."
},
"UpdateRelatedPartyRequirementResponseDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateRelatedPartyRequirementResponseDto"
}
],
"description": "Represents the response for creating an updated policy related party requirement.",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"description": "List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service response data"
},
"UpdateWorkspaceRequestDto": {
"required": [
"name"
],
"type": "object",
"properties": {
"name": {
"maxLength": 60,
"minLength": 1,
"type": "string",
"description": "Name of Workspace",
"example": "Global configurators"
},
"description": {
"maxLength": 255,
"type": "string",
"description": "Description of Workspace",
"nullable": true,
"example": "Workspace for global configurators."
}
},
"additionalProperties": false,
"description": "Update workspace request"
},
"UpdateWorkspaceRequestDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateWorkspaceRequestDto"
}
],
"description": "Update workspace request",
"nullable": true
}
},
"additionalProperties": false,
"description": "Service request data"
},
"ValidationDataDto": {
"type": "object",
"properties": {
"isMandatory": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto"
}
],
"description": "Mandatory Rule - does not allow empty value",
"nullable": true
},
"specialCharacters": {
"allOf": [
{
"$ref": "#/components/schemas/SpecialCharactersRuleDto"
}
],
"description": "Special characters validation rule - does not allow special characters,\nbut allows define array of characters which can be ignored by the validation",
"nullable": true
},
"noNumbers": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto"
}
],
"description": "Validation rule that does not allow numbers",
"nullable": true
},
"onlyInteger": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto"
}
],
"description": "Validation rule that allows only integers",
"nullable": true
},
"noNegative": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto"
}
],
"description": "Validation rule that does not allow negative numbers",
"nullable": true
},
"onlyDecimal": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto"
}
],
"description": "Validation rule that allows numbers up to two decimal places",
"nullable": true
},
"regex": {
"allOf": [
{
"$ref": "#/components/schemas/RegexRuleDto"
}
],
"description": "Validation rule that validates the value against provided regex",
"nullable": true
},
"characterLimit": {
"allOf": [
{
"$ref": "#/components/schemas/ValueLimitRuleDto"
}
],
"description": "Validation rule that allows to set minimum and maximum count of characters",
"nullable": true
},
"numberLimit": {
"allOf": [
{
"$ref": "#/components/schemas/ValueLimitRuleDto"
}
],
"description": "Validation rule that allows to set number range",
"nullable": true
},
"noFutureDates": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto"
}
],
"description": "Validation rule that does not allow future dates",
"nullable": true
},
"noPastDates": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto"
}
],
"description": "Validation rule that does not allow past dates",
"nullable": true
},
"dateLimit": {
"allOf": [
{
"$ref": "#/components/schemas/DateLimitRuleDto"
}
],
"description": "Validation rule that allows to set date range",
"nullable": true
},
"multiSelectLimit": {
"allOf": [
{
"$ref": "#/components/schemas/ValueLimitRuleDto"
}
],
"description": "Validation rule that allows to set selection range",
"nullable": true
},
"collectionMinimumCount": {
"allOf": [
{
"$ref": "#/components/schemas/CollectionMinimumCountRuleDto"
}
],
"description": "Validation rule that allows to set minimum count requirements for collection",
"nullable": true
},
"collectionMaximumCount": {
"allOf": [
{
"$ref": "#/components/schemas/CollectionMaximumCountRuleDto"
}
],
"description": "Validation rule that allows to set maximum count requirements for collection",
"nullable": true
},
"externalProvider": {
"allOf": [
{
"$ref": "#/components/schemas/ExternalProviderRuleDto"
}
],
"description": "Validation rule that allows to use external provider for validation",
"nullable": true
},
"externalDataGroupProvider": {
"allOf": [
{
"$ref": "#/components/schemas/ExternalProviderRuleDto"
}
],
"description": "Validation rule that allows to use external provider for validating all fields of a DataGroup as a collection",
"nullable": true
}
},
"additionalProperties": false,
"description": "Request DTO representing validation data metadata"
},
"ValidationRuleDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The UiD of the validation rule",
"format": "uuid",
"example": "118313c6-91e6-4b05-a537-5a1ab906418f"
},
"setId": {
"type": "string",
"description": "The UiD of the requirement set/data group",
"format": "uuid",
"example": "012cfe3a-7bfa-41e7-8269-d49b3b38dff3"
},
"propertyId": {
"type": "string",
"description": "The UiD of the requirement/data group field",
"format": "uuid",
"example": "450df9bf-b2d3-48cf-ab8d-481c69b74373"
},
"dataGroupId": {
"type": "string",
"description": "The UiD of the of data group - is set only when requirement/data group field propertyType is set to \"dataGroup\"",
"format": "uuid",
"nullable": true,
"example": "8eb83ec6-1539-46a9-b0ba-c5138a09580c"
},
"isDataGroup": {
"type": "boolean",
"description": "Flag indicating it is validation rules for data group field",
"example": true
},
"propertyName": {
"type": "string",
"description": "Requirement/data group field property name",
"nullable": true,
"example": "firstName"
},
"friendlyName": {
"type": "string",
"description": "Requirement/data group field friendly Name",
"nullable": true,
"example": "First Name"
},
"validationType": {
"type": "string",
"description": "Validation type",
"nullable": true,
"example": "text"
},
"validationData": {
"allOf": [
{
"$ref": "#/components/schemas/ValidationDataDto"
}
],
"description": "Request DTO representing validation data metadata",
"nullable": true
}
},
"additionalProperties": false,
"description": "Request DTO representing validation rule metadata"
},
"ValueField": {
"type": "object",
"properties": {
"dataSource": {
"type": "string",
"description": "Value of DataSource used to filter field values",
"nullable": true
},
"field": {
"type": "string",
"description": "Field value used to validate conditional value",
"nullable": true
}
},
"additionalProperties": false
},
"ValueLimitRuleDto": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto"
},
{
"type": "object",
"properties": {
"minValue": {
"type": "integer",
"description": "Minimum value",
"format": "int32",
"nullable": true,
"example": 1
},
"maxValue": {
"type": "integer",
"description": "Maximum value",
"format": "int32",
"nullable": true,
"example": 10
}
},
"additionalProperties": false
}
],
"description": "Request DTO representing value limit rule metadata"
},
"ValueLimitRuleDto2": {
"allOf": [
{
"$ref": "#/components/schemas/BasicRuleDto2"
},
{
"type": "object",
"properties": {
"minValue": {
"type": "integer",
"description": "Minimum value",
"format": "int32",
"nullable": true,
"example": 1
},
"maxValue": {
"type": "integer",
"description": "Maximum value",
"format": "int32",
"nullable": true,
"example": 10
}
},
"additionalProperties": false
}
],
"description": "Request DTO representing value limit rule metadata"
},
"ValueLimitRuleDtoConditionalValidationRuleDto": {
"type": "object",
"properties": {
"isActive": {
"type": "boolean",
"description": "Validation rule active flag",
"example": true
},
"staticRule": {
"allOf": [
{
"$ref": "#/components/schemas/ValueLimitRuleDto2"
}
],
"description": "Static validation rule always applied when active",
"nullable": true
},
"dynamicRules": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ValueLimitRuleDtoConditionalValueDto"
},
"description": "Conditional validation rules",
"nullable": true
}
},
"additionalProperties": false
},
"ValueLimitRuleDtoConditionalValueDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the condition",
"format": "uuid",
"example": "118313c6-91e6-4b05-a537-5a1ab906418f"
},
"name": {
"type": "string",
"description": "The name of the condition",
"nullable": true,
"example": "Company-type only"
},
"description": {
"type": "string",
"description": "The description of the condition",
"nullable": true,
"example": "Applicable only when EntityType=Company"
},
"logicalOperation": {
"type": "string",
"description": "Logical operation on the Fenergo.Nebula.Platform.LogicEngine.Model.Dto.ConditionDto.Operands collection",
"nullable": true,
"example": "AND"
},
"operands": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConditionDefinitionDto"
},
"description": "Collection of operands for given condition. These might contain additional, nested conditions of type Fenergo.Nebula.Platform.LogicEngine.Model.Dto.ConditionDefinitionDto",
"nullable": true
},
"value": {
"allOf": [
{
"$ref": "#/components/schemas/ValueLimitRuleDto2"
}
],
"description": "Request DTO representing value limit rule metadata",
"nullable": true
},
"priority": {
"type": "integer",
"description": "Priority of the value in case when multiple conditional values are evaluated",
"format": "int32",
"example": 1
}
},
"additionalProperties": false
},
"ValueLimitRuleDtoValidationRuleDto": {
"required": [
"staticRule"
],
"type": "object",
"properties": {
"isActive": {
"type": "boolean",
"description": "Validation rule active flag",
"example": true
},
"staticRule": {
"allOf": [
{
"$ref": "#/components/schemas/ValueLimitRuleDto2"
}
],
"description": "Static validation rule always applied when active"
}
},
"additionalProperties": false
}
},
"securitySchemes": {
"Bearer": {
"type": "apiKey",
"description": "Please insert JWT with Bearer into field",
"name": "Authorization",
"in": "header"
}
}
},
"security": [
{
"Bearer": [ ]
}
]
}