openapi: 3.2.0 info: title: Fenergo Document API version: '1.0' description: 'Operations tagged Document across 4 of this provider''s published API definitions: fenergo-docgenquery-v1-0-openapi.json, fenergo-externaldatacommand-v1-0-openapi.json, fenergo-externaldataquery-v1-0-openapi.json, fenergo-policyagent-v1-0-openapi.json. Each path carries the servers of the definition it was published in.' servers: - url: /docgenquery - url: /externaldatacommand - url: /externaldataquery - url: /policyagent security: - Bearer: [] tags: - name: Document paths: /api/document/{id}: get: tags: - Document summary: Get document by Id description: This method returns document for a given id. operationId: GetDocumentById parameters: - name: id 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 responses: '200': description: Success. Document is returned content: text/plain: schema: $ref: '#/components/schemas/DocumentModelDtoIEnumerableServiceResponse' application/json: schema: $ref: '#/components/schemas/DocumentModelDtoIEnumerableServiceResponse' text/json: schema: $ref: '#/components/schemas/DocumentModelDtoIEnumerableServiceResponse' '400': description: Bad request. The request has missing/invalid values 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. A document 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 servers: - url: /docgenquery /api/document/{journeyId}/{taskId}: get: tags: - Document summary: Get documents by journey Id and task Id description: This method returns documents for a given journey id and task id. operationId: GetDocumentsByJourneyIdTaskId parameters: - name: journeyId in: path required: true schema: type: string format: uuid - name: taskId 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 responses: '200': description: Success. Documents are returned content: text/plain: schema: $ref: '#/components/schemas/DocumentModelDtoIEnumerableServiceResponse' application/json: schema: $ref: '#/components/schemas/DocumentModelDtoIEnumerableServiceResponse' text/json: schema: $ref: '#/components/schemas/DocumentModelDtoIEnumerableServiceResponse' '400': description: Bad request. The request has missing/invalid values 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. A document with given journey Id and task 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 servers: - url: /docgenquery /api/document: post: tags: - Document summary: Create new document retrieval request description: 'This endpoint is obsolete and will be terminated on 2027-01-12. Use POST /externaldatabff/api/processes/{contextType}/{contextId}/gets/{getId}/document instead. This method will create a document retrieval request that will trigger asynchronous requests to different external data providers. The method will return the document request ID created in the system. Required permissions: Following permissions are required: ExternalDataAccess Required permissions: Following permissions are required: ExternalDataAccess' 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: The document retrieval request content: application/json: schema: allOf: - $ref: '#/components/schemas/DocumentRequestDtoServiceRequest' description: Service request data responses: '202': description: Success. Document retrieval request created content: application/json: schema: $ref: '#/components/schemas/DocumentRequestCreatedDtoServiceResponse' '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_2' 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_2' 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_2' example: data: null messages: - message: This endpoint is obsolete and was terminated on yyyy-MM-dd type: Error errorCode: OBSOLETE_ENDPOINT deprecated: true operationId: postApiDocument x-operation-id-source: derived servers: - url: /externaldatacommand /api/document/saveDocumentsStatuses: post: tags: - Document summary: Reject/Reset documents status description: 'This endpoint is obsolete and will be terminated on 2027-01-12. Use PATCH /externaldatabff/api/processes/{contextType}/{contextId}/gets/{getId}/document instead. This method will reject/reset status of specific document/documents Required permissions: Following permissions are required: ExternalDataAccess Required permissions: Following permissions are required: ExternalDataAccess' 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: The document reject/reset status content: application/json: schema: allOf: - $ref: '#/components/schemas/DocumentStatusRequestDtoServiceRequest' description: Service request data responses: '202': description: Success. Document status rejected/reseted '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_2' 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_2' 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_2' example: data: null messages: - message: This endpoint is obsolete and was terminated on yyyy-MM-dd type: Error errorCode: OBSOLETE_ENDPOINT deprecated: true operationId: postApiDocumentSaveDocumentsStatuses x-operation-id-source: derived servers: - url: /externaldatacommand /api/document/signedurl/{fileName}: get: tags: - Document summary: Method to get a signed URL from S3 description: 'This method will generate a URL that will allow the user to open the document in the browser. The URL is signed by the AWS S3 service and the token will expire in a short time. Required permissions: Following permissions are required: ExternalDataAccess Required permissions: Following permissions are required: ExternalDataAccess' parameters: - name: fileName in: path description: Name of document required: true schema: type: string - name: X-TENANT-ID in: header description: The UiD of the tenant representing organization required: true schema: type: string example: b11f8be3-f29b-4959-8964-956d4af7c468 responses: '200': description: "An url to access the file uploaded for the document with the specified \n fileName, if found; otherwise, `null`." content: application/json: schema: $ref: '#/components/schemas/StringServiceResponse_3' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ServiceResponse_2' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse_3' example: data: {} messages: - message: Not found. If no signed url is found 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_3' 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_3' 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_3' example: data: null messages: - message: This endpoint is obsolete and was terminated on yyyy-MM-dd type: Error errorCode: OBSOLETE_ENDPOINT operationId: getApiDocumentSignedurlByFileName x-operation-id-source: derived servers: - url: /externaldataquery /api/v1/document/{extractionId}/{documentId}/download: get: tags: - Document summary: Download Policy Document description: Get a presigned URL to download the uploaded policy document parameters: - name: extractionId in: path required: true schema: type: string format: uuid - name: documentId 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 responses: '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/HttpValidationProblemDetails' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/DownloadDocumentResponse' '404': description: Not Found '403': description: Access to resource is forbidden. content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse_4' example: data: {} messages: - message: 'Access denied. Following permissions are required: Permission1, Permission2' type: Forbidden errorCode: Error Code '401': description: User is not authorized to perform this request content: application/json: example: message: Unauthorized '500': description: Internal server exception. Please, contact your provider. content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse_4' example: data: null messages: - message: Internal server exception. Please, contact your provider. type: Error errorCode: INTERNAL_SERVER_ERROR operationId: getApiV1DocumentByExtractionIdByDocumentIdDownload x-operation-id-source: derived servers: - url: /policyagent /api/v1/document: post: tags: - Document summary: Upload Policy Document description: Upload policy docuemnt 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/UploadDocumentRequest' required: true responses: '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/HttpValidationProblemDetails' '401': description: Unauthorized content: application/problem+json: schema: $ref: '#/components/schemas/HttpValidationProblemDetails' '403': description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/HttpValidationProblemDetails' '404': description: Not Found content: application/problem+json: schema: $ref: '#/components/schemas/HttpValidationProblemDetails' '409': description: Conflict content: application/problem+json: schema: $ref: '#/components/schemas/HttpValidationProblemDetails' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/HttpValidationProblemDetails' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/UploadDocumentResponse' operationId: postApiV1Document x-operation-id-source: derived servers: - url: /policyagent components: schemas: 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 ValidationErrorModel: type: object properties: propertyName: type: - string - 'null' errorMessage: type: - string - 'null' attemptedValue: {} errorCode: type: - string - 'null' additionalProperties: false ServiceResponseMessage: type: object properties: message: type: - string - 'null' type: type: - string - 'null' errorCode: type: - string - 'null' additionalProperties: false DocumentModelDtoIEnumerableServiceResponse: type: object properties: data: type: - array - 'null' items: $ref: '#/components/schemas/DocumentModelDto' messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage' additionalProperties: false DocumentModelDto: type: object properties: id: type: string format: uuid entityId: type: string format: uuid journeyId: type: string format: uuid taskId: type: string format: uuid documentManagementId: type: string format: uuid createdDate: type: string format: date-time userId: type: - string - 'null' templateSetId: type: string format: uuid versionNumber: type: integer format: int32 status: type: - string - 'null' errors: type: - array - 'null' items: type: string warnings: type: - array - 'null' items: type: string templateVersionNumber: type: integer format: int32 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 ServiceResponse: type: object properties: data: type: - string - 'null' description: The service response DTO messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage_2' description: List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response additionalProperties: false description: Service response data DocumentRequestDto: required: - documentData type: object properties: importRequestId: type: string description: ID of the created Import request format: uuid example: 86fa2093-f161-4231-b1f5-8d6fd6049f96 documentData: minItems: 1 type: array items: $ref: '#/components/schemas/DocumentRequestDataDto' description: Additional fields for Document request additionalProperties: false DocumentStatusRequestDtoServiceRequest: type: object properties: data: allOf: - $ref: '#/components/schemas/DocumentStatusRequestDto' description: The service request DTO additionalProperties: false description: Service request data DocumentRequestDataDto: type: object properties: documentId: type: - string - 'null' description: The id of the document example: c5b6cf1d-e00b-4b96-b1f2-fc2884c543bc name: type: - string - 'null' description: The name of the document type: type: - string - 'null' description: The type of the document example: Driver license status: type: - string - 'null' description: The status of the document accessLayers: allOf: - $ref: '#/components/schemas/AccessLayerDto' description: Document access layers. documentCriteria: description: Document Criteria that we want to order additionalProperties: false DocumentStatusRequestDataDto: type: object properties: documentId: type: - string - 'null' description: Id of specific document example: 86fa2093-f161-4231-b1f5-8d6fd6049f96 status: enum: - Rejected - Retrieved type: - string - 'null' description: Document status. additionalProperties: false DocumentStatusRequestDto: required: - documentStatuses type: object properties: importRequestId: type: string description: ID of the created Import request format: uuid example: 86fa2093-f161-4231-b1f5-8d6fd6049f96 documentStatuses: minItems: 1 type: array items: $ref: '#/components/schemas/DocumentStatusRequestDataDto' description: Additional fields for Document Status request additionalProperties: false DocumentRequestCreatedDto: type: object properties: documentRequestId: type: - string - 'null' description: ID of the created Document request example: 495669fb-e3c5-4538-8457-4dcbcb720578 additionalProperties: false description: Response DTO representing the created Search request ServiceResponseMessage_2: type: object properties: message: type: - string - 'null' description: The message example: Success type: type: - string - 'null' description: 'Type of the message One of Info, Warning, Error, Forbidden' example: Info errorCode: type: - string - 'null' description: Error Code example: INTERNAL_SERVER_ERROR additionalProperties: false description: The message associated to the service response AccessLayerDto: type: object properties: geographic: uniqueItems: true type: - array - 'null' items: type: string description: Collection of geographic access layers businessRelated: uniqueItems: true type: - array - 'null' items: type: string description: Collection of business related access layers additionalProperties: false description: DTO representing access layers attached DocumentRequestDtoServiceRequest: type: object properties: data: allOf: - $ref: '#/components/schemas/DocumentRequestDto' description: The service request DTO additionalProperties: false description: Service request data DocumentRequestCreatedDtoServiceResponse: type: object properties: data: allOf: - $ref: '#/components/schemas/DocumentRequestCreatedDto' description: The service response DTO messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage_2' description: List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response additionalProperties: false description: Service response data ObjectServiceResponse_2: type: object properties: data: description: The service response DTO messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage_2' description: List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response additionalProperties: false description: Service response data StringServiceResponse_2: type: object properties: data: type: - string - 'null' description: The service response DTO messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage_2' description: List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response additionalProperties: false description: Service response data ServiceResponse_2: type: object properties: data: type: - string - 'null' description: The service response DTO messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage_3' description: List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response additionalProperties: false description: Service response data ServiceResponseMessage_3: type: object properties: message: type: - string - 'null' description: The message example: Success type: type: - string - 'null' description: 'Type of the message One of Info, Warning, Error, Forbidden' example: Info errorCode: type: - string - 'null' description: Error Code example: INTERNAL_SERVER_ERROR additionalProperties: false description: The message associated to the service response ObjectServiceResponse_3: type: object properties: data: description: The service response DTO messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage_3' description: List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response additionalProperties: false description: Service response data StringServiceResponse_3: type: object properties: data: type: - string - 'null' description: The service response DTO messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage_3' description: List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response additionalProperties: false description: Service response data UploadDocumentRequest: type: object properties: fileName: type: - string - 'null' extractionId: type: string format: uuid additionalProperties: false DownloadDocumentResponse: type: object properties: presignedUrl: type: - string - 'null' additionalProperties: false UploadDocumentResponse: type: object properties: presignedUrl: type: - string - 'null' id: type: string format: uuid additionalProperties: false ServiceResponseMessage_4: type: object properties: message: type: - string - 'null' description: The message example: Success type: type: - string - 'null' description: 'Type of the message One of Info, Warning, Error, Forbidden' example: Info errorCode: type: - string - 'null' description: Error Code example: INTERNAL_SERVER_ERROR additionalProperties: false description: The message associated to the service response HttpValidationProblemDetails: type: object properties: type: type: - string - 'null' title: type: - string - 'null' status: type: - integer - 'null' format: int32 detail: type: - string - 'null' instance: type: - string - 'null' errors: type: - object - 'null' additionalProperties: type: array items: type: string additionalProperties: {} ObjectServiceResponse_4: type: object properties: data: description: The service response DTO messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage_4' description: List of Fenergo.Nebula.Platform.Core.Models.Response.ServiceResponseMessage associated to the service response additionalProperties: false description: Service response data securitySchemes: Bearer: type: apiKey description: Please insert JWT with Bearer into field name: Authorization in: header x-refined-from: - fenergo-docgenquery-v1-0-openapi.json - fenergo-externaldatacommand-v1-0-openapi.json - fenergo-externaldataquery-v1-0-openapi.json - fenergo-policyagent-v1-0-openapi.json