Skip to content

Case Management API (1)

This API provides services to manage screening history, cases and decisions.

Languages
Servers
Mock server

https://idp.cdq.com/_mock/apis/case-management-api/api-v1/

Case Management

Endpoints to manage screening history, cases and decisions.

Operations

Get all business partner cases.

Request

Endpoint to get all business partner cases.

Security
basicAuth
Query
caseIdstring

ID of the case.

Example: caseId=123
dataSourceIdstring(BusinessPartnerStorageDataSourceId)

ID of the business partner storage data source.

Example: dataSourceId=648824a691d8d2503d65103e
businessPartnerIdstring(BusinessPartnerId)

ID of the business partner.

Example: businessPartnerId=63e635235c06b7396330fe40
businessPartnerNamestring

Performs a full-text search on business partner names. This enables tokenized word matching with relevance scoring, and supports matching on whole words or stemmed variants (e.g., "Porsche" matches "Porsche Holding"). Unlike regex substring search, $text search does not support partial matches or wildcards (e.g., "Pors" will not match "Porsche"). The search is case-insensitive and language-aware (English stemmer by default). Note: Exact matches are prioritized over partial matches. Note: This is not a fuzzy search — typos or approximate matches are not supported.

Example: businessPartnerName=Apple
screeningScorenumber

Screening score.

Example: screeningScore=0.8
fromDatestring

Date from a point in time.

Example: fromDate=2021-01-01T00:00:00Z
toDatestring

Date to a point in time.

Example: toDate=2021-01-02T00:00:00Z
listTypesArray of strings(ListTypes)

Types of the compliance list.

Items Enum"SL""PEP""WL"
Example: listTypes=PEP&listTypes=SL&listTypes=WL
listAuthoritystring

Authority of the list.

Example: listAuthority=United States Department of the Treasury
listNamestring

Name of the list.

Example: listName=OFAC
statusstring(AMLCaseStatus)

Status of the case.

Enum"OPEN""CLOSED""OUTDATED"
Example: status=OPEN
systemStatusstring(AMLCaseSystemStatus)

System status of the case.

Enum"VALID""OUTDATED""DELETED"
Example: systemStatus=VALID
decisionTypestring(AMLDecisionType)

Type of the decision.

Enum"CREATE""CONFIRMED""CLEARED""REOPEN""DELETED""OUTDATED""REVALIDATED"
Example: decisionType=CONFIRMED
onlyOpenCasesboolean

Flag to filter business partners with open cases.

Example: onlyOpenCases=true
sortstring

Defines the attributes to sort by. The result is sorted in ascending order. To use descending order use prefix -. Sorting is available only for a single attribute. Available options:

  • caseId
  • screeningScore
  • issuedAt
  • businessPartnerId
  • businessPartnerName
  • country
  • listType
  • lastCheckedAt
  • listAuthority
  • listName
  • lastDecisionAt
  • lastDecisionType
Example: sort=-lastCheckedAt
startAfterstring

Pagination cursor which should be filled with nextStartAfter value provided in the previous page read response.

Example: startAfter=NjI4ZGNkZjAzYjlkMjY4NjhlNjQxNDRm
limitinteger(int32)>= 1

Number of resources to be returned on the page.

Default 500
Example: limit=200
curl -i -X GET \
  -u <username>:<password> \
  https://idp.cdq.com/_mock/apis/case-management-api/api-v1/public/cases

Responses

OK

Bodyapplication/json
valuesArray of objects(AMLCase)
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"
limitinteger(Limit)

Number of items per page.

Example: "100"
totalinteger(PageTotal)

Total number of items which can be paged.

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

Get all business partner case history.

Request

Endpoint to get all business partner case history.

Security
basicAuth
Query
businessPartnerIdstring(BusinessPartnerId)

ID of the business partner.

Example: businessPartnerId=63e635235c06b7396330fe40
fromDatestring

Date from a point in time.

Example: fromDate=2021-01-01T00:00:00Z
toDatestring

Date to a point in time.

Example: toDate=2021-01-02T00:00:00Z
listTypesArray of strings(ListTypes)

Types of the compliance list.

Items Enum"SL""PEP""WL"
Example: listTypes=PEP&listTypes=SL&listTypes=WL
startAfterstring

Pagination cursor which should be filled with nextStartAfter value provided in the previous page read response.

Example: startAfter=NjI4ZGNkZjAzYjlkMjY4NjhlNjQxNDRm
limitinteger(int32)>= 1

Number of resources to be returned on the page.

Default 500
Example: limit=200
curl -i -X GET \
  -u <username>:<password> \
  https://idp.cdq.com/_mock/apis/case-management-api/api-v1/cases/history

Responses

OK

Bodyapplication/json
valuesArray of objects(BusinessPartnerCasesSummaryHistory)
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"
limitinteger(Limit)

Number of items per page.

Example: "100"
totalinteger(PageTotal)

Total number of items which can be paged.

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

Get business partner case details.

Request

Endpoint to get business partner case details.

Security
basicAuth
Path
caseIdstring(AMLCaseId)required

ID of the case.

Example: 123
curl -i -X GET \
  -u <username>:<password> \
  https://idp.cdq.com/_mock/apis/case-management-api/api-v1/cases/123

Responses

OK

Bodyapplication/json
amlBusinessPartnerDetailsobject(AMLBusinessPartnerDetails)

Details of the business partner.

informationBarobject(InformationBar)

Information bar.

formattedCaseDetailsobject(FormattedCaseDetails)

Holds the result of a formatted compliance list.

decisionsArray of objects(AMLDecision)
Response
application/json
{ "amlBusinessPartnerDetails": { "businessPartnerId": "63e635235c06b7396330fe40", "name": "Apple", "address": "221B Baker Street, London, UK", "externalId": "123", "legalForm": "CZ_8911(Společnost s ručením omezeným)", "identifiers": [] }, "informationBar": { "status": "OPEN", "listType": "PEP", "screeningScore": 0.8, "screeningDate": "2021-01-01T00:00:00Z", "decisionDate": "2021-01-01T00:00:00Z", "modificationDate": "2021-01-01T00:00:00Z", "issuingDate": "2021-01-01T00:00:00Z", "dateOfInformation": "2023-06-15", "dateOfPublication": "2022-11-01", "dateOfBirth": "1985-08-20" }, "formattedCaseDetails": { "caseDetails": {}, "listDetails": {}, "identification": {}, "activity": {}, "metadata": {} }, "decisions": [ {} ] }

Get AML case by version.

Request

Retrieves a snapshot of an AML case from all historical versions of the case.

Security
basicAuth
Path
caseIdstring(AMLCaseId)required

ID of the case.

Example: 123
versionIdstringrequired

ID of the AML case history version.

Example: 6735e6a8d264a321483afe2a
curl -i -X GET \
  -u <username>:<password> \
  https://idp.cdq.com/_mock/apis/case-management-api/api-v1/cases/123/versions/6735e6a8d264a321483afe2a

Responses

OK

Bodyapplication/json
amlBusinessPartnerDetailsobject(AMLBusinessPartnerDetails)

Details of the business partner.

informationBarobject(InformationBar)

Information bar.

formattedCaseDetailsobject(FormattedCaseDetails)

Holds the result of a formatted compliance list.

Response
application/json
{ "amlBusinessPartnerDetails": { "businessPartnerId": "63e635235c06b7396330fe40", "name": "Apple", "address": "221B Baker Street, London, UK", "externalId": "123", "legalForm": "CZ_8911(Společnost s ručením omezeným)", "identifiers": [] }, "informationBar": { "status": "OPEN", "listType": "PEP", "screeningScore": 0.8, "screeningDate": "2021-01-01T00:00:00Z", "decisionDate": "2021-01-01T00:00:00Z", "modificationDate": "2021-01-01T00:00:00Z", "issuingDate": "2021-01-01T00:00:00Z", "dateOfInformation": "2023-06-15", "dateOfPublication": "2022-11-01", "dateOfBirth": "1985-08-20" }, "formattedCaseDetails": { "caseDetails": {}, "listDetails": {}, "identification": {}, "activity": {}, "metadata": {} } }

List all screened business partners.

Request

Endpoint to list all screened business partners with filtering options.

Security
basicAuth
Query
dataSourceIdstring(BusinessPartnerStorageDataSourceId)

ID of the business partner storage data source.

Example: dataSourceId=648824a691d8d2503d65103e
businessPartnerIdstring(BusinessPartnerId)

ID of the business partner.

Example: businessPartnerId=63e635235c06b7396330fe40
businessPartnerNamestring

Performs a full-text search on business partner names. This enables tokenized word matching with relevance scoring, and supports matching on whole words or stemmed variants (e.g., "Porsche" matches "Porsche Holding"). Unlike regex substring search, $text search does not support partial matches or wildcards (e.g., "Pors" will not match "Porsche"). The search is case-insensitive and language-aware (English stemmer by default). Note: Exact matches are prioritized over partial matches. Note: This is not a fuzzy search — typos or approximate matches are not supported.

Example: businessPartnerName=Apple
lastDecisionDatestring

Date of the last decision.

Example: lastDecisionDate=2021-01-01T00:00:00Z
fromDatestring

Date from a point in time.

Example: fromDate=2021-01-01T00:00:00Z
toDatestring

Date to a point in time.

Example: toDate=2021-01-02T00:00:00Z
listTypesArray of strings(ListTypes)

Types of the compliance list.

Items Enum"SL""PEP""WL"
Example: listTypes=PEP&listTypes=SL&listTypes=WL
onlyOpenCasesboolean

Flag to filter business partners with open cases.

Example: onlyOpenCases=true
onlyConfirmedCasesboolean

Flag to filter business partners with confirmed cases (Last decision type is CONFIRMED).

Example: onlyConfirmedCases=true
onlyClearedCasesboolean

Flag to filter business partners with cleared cases (Last decision type is CLEARED).

Example: onlyClearedCases=true
onlyVerifiedCasesboolean

Flag to filter business partners with verified cases (totalVerifiedCases > 0).

Example: onlyVerifiedCases=true
sortstring

Defines the attributes to sort by. The result is sorted in ascending order. To use descending order use prefix -. Sorting is available only for a single attribute. Available options:

  • businessPartnerId
  • businessPartnerName
  • country
  • lastCheckedAt
  • lastHitAt
  • totalCases
  • openCases
  • closedCases
Example: sort=-lastCheckedAt
startAfterstring

Pagination cursor which should be filled with nextStartAfter value provided in the previous page read response.

Example: startAfter=NjI4ZGNkZjAzYjlkMjY4NjhlNjQxNDRm
limitinteger(int32)>= 1

Number of resources to be returned on the page.

Default 500
Example: limit=200
curl -i -X GET \
  -u <username>:<password> \
  https://idp.cdq.com/_mock/apis/case-management-api/api-v1/public/businesspartners

Responses

OK

Bodyapplication/json
valuesArray of objects(AMLBusinessPartner)
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"
limitinteger(Limit)

Number of items per page.

Example: "100"
totalinteger(PageTotal)

Total number of items which can be paged.

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

Update business partner deletion date.

Request

Endpoint to update business partner with deletion date.

Security
basicAuth
Path
businessPartnerIdsArray of strings(BusinessPartnerId)required

ID's of business partners.

Example: 63e635235c06b7396330fe40
organizationIdstringrequired

ID of the organization.

Example: cdq_monitor
curl -i -X PUT \
  -u <username>:<password> \
  https://idp.cdq.com/_mock/apis/case-management-api/api-v1/businesspartners/63e635235c06b7396330fe40/organizations/cdq_monitor

Responses

OK

Response
No content

Get business partner case decision.

Request

Endpoint to get business partner case decision.

Security
basicAuth
Path
businessPartnerIdstring(BusinessPartnerId)required

ID of the business partner.

Example: 63e635235c06b7396330fe40
caseIdstring(AMLCaseId)required

ID of the case.

Example: 123
curl -i -X GET \
  -u <username>:<password> \
  https://idp.cdq.com/_mock/apis/case-management-api/api-v1/businesspartners/63e635235c06b7396330fe40/cases/123/decisions

Responses

OK

Bodyapplication/json
valuesArray of objects(AMLDecision)
Response
application/json
{ "values": [ {} ] }

Add Decision to AML Case.

Request

Endpoint to add new decision for AML Case. Decision can't be overwritten.

Security
basicAuth
Path
businessPartnerIdstring(BusinessPartnerId)required

ID of the business partner.

Example: 63e635235c06b7396330fe40
caseIdstring(AMLCaseId)required

ID of the case.

Example: 123
Bodyapplication/json
typestring(AMLDecisionType)required

Status of the decision.

Enum"CREATE""CONFIRMED""CLEARED""REOPEN""DELETED""OUTDATED""REVALIDATED"
Example: "CONFIRMED"
commentstring(AMLDecisionComment)required

Comment for the decision.

Example: "My decision"
reasonstring(AMLDecisionReason)

Reason of the decision.

Enum ValueDescription
FALSE_POSITIVE

No actual match found with the sanctioned entity.

DUPLICATE_CASE

The case is already addressed in another open or closed case.

SANCTION_NOT_APPLICABLE

The match is legitimate but the sanction is not relevant (e.g., not within the jurisdiction or business scope).

BUSINESS_PARTNER_CLEARED

After investigation, the business partner has been cleared of any sanction-related issues.

INSUFFICIENT_EVIDENCE

There is not enough information or evidence to conclude a sanction-related issue.

DATA_ERROR

The hit occurred due to incorrect or outdated data.

MITIGATED_RISK

The potential risk has been mitigated through additional controls or actions.

COMPLIANCE_EXCEPTION_GRANTED

The case has been closed due to an approved exception from compliance.

CONFIRMED_MATCH

The business partner is positively identified on the sanctions list, and further action is required.

BUSINESS_RELATIONSHIP_TERMINATED

The relationship with the business partner has been terminated due to confirmed sanctions.

Example: "CONFIRMED_MATCH"
curl -i -X PUT \
  -u <username>:<password> \
  https://idp.cdq.com/_mock/apis/case-management-api/api-v1/businesspartners/63e635235c06b7396330fe40/cases/123/decisions \
  -H 'Content-Type: application/json' \
  -d '{
    "type": "CONFIRMED",
    "comment": "My decision",
    "reason": "CONFIRMED_MATCH"
  }'

Responses

OK

Bodyapplication/json
reviewerNamestring(ReviewerName)

Name of the reviewer.

Example: "John Doe"
reviewerIdstring(UserId)

Unique ID of a user.

Example: "johndoe"
createdAtstring(CreatedAt)

Date of creation (ISO 8601-compliant).

Example: "2020-08-31T16:47+00:00"
typestring(AMLDecisionType)

Status of the decision.

Enum"CREATE""CONFIRMED""CLEARED""REOPEN""DELETED""OUTDATED""REVALIDATED"
Example: "CONFIRMED"
commentstring(AMLDecisionComment)

Comment for the decision.

Example: "My decision"
reasonstring(AMLDecisionReason)

Reason of the decision.

Enum ValueDescription
FALSE_POSITIVE

No actual match found with the sanctioned entity.

DUPLICATE_CASE

The case is already addressed in another open or closed case.

SANCTION_NOT_APPLICABLE

The match is legitimate but the sanction is not relevant (e.g., not within the jurisdiction or business scope).

BUSINESS_PARTNER_CLEARED

After investigation, the business partner has been cleared of any sanction-related issues.

INSUFFICIENT_EVIDENCE

There is not enough information or evidence to conclude a sanction-related issue.

DATA_ERROR

The hit occurred due to incorrect or outdated data.

MITIGATED_RISK

The potential risk has been mitigated through additional controls or actions.

COMPLIANCE_EXCEPTION_GRANTED

The case has been closed due to an approved exception from compliance.

CONFIRMED_MATCH

The business partner is positively identified on the sanctions list, and further action is required.

BUSINESS_RELATIONSHIP_TERMINATED

The relationship with the business partner has been terminated due to confirmed sanctions.

Example: "CONFIRMED_MATCH"
caseStatusstring(AMLCaseStatus)

Status of the case.

Enum"OPEN""CLOSED""OUTDATED"
Example: "OPEN"
caseSystemStatusstring(AMLCaseSystemStatus)

System status of the case.

Enum"VALID""OUTDATED""DELETED"
Example: "VALID"
amlCaseHistoryIdstring(AMLCaseHistoryId)

ID of the screening history entry.

Example: "6735c38c8fedd67d354791ad"
Response
application/json
{ "reviewerName": "John Doe", "reviewerId": "johndoe", "createdAt": "2020-08-31T16:47+00:00", "type": "CONFIRMED", "comment": "My decision", "reason": "CONFIRMED_MATCH", "caseStatus": "OPEN", "caseSystemStatus": "VALID", "amlCaseHistoryId": "6735c38c8fedd67d354791ad" }

Get case lifecycle metadata.

Request

Endpoint to get structured information about case lifecycle.

Security
basicAuth
curl -i -X GET \
  -u <username>:<password> \
  https://idp.cdq.com/_mock/apis/case-management-api/api-v1/metadata/caselifecycle

Responses

OK

Bodyapplication/json
statusesArray of objects(AMLCaseStatusMetadata)
Response
application/json
{ "statuses": [ {} ] }