Skip to content

Data Validation API (3)

This API provides services used for business partner qualification

Languages
Servers
Mock server

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

Production SOAP

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

Production

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

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

Validation

Provides funcionalities for validation of Business Partner data.

Operations

Batch Validation

Provides funcionalities for validation of multiple records or entities in a single request. Includes endpoints that allow users to start validation jobs, poll the status of these jobs, and retrieve validation results.

Operations

Business Partners

Provides funcionalities for managing Business Partners. Includes endpoints that allow users to validate Business Partners against data quality rules.

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.

Operations

Start Validation JobDeprecated

Request

This endpoint is actually deprecated. Please use the /validationjobs endpoint instead. Documentation for the new endpoint can be found here

Start a new Validation Job on a provided storage ID.

Security
basicAuth
Headers
X-Credential-Usernamestringrequired

Username that is passed as header parameter with the name X-Credential-Username. The header can take form of:

  • username (e.g. "johndoe")
  • user id (e.g. "87b1bdb1-ba87-4522-b363-c5a0e6e917b3")
Example: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3
Bodyapplication/jsonrequired

cmd

storageIdstring(BusinessPartnerStorageId)

Unique identifier of the Storage.

Example: "72d6900fce6b326088f5d9d91049e3e6"
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"
featuresOnArray of strings

List of features to be activated.

Items Enum ValueDescription
ADDRESS_CHECKS

CDQ data quality profiling services enable the validation of addresses with respect to different data quality criteria.

BANKING_DATA_CHECKS

CDQ data quality profiling services enable the validation of bank master data with respect to different data quality criteria.

BUSINESS_PARTNER_CHECKS

Validate concepts that basically establish a business partner (e.g. name and legal form).

ENRICH_CATEGORIES

Enrich a CDL community standardized business partner category for a given entity.

ENRICH_LEGAL_FORM

Identify and enriches the legal form of a company.

EU_VAT_QUALIFICATION_AT

Enforces to use AT.FON data source to qualify EU VATs.

EU_VAT_QUALIFICATION_DE

Enforces to use BZST data source for non-German business partners.

EU_VAT_QUALIFICATION_STANDARD

For a given EU VAT, it is checked whether the name and address are really associated with this identifier (same information maintained in the VAT register as provided by the user).

EXTERNAL_SOURCES_OFF

Turns off external data sources.

IDENTIFIER_CHECKS

Validate business (VAT, tax, business register IDs) and location identifiers against different data quality rules categories.

Example: ["SHOW_LOOKUP_RESULTS"]
featuresOffArray of strings

List to be deactivated.

Items Enum ValueDescription
ADDRESS_CHECKS

CDQ data quality profiling services enable the validation of addresses with respect to different data quality criteria.

BANKING_DATA_CHECKS

CDQ data quality profiling services enable the validation of bank master data with respect to different data quality criteria.

BUSINESS_PARTNER_CHECKS

Validate concepts that basically establish a business partner (e.g. name and legal form).

ENRICH_CATEGORIES

Enrich a CDL community standardized business partner category for a given entity.

ENRICH_LEGAL_FORM

Identify and enriches the legal form of a company.

EU_VAT_QUALIFICATION_AT

Enforces to use AT.FON data source to qualify EU VATs.

EU_VAT_QUALIFICATION_DE

Enforces to use BZST data source for non-German business partners.

EU_VAT_QUALIFICATION_STANDARD

For a given EU VAT, it is checked whether the name and address are really associated with this identifier (same information maintained in the VAT register as provided by the user).

EXTERNAL_SOURCES_OFF

Turns off external data sources.

IDENTIFIER_CHECKS

Validate business (VAT, tax, business register IDs) and location identifiers against different data quality rules categories.

Example: ["SHOW_LOOKUP_RESULTS"]
ruleStatusesArray of strings(RuleStatus)

Enable rules with provided statuses

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"]
jobDependenciesArray of objects(JobDependency)
labelsArray of objects(Label)
tagsArray of strings(JobTags)<= 12 items

List of tags.

Example: ["35f23c03-1c22-45fe-9484-3ffe769325de"]
bzstPrintstring

Request printed confirmation by German BZSt authority

Example: true
validationSourceobject(ValidationSource)

Source of the validation.

reportsRequestobject(ValidationReportsRequestParams)

Parameters for Validation Reports.

dataSourcesOnArray of objects(DataSource)

If data sources are disabled by feature toogle 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

vatAtRequestorstringDeprecated

DEPRECATED, use organizational settings to configure.

The requestor’s VAT identifier, required for execution of requests against external data sources.

Example: "AT123456789"
vatDeRequestorstringDeprecated

DEPRECATED, use organizational settings to configure.

The requestor’s VAT identifier, required for execution of requests against external data sources.

Example: "DE123456789"
curl -i -X POST \
  -u <username>:<password> \
  https://idp.cdq.com/_mock/apis/data-validation-api/api-v3/public/validationjobs \
  -H 'Content-Type: application/json' \
  -H 'X-Credential-Username: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3' \
  -d '{
    "storageId": "72d6900fce6b326088f5d9d91049e3e6",
    "profile": "QUICK",
    "featuresOn": [
      "SHOW_LOOKUP_RESULTS"
    ],
    "featuresOff": [
      "SHOW_LOOKUP_RESULTS"
    ],
    "ruleStatuses": [
      "RELEASED"
    ],
    "jobDependencies": [
      {
        "id": "c2a0b3a0-8b0b-4b7a-8b0b-4b7a8b0b4b7a",
        "strategy": "SCHEDULE_NEXT_WHEN_FINISHED"
      }
    ],
    "labels": [
      {
        "key": "domain",
        "value": "data-validation"
      }
    ],
    "tags": [
      "35f23c03-1c22-45fe-9484-3ffe769325de"
    ],
    "vatAtRequestor": "AT123456789",
    "vatDeRequestor": "DE123456789",
    "bzstPrint": true,
    "validationSource": {
      "type": {
        "technicalKey": "VALIDATION_GRAPH",
        "description": "Default CDL Model"
      },
      "value": "CDL"
    },
    "reportsRequest": {
      "reportsConfiguration": {
        "address": {
          "build": "true"
        },
        "businesspartner": {
          "build": "true"
        },
        "identifier": {
          "build": "true"
        },
        "overall": {
          "build": "true"
        },
        "qualification": {
          "build": "true"
        },
        "qualityImprovement": {
          "build": "true",
          "dataValidationJobIds": [
            "6be92567-4327-4463-813f-a8c990410d79",
            "f9df6cd4-4414-4719-9fb5-4eb6e5bc04cb"
          ]
        },
        "countryShortNames": "['\''PL'\'', '\''DE'\'', '\''CZ'\'', '\''SK'\'']"
      },
      "labels": [
        {
          "key": "domain",
          "value": "data-validation"
        }
      ],
      "tags": [
        "35f23c03-1c22-45fe-9484-3ffe769325de"
      ]
    },
    "dataSourcesOn": [
      {
        "prefix": "VIES"
      }
    ],
    "dataSourcesOff": [
      {
        "prefix": "VIES"
      }
    ]
  }'

Responses

OK

Bodyapplication/json
idstring(DataValidationJobId)

Data Validation Job ID.

Example: "ef450653-a3bc-4476-83d3-d67397d475a0"
storageIdstring(BusinessPartnerStorageId)

Unique identifier of the Storage.

Example: "72d6900fce6b326088f5d9d91049e3e6"
statusstring

Current status of the job.

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.

COULDNT_START

Job couldn't start.

RUNNING

Job is being executed.

FINISHED

Job has finished.

DIED

Job has died due to unhandled exceptions.

FAILED

Job has failed.

Example: "FINISHED"
createdAtstring(CreatedAt)

Date of creation (ISO 8601-compliant).

Example: "2020-08-31T16:47+00:00"
startedAtstring

Describe when this job was first established.

Example: "2019-08-31T16:47+00:00"
finishedAtstring(FinishedAt)

Date of finish (ISO 8601-compliant).

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

ID of (human) user or API key.

Example: "742429-234242-4343-232323"
resultobject(ValidationJobResult)

Created when validation process takes into consideration rules of category and the feature SHOW_DECISIONS is enabled. Enabling validation can be done by the profile related to the validation. ValidationJobResult contains information about validation decisions, the data that have been validated and overall validation decisions.

progressinteger(JobProgress)[ 0 .. 100 ]

Progress (%) of the job.

Example: "77"
Response
application/json
{ "id": "ef450653-a3bc-4476-83d3-d67397d475a0", "storageId": "72d6900fce6b326088f5d9d91049e3e6", "status": "FINISHED", "createdAt": "2020-08-31T16:47+00:00", "startedAt": "2019-08-31T16:47+00:00", "finishedAt": "2020-08-31T16:47+00:00", "user": "742429-234242-4343-232323", "result": { "statistics": {}, "images": {} }, "progress": "77" }

Poll Validation JobDeprecated

Request

This endpoint is actually deprecated. Please use the /validationjobs/{id} endpoint instead.

After you have started a validation job, you will receive a job id in the response.

{
  "id" : "59782327-2fb3-4131-ab6a-c6bc844bdcd0"
}

Use this ID to poll for the status of the job using this endpoint.

Security
basicAuth
Path
idstring(DataValidationJobId)required

ID of the validation report.

Example: ef450653-a3bc-4476-83d3-d67397d475a0
Headers
X-Credential-Usernamestringrequired

Username that is passed as header parameter with the name X-Credential-Username. The header can take form of:

  • username (e.g. "johndoe")
  • user id (e.g. "87b1bdb1-ba87-4522-b363-c5a0e6e917b3")
Example: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3
curl -i -X GET \
  -u <username>:<password> \
  https://idp.cdq.com/_mock/apis/data-validation-api/api-v3/public/validationjobs/ef450653-a3bc-4476-83d3-d67397d475a0 \
  -H 'X-Credential-Username: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3'

Responses

OK

Bodyapplication/json
idstring(DataValidationJobId)

Data Validation Job ID.

Example: "ef450653-a3bc-4476-83d3-d67397d475a0"
storageIdstring(BusinessPartnerStorageId)

Unique identifier of the Storage.

Example: "72d6900fce6b326088f5d9d91049e3e6"
statusstring

Current status of the job.

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.

COULDNT_START

Job couldn't start.

RUNNING

Job is being executed.

FINISHED

Job has finished.

DIED

Job has died due to unhandled exceptions.

FAILED

Job has failed.

Example: "FINISHED"
createdAtstring(CreatedAt)

Date of creation (ISO 8601-compliant).

Example: "2020-08-31T16:47+00:00"
startedAtstring

Describe when this job was first established.

Example: "2019-08-31T16:47+00:00"
finishedAtstring(FinishedAt)

Date of finish (ISO 8601-compliant).

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

ID of (human) user or API key.

Example: "742429-234242-4343-232323"
resultobject(ValidationJobResult)

Created when validation process takes into consideration rules of category and the feature SHOW_DECISIONS is enabled. Enabling validation can be done by the profile related to the validation. ValidationJobResult contains information about validation decisions, the data that have been validated and overall validation decisions.

progressinteger(JobProgress)[ 0 .. 100 ]

Progress (%) of the job.

Example: "77"
Response
application/json
{ "id": "ef450653-a3bc-4476-83d3-d67397d475a0", "storageId": "72d6900fce6b326088f5d9d91049e3e6", "status": "FINISHED", "createdAt": "2020-08-31T16:47+00:00", "startedAt": "2019-08-31T16:47+00:00", "finishedAt": "2020-08-31T16:47+00:00", "user": "742429-234242-4343-232323", "result": { "statistics": {}, "images": {} }, "progress": "77" }

Validate RecordDeprecated

Request

This endpoint is actually deprecated. Please use the /v2/records/validate endpoint instead. Documentation for the new endpoint can be found here

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
basicAuth
Headers
X-Credential-Usernamestringrequired

Username that is passed as header parameter with the name X-Credential-Username. The header can take form of:

  • username (e.g. "johndoe")
  • user id (e.g. "87b1bdb1-ba87-4522-b363-c5a0e6e917b3")
Example: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3
Bodyapplication/json
jsonRecordobject

Stringified JSON of the custom record.

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"
curl -i -X POST \
  -u <username>:<password> \
  https://idp.cdq.com/_mock/apis/data-validation-api/api-v3/public/records/validate \
  -H 'Content-Type: application/json' \
  -H 'X-Credential-Username: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3' \
  -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"
  }'

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": "2019-07-11T16:32:28.425", "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", "dataSource": "VIES", "lastModifiedAt": "2020-08-31T16:47+00:00" } }

Rdificate Custom RecordDeprecated

Request

This endpoint is actually deprecated. Please use the /records/rdfify endpoint instead. Documentation for the new endpoint can be found here

Rdificate a custom record. It returns rdf model of the record.

Security
basicAuth
Headers
X-Credential-Usernamestringrequired

Username that is passed as header parameter with the name X-Credential-Username. The header can take form of:

  • username (e.g. "johndoe")
  • user id (e.g. "87b1bdb1-ba87-4522-b363-c5a0e6e917b3")
Example: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3
Bodyapplication/json
jsonRecordobject

JSON object that will be RDFied. Record and jsonRecord cannot be present at the same time.

Example: "{'recordId': 'id', 'name': 'demo'}"
baseURLstringrequired

Base.

Example: "https://meta.cdq.com/"
recordstring

Stringified data that will be RDFied. Record and jsonRecord cannot be present at the same time.

Example: "{\\\"recordId\\\":\\\"id\\\",\\\"name\\\":\\\"demo\\\"}"
referenceIdTagstringrequired

Name of the attribute that should be used as a main identifier for all triples generated based on the data sent. Will use first found value of an attribute with given name.

Example: "record_id"
pathToReferenceIdstringrequired

JSON path that can locate attribute, in case of non-existent path selection will fall back to referenceIdTag.

Example: "\\fullPath\\recordId"
rootPrefixstringrequired

Prefix that is used for generating TTL triples. Single resource URI is created by baseUrl + rootPrefix + encodedJSONPath ex. https://meta.cdq.com/data/name.

Example: "data"
knowledgeGraphIdstring

Knowledge Graph that contains required configuration for test cases rdfication process.

Example: "kg_1_m_1"
curl -i -X POST \
  -u <username>:<password> \
  https://idp.cdq.com/_mock/apis/data-validation-api/api-v3/public/records/rdfify \
  -H 'Content-Type: application/json' \
  -H 'X-Credential-Username: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3' \
  -d '{
    "jsonRecord": "{'\''recordId'\'': '\''id'\'', '\''name'\'': '\''demo'\''}",
    "baseURL": "https://meta.cdq.com/",
    "record": "{\\\"recordId\\\":\\\"id\\\",\\\"name\\\":\\\"demo\\\"}",
    "referenceIdTag": "record_id",
    "pathToReferenceId": "\\fullPath\\recordId",
    "rootPrefix": "data",
    "knowledgeGraphId": "kg_1_m_1"
  }'

Responses

OK

Body
rdfRecordstring

Returns input record or jsonRecord transformed to triples.

Example: "<https://monitor.test.cdq.com/380bdf33-ad17-41bc-a3e5-78b27befdca9> a <https://monitor.test.cdq.com/Record>; <https://monitor.test.cdq.com/Property/Has_record_id> '92912918-a85c-4d77-9f62-3b2ddb57a279'; <https://monitor.test.cdq.com/Property/Name> 'demo' ."
Response
{ "rdfRecord": "<https://monitor.test.cdq.com/380bdf33-ad17-41bc-a3e5-78b27befdca9> a <https://monitor.test.cdq.com/Record>; <https://monitor.test.cdq.com/Property/Has_record_id> '92912918-a85c-4d77-9f62-3b2ddb57a279'; <https://monitor.test.cdq.com/Property/Name> 'demo' ." }

Validate Business PartnerDeprecated

Request

This endpoint is actually deprecated. Please use the /businesspartners/validate endpoint instead.

Validates a Business Partner against data quality rules.

Security
basicAuth
Headers
X-Credential-Usernamestringrequired

Username that is passed as header parameter with the name X-Credential-Username. The header can take form of:

  • username (e.g. "johndoe")
  • user id (e.g. "87b1bdb1-ba87-4522-b363-c5a0e6e917b3")
Example: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3
Bodyapplication/json
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)

Enable rules with provided statuses.

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(ValidationFeature)

List of activated features.

Items Enum ValueDescription
ADDRESS_CHECKS

CDQ data quality profiling services enable the validation of addresses with respect to different data quality criteria.

BANKING_DATA_CHECKS

CDQ data quality profiling services enable the validation of bank master data with respect to different data quality criteria.

BUSINESS_PARTNER_CHECKS

Validate concepts that basically establish a business partner (e.g. name and legal form).

COUNTRY_CHECKS

Validate country information.

ENRICH_CATEGORIES

Enrich a CDL community standardized business partner category for a given entity.

ENRICH_DATA_MIRROR_CHANGES

Enriches the data with changes from the data mirror.

ENRICH_LEGAL_FORM

Identify and enriches the legal form of a company.

EU_VAT_QUALIFICATION_AT

Enforces to use AT.FON data source to qualify EU VATs.

EU_VAT_QUALIFICATION_DE

Enforces to use BZST data source for non-German business partners.

EU_VAT_QUALIFICATION_STANDARD

For a given EU VAT, it is checked whether the name and address are really associated with this identifier (same information maintained in the VAT register as provided by the user).

Example: ["SHOW_LOOKUP_RESULTS"]
featuresOffArray of strings(ValidationFeature)

List of deactivated features.

Items Enum ValueDescription
ADDRESS_CHECKS

CDQ data quality profiling services enable the validation of addresses with respect to different data quality criteria.

BANKING_DATA_CHECKS

CDQ data quality profiling services enable the validation of bank master data with respect to different data quality criteria.

BUSINESS_PARTNER_CHECKS

Validate concepts that basically establish a business partner (e.g. name and legal form).

COUNTRY_CHECKS

Validate country information.

ENRICH_CATEGORIES

Enrich a CDL community standardized business partner category for a given entity.

ENRICH_DATA_MIRROR_CHANGES

Enriches the data with changes from the data mirror.

ENRICH_LEGAL_FORM

Identify and enriches the legal form of a company.

EU_VAT_QUALIFICATION_AT

Enforces to use AT.FON data source to qualify EU VATs.

EU_VAT_QUALIFICATION_DE

Enforces to use BZST data source for non-German business partners.

EU_VAT_QUALIFICATION_STANDARD

For a given EU VAT, it is checked whether the name and address are really associated with this identifier (same information maintained in the VAT register as provided by the user).

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

Categories use for selecting active business rules.

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.

bzstPrintstring

Request printed confirmation by German BZSt authority.

Example: "true"
validationSourceobject(ValidationSource)

Source of the validation.

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)
configurationIdstring(ConfigurationId)

Configuration ID used to set up data validation request. If provided, those parameters will be overridden:

  • profile
  • featuresOn
  • featuresOff
Example: "6513d25b63cf07787018790a"
processingLogobject(ProcessingLog)

Processing log data.

vatAtRequestorstringDeprecated

DEPRECATED, use organizational settings to configure.

The requestor’s VAT identifier, required for execution of requests against external data sources.

Example: "AT123456789"
vatDeRequestorstringDeprecated

DEPRECATED, use organizational settings to configure.

The requestor’s VAT identifier, required for execution of requests against external data sources.

Example: "DE123456789"
curl -i -X POST \
  -u <username>:<password> \
  https://idp.cdq.com/_mock/apis/data-validation-api/api-v3/public/businesspartners/validate \
  -H 'Content-Type: application/json' \
  -H 'X-Credential-Username: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3' \
  -d '{
    "profile": "QUICK",
    "ruleStatuses": [
      "RELEASED"
    ],
    "featuresOn": [
      "SHOW_LOOKUP_RESULTS"
    ],
    "featuresOff": [
      "SHOW_LOOKUP_RESULTS"
    ],
    "ruleCategoriesOn": [
      {
        "url": "https://meta.cdq.com/Identifier_checkdigit"
      }
    ],
    "dataSourcesOn": [
      {
        "prefix": "VIES"
      }
    ],
    "dataSourcesOff": [
      {
        "prefix": "VIES"
      }
    ],
    "vatAtRequestor": "AT123456789",
    "vatDeRequestor": "DE123456789",
    "bzstPrint": "true",
    "validationSource": {
      "type": {
        "technicalKey": "VALIDATION_GRAPH",
        "description": "Default CDL Model"
      },
      "value": "CDL"
    },
    "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"
      }
    ],
    "configurationId": "6513d25b63cf07787018790a",
    "processingLog": {
      "id": "VALIDATION_LOG",
      "trigger": {
        "type": "API",
        "provenance": {
          "technicalKey": "VIES",
          "cdqId": "VIES:PL8660001429"
        },
        "details": {
          "value": "12345"
        }
      },
      "replyQueue": "647328648329632-34890742-3432"
    }
  }'

Responses

OK

Body
dataDefectsArray of objects(DataDefect)

List of Data Defects.

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.

lookupResultsArray of objects(LookupResult)

List of Lookup Results.

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.

identifierResultsArray of objects(IdentifierResults)
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.

rulesInErrorArray of objects(RulesInError)

List of rules executed with error.

executedAtstring

ISO 8601 representation of the timestamp when the result data was created.

Example: "2019-09-07T00:00:00Z"
Response
{ "dataDefects": [ {} ], "qualificationResult": { "sourceData": [], "formattedSourceData": {}, "validatorStatus": "ONLINE", "validatorMessage": "VAT ID is valid.", "qualifiedBy": {}, "qualifiedAt": "2019-07-11T16:32:28.425", "addressQualification": "QUALIFIED", "addressQualificationDetails": {}, "identifierValidity": "VALID", "businessPartnerNameQualification": "QUALIFIED", "overallQualification": "QUALIFIED" }, "lookupResults": [ {} ], "summary": { "validationLevel": "ERROR", "dataQualityRecordStatus": {}, "action": "FULL_CHECK", "statistics": {} }, "debugInfo": { "externalServiceResponses": [], "businessRulesExecutionSummary": {} }, "identifierResults": [ {} ], "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", "dataSource": "VIES", "lastModifiedAt": "2020-08-31T16:47+00:00" }, "rulesInError": [ {} ], "executedAt": "2019-09-07T00:00:00Z" }

Records

Provides funcionalities for managing records. Includes endpoints that allow users to validate records.

Operations

Processing Logs

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

Operations