openapi: 3.2.0 info: title: Fenergo Nebula Covenants & Conditions Command Covenant… description: '**Covenants & Conditions Command API**: Covenants & Conditions Command API provides endpoints in order to manage and configure all related models and their versions. **Covenants & Conditions Command API provides**: The ability to manage Covenant Condition Set. The ability to manage Covenant Condition Version.' version: '1.0' servers: - url: /covenantsconditionscommand security: - Bearer: [] tags: - name: CovenantConditionBatch paths: /api/batch/update: put: tags: - CovenantConditionBatch summary: Update a batch of covenant condition version description: 'This method updates a batch of existing Covenant Condition Version. Only Covenant Condition Version with "Draft" status can be updated. Required permissions: Following permissions are required: CovenantsConditionsEdit' operationId: UpdateBatch 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: Batch of Covenant Condition Version data content: application/json: schema: $ref: '#/components/schemas/CovenantConditionVersionDtoIEnumerableServiceRequest' text/json: schema: $ref: '#/components/schemas/CovenantConditionVersionDtoIEnumerableServiceRequest' application/*+json: schema: $ref: '#/components/schemas/CovenantConditionVersionDtoIEnumerableServiceRequest' responses: '202': description: Accepted for processing content: text/plain: schema: $ref: '#/components/schemas/BatchResultDtoServiceResponse' application/json: schema: $ref: '#/components/schemas/BatchResultDtoServiceResponse' text/json: schema: $ref: '#/components/schemas/BatchResultDtoServiceResponse' '400': description: Invalid request content: text/plain: schema: $ref: '#/components/schemas/ValidationErrorModelListServiceResponse' application/json: schema: $ref: '#/components/schemas/ValidationErrorModelListServiceResponse' text/json: schema: $ref: '#/components/schemas/ValidationErrorModelListServiceResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: {} messages: - message: Not Found. Covenant Condition Set with given id does not exist type: Error errorCode: Error Code '401': description: User is not authorized to perform this request content: application/json: example: message: Unauthorized '403': description: Access to resource is forbidden. content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: {} messages: - message: 'Access denied. Following permissions are required: Permission1, Permission2' type: Forbidden errorCode: Error Code '500': description: Internal server exception. Please, contact your provider. content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: null messages: - message: Internal server exception. Please, contact your provider. type: Error errorCode: INTERNAL_SERVER_ERROR '410': description: Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers. content: application/json: schema: $ref: '#/components/schemas/StringServiceResponse' example: data: null messages: - message: This endpoint is obsolete and was terminated on yyyy-MM-dd type: Error errorCode: OBSOLETE_ENDPOINT /api/batch/complete: put: tags: - CovenantConditionBatch summary: Complete a batch of covenant condition version description: 'This method completes a batch of existing Covenant Condition Version. Only Covenant Condition Version with "Draft" status can be updated. Required permissions: Following permissions are required: CovenantsConditionsEdit' operationId: CompleteBatch 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: Batch of Covenant Condition Version data content: application/json: schema: $ref: '#/components/schemas/BatchCompleteDtoServiceRequest' text/json: schema: $ref: '#/components/schemas/BatchCompleteDtoServiceRequest' application/*+json: schema: $ref: '#/components/schemas/BatchCompleteDtoServiceRequest' responses: '202': description: Accepted for processing content: text/plain: schema: $ref: '#/components/schemas/BatchResultDtoServiceResponse' application/json: schema: $ref: '#/components/schemas/BatchResultDtoServiceResponse' text/json: schema: $ref: '#/components/schemas/BatchResultDtoServiceResponse' '400': description: Invalid request content: text/plain: schema: $ref: '#/components/schemas/ValidationErrorModelListServiceResponse' application/json: schema: $ref: '#/components/schemas/ValidationErrorModelListServiceResponse' text/json: schema: $ref: '#/components/schemas/ValidationErrorModelListServiceResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: {} messages: - message: Not Found. Covenant Condition Set with given id does not exist type: Error errorCode: Error Code '401': description: User is not authorized to perform this request content: application/json: example: message: Unauthorized '403': description: Access to resource is forbidden. content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: {} messages: - message: 'Access denied. Following permissions are required: Permission1, Permission2' type: Forbidden errorCode: Error Code '500': description: Internal server exception. Please, contact your provider. content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: null messages: - message: Internal server exception. Please, contact your provider. type: Error errorCode: INTERNAL_SERVER_ERROR '410': description: Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers. content: application/json: schema: $ref: '#/components/schemas/StringServiceResponse' example: data: null messages: - message: This endpoint is obsolete and was terminated on yyyy-MM-dd type: Error errorCode: OBSOLETE_ENDPOINT /api/batch/snapshot: post: tags: - CovenantConditionBatch summary: Take a batch of snapshot for covenant condition version description: 'This method takes a batch of snapshot for existing Covenant Condition Version. Required permissions: Following permissions are required: CovenantsConditionsEdit' operationId: BatchSnapshot 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: Batch of Covenant Condition Version data content: application/json: schema: $ref: '#/components/schemas/SnapshotSetIEnumerableServiceRequest' text/json: schema: $ref: '#/components/schemas/SnapshotSetIEnumerableServiceRequest' application/*+json: schema: $ref: '#/components/schemas/SnapshotSetIEnumerableServiceRequest' responses: '202': description: Accepted for processing content: text/plain: schema: $ref: '#/components/schemas/BatchSnapshotResultDtoServiceResponse' application/json: schema: $ref: '#/components/schemas/BatchSnapshotResultDtoServiceResponse' text/json: schema: $ref: '#/components/schemas/BatchSnapshotResultDtoServiceResponse' '400': description: Invalid request content: text/plain: schema: $ref: '#/components/schemas/ValidationErrorModelListServiceResponse' application/json: schema: $ref: '#/components/schemas/ValidationErrorModelListServiceResponse' text/json: schema: $ref: '#/components/schemas/ValidationErrorModelListServiceResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: {} messages: - message: Not Found. Covenant Condition Set with given id does not exist type: Error errorCode: Error Code '401': description: User is not authorized to perform this request content: application/json: example: message: Unauthorized '403': description: Access to resource is forbidden. content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: {} messages: - message: 'Access denied. Following permissions are required: Permission1, Permission2' type: Forbidden errorCode: Error Code '500': description: Internal server exception. Please, contact your provider. content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: null messages: - message: Internal server exception. Please, contact your provider. type: Error errorCode: INTERNAL_SERVER_ERROR '410': description: Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers. content: application/json: schema: $ref: '#/components/schemas/StringServiceResponse' example: data: null messages: - message: This endpoint is obsolete and was terminated on yyyy-MM-dd type: Error errorCode: OBSOLETE_ENDPOINT components: schemas: SpecialCharactersRuleDto: type: object properties: active: type: boolean message: type: - string - 'null' excludedCharacters: type: - array - 'null' items: type: string additionalProperties: false ExternalProviderRuleDto: type: object properties: active: type: boolean message: type: - string - 'null' providerId: type: string format: uuid additionalProperties: false BatchResultDto: type: object properties: versions: type: - array - 'null' items: $ref: '#/components/schemas/CovenantConditionVersionDto' errors: type: - array - 'null' items: $ref: '#/components/schemas/BatchErrorDto' additionalProperties: false BatchResultDtoServiceResponse: type: object properties: data: $ref: '#/components/schemas/BatchResultDto' messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage' additionalProperties: false SinglePropertyDto: type: object properties: type: $ref: '#/components/schemas/PropertyType' discriminator: $ref: '#/components/schemas/PropertyType' value: type: - string - 'null' additionalProperties: false ValidationDataDto: type: object properties: isMandatory: $ref: '#/components/schemas/BasicRuleDto' specialCharacters: $ref: '#/components/schemas/SpecialCharactersRuleDto' noNumbers: $ref: '#/components/schemas/BasicRuleDto' onlyInteger: $ref: '#/components/schemas/BasicRuleDto' noNegative: $ref: '#/components/schemas/BasicRuleDto' onlyDecimal: $ref: '#/components/schemas/BasicRuleDto' regex: $ref: '#/components/schemas/RegexRuleDto' characterLimit: $ref: '#/components/schemas/ValueLimitRuleDto' numberLimit: $ref: '#/components/schemas/ValueLimitRuleDto' noFutureDates: $ref: '#/components/schemas/BasicRuleDto' noPastDates: $ref: '#/components/schemas/BasicRuleDto' dateLimit: $ref: '#/components/schemas/DateLimitRuleDto' multiSelectLimit: $ref: '#/components/schemas/ValueLimitRuleDto' collectionMinimumCount: $ref: '#/components/schemas/CollectionMinimumCountRuleDto' collectionMaximumCount: $ref: '#/components/schemas/CollectionMaximumCountRuleDto' externalProvider: $ref: '#/components/schemas/ExternalProviderRuleDto' additionalProperties: false SnapshotSetIEnumerableServiceRequest: type: object properties: data: type: - array - 'null' items: $ref: '#/components/schemas/SnapshotSet' additionalProperties: false CompleteDto: type: object properties: setId: type: string format: uuid versionId: type: string format: uuid additionalProperties: false CollectionMaximumCountRuleDto: type: object properties: active: type: boolean message: type: - string - 'null' requiredTypesMaxCount: type: - object - 'null' additionalProperties: type: - integer - 'null' format: int32 overallMaximumCount: type: - integer - 'null' format: int32 additionalProperties: false ValueLimitRuleDto: type: object properties: active: type: boolean message: type: - string - 'null' minValue: type: - integer - 'null' format: int32 maxValue: type: - integer - 'null' format: int32 additionalProperties: false BasicRuleDto: type: object properties: active: type: boolean message: type: - string - 'null' additionalProperties: false GroupRequirement: type: object properties: name: type: - string - 'null' key: type: - string - 'null' primaryDataGroupField: type: - string - 'null' snapshotPropertyItems: type: - array - 'null' items: $ref: '#/components/schemas/GroupRequirementItem' validationRule: $ref: '#/components/schemas/ValidationRuleDto' additionalProperties: false BatchSnapshotResultDto: type: object properties: snapshotSets: type: - array - 'null' items: $ref: '#/components/schemas/SnapshotSet' errors: type: - array - 'null' items: $ref: '#/components/schemas/BatchErrorDto' additionalProperties: false CovenantConditionItemDto: type: object properties: id: type: string format: uuid dataKey: type: - string - 'null' value: type: - string - 'null' properties: type: - object - 'null' additionalProperties: $ref: '#/components/schemas/SinglePropertyDto' associations: type: - array - 'null' items: $ref: '#/components/schemas/CovenantConditionAssociationDto' additionalProperties: false SnapshotSet: type: object properties: setId: type: string format: uuid tenantId: type: string format: uuid versionId: type: string format: uuid snapshotGroups: type: - array - 'null' items: $ref: '#/components/schemas/GroupRequirement' additionalProperties: false CovenantConditionVersionDtoIEnumerableServiceRequest: type: object properties: data: type: - array - 'null' items: $ref: '#/components/schemas/CovenantConditionVersionDto' additionalProperties: false BatchCompleteDtoServiceRequest: type: object properties: data: $ref: '#/components/schemas/BatchCompleteDto' additionalProperties: false GroupRequirementItem: type: object properties: key: type: - string - 'null' label: type: - string - 'null' valueType: type: - string - 'null' order: type: integer format: int32 isAdditionalField: type: boolean validationRule: $ref: '#/components/schemas/ValidationRuleDto' additionalProperties: false CollectionMinimumCountRuleDto: type: object properties: active: type: boolean message: type: - string - 'null' requiredTypesMinCount: type: - object - 'null' additionalProperties: type: - integer - 'null' format: int32 overallMinimumCount: type: integer format: int32 additionalProperties: false CovenantConditionVersionDto: type: object properties: id: type: string format: uuid setId: type: string format: uuid journeyId: type: string format: uuid taskId: type: string format: uuid description: type: - string - 'null' status: type: - string - 'null' covenantConditionGroups: type: - array - 'null' items: $ref: '#/components/schemas/CovenantConditionGroupDto' lastUpdatedDateTime: type: string format: date-time createdDateTime: type: string format: date-time vesionNumber: type: integer format: int32 additionalProperties: false ValidationRuleDto: type: object properties: id: type: string format: uuid setId: type: string format: uuid propertyId: type: string format: uuid dataGroupId: type: - string - 'null' format: uuid isDataGroup: type: boolean propertyName: type: - string - 'null' friendlyName: type: - string - 'null' validationType: type: - string - 'null' validationData: $ref: '#/components/schemas/ValidationDataDto' additionalProperties: false DateLimitRuleDto: type: object properties: active: type: boolean message: type: - string - 'null' minDate: type: - string - 'null' format: date-time maxDate: type: - string - 'null' format: date-time additionalProperties: false CovenantConditionAssociationDto: type: object properties: id: type: string format: uuid sourceId: type: string format: uuid targetId: type: string format: uuid targetType: type: - string - 'null' additionalProperties: false ObjectServiceResponse: type: object properties: data: {} messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage' additionalProperties: false StringServiceResponse: type: object properties: data: type: - string - 'null' messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage' additionalProperties: false ValidationErrorModelListServiceResponse: type: object properties: data: type: - array - 'null' items: $ref: '#/components/schemas/ValidationErrorModel' messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage' additionalProperties: false example: data: - propertyName: data errorMessage: Data is required attemptedValue: '' errorCode: NotNullValidator messages: - message: Data is required type: Error errorCode: Error Code PropertyType: enum: - Single type: string BatchErrorDto: type: object properties: setId: type: string format: uuid versionId: type: string format: uuid error: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage' additionalProperties: false BatchCompleteDto: type: object properties: requests: type: - array - 'null' items: $ref: '#/components/schemas/CompleteDto' additionalProperties: false BatchSnapshotResultDtoServiceResponse: type: object properties: data: $ref: '#/components/schemas/BatchSnapshotResultDto' messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage' additionalProperties: false ValidationErrorModel: type: object properties: propertyName: type: - string - 'null' errorMessage: type: - string - 'null' attemptedValue: {} errorCode: type: - string - 'null' additionalProperties: false RegexRuleDto: type: object properties: active: type: boolean message: type: - string - 'null' isCaseSensitive: type: boolean regexValue: type: - string - 'null' additionalProperties: false ServiceResponseMessage: type: object properties: message: type: - string - 'null' type: type: - string - 'null' errorCode: type: - string - 'null' additionalProperties: false CovenantConditionGroupDto: type: object properties: id: type: string format: uuid dataGroupId: type: string format: uuid dataGroupVersionNumber: type: - integer - 'null' format: int32 name: type: - string - 'null' type: type: - string - 'null' covenantConditionItems: type: - array - 'null' items: $ref: '#/components/schemas/CovenantConditionItemDto' additionalProperties: false securitySchemes: Bearer: type: apiKey description: Please insert JWT with Bearer into field name: Authorization in: header