# List Storage's Decisions Read decisions from given storage. Endpoint: GET /storages/{storageId}/decisions Version: 2 Security: apiKey ## Path parameters: - `storageId` (string, required) Unique identifier of the Business Partner Storage. Example: "72d6900fce6b326088f5d9d91049e3e6" ## Query parameters: - `startAfter` (string) Start after the provided pagination ID. Leave empty for the first query. The response will contain a property , which needs to be used for any subsequent queries until nextStartAfter is empty. See CDQ - Developer Guidelines. Example: "NjI4ZGNkZjAzYjlkMjY4NjhlNjQxNDRm" - `limit` (integer) Number of items to be returned on the page. Example: "100" - `businessPartnerIds` (array) Only show decisions for listed business partner IDs. Example: ["63e635235c06b7396330fe40"] - `type` (string) Only show decisions of given type. Enum: "CURATIONS", "NATURAL_PERSONS", "DUPLICATES" ## Response 200 fields (application/json): - `values` (array) List of decisions. - `values.id` (string) A CDQ ID identifies a Decision Log Entry. Example: "63e635235c06b7396330fe40" - `values.type` (object) Type of decision log entry. - `values.type.technicalKey` (string) Technical key of the decision log type. Enum: "CURATIONS", "NATURAL_PERSONS", "DUPLICATES" - `values.businessPartnerId` (string) A CDQ ID identifies a Business Partner uniquely in the context of the Corporate Data League. Example: "63e635235c06b7396330fe40" - `values.dataSourceId` (string) Unique identifier for a Data Source of the Storage. Example: "648824a691d8d2503d65103e" - `values.externalId` (string) Arbitrary identifier type to mark customer IDs that are "external" from CDQ's perspective. This is the identifier a customer provides to identify its records. Example: "The ID managed in the customer's SAP systems." - `values.lastUpdatedAt` (string) Date and time of the last update. Example: "2025-08-27T14:26:38Z" - `values.lastUpdatedBy` (string) User who last updated the entry. Example: "username" - `values.updateDecisions` (array) List of update decisions. - `values.updateDecisions.context` (object) Metadata of an update decision, including information about who created the decision and when it was created. - `values.updateDecisions.context.createdBy` (string) Creator of a resource. Example: "76248934691294444" - `values.updateDecisions.context.createdAt` (string) Date of creation (ISO 8601-compliant). Example: "2025-08-27T14:26:38Z" - `values.updateDecisions.context.scope` (object) Scope of a decision, including the data source IDs and country short names it applies to, and the curation similarity threshold. - `values.updateDecisions.context.scope.dataSourceIds` (array) List of data source IDs the decision applies to. Example: ["648824a691d8d2503d65103e"] - `values.updateDecisions.context.scope.countryShortNames` (array) List of country short names. Example: ["CH"] - `values.updateDecisions.context.scope.curationSimilarity` (number) The similarity threshold for curation decisions. Example: "0.8" - `values.updateDecisions.proposal` (object) Describes how a property has been changed and how confident we are that the change was a good improvement. - `values.updateDecisions.proposal.externalIds` (array) List of external IDs for the property. - `values.updateDecisions.proposal.externalIds.externalId` (string) Value of the ExternalId of the business partner. Example: "123" - `values.updateDecisions.proposal.externalIds.dataSourceId` (string) Technical Key of the Provenance Name. Example: "VIES" - `values.updateDecisions.proposal.externalIds.id` (string) Value of the ExternalId of the business partner. Example: "123" - `values.updateDecisions.proposal.externalIds.concept` (object) The Concept is a part of the CDQ data model. For example Address is a concept of the Business Partner and have many subconcepts as Locality, Thoroughfare, Administrative Area etc. - `values.updateDecisions.proposal.externalIds.concept.name` (string) Display name of the Concept. Example: "Address" - `values.updateDecisions.proposal.externalIds.concept.technicalKey` (string) Technical key of the Concept. Example: "ADDRESS" - `values.updateDecisions.proposal.externalIds.language` (object) Naming of a language according to ISO 639-1. - `values.updateDecisions.proposal.externalIds.language.name` (string) ISO 639-1 name of language. Example: "German" - `values.updateDecisions.proposal.externalIds.language.technicalKey` (string) ISO 639-1 two-letter code of languages. Example: "DE" - `values.updateDecisions.proposal.externalIds.characterSet` (object) Character set. - `values.updateDecisions.proposal.externalIds.characterSet.name` (string) Name of character set. Supported character sets can be found [here](https://meta.cdq.com/Address/version/character_set). Example: "International" - `values.updateDecisions.proposal.externalIds.characterSet.technicalKey` (string) Technical key of character set. Supported character sets can be found [here](https://meta.cdq.com/Address/version/character_set). Example: "INTERNATIONAL" - `values.updateDecisions.proposal.externalIds.type` (object) An address type characterizes an address. The type of address is a structural statement and provides a truth that is applicable to any user (e.g. a legal address is a fact, or that an address is a PO BOX address), other than address functions that may differ from user to user. Address functions determine the particular business context in which an address is in use. - `values.updateDecisions.proposal.externalIds.type.name` (string) Display label for the Address Type. Example: "Legal Address" - `values.updateDecisions.proposal.externalIds.type.url` (string) URL to the documentation which summarizes all details of the [Address Type](https://meta.cdq.com/Address/type). Example: "https://meta.cdq.com/Address/type" - `values.updateDecisions.proposal.externalIds.type.technicalKey` (string) Technical key of the Address Type. Example: "LEGAL_ADDRESS" - `values.updateDecisions.proposal.property` (object) Part of a concept. It describes a single attribute of a concept. - `values.updateDecisions.proposal.property.parentConcept` (object) The Concept is a part of the CDQ data model. For example Address is a concept of the Business Partner and have many subconcepts as Locality, Thoroughfare, Administrative Area etc. - `values.updateDecisions.proposal.property.name` (string) Name of the property. Example: "Minority Indicator Value" - `values.updateDecisions.proposal.property.technicalKey` (string) Technical key of the property. Example: "MINORITY_INDICATOR_VALUE" - `values.updateDecisions.proposal.property.contentSelector` (string) JSON path to the property in the provided JSON object. Example: "$.partnerProfile.minorityIndicator.value" - `values.updateDecisions.proposal.property.instanceSelectors` (array) List of Instance Selectors. - `values.updateDecisions.proposal.property.instanceSelectors.key` (string) JSON subpath to the property allowing to select concrete instance of a property in the provided JSON object. Example: "type.technicalKey" - `values.updateDecisions.proposal.property.instanceSelectors.value` (string) Value of a JSON subpath to the property allowing to select concrete instance of a property in the provided JSON object. Example: "CH_UID" - `values.updateDecisions.proposal.newContent` (string) New value after change Example: "AAB" - `values.updateDecisions.proposal.previousContent` (string) Value before change Example: "AAB" - `values.updateDecisions.proposal.provenance` (object) The source of the change or update. Could be the reference data source as VIES or Organization. - `values.updateDecisions.proposal.provenance.name` (string) Display Name of the Provenance Name. Example: "VIES" - `values.updateDecisions.proposal.provenance.url` (string) URL to the documentation which summarizes all details of the Provenance Name. Example: "https://meta.cdq.com/index.php?title=Property:Has_prefix&limit=500&offset=0&from=&until=&filter=" - `values.updateDecisions.proposal.provenance.technicalKey` (string) Technical Key of the Provenance Name. Example: "VIES" - `values.updateDecisions.proposal.provenance.cdqId` (string) The ID provided for a linkage with the source by CDQ. Example: "VIES:PL8660001429" - `values.updateDecisions.proposal.changeType` (string) Type of the Property Change Type. Example: "MODIFIED" - `values.updateDecisions.proposal.changeClassification` (string) Gives a user an indicator how "much" the attribute was changed OR how important the change was. Allowed values are: * - Trivial change * - Minor change * - Major change * - Critical change Example: "MAJOR" - `values.updateDecisions.proposal.confidenceScore` (number) Confidence score which shows how confident CDQ is about enrichment of that property. Calculation dependes on property type, see here for a complete description. Example: "0.0" - `values.updateDecisions.proposal.maxConfidenceScore` (number) Maximum confidence score which is achievable for this property type. Note that the max value will change over time depending on the udnerlying algorithm which will be continously improved. Example: "1.0" - `values.updateDecisions.proposal.matchingScores` (object) Provides detailed matching scores broken down into overall, business partner specific, and address specific evaluations. - `values.updateDecisions.proposal.matchingScores.overall` (object) Describes the matching score, including a classification, value, and explanation of the match. - `values.updateDecisions.proposal.matchingScores.overall.classification` (string) Enumerates the possible classifications for data matching, providing a clearer interpretation of the matching score. Example: "FULL_MATCH" - `values.updateDecisions.proposal.matchingScores.overall.value` (number) Numeric value representing the degree of match calculated during data validation processes. Example: "0.9" - `values.updateDecisions.proposal.matchingScores.overall.explanation` (string) Explanation for matching score value. Example: "BP: [overall: [IDENTIFIER: 0.55; overall: 0.55;]] A: [overall: [COUNTRY_SHORTNAME: 0.5; overall: 0.5;]]" - `values.updateDecisions.proposal.matchingScores.businessPartner` (object) Describes the matching score, including a classification, value, and explanation of the match. - `values.updateDecisions.proposal.matchingScores.address` (object) Describes the matching score, including a classification, value, and explanation of the match. - `values.updateDecisions.status` (string) Status of a decision. Enum: "ACCEPTED", "REJECTED" - `values.updateDecisions.reliability` (string) Reliability of an update decision. Enum: "UNKNOWN", "UNCERTAIN", "TRUSTED_SOURCE", "AUTOMATED", "CONFIRMED_REVIEW" - `values.validationDecisions` (array) List of validation decisions. - `values.validationDecisions.context` (object) Metadata of a validation decision, including information about who created the decision and when it was created. - `values.validationDecisions.dataDefect` (object) Represents specific issues found during data quality checks, categorized by the rule they violated. - `values.validationDecisions.dataDefect.businessRule` (object) Details the specific business rule that has been violated, including its name and a link to its definition. - `values.validationDecisions.dataDefect.businessRule.name` (string) Represents business rule name. Example: "Identifier unknown (European value added tax identifier (The Netherlands))" - `values.validationDecisions.dataDefect.businessRule.url` (string) Represents Data Quality Rule url. Example: "https://meta.cdq.com/Identifier_unknown_(European_value_added_tax_identifier_(The_Netherlands))" - `values.validationDecisions.dataDefect.businessRule.ruleStatus` (string) The status of a validation rule. Example: "RELEASED" - `values.validationDecisions.dataDefect.violationLevel` (string) Indicates the criticality of the applied rule. If a data defect was found then user will get , or level. Otherwise, it will be NO_DEFECT. Example: "INFO" - `values.validationDecisions.dataDefect.violationMessage` (string) Descriptive message detailing the nature of the data defect. Example: "Business Partner identifier is mandatory." - `values.validationDecisions.status` (string) Status of a validation decision. Enum: "ACCEPTED", "REJECTED" - `limit` (integer) Number of items per page. Example: "100" - `startAfter` (string) The ID which is used to read the page. Example: "5712566172571652" - `nextStartAfter` (string) Provides a value to be used as a startAfter in next page request. Example: "5712566172571652" - `total` (integer) Total number of items which can be paged. Example: "67" ## Response 400 fields (application/json): - `status` (object) Details about status or error of a service. - `status.code` (integer) RFC 7231 status code for this error. Example: "400" - `status.technicalKey` (string) Technical key describing the status or error Example: "OK" - `status.details` (array) List of details about the status or error. - `status.details.id` (integer, required) 9-digit code which is uniquely identifying a message Example: 200000004 - `status.details.message` (string, required) Human-readable message which may also be presented in user interface. Example: "Business Partner Name is mandatory." - `status.details.technicalKey` (string) Technical key to uniquely identify a message. Example: "JOB_FINISHED" - `status.details.jsonPath` (string) JSONPath as specified by the IETF standard Example: "$.businessPartner.names[0].value" - `status.details.jsonRecord` (string) Object provided in plain JSON format. Example: "{ \"key\" : \"value\"}" - `status.path` (string) Requested path which caused this error. Example: "/v2/businesspartners/lookup" - `status.timestamp` (string) ISO 8601 representation of the timestamp. Example: "2025-08-27T14:26:38Z"