Skip to content

Data Compliance API (3)

This API provides services to search and read compliance information.

Download OpenAPI description
Languages
Servers
Mock server

https://idp.cdq.com/_mock/apis/data-compliance-api/data-compliance-api-v3/api-v3/

Production SOAP

https://api.corporate-data-league.ch/data-compliance/soap/v3/

Production

https://api.corporate-data-league.ch/data-compliance/

Custom Compliance Lists

Manage custom compliance lists. These endpoints allow for the creation, retrieval, updating, and deletion of custom compliance lists that can be used in screening processes.

Operations

Batch Screening

Manage batch screening processes for Business Partners. It encompasses endpoints for initiating screening jobs, monitoring their progress, and retrieving the results.

Operations

Start Batch Screening Job

Request

Start a job to screen business partners within a provided storage. The business partners are matched against sanction lists and for every business partner a detailed result is provided. Before you can run a screening job, you need to first upload business partners to a storage.

Security
basicAuth
Bodyapplication/jsonrequired

cmd

storageIdstring(BusinessPartnerStorageId)

Unique identifier of the Storage.

Example: "72d6900fce6b326088f5d9d91049e3e6"
dataSourceIdsArray of stringsnon-empty

List of data source IDs that should be used to filter storage.

Example: ["64379b92ca99c81afa6a67e4"]
dataMonitorIdstring(DataMonitorId)

Unique alpha-numeric number of the Data Monitor.

Example: "bfdfd6f7-562f-4d4a-921f-e68cba60d5cf"
chunkSizeinteger(int32)[ 1 .. 10000 ]

Chunk size that should be used during reading from storage.

Default 100
Example: "100"
configurationIdstring(ComplianceListsScreeningConfigurationId)

ID of the configuration that should be used during screening. If not provided screening will try to use configuration attached to the API Key. In this case if no configuration is attached to the API Key, exception will be thrown.

Example: "64cd0303e1cd5s1e4354a1c6"
configurationobject(ComplianceListsScreeningConfigurationRequest)

Configuration that should be used during screening. If this object and configurationId are not provided screening will try to use configuration attached to the API Key. In this case if no configuration is attached to the API Key, exception will be thrown. If this object and configurationId are both provided, exception will be also thrown as only on of them is allowed.

featuresOnArray of strings(BatchScreeningJobFeature)

List of features to be enabled.

Items Enum ValueDescription
ACTIVATE_STOP_WORDS

Activate detection of stop words and special calculation for matching score.

ACTIVATE_PROCESSING_LOG

Switches to store screening results into processing log.

Example: ["ACTIVATE_STOP_WORDS"]
featuresOffArray of strings(BatchScreeningJobFeature)

List of features to be disabled.

Items Enum ValueDescription
ACTIVATE_STOP_WORDS

Activate detection of stop words and special calculation for matching score.

ACTIVATE_PROCESSING_LOG

Switches to store screening results into processing log.

Example: ["ACTIVATE_STOP_WORDS"]
withStopWordsboolean

Specifies if stop words are supposed to be detected and special calculation is supposed to be used for matching score.

Default false
Example: "false"
curl -i -X POST \
  -u <username>:<password> \
  https://idp.cdq.com/_mock/apis/data-compliance-api/data-compliance-api-v3/api-v3/v2/screeningjobs \
  -H 'Content-Type: application/json' \
  -d '{
    "storageId": "<STORAGE_ID>"
  }'

Responses

OK

Bodyapplication/json
idstring(JobId)

Unique identifier of a job.

Example: "35f23c03-1c22-45fe-9484-3ffe769325de"
storageIdstring(BusinessPartnerStorageId)

Unique identifier of the Storage.

Example: "72d6900fce6b326088f5d9d91049e3e6"
statusstring(JobStatusEnum)

Job execution status.

Enum ValueDescription
UNKNOWN

Job becomes in unknown status.

CREATED

Job has been created.

PERSISTED

Job metadata has been persisted.

SCHEDULED

Job has been scheduled for execution.

WAITING

Job is waiting for being scheduled.

RUNNING

Job is being executed.

FINISHED

Job has finished.

DIED

Job has died due to unhandled exceptions.

CANCELED

Job has been canceled due to invalid input configuration.

FAILED

Job has failed.

Example: "RUNNING"
createdAtstring(CreatedAt)

Date of creation (ISO 8601-compliant).

Example: "2020-08-31T16:47+00:00"
userstring(UserId)

Unique ID of a user.

Example: "johndoe"
progressinteger(JobProgress)[ 0 .. 100 ]

Progress (%) of the job.

Example: "77"
auditTrailobject(AuditTrail)

Returns prove that a complete compliance check has been performed including all settings that have been used to do this check.

Response
application/json
{ "id": "35f23c03-1c22-45fe-9484-3ffe769325de", "storageId": "72d6900fce6b326088f5d9d91049e3e6", "status": "RUNNING", "createdAt": "2020-08-31T16:47+00:00", "user": "johndoe", "progress": "77", "auditTrail": { "performedBy": "John Doe", "screenedNames": [], "screeningDate": "2024-12-31T23:59:59.000Z", "screeningSettings": {} } }

Get Batch Screening Job

Request

After you have started a screening job, you will receive a job id in the response. ´´´ { "id" : <ID> } ´´´ Use this ID to poll for the status of the job using this endpoint. Once the status is FINISHED, you can download the results.

Security
basicAuth
Path
idstringrequired

ID of the Batch Screening Job.

Example: 35f23c03-1c22-45fe-9484-3ffe769325de
curl -i -X GET \
  -u <username>:<password> \
  https://idp.cdq.com/_mock/apis/data-compliance-api/data-compliance-api-v3/api-v3/v2/screeningjobs/35f23c03-1c22-45fe-9484-3ffe769325de

Responses

OK

Bodyapplication/json
idstring(JobId)

Unique identifier of a job.

Example: "35f23c03-1c22-45fe-9484-3ffe769325de"
storageIdstring(BusinessPartnerStorageId)

Unique identifier of the Storage.

Example: "72d6900fce6b326088f5d9d91049e3e6"
statusstring(JobStatusEnum)

Job execution status.

Enum ValueDescription
UNKNOWN

Job becomes in unknown status.

CREATED

Job has been created.

PERSISTED

Job metadata has been persisted.

SCHEDULED

Job has been scheduled for execution.

WAITING

Job is waiting for being scheduled.

RUNNING

Job is being executed.

FINISHED

Job has finished.

DIED

Job has died due to unhandled exceptions.

CANCELED

Job has been canceled due to invalid input configuration.

FAILED

Job has failed.

Example: "RUNNING"
createdAtstring(CreatedAt)

Date of creation (ISO 8601-compliant).

Example: "2020-08-31T16:47+00:00"
userstring(UserId)

Unique ID of a user.

Example: "johndoe"
progressinteger(JobProgress)[ 0 .. 100 ]

Progress (%) of the job.

Example: "77"
auditTrailobject(AuditTrail)

Returns prove that a complete compliance check has been performed including all settings that have been used to do this check.

Response
application/json
{ "id": "35f23c03-1c22-45fe-9484-3ffe769325de", "storageId": "72d6900fce6b326088f5d9d91049e3e6", "status": "RUNNING", "createdAt": "2020-08-31T16:47+00:00", "user": "johndoe", "progress": "77", "auditTrail": { "performedBy": "John Doe", "screenedNames": [], "screeningDate": "2024-12-31T23:59:59.000Z", "screeningSettings": {} } }

List Screening Results

Request

After a screening job is finished, you can use the job id to iterate over the results using this endpoint ´´´ { "id" : <ID> } ´´´

Security
basicAuth
Path
idstringrequired

ID of the Lookup Job.

Example: 35f23c03-1c22-45fe-9484-3ffe769325de
Query
startAfterstring

Only records with an ID greater than this ID will be fetched.

Example: startAfter=5712566172571652
limitinteger(int32)[ 1 .. 100 ]

Number of results that should be fetched.

Default 100
Example: limit=100
businessPartnerIdArray of strings

Business Partner IDs which should be filtered.

Example: businessPartnerId=63e635235c06b7396330fe40
curl -i -X GET \
  -u <username>:<password> \
  'https://idp.cdq.com/_mock/apis/data-compliance-api/data-compliance-api-v3/api-v3/v2/screeningjobs/35f23c03-1c22-45fe-9484-3ffe769325de/results?startAfter=5712566172571652&limit=100&businessPartnerId=63e635235c06b7396330fe40'

Responses

OK

Bodyapplication/json
startAfterstring(StartAfter)

The ID which is used to read the page.

Example: "5712566172571652"
nextStartAfterstring(NextStartAfter)

Provides a value to be used as a startAfter in next page request.

Example: "5712566172571652"
limitstring(NextStartAfter)

Provides a value to be used as a startAfter in next page request.

Example: "5712566172571652"
totalinteger(PageTotal)

Total number of items which can be paged.

Example: "67"
valuesArray of objects(BatchScreeningJobResultsData)

List of batch screening job results.

Response
application/json
{ "startAfter": "5712566172571652", "nextStartAfter": "5712566172571652", "limit": "5712566172571652", "total": "67", "values": [ {} ] }

Business Partners

Facilitate the management of Business Partner data in compliance contexts. It includes endpoints for generating compliance reports, initiating and monitoring screening jobs, and managing configurations.

Compliance Lists

Facilitate the screening of Business Partners against various compliance lists such as sanction lists, watch lists and PEP lists.

Operations

Configuration Profiles

Manage the retrieval of predefined configuration profiles. These profiles are essential for setting up and managing compliance list screening processes.

Operations

Configurations

Manage configurations for compliance list screening. These endpoints allow for the listing, creation, reading, updating, and deletion of configurations. The configurations are essential for defining the parameters of the screening process.

Operations

Examples

Example requests for various endpoints

Operations

Processing Logs

Operations