Skip to content

Data Validation API (3)

This API provides services used for business partner qualification

Download OpenAPI description
Languages
Servers
Mock server

https://developer.cdq.com/_mock/apis/data-validation-api/api-v3/

Production

https://api.cdq.com/data-validation/rest/

Qualification

Provides funcionalities for qualification of Business Partners. Includes endpoints that allow users to submit Business Partner data for qualification, retrieve qualification results, and handle various qualification scenarios.

Operations

Configuration

Provides funcionalities for managing configurations. Includes endpoints that allow users to create, update, and delete configurations for the current user.

Operations

Public

Provides funcionalities to provide an RDF model of a record and validate a Business Partner.

Processing Logs

Provides funcionalities for managing processing logs. Includes endpoints that allow users to read processing log results.

Operations
Operations
Operations
Operations

Request

Validates a custom record. If the custom knowledge graph also contains a mapping, the mapping is applied ad-hoc and CDL validation rules are applied as well.

Security
apiKey
Bodyapplication/json
jsonRecordobject

Stringified JSON of the custom record.

Example: "{}"
customKnowledgeGraphstring

Identifier for the custom knowledge graph that should be used for validation.

Example: "customer_name"
dataMapperDefinitionIdstring(DataMapperDefinitionId)

Mapping ID that should be used for the mapping. Overrules a mapping of the knowledge graph (if exists). To run validation against CDL Rules, data mapping definition by given ID must exist and user executing validation needs to have permission to access it.

Example: "ef48bc9f-7fa1-4c4e-8c0d-d1cc3301cc20"
profilestring(ValidationProfile)

Profile which is used during validation. Default value is STANDARD.

Enum ValueDescription
QUICK

This profile checks data quality of records in a quick way, i.e. data quality rules that have a negative impact on performance.

STANDARD

This profile checks data quality using CDQ's standard configuration.

QUALIFICATION

Deprecated.

AUTOMATION

Deprecated.

EU_VAT_QUALIFICATION

This profile qualifies EU VATs using CDQ's default configuration of data quality rules for qualified checks of EU VATs

DATA_SHARING_QUALITY_GATE

Quality checks ensure that only valid data enters the CDQ Community Data Pool

IDENTIFIER_QUALITY

This profile checks identifiers with a standard configuration of data quality rules. It does not comprise qualified checks of identifiers regarding e.g. name or address.

ADDRESS_QUALITY

This profile checks addresses with a standard configuration of data quality rules.

WORLDWIDE_IDENTIFIER_QUALIFICATION

This profile qualifies any supported business identifier (e.g. tax numbers) worldwide using CDQ's default configuration of data quality rules for qualified checks of a particular identifier

FEATURES_OFF

This profile turns off any qualification rules and is designed for custom rules selection.

Example: "QUICK"
ruleStatusesArray of strings(RuleStatus)

Filter for rule status.

Items Enum ValueDescription
RELEASED

Rule was moved from status PLANNED automatically during daily testing or by manual maintenance.

DRAFT

Rule was created as a draft and it will be not executed.

HYPERCARE

Rule was moved from status DEACTIVATED automatically during daily testing.

Example: ["RELEASED"]
featuresOnArray of strings

Activate features.

Items Enum ValueDescription
ENRICH_DATA_MIRROR_CHANGES

Enriches the data with changes from the data mirror.

EXTERNAL_SOURCES_OFF

Disables any rule that utilizes Data Sources in validation process (rule’s Primary/Secondary datasources).

SHOW_BUSINESSPARTNER

Returns the Business Partner as a part of the validation response.

SHOW_DEBUG_INFO

Return additional information that can be used for debugging purposes.

USE_AUTOMATION_RULES

Executes business rules of category Automation_rule.

Example: ["SHOW_LOOKUP_RESULTS"]
featuresOffArray of strings

List of features to be deactivated.

Items Enum ValueDescription
ENRICH_DATA_MIRROR_CHANGES

Enriches the data with changes from the data mirror.

EXTERNAL_SOURCES_OFF

Disables any rule that utilizes Data Sources in validation process (rule’s Primary/Secondary datasources).

SHOW_BUSINESSPARTNER

Returns the Business Partner as a part of the validation response.

SHOW_DEBUG_INFO

Return additional information that can be used for debugging purposes.

USE_AUTOMATION_RULES

Executes business rules of category Automation_rule.

Example: ["SHOW_LOOKUP_RESULTS"]
ruleCategoriesOnArray of objects(RuleCategoryOn)

Categories use for selecting active business rules.

ignoredRulesArray of strings(BusinessRuleUrl)

Urls of cdl rules ignored during validation process.

Example: ["https://meta.cdq.com/Identifier_unknown_(European_value_added_tax_identifier_(The_Netherlands))"]
activatedRulesArray of strings(BusinessRuleUrl)

Urls of cdl rules that are active during validation process.

Example: ["https://meta.cdq.com/Identifier_unknown_(European_value_added_tax_identifier_(The_Netherlands))"]
criticalitiesArray of objects(Criticality)

Criticalities of cdl rules that are active during validation process.

dataSourcesOnArray of objects(DataSource)

If data sources are disabled by feature toggle you can enable some of them passing their prefixes here.

dataSourcesOffArray of objects(DataSource)

Rules with data sources passed here are not used in validation process.

dataMirrorStorageIdstring

Storage used for data mirror enrichment.

Example: "6ecd44476b95347e8a0d215589afj420"
recordstring

Stringified JSON of the custom record

Example: "{}"
externalIdstring

Unique ID from the client system.

Example: "A12345"
curl -i -X POST \
  https://developer.cdq.com/_mock/apis/data-validation-api/api-v3/v2/records/validate \
  -H 'Content-Type: application/json' \
  -H 'X-API-KEY: YOUR_API_KEY_HERE' \
  -d '{
    "jsonRecord": "{}",
    "customKnowledgeGraph": "customer_name",
    "dataMapperDefinitionId": "ef48bc9f-7fa1-4c4e-8c0d-d1cc3301cc20",
    "profile": "QUICK",
    "ruleStatuses": [
      "RELEASED"
    ],
    "featuresOn": [
      "SHOW_LOOKUP_RESULTS"
    ],
    "featuresOff": [
      "SHOW_LOOKUP_RESULTS"
    ],
    "ruleCategoriesOn": [
      {
        "url": "https://meta.cdq.com/Identifier_checkdigit"
      }
    ],
    "ignoredRules": [
      "https://meta.cdq.com/Identifier_unknown_(European_value_added_tax_identifier_(The_Netherlands))"
    ],
    "activatedRules": [
      "https://meta.cdq.com/Identifier_unknown_(European_value_added_tax_identifier_(The_Netherlands))"
    ],
    "criticalities": [
      {
        "businessRuleUrl": "https://meta.cdq.com/Identifier_unknown_(European_value_added_tax_identifier_(The_Netherlands))",
        "violationLevel": "INFO"
      }
    ],
    "dataSourcesOn": [
      {
        "prefix": "VIES"
      }
    ],
    "dataSourcesOff": [
      {
        "prefix": "VIES"
      }
    ],
    "dataMirrorStorageId": "6ecd44476b95347e8a0d215589afj420",
    "record": "{}",
    "externalId": "A12345"
  }'

Responses

OK

Body
dataDefectsArray of objects(DataDefect)

List of Data Defects found in the record.

decisionsArray of objects(Decision)

List of Decisions made by the automation rules.

qualificationResultobject(QualificationResult)

QualificationResult is created when validation process takes into consideration rules of category and the feature SHOW_QUALIFICATION_DECISIONS is enabled. Enabling qualification can be done by the profile related to the qualification. QualificationResult contains information about qualification decisions, the data that have been qualified and overall qualification decisions.

summaryobject(ValidationSummary)

Summary of the validation result.

debugInfoobject(DebugInfo)

Reference implementation how to structure external service responses. Can be activated by a feature SHOW_DEBUG_INFO.

diffstring

Applicable only for Record Validation when feature ENRICH_DATA_MIRROR_CHANGES is enabled. Contains differences between value stored in CDQ storage and the value that was sent with the request.

Example: "{\"Identified_changes\":[{\"op\":\"add\",\"path\":\"/partner/header/objectTask\",\"value\":\"C\"}]}"
businessPartnerobject(BusinessPartner3)

An organization which has some degree of involvement with another organization's business dealings. Typically, a company's business partner is another company in the role of a customer, a supplier, a vendor, or a service provider. In the CDL context, the business partner is the core managed entity. A business partner is globally uniquely identifiable by a CDL ID, and all managed information such as addresses, documents, and hierarchies is linked to a business partner.

Response
{ "dataDefects": [ {} ], "decisions": [ {} ], "qualificationResult": { "sourceData": [], "formattedSourceData": {}, "validatorStatus": "ONLINE", "validatorMessage": "VAT ID is valid.", "qualifiedBy": {}, "qualifiedAt": "2025-08-27T14:26:53Z", "addressQualification": "QUALIFIED", "addressQualificationDetails": {}, "identifierValidity": "VALID", "businessPartnerNameQualification": "QUALIFIED", "overallQualification": "QUALIFIED" }, "summary": { "validationLevel": "ERROR", "dataQualityRecordStatus": {}, "action": "FULL_CHECK", "statistics": {} }, "debugInfo": { "externalServiceResponses": [], "businessRulesExecutionSummary": {} }, "diff": "{\"Identified_changes\":[{\"op\":\"add\",\"path\":\"/partner/header/objectTask\",\"value\":\"C\"}]}", "businessPartner": { "names": [], "legalForm": "Aktiengesellschaft", "identifiers": [], "categories": [], "status": {}, "addresses": [], "externalId": "The ID managed in the customer's SAP systems.", "profile": {}, "formattedSapRecord": {}, "relations": [], "bankAccounts": [], "types": [], "externalContext": "LIFNR", "id": "63e635235c06b7396330fe40", "lastModifiedAt": "2025-08-27T14:26:53Z" } }