",
"version": "1.0"
},
"servers": [
{
"url": "/configexchangecommand"
}
],
"paths": {
"/api/configuration-exchange": {
"post": {
"tags": [
"ConfigEnvironment"
],
"summary": "Create new ConfigurationEnvironment",
"description": "\nThis method will create a new ConfigurationEnvironment.\n The ConfigurationEnvironment will initialize with the data provided in the DTO.
Required permissions: Following permissions are required: ConfigurationExchangeEdit",
"operationId": "CreateConfigurationEnvironment",
"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": "ServiceRequest with the Fenergo.Nebula.ConfigExchange.Command.Application.Dto.ConfigEnvironmentDto to create",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ConfigEnvironmentDtoServiceRequest"
}
}
}
},
"responses": {
"202": {
"description": "Success. ConfigurationEnvironment created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ConfigEnvironmentDtoServiceResponse"
}
}
}
},
"400": {
"description": "Bad request. The request has missing/invalid values",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"401": {
"description": "User is not authorized to perform this request",
"content": {
"application/json": {
"example": {
"message": "Unauthorized"
}
}
}
},
"403": {
"description": "Access to resource is forbidden.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ObjectServiceResponse"
},
"example": {
"data": { },
"messages": [
{
"message": "Access denied. Following permissions are required: Permission1, Permission2",
"type": "Forbidden",
"errorCode": "Error Code"
}
]
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ObjectServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "Internal server exception. Please, contact your provider.",
"type": "Error",
"errorCode": "INTERNAL_SERVER_ERROR"
}
]
}
}
}
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
}
}
},
"/api/configuration-exchange/{id}": {
"put": {
"tags": [
"ConfigEnvironment"
],
"summary": "Update existing ConfigurationEnvironment",
"description": "\nThis method will update an existing ConfigurationEnvironment.\n The ConfigurationEnvironment will be updated with the data provided in the DTO.
Required permissions: Following permissions are required: ConfigurationExchangeEdit",
"operationId": "UpdateConfigurationEnvironment",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The Id of the existing ConfigurationEnvironment to update",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "X-TENANT-ID",
"in": "header",
"description": "The UiD of the tenant representing organization",
"required": true,
"schema": {
"type": "string"
},
"example": "b11f8be3-f29b-4959-8964-956d4af7c468"
}
],
"requestBody": {
"description": "ServiceRequest with the Fenergo.Nebula.ConfigExchange.Command.Application.Dto.ConfigEnvironmentDto to update",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ConfigEnvironmentDtoServiceRequest"
}
}
}
},
"responses": {
"202": {
"description": "Success. ConfigurationEnvironment updated"
},
"400": {
"description": "Not Found. ConfigurationEnvironment with given ID does not exist",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ObjectServiceResponse"
},
"example": {
"data": { },
"messages": [
{
"message": "Not Found",
"type": "Error",
"errorCode": "Error Code"
}
]
}
}
}
},
"500": {
"description": "Internal Server Error. An unhandled exception occurred"
},
"401": {
"description": "User is not authorized to perform this request",
"content": {
"application/json": {
"example": {
"message": "Unauthorized"
}
}
}
},
"403": {
"description": "Access to resource is forbidden.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ObjectServiceResponse"
},
"example": {
"data": { },
"messages": [
{
"message": "Access denied. Following permissions are required: Permission1, Permission2",
"type": "Forbidden",
"errorCode": "Error Code"
}
]
}
}
}
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
}
},
"delete": {
"tags": [
"ConfigEnvironment"
],
"summary": "Delete existing ConfigurationEnvironment",
"description": "\nThis method will delete an existing ConfigurationEnvironment.\n The ConfigurationEnvironment will be updated with the data provided in the DTO.
Required permissions: Following permissions are required: ConfigurationExchangeEdit",
"operationId": "DeleteConfigurationEnvironment",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The Id of the existing ConfigurationEnvironment to delete",
"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. ConfigurationEnvironment deleted"
},
"400": {
"description": "Not Found. ConfigurationEnvironment with given ID does not exist",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"404": {
"description": "Resource not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ObjectServiceResponse"
},
"example": {
"data": { },
"messages": [
{
"message": "Not Found",
"type": "Error",
"errorCode": "Error Code"
}
]
}
}
}
},
"500": {
"description": "Internal Server Error. An unhandled exception occurred"
},
"401": {
"description": "User is not authorized to perform this request",
"content": {
"application/json": {
"example": {
"message": "Unauthorized"
}
}
}
},
"403": {
"description": "Access to resource is forbidden.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ObjectServiceResponse"
},
"example": {
"data": { },
"messages": [
{
"message": "Access denied. Following permissions are required: Permission1, Permission2",
"type": "Forbidden",
"errorCode": "Error Code"
}
]
}
}
}
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
}
}
},
"/api/import-history": {
"post": {
"tags": [
"ImportRecord"
],
"summary": "Create new ImportRecord",
"description": "\nThis method will create a new ImportRecord.\n The ImportRecord will initialize with the data provided in the DTO.
Required permissions: Following permissions are required: ConfigurationExchangeEdit",
"operationId": "CreateImportRecord",
"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": "ServiceRequest with the Fenergo.Nebula.ConfigExchange.Command.Application.Dto.ImportRecordDto to create",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ImportRecordDtoServiceRequest"
}
}
}
},
"responses": {
"202": {
"description": "Success. ImportRecord created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ImportRecordDtoServiceResponse"
}
}
}
},
"400": {
"description": "Bad request. The request has missing/invalid values",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"401": {
"description": "User is not authorized to perform this request",
"content": {
"application/json": {
"example": {
"message": "Unauthorized"
}
}
}
},
"403": {
"description": "Access to resource is forbidden.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ObjectServiceResponse"
},
"example": {
"data": { },
"messages": [
{
"message": "Access denied. Following permissions are required: Permission1, Permission2",
"type": "Forbidden",
"errorCode": "Error Code"
}
]
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ObjectServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "Internal server exception. Please, contact your provider.",
"type": "Error",
"errorCode": "INTERNAL_SERVER_ERROR"
}
]
}
}
}
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
}
}
},
"/api/import-session": {
"post": {
"tags": [
"ImportSession"
],
"summary": "Create new ImportSession",
"description": "\nThis method will create a new ImportSession.\n The ImportSession will initialize with the data provided in the DTO.
Required permissions: Following permissions are required: ConfigurationExchangeEdit",
"operationId": "CreateImportSession",
"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": "ServiceRequest with the Fenergo.Nebula.ConfigExchange.Command.Application.Dto.ImportSessionDto to create",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ImportSessionCreationDtoServiceRequest"
}
}
}
},
"responses": {
"202": {
"description": "Success. ImportSession created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ImportSessionDtoServiceResponse"
}
}
}
},
"400": {
"description": "Bad request. The request has missing/invalid values",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"401": {
"description": "User is not authorized to perform this request",
"content": {
"application/json": {
"example": {
"message": "Unauthorized"
}
}
}
},
"403": {
"description": "Access to resource is forbidden.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ObjectServiceResponse"
},
"example": {
"data": { },
"messages": [
{
"message": "Access denied. Following permissions are required: Permission1, Permission2",
"type": "Forbidden",
"errorCode": "Error Code"
}
]
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ObjectServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "Internal server exception. Please, contact your provider.",
"type": "Error",
"errorCode": "INTERNAL_SERVER_ERROR"
}
]
}
}
}
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
}
}
},
"/api/import-session/{sessionId}/log": {
"patch": {
"tags": [
"ImportSession"
],
"summary": "Adds logs to an import session",
"description": "\nThis method add new logs to an import session
Required permissions: Following permissions are required: ConfigurationExchangeEdit",
"operationId": "AddSessionLogs",
"parameters": [
{
"name": "sessionId",
"in": "path",
"description": "The id of the import session",
"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": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ImportSessionAddLogsDtoServiceRequest"
}
}
}
},
"responses": {
"202": {
"description": "Success. Logs added",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"400": {
"description": "Bad request. The request has missing/invalid values",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"500": {
"description": "Internal server error"
},
"401": {
"description": "User is not authorized to perform this request",
"content": {
"application/json": {
"example": {
"message": "Unauthorized"
}
}
}
},
"403": {
"description": "Access to resource is forbidden.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ObjectServiceResponse"
},
"example": {
"data": { },
"messages": [
{
"message": "Access denied. Following permissions are required: Permission1, Permission2",
"type": "Forbidden",
"errorCode": "Error Code"
}
]
}
}
}
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
}
}
},
"/api/import-session/{sessionId}/phase/current/close": {
"put": {
"tags": [
"ImportSession"
],
"summary": "Close import phase",
"description": "\nThis method will close import phase.\n The current ImportSession phase will be closed with the data provided in the DTO.
Required permissions: Following permissions are required: ConfigurationExchangeEdit",
"operationId": "CloseImportPhase",
"parameters": [
{
"name": "sessionId",
"in": "path",
"description": "The id of the import session",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "X-TENANT-ID",
"in": "header",
"description": "The UiD of the tenant representing organization",
"required": true,
"schema": {
"type": "string"
},
"example": "b11f8be3-f29b-4959-8964-956d4af7c468"
}
],
"requestBody": {
"description": "ServiceRequest with the Fenergo.Nebula.ConfigExchange.Command.Application.Dto.ImportSessionDto to create",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CloseImportPhaseRequestDtoServiceRequest"
}
}
}
},
"responses": {
"202": {
"description": "Success. ImportSession created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CloseImportPhaseResponseDtoServiceResponse"
}
}
}
},
"400": {
"description": "Bad request. The request has missing/invalid values",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceResponse"
}
}
}
},
"401": {
"description": "User is not authorized to perform this request",
"content": {
"application/json": {
"example": {
"message": "Unauthorized"
}
}
}
},
"403": {
"description": "Access to resource is forbidden.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ObjectServiceResponse"
},
"example": {
"data": { },
"messages": [
{
"message": "Access denied. Following permissions are required: Permission1, Permission2",
"type": "Forbidden",
"errorCode": "Error Code"
}
]
}
}
}
},
"500": {
"description": "Internal server exception. Please, contact your provider.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ObjectServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "Internal server exception. Please, contact your provider.",
"type": "Error",
"errorCode": "INTERNAL_SERVER_ERROR"
}
]
}
}
}
},
"410": {
"description": "Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StringServiceResponse"
},
"example": {
"data": null,
"messages": [
{
"message": "This endpoint is obsolete and was terminated on yyyy-MM-dd",
"type": "Error",
"errorCode": "OBSOLETE_ENDPOINT"
}
]
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"CloseImportPhaseRequestDto": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"description": "Unique Identifier of the import session",
"format": "uuid",
"example": "2920b7a7-7336-4fb1-82b7-1d691b8367fa"
},
"currentPhaseIndex": {
"type": "integer",
"description": "Identifier of current phase",
"format": "int32",
"example": 0
},
"nextPhaseType": {
"$ref": "#/components/schemas/ImportPhaseType"
},
"description": {
"type": "string",
"description": "The description of the import session",
"nullable": true,
"example": "Description of the Import Session 23/04/22"
},
"importInPublishedState": {
"type": "boolean",
"description": "The state of the import in a published state toggle",
"example": true
},
"configAsOfDate": {
"type": "string",
"description": "The current configuration as-of value",
"format": "date-time",
"example": "2019-01-06T17:16:40"
},
"items": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ImportItem"
},
"description": "Selected items",
"nullable": true
},
"closeDate": {
"type": "string",
"description": "Close date",
"format": "date-time",
"example": "2019-01-06T17:16:40"
}
},
"additionalProperties": false
},
"CloseImportPhaseRequestDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/CloseImportPhaseRequestDto"
}
},
"additionalProperties": false
},
"CloseImportPhaseResponseDto": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"description": "Unique Identifier of the import session",
"format": "uuid",
"example": "2920b7a7-7336-4fb1-82b7-1d691b8367fa"
},
"nextPhaseIndex": {
"type": "integer",
"description": "Identifier of next phase",
"format": "int32",
"nullable": true,
"example": 777
}
},
"additionalProperties": false
},
"CloseImportPhaseResponseDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/CloseImportPhaseResponseDto"
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
},
"ConfigEnvironmentDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Unique Identifier of the environment",
"format": "uuid",
"example": "2920b7a7-7336-4fb1-82b7-1d691b8367fa"
},
"name": {
"type": "string",
"description": "Friendly name of the environment",
"nullable": true,
"example": "Fenergo Sandbox"
},
"authorisationLoginUri": {
"type": "string",
"description": "The URI of the Authentication provider for this environment",
"nullable": true,
"example": "https://identity.fenergonebula.com"
},
"configurationQueryUri": {
"type": "string",
"description": "The base URI of the API's for this environment",
"nullable": true,
"example": "https://api.fenergonebula.com"
}
},
"additionalProperties": false,
"description": "The details of a configuration environment"
},
"ConfigEnvironmentDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/ConfigEnvironmentDto"
}
},
"additionalProperties": false
},
"ConfigEnvironmentDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/ConfigEnvironmentDto"
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
},
"ImportItem": {
"type": "object",
"properties": {
"configId": {
"type": "string",
"nullable": true
},
"targetConfigId": {
"type": "string",
"nullable": true
},
"configVersion": {
"$ref": "#/components/schemas/ImportItemVersion"
},
"configType": {
"type": "string",
"nullable": true
},
"type": {
"$ref": "#/components/schemas/ImportItemType"
},
"status": {
"$ref": "#/components/schemas/ImportItemStatus"
},
"name": {
"type": "string",
"nullable": true
},
"equivalentIdentifierSnapshot": {
"type": "string",
"nullable": true
},
"errorMessage": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"ImportItemStatus": {
"enum": [
"None",
"Invalid",
"MissingDependency",
"LoadingError",
"ImportError",
"Pending",
"NewDraftCreated",
"Created",
"Published",
"Updated",
"NoChange",
"PermissionError"
],
"type": "string"
},
"ImportItemType": {
"enum": [
"Selection",
"Dependency"
],
"type": "string"
},
"ImportItemVersion": {
"type": "object",
"properties": {
"versionNumber": {
"type": "integer",
"format": "int32"
},
"targetVersionNumber": {
"type": "integer",
"format": "int32",
"nullable": true
},
"isManuallySelected": {
"type": "boolean"
},
"notes": {
"type": "string",
"nullable": true
},
"publicationDate": {
"type": "string",
"format": "date-time"
}
},
"additionalProperties": false
},
"ImportPhaseType": {
"enum": [
"Selection",
"DependencyCheck",
"Import",
"Retry"
],
"type": "string"
},
"ImportRecordDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Unique Identifier of the import record",
"format": "uuid",
"example": "2920b7a7-7336-4fb1-82b7-1d691b8367fa"
},
"sourceTenantId": {
"type": "string",
"description": "The tenant id of the target tenant",
"nullable": true,
"example": "3840b7a7-7326-4fb1-78b7-1d691b83676b"
},
"importStatus": {
"$ref": "#/components/schemas/ImportStatus"
}
},
"additionalProperties": false,
"description": "The details of an import record"
},
"ImportRecordDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/ImportRecordDto"
}
},
"additionalProperties": false
},
"ImportRecordDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/ImportRecordDto"
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
},
"ImportSessionAddLogsDto": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"description": "Unique Identifier of the import session",
"format": "uuid",
"example": "2920b7a7-7336-4fb1-82b7-1d691b8367fa"
},
"entries": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ImportSessionLogEntryDto"
},
"description": "The name of the import session",
"nullable": true
}
},
"additionalProperties": false,
"description": "The details of an import log update"
},
"ImportSessionAddLogsDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/ImportSessionAddLogsDto"
}
},
"additionalProperties": false
},
"ImportSessionCreationDto": {
"type": "object",
"properties": {
"sourceTenant": {
"type": "string",
"description": "The id of the source tenant for the import session",
"nullable": true,
"example": "3920c7a7-7836-5fb1-83b2-1d641c8337fa"
},
"sourceTenantName": {
"type": "string",
"description": "The id of the source tenant for the import session",
"nullable": true,
"example": "tenant-name"
},
"description": {
"type": "string",
"description": "The description of the import session",
"nullable": true,
"example": "Description of the Import Session"
},
"importInPublishedState": {
"type": "boolean",
"description": "The state of the import in a published state toggle",
"example": true
},
"configAsOfDate": {
"type": "string",
"description": "The current configuration as-of value",
"format": "date-time",
"example": "2019-01-06"
},
"configEnvironmentId": {
"type": "string",
"description": "The source config environment id",
"format": "uuid",
"nullable": true,
"example": "3920c7a7-7836-5fb1-83b2-1d641c8337fa"
}
},
"additionalProperties": false
},
"ImportSessionCreationDtoServiceRequest": {
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/ImportSessionCreationDto"
}
},
"additionalProperties": false
},
"ImportSessionDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Unique Identifier of the import session",
"format": "uuid",
"example": "2920b7a7-7336-4fb1-82b7-1d691b8367fa"
},
"sourceTenant": {
"type": "string",
"description": "The id of the source tenant for the import session",
"nullable": true,
"example": "3920c7a7-7836-5fb1-83b2-1d641c8337fa"
},
"sourceTenantName": {
"type": "string",
"description": "The name of the source tenant for the import session",
"nullable": true,
"example": "example-name"
},
"name": {
"type": "string",
"description": "The name of the import session",
"nullable": true,
"example": "1081"
},
"description": {
"type": "string",
"description": "The description of the import session",
"nullable": true,
"example": "Description of the Import Session"
},
"status": {
"$ref": "#/components/schemas/ImportSessionStatus"
},
"importInPublishedState": {
"type": "boolean",
"description": "The state of the import in a published state toggle",
"example": true
},
"configAsOfDate": {
"type": "string",
"description": "The current configuration as-of value",
"format": "date-time",
"example": "2019-01-06T17:16:40"
},
"createdOn": {
"type": "string",
"description": "The date the session was created",
"format": "date-time",
"example": "2019-01-06T17:16:40"
},
"lastImportDate": {
"type": "string",
"description": "The last date an import took place",
"format": "date-time",
"nullable": true,
"example": "2019-01-06T17:16:40"
},
"currentPhaseIndex": {
"type": "integer",
"description": "The index of the current active phase",
"format": "int32",
"example": 1
},
"currentPhaseType": {
"$ref": "#/components/schemas/ImportPhaseType"
},
"changedBy": {
"type": "string",
"description": "The id of the user that performed the latest action",
"nullable": true,
"example": "Selection"
},
"items": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ImportItem"
},
"description": "The list of ImportItems",
"nullable": true
},
"configEnvironmentId": {
"type": "string",
"description": "The source config environment id",
"format": "uuid",
"nullable": true,
"example": "3920c7a7-7836-5fb1-83b2-1d641c8337fa"
}
},
"additionalProperties": false,
"description": "The details of an import session"
},
"ImportSessionDtoServiceResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/ImportSessionDto"
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
},
"ImportSessionLogEntryDto": {
"type": "object",
"properties": {
"resultParameters": {
"type": "object",
"additionalProperties": {
"type": "string",
"nullable": true
},
"description": "Log result parameters to be injected in the log's main result message",
"nullable": true
},
"errorMessage": {
"type": "string",
"description": "Optional error message to be added after the log result",
"nullable": true,
"example": "Failure to load configuration from source tenant"
},
"resultBulletPoints": {
"type": "object",
"additionalProperties": {
"type": "string",
"nullable": true
},
"description": "Non-localized bullet points to be added at the end of the log result",
"nullable": true
},
"logStatus": {
"$ref": "#/components/schemas/LogStatus"
},
"sourceConfigId": {
"type": "string",
"description": "The id of source config for which the log was created, when available",
"nullable": true,
"example": "668c50eb-9480-4e7d-9706-036fbbf3be57"
},
"configType": {
"type": "string",
"description": "The type of config for which the log was created, when available",
"nullable": true,
"example": "JourneySchema"
},
"configName": {
"type": "string",
"description": "The name of config item for which the log was created, when available",
"nullable": true,
"example": "Client Onboarding"
},
"logType": {
"$ref": "#/components/schemas/LogType"
},
"date": {
"type": "string",
"description": "The date that the log entry was created",
"format": "date-time",
"example": "2023-05-03T08:44:55.265Z"
}
},
"additionalProperties": false,
"description": "The details of an import log"
},
"ImportSessionStatus": {
"enum": [
"Open",
"InProgress",
"Failed",
"Completed"
],
"type": "string"
},
"ImportStatus": {
"enum": [
0,
1
],
"type": "integer",
"format": "int32"
},
"LogStatus": {
"enum": [
"None",
"Invalid",
"MissingDependency",
"LoadingError",
"ImportError",
"PermissionError",
"ImplementationError",
"Pending",
"NewDraftCreated",
"Created",
"Published",
"Updated",
"NoChange",
"Info",
"IdentityError",
"Warning",
"Imported"
],
"type": "string"
},
"LogType": {
"enum": [
"None",
"RefreshingCache",
"AsOfDateChanged",
"ErrorWhileRemovingConfig",
"AsOfDateChangeError",
"ErrorWhileChangingSelectedItemVersion",
"ErrorWhileChangingDependencyVersion",
"ErrorWhileRefreshingAuthToken",
"AuthTokenRefreshRetry",
"ErrorDuringDependencyCheck",
"GlobalSessionImportError",
"MissingDependencyError",
"ErrorLoadingDependencies",
"MissingPermissionsError",
"UnexpectedLoadingError",
"MissingApiClient",
"DependentTypeDisabled",
"ConfigsFailedToLoadForSelection",
"SourceModelFailedToLoad",
"ImportStarted",
"ImportCompleted",
"UnexpectedImportEngineError",
"MissingImporter",
"DependentImportCanceled",
"SourceRawVersionLoadingError",
"ErrorPreparingNewVersion",
"ErrorPreparingNewVersionedConfig",
"NewVersionImportError",
"NewVersionedConfigImportError",
"PublishError",
"NewVersionedConfigCreated",
"NewVersionCreated",
"NewVersionPublished",
"NonVersionedConfigLoadingError",
"ErrorPreparingNonVersionedConfigUpdate",
"ErrorPreparingNonVersionedConfigCreation",
"NonVersionedConfigUpdateError",
"NonVersionedConfigCreationError",
"NewNonVersionedConfigCreated",
"NewNonVersionedConfigUpdated",
"ImportSkippedByDeepComparison",
"ImportSkippedBySmartImport",
"DependencyUpdateSkipped",
"ExternalDataImportError",
"NewExtDataMappingUpdated",
"MissingPolicyForRegime",
"InvalidScheduleConditionField",
"MissingScheduleConditonField",
"ScheduleConditionFieldIndexing",
"MissingPolicyDataKeysForSDT",
"ErrorLoadingPolicyForSDT",
"InvalidSDTUpdate",
"TeamSkippedAsDependency",
"ErrorLoadingUserScopes",
"InvalidDPRegimeUpdate",
"ErrorRequestingIndirectDependency",
"VersionedDependencyMissingActiveVersion",
"MissingPolicyProviderInSource",
"MissingPolicyProviderInTarget",
"DependencyVersionConflict",
"ErrorLoadingPolicyForAD",
"AdvancedDashboardMissingPolicyDataKeys",
"ErrorDuringClosePhase",
"IntegrationFlowGlobalVariableNoChange",
"RPSRImportSkippedDraftExists",
"RPSRTaskReferenceUpdated",
"RPSRTaskReferenceUnresolved",
"RPSRTaskReferenceMappingStarted",
"RPSRTaskReferenceMappingCompleted",
"RPSRTargetTenantLoadFailed",
"ScreeningProviderConfigurationNoChange",
"SecondaryIdentifierImported",
"RPSRSourceTenantLoadFailed",
"RiskAmbiguousSourceDuplicateNames"
],
"type": "string"
},
"ObjectServiceResponse": {
"type": "object",
"properties": {
"data": {
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
},
"ProblemDetails": {
"type": "object",
"properties": {
"type": {
"type": "string",
"nullable": true
},
"title": {
"type": "string",
"nullable": true
},
"status": {
"type": "integer",
"format": "int32",
"nullable": true
},
"detail": {
"type": "string",
"nullable": true
},
"instance": {
"type": "string",
"nullable": true
}
},
"additionalProperties": { }
},
"ServiceResponse": {
"type": "object",
"properties": {
"data": {
"type": "string",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
},
"ServiceResponseMessage": {
"type": "object",
"properties": {
"message": {
"type": "string",
"nullable": true
},
"type": {
"type": "string",
"nullable": true
},
"errorCode": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"StringServiceResponse": {
"type": "object",
"properties": {
"data": {
"type": "string",
"nullable": true
},
"messages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ServiceResponseMessage"
},
"nullable": true
}
},
"additionalProperties": false
}
},
"securitySchemes": {
"Bearer": {
"type": "apiKey",
"description": "Please insert JWT with Bearer into field",
"name": "Authorization",
"in": "header"
}
}
},
"security": [
{
"Bearer": [ ]
}
]
}