Every API here is available over the APIs.io API and to AI agents over MCP.
{
"openapi": "3.0.1",
"info": {
"title": "Fenergo Nebula Screening Command",
"description": "**Screening Command API**:\n\n<br> Screening Command API screens clients and their associated parties for adverse media, PEP and sanctions. Use Screening Command API to perform the screening action and Screening Query API to retrieve screening results. \n\n<br> **Screening Command API provides**:<br><ul><li> The ability to screen Individual and Company Legal Entities.<li> The ability to trigger asynchronous screening requests to different providers.<li> The ability to screen multiple entities in a single request.",
"version": "2.0"
},
"servers": [
{
"url": "/screeningcommand"
}
],
"paths": {
"/api/v2/batch": {
"post": {
"tags": [
"Batch"
],
"summary": "Create a new screening batch to screen one or more entities",
"description": "<ul>\r\n <li>This method creates a screening batch that triggers asynchronous requests to different screening providers.</li>\r\n <li>This batch ID can be used in the Screening Query Api to check the status of the request and to get the screening results.</li>\r\n <li>The method returns the batch ID created in the system.</li>\r\n <li>For Individuals, the mandatory fields are; tenant + fullName + type OR tenant + firstName + lastName + type.</li>\r\n <li>For Company’s, the mandatory fields are tenant + type + LEName.</li>\r\n <li>If providers is null the batch will be created with the active providers.</li>\r\n <li>If configuration set is null the batch will be created for the specified provider with the default configuration set.</li>\r\n <li>Otherwise the batch will be created with the providers and configuration sets specified in the request.</li>\r\n</ul><br /><br /><b>Required permissions:</b><br />Following permissions are required: ScreeningCreate, ScreeningAccess",
"operationId": "CreateBatch",
"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 Create Batch request",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/CreateBatchDtoServiceRequest"
}
]
}
}
}
},
"responses": {
"202": {
"description": "Success. Batch created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BatchCreatedDtoServiceResponse"
}
}
}
},
"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/v2/batch/{id}/complete": {
"put": {
"tags": [
"Batch"
],
"summary": "Complete an existing screening batch",
"description": "<ul>\r\n <li>This method is used to complete an existing batch</li>\r\n <li>All providers must have status 'Search Complete' or 'Return Failed'</li>\r\n <li>All matches must be resolved</li>\r\n</ul><br /><br /><b>Required permissions:</b><br />Following permissions are required: ScreeningEdit, ScreeningAccess",
"operationId": "CompleteBatch",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The ID of the existing batch to be completed",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "X-TENANT-ID",
"in": "header",
"description": "The UiD of the tenant representing organization",
"required": true,
"schema": {
"type": "string"
},
"example": "b11f8be3-f29b-4959-8964-956d4af7c468"
}
],
"responses": {
"202": {
"description": "Accepted. The request to complete the batch has been accepted"
},
"400": {
"description": "Bad request. The request has missing/invalid values",
"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. The batch couldn't be found",
"type": "Error",
"errorCode": "Error Code"
}
]
}
}
}
},
"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/v2/batch/{id}/matches": {
"put": {
"tags": [
"Batch"
],
"summary": "Update a list of matches in a batch",
"description": "\nThis method is used to update the status, reason and comments of a list of matches.<br /><br /><b>Required permissions:</b><br />Following permissions are required: ScreeningEdit, ScreeningAccess",
"operationId": "UpdateMatches",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The ID of the batch",
"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": "The request with the list of matches to be updated",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateEntityMatchesDtoListServiceRequest"
}
]
}
}
}
},
"responses": {
"202": {
"description": "Accepted. The request to update the list of matches has been accepted"
},
"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/v2/batch/{id}/entity/{entityId}/updatemateriality": {
"put": {
"tags": [
"Batch"
],
"summary": "Update the materiality assessment of an Entity's related party in ongoing screening",
"description": "\nThis method is used to update the materiality assessment of an Entity's related party.<br /><br /><b>Required permissions:</b><br />Following permissions are required: ScreeningEdit, ScreeningAccess",
"operationId": "UpdateMaterialityAssessment",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The ID of the ongoing screening batch",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "entityId",
"in": "path",
"description": "The ID of the entity in the batch",
"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": "The request with the related party to be updated and the set of values for the materiality assessment",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/UpdateMaterialityAssessmentDtoServiceRequest"
}
]
}
}
}
},
"responses": {
"202": {
"description": "Accepted. The request to update the materiality assessment has been accepted"
},
"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/v2/configuration": {
"post": {
"tags": [
"Configuration"
],
"summary": "Create a new Screening Configuration",
"description": "\nThis method creates the configuration V2 for a tenant with default providers<br /><br /><b>Required permissions:</b><br />Following permissions are required: ScreeningConfigurationCreate, ScreeningConfigurationAccess",
"operationId": "CreateConfigurationV2",
"parameters": [
{
"name": "X-TENANT-ID",
"in": "header",
"description": "The UiD of the tenant representing organization",
"required": true,
"schema": {
"type": "string"
},
"example": "b11f8be3-f29b-4959-8964-956d4af7c468"
}
],
"responses": {
"202": {
"description": "Success. Configuration created"
},
"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"
}
]
}
}
}
}
}
},
"patch": {
"tags": [
"Configuration"
],
"summary": "Update part of an existing Screening Configuration",
"description": "\nThis method updates part of an existing screening configuration\r\n\nPlease note that currently only the 'CommentsMandatory' property can be updated with this endpoint\r\n\nTo update other parameters specific to a particular provider, please refer to the other endpoints in this API\r\n\nAny fields in the request that are not sent or are sent as null will keep their current value. As mentioned, this currently only applies to the 'CommentsMandatory' property<br /><br /><b>Required permissions:</b><br />Following permissions are required: ScreeningConfigurationEdit, ScreeningConfigurationAccess",
"operationId": "PatchConfigurationV2",
"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": "Data with which to update the Screening Configuration",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/PatchConfigurationV2DtoServiceRequest"
}
]
}
}
}
},
"responses": {
"202": {
"description": "Success. Configuration updated",
"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/v2/configuration/provider": {
"post": {
"tags": [
"Configuration"
],
"summary": "Add a non 'Out Of The Box' Provider to an Existing Configuration",
"description": "\nThis method adds a new provider to an existing configuration\r\n\nRequired to add a configuration set that will be added as the default one\r\n\nSchema requirements:\r\n<ul>\r\n <li>The additionalSettingsSchema must match the addicionalSettings inside the deafultConfigurationSet.</li>\r\n <li>A `Toggle' cannot be mandatory.</li>\r\n <li>All fields enabled by any other field should be of type 'TextInput'.</li>\r\n <li>All fields used in EnabledBy should be of type 'Toggle'.</li>\r\n</ul><br /><br /><b>Required permissions:</b><br />Following permissions are required: ScreeningConfigurationEdit, ScreeningConfigurationAccess",
"operationId": "AddProviderV2",
"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": "Add provider request",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/AddProviderDtoServiceRequest"
}
]
}
}
}
},
"responses": {
"202": {
"description": "Success. Provider added"
},
"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/v2/configuration/provider/{providerId}": {
"patch": {
"tags": [
"Configuration"
],
"summary": "Update part of the Provider Configuration inside a specific provider",
"description": "\nThis method updates part of the configuration of a specified provider\r\n\nCredential and Ongoing Screening properties must be null or empty for non 'Out Of The Box' providers\r\n\nThe fields in the request model that are not sent or are sent as null will keep their current value\r\n\nOnly properties' values can be modified<br /><br /><b>Required permissions:</b><br />Following permissions are required: ScreeningConfigurationEdit, ScreeningConfigurationAccess",
"operationId": "PatchProviderV2",
"parameters": [
{
"name": "providerId",
"in": "path",
"description": "Id of the provider",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "X-TENANT-ID",
"in": "header",
"description": "The UiD of the tenant representing organization",
"required": true,
"schema": {
"type": "string"
},
"example": "b11f8be3-f29b-4959-8964-956d4af7c468"
}
],
"requestBody": {
"description": "Data of the provider to be updated",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/PatchProviderDtoV2ServiceRequest"
}
]
}
}
}
},
"responses": {
"202": {
"description": "Success. Configuration updated",
"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
# --- truncated at 32 KB (274 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/fenergo/refs/heads/main/openapi/fenergo-screeningcommand-v2-0-openapi.json