Skip to content

Index API (1)

This API provides service index data.

Languages
Servers
Mock server

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

Production SOAP

https://index-api.reverse-proxy.prod.k8s.production.cdq-cloud-engine.com/soap/v1/

Production

https://index-api.reverse-proxy.prod.k8s.production.cdq-cloud-engine.com/

Address Index

Groups endpoints that manage address index data by creating, reading, updating, and removing address index entries.

Operations

Addresses

Groups endpoints that manage address data by searching for and collecting detailed information regarding addresses. These endpoints ensure the readiness and manageability of address information for a multitude of business requirements.

Operations

Administrative Area Index

Groups endpoints related to administrative area data, such as searching and details retrieval. Such endpoints ensure that information related to the administrative areas is easy to get and manage for various business needs.

Operations

Business Partner Index

Groups endpoints that manage Business Partner index data by creating, reading, updating, and removing Business Partner index entries. These endpoints ensure that Business Partner information is indexed and easily retrievable for various business processes.

Operations

Business Partner Index Entry

Endpoints used to deal with single entries within the Business Partner index. This includes create, read, update, and delete operations for individual Business Partner entries. These endpoints ensure that in-depth details of Business Partners are kept orderly and are well accessible to suit different business requirements.

Operations

Business Partner Index Entries

Useful for classifying endpoints concerned with multiple entries within the Business Partner index, such as create, update, and remove multiple entries in a Business Partner index in one step. This will help to ensure the efficient and well-streamlined bulk management of the Business Partner information for various business needs.

Operations

CEDEX Lookup

Groups endpoints that manage CEDEX data by searching for and collecting detailed information regarding CEDEX codes. These endpoints ensure the readiness and manageability of CEDEX information for a multitude of business requirements.

Operations

Customer Indexes

Used for grouping API endpoints related to customer index data management, like creating, reading, or updating index entries of customers. These endpoints organize information about a customer in an organized form and make it easily accessible for further use in multiple business needs.

Operations

Data Clinic Index

Groups endpoints related to managing Data Clinic index data through create, read, update, and remove Data Clinic index entries. These endpoints ensure that Data Clinic information is indexed for easy retrieval for a large number of business processes.

Operations

Data Clinic Index Entry

Groups endpoints that deal with single entries in the Data Clinic index. This would pertain to reading, writing, updating, and removing of a particular entry of Data Clinics. These endpoints make sure that all information regarding Data Clinics is kept neat and easily accessible for many business needs.

Operations

Data Clinic Index Entries

Used to group API endpoints related to processing a number of entries in the Data Clinic Index, such as creating, updating, and removing many data clinic entries. These endpoints become crucial in allowing fast and smooth bulk management of Data Clinic information for various business purposes.

Operations

Maintenance Window Management

Groups endpoints within the scheduling and management of maintenance windows. This will feature Create, Read, and Update of maintenance windows to give stability to a system with very minimal downtime. Such endpoints allow the smooth running of services by efficient management of planned maintenance activities.

Operations

System Indexes

Groups endpoints that manage system index data by creating, reading, updating, and removing system index entries. These endpoints ensure that system information is indexed and easily retrievable for various business processes.

Operations

Upsert Compliance Entries

Request

Creates or updates many compliance entries. The entries are identified by the partition keys and the compliance index id.

Bodyapplication/json
complianceEntriesArray of objects(ComplianceIndexEntry)[ 1 .. 1000 ] items

List of Compliance Entries.

curl -i -X POST \
  https://idp.cdq.com/_mock/apis/index-api/api-v1/systemindexes/complianceentries/upsert \
  -H 'Content-Type: application/json' \
  -d '{
    "complianceEntries": [
      {
        "partitionKeys": [
          {
            "key": "STORAGE_ID",
            "value": "6ecd22476b95347e8a0d215589a1110"
          }
        ],
        "id": "297de304-bf4a-4812-b49e-4249d2ccf3e4",
        "externalId": "20200411588",
        "names": [
          {
            "value": "Muster AG",
            "valueClassification": {
              "normalizedCompanyName": "cdq",
              "nameWithoutLegalForm": "CDQ Company",
              "nameBeforeLegalForm": "CDQ",
              "nameAfterLegalForm": "Company",
              "legalForm": "DE_2178",
              "terms": [
                {}
              ]
            },
            "type": {
              "name": "No example available.",
              "technicalKey": "No example available."
            },
            "language": {
              "name": "No example available.",
              "technicalKey": "No example available."
            }
          }
        ],
        "addresses": [
          {
            "version": {
              "language": {
                "name": "No example available.",
                "technicalKey": "No example available."
              },
              "characterSet": {
                "name": "No example available.",
                "technicalKey": "No example available."
              }
            },
            "externalId": "20200411588",
            "country": {
              "shortName": "CH",
              "value": "Switzerland"
            },
            "postCodes": [
              {
                "value": "9000",
                "type": {}
              }
            ],
            "localities": [
              {
                "value": "Sankt Gallen",
                "type": {}
              }
            ],
            "premises": [
              {
                "value": "Lukasstraße 4",
                "number": "4",
                "type": {}
              }
            ],
            "administrativeAreas": [
              {
                "value": "Sankt Gallen",
                "shortName": "SG",
                "isoCode": "CH-SG",
                "type": {}
              }
            ],
            "thoroughfares": [
              {
                "value": "Lukasstraße 4",
                "number": "4",
                "type": {}
              }
            ],
            "types": [
              {
                "name": "No example available.",
                "technicalKey": "No example available."
              }
            ]
          }
        ],
        "list": {
          "technicalKey": "INFO4C_SL_1",
          "name": "Seco List «Al-Qaïda»",
          "issuingBody": {
            "technicalKey": "Amtsgericht Aachen",
            "name": "Amtsgericht Aachen"
          }
        },
        "additionalInformation": [
          {
            "key": "function or additionalInformation",
            "value": "{'\''key'\'': '\''DATE_OF_INFORMATION'\'','\''value'\'': '\''31.03.2023'\''}"
          }
        ]
      }
    ]
  }'

Responses

OK

Bodyapplication/json
numberOfUpsertsinteger(int64)

Number of upserts.

Example: "10"
Response
application/json
{ "numberOfUpserts": "10" }

Search Compliance Entries

Request

Allows paging through compliance entries in index. The search is based on the given index id and the partition keys.

Bodyapplication/json
entryobject(ComplianceIndexEntryQuery)

The Compliance Index Entry Query.

partitionKeysArray of objects(PartitionKey)

List of partition keys.

pageSizeinteger[ 1 .. 200 ]

The page size.

Default 10
Example: "10"
pageinteger(Page)>= 0

Current page number.

Default 0
Example: "1"
curl -i -X POST \
  https://idp.cdq.com/_mock/apis/index-api/api-v1/systemindexes/complianceentries/search \
  -H 'Content-Type: application/json' \
  -d '{
    "entry": {
      "names": [
        {
          "value": "Muster AG"
        }
      ],
      "address": {
        "administrativeArea": {
          "value": "Berlin",
          "shortName": "BE"
        },
        "thoroughfare": {
          "value": "Musterstraße",
          "number": "1"
        },
        "postCode": {
          "value": "10115"
        },
        "locality": {
          "value": "Berlin"
        },
        "country": {
          "shortName": "DE",
          "value": "Germany"
        }
      },
      "lists": [
        {
          "technicalKey": "INFO4C_SL_1"
        }
      ]
    },
    "partitionKeys": [
      {
        "key": "STORAGE_ID",
        "value": "6ecd22476b95347e8a0d215589a1110"
      }
    ],
    "pageSize": "10",
    "page": "1"
  }'

Responses

OK

Bodyapplication/json
pageSizeinteger(PageSize)[ 1 .. 1000 ]

Number of items per page.

Default 10
Example: "100"
totalsinteger(PageTotal)

Total number of items which can be paged.

Example: "67"
pageinteger(Page)>= 0

Current page number.

Default 0
Example: "1"
valuesArray of objects(ComplianceIndexEntry)

List of Compliance Entries.

Response
application/json
{ "pageSize": "100", "totals": "67", "page": "1", "values": [ {} ] }

Upsert Bank Data

Request

Creates or updates many bank entries. The entries are identified by the partition keys and the bank index id.

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. "john.doe")
  • user id (e.g. "87b1bdb1-ba87-4522-b363-c5a0e6e917b3")
Example: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3
Bodyapplication/json
banksArray of objects(BankIndexEntry)[ 1 .. 1000 ] items

List of Banks.

curl -i -X POST \
  https://idp.cdq.com/_mock/apis/index-api/api-v1/systemindexes/banks/upsert \
  -H 'Content-Type: application/json' \
  -H 'X-Credential-Username: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3' \
  -d '{
    "banks": [
      {
        "partitionKeys": [
          {
            "key": "STORAGE_ID",
            "value": "6ecd22476b95347e8a0d215589a1110"
          }
        ],
        "id": "567326478287468742",
        "names": [
          {
            "type": {
              "name": "No example available.",
              "technicalKey": "No example available."
            },
            "shortName": "SNB",
            "value": "Swiss National Bank",
            "version": {
              "language": {
                "name": "No example available.",
                "technicalKey": "No example available."
              },
              "characterSet": {
                "name": "No example available.",
                "technicalKey": "No example available."
              }
            }
          }
        ],
        "identifiers": [
          {
            "type": {
              "name": "No example available.",
              "technicalKey": "No example available."
            },
            "value": "CH1234567890123456789",
            "issuingBody": {
              "name": "No example available.",
              "technicalKey": "No example available."
            }
          }
        ],
        "addresses": [
          {
            "id": "0",
            "version": {
              "language": {
                "name": "No example available.",
                "technicalKey": "No example available."
              },
              "characterSet": {
                "name": "No example available.",
                "technicalKey": "No example available."
              }
            },
            "cdqId": "VIES:PL8660001429",
            "externalId": "1",
            "careOf": {
              "value": "CDQ GmbH c/o Product Department"
            },
            "contexts": [
              {
                "value": "Production hall 7, Storage field 8."
              }
            ],
            "country": {
              "shortName": "CH",
              "value": "Switzerland"
            },
            "postCodes": [
              {
                "value": "9000",
                "type": {}
              }
            ],
            "localities": [
              {
                "value": "Sankt Gallen",
                "type": {}
              }
            ],
            "premises": [
              {
                "value": "Lukasstraße 4",
                "number": "4",
                "type": {}
              }
            ],
            "administrativeAreas": [
              {
                "value": "Sankt Gallen",
                "shortName": "SG",
                "isoCode": "CH-SG",
                "type": {}
              }
            ],
            "thoroughfares": [
              {
                "value": "Lukasstraße 4",
                "number": "4",
                "type": {}
              }
            ],
            "types": [
              {
                "name": "No example available.",
                "technicalKey": "No example available."
              }
            ]
          }
        ],
        "externalId": "DE2357422"
      }
    ]
  }'

Responses

OK

Bodyapplication/json
numberOfUpsertsinteger(int64)

Number of upserts.

Example: "10"
numberOfFailedinteger(int64)

Number of failed upserts.

Example: "0"
failuresArray of objects(UpsertFailureLog)

List of failed upserts.

Response
application/json
{ "numberOfUpserts": "10", "numberOfFailed": "0", "failures": [ {} ] }

Search Bank Data

Request

Allows paging through Business Partners in index. The search is based on the given index id and the partition keys.

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

The Bank Query.

partitionKeysArray of objects(PartitionKey)

List of partition keys.

pageSizeinteger(PageSize)[ 1 .. 1000 ]

Number of items per page.

Default 10
Example: "100"
pageinteger(Page)>= 0

Current page number.

Default 0
Example: "1"
curl -i -X POST \
  https://idp.cdq.com/_mock/apis/index-api/api-v1/systemindexes/banks/search \
  -H 'Content-Type: application/json' \
  -H 'X-Credential-Username: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3' \
  -d '{
    "bank": {
      "names": [
        {
          "value": "Deutsche Bank",
          "type": {
            "name": "No example available.",
            "technicalKey": "No example available."
          }
        }
      ],
      "identifiers": [
        {
          "value": "DEUTDEFF",
          "type": {
            "name": "No example available.",
            "technicalKey": "No example available."
          }
        }
      ],
      "address": {
        "careOf": {
          "value": "CDQ GmbH c/o Product Department"
        },
        "administrativeArea": {
          "value": "Sankt Gallen",
          "shortName": "SG"
        },
        "thoroughfare": {
          "value": "Lukasstraße 4",
          "number": "4"
        },
        "postCode": {
          "value": "9000"
        },
        "locality": {
          "value": "Sankt Gallen"
        },
        "country": {
          "shortName": "CH",
          "value": "Switzerland"
        },
        "types": [
          {
            "name": "No example available.",
            "technicalKey": "No example available."
          }
        ]
      }
    },
    "partitionKeys": [
      {
        "key": "STORAGE_ID",
        "value": "6ecd22476b95347e8a0d215589a1110"
      }
    ],
    "pageSize": "100",
    "page": "1"
  }'

Responses

OK

Bodyapplication/json
pageSizeinteger(PageSize)[ 1 .. 1000 ]

Number of items per page.

Default 10
Example: "100"
totalsinteger(PageTotal)

Total number of items which can be paged.

Example: "67"
pageinteger(Page)>= 0

Current page number.

Default 0
Example: "1"
valuesArray of objects(BankIndexEntry)

List of Banks.

Response
application/json
{ "pageSize": "100", "totals": "67", "page": "1", "values": [ {} ] }

Upsert Bank Account Data

Request

Creates or updates many bank account entries. The entries are identified by the partition keys and the bank account index id.

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. "john.doe")
  • user id (e.g. "87b1bdb1-ba87-4522-b363-c5a0e6e917b3")
Example: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3
Bodyapplication/json
bankAccountsArray of objects(BankAccountIndexEntry)[ 1 .. 1000 ] items

List of Bank Accounts.

curl -i -X POST \
  https://idp.cdq.com/_mock/apis/index-api/api-v1/systemindexes/bankaccounts/upsert \
  -H 'Content-Type: application/json' \
  -H 'X-Credential-Username: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3' \
  -d '{
    "bankAccounts": [
      {
        "partitionKeys": [
          {
            "key": "STORAGE_ID",
            "value": "6ecd22476b95347e8a0d215589a1110"
          }
        ],
        "id": "567326478287468742",
        "internationalBankAccountIdentifier": "CH8800781619278412000",
        "internationalBankIdentifier": "KBSGCH22XXX",
        "bankCountryCode": "DE",
        "nationalBankIdentifier": "00781",
        "nationalBankAccountIdentifier": "619278412000"
      }
    ]
  }'

Responses

OK

Bodyapplication/json
numberOfUpsertsinteger(int64)

Number of upserts.

Example: "10"
numberOfFailedinteger(int64)

Number of failed upserts.

Example: "0"
failuresArray of objects(UpsertFailureLog)

List of failed upserts.

Response
application/json
{ "numberOfUpserts": "10", "numberOfFailed": "0", "failures": [ {} ] }

Search Bank Account Data

Request

Allows paging through business partners in index. The search is based on the given index id and the partition keys.

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

The Bank Account Query.

partitionKeysArray of objects(PartitionKey)

List of partition keys.

pageSizeinteger(PageSize)[ 1 .. 1000 ]

Number of items per page.

Default 10
Example: "100"
pageinteger(Page)>= 0

Current page number.

Default 0
Example: "1"
curl -i -X POST \
  https://idp.cdq.com/_mock/apis/index-api/api-v1/systemindexes/bankaccounts/search \
  -H 'Content-Type: application/json' \
  -H 'X-Credential-Username: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3' \
  -d '{
    "bankAccountQuery": {
      "identifiers": [
        {
          "internationalBankAccountIdentifier": "CH8800781619278412000",
          "internationalBankIdentifier": "KBSGCH22XXX",
          "bankCountryCode": "DE",
          "nationalBankIdentifier": "00781",
          "nationalBankAccountIdentifier": "619278412000",
          "type": {
            "name": "No example available.",
            "technicalKey": "No example available."
          }
        }
      ]
    },
    "partitionKeys": [
      {
        "key": "STORAGE_ID",
        "value": "6ecd22476b95347e8a0d215589a1110"
      }
    ],
    "pageSize": "100",
    "page": "1"
  }'

Responses

OK

Bodyapplication/json
pageSizeinteger(PageSize)[ 1 .. 1000 ]

Number of items per page.

Default 10
Example: "100"
totalsinteger(PageTotal)

Total number of items which can be paged.

Example: "67"
pageinteger(Page)>= 0

Current page number.

Default 0
Example: "1"
valuesArray of objects(BankAccountIndexEntry)

List of Bank Accounts.

Response
application/json
{ "pageSize": "100", "totals": "67", "page": "1", "values": [ {} ] }

Remove Bank Entries

Request

Removes bank entries by a given partition id.

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. "john.doe")
  • user id (e.g. "87b1bdb1-ba87-4522-b363-c5a0e6e917b3")
Example: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3
Bodyapplication/json
partitionKeysArray of objects(PartitionKey)

List of partition keys.

curl -i -X POST \
  https://idp.cdq.com/_mock/apis/index-api/api-v1/systemindexes/banks/removeByPartitionId \
  -H 'Content-Type: application/json' \
  -H 'X-Credential-Username: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3' \
  -d '{
    "partitionKeys": [
      {
        "key": "STORAGE_ID",
        "value": "6ecd22476b95347e8a0d215589a1110"
      }
    ]
  }'

Responses

OK

Bodyapplication/json
entriesToRemoveinteger(int64)

Number of entries removed.

Example: "10"
Response
application/json
{ "entriesToRemove": "10" }

Remove Bank Account Entries

Request

Removes bank account entries by a given partition id.

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. "john.doe")
  • user id (e.g. "87b1bdb1-ba87-4522-b363-c5a0e6e917b3")
Example: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3
Bodyapplication/json
partitionKeysArray of objects(PartitionKey)

List of partition keys.

curl -i -X POST \
  https://idp.cdq.com/_mock/apis/index-api/api-v1/systemindexes/bankaccounts/removeByPartitionId \
  -H 'Content-Type: application/json' \
  -H 'X-Credential-Username: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3' \
  -d '{
    "partitionKeys": [
      {
        "key": "STORAGE_ID",
        "value": "6ecd22476b95347e8a0d215589a1110"
      }
    ]
  }'

Responses

OK

Bodyapplication/json
entriesToRemoveinteger(int64)

Number of entries removed.

Example: "10"
Response
application/json
{ "entriesToRemove": "10" }

Remove Obsolete Compliance Entries

Request

Removes old compliance entries by id which are not anymore on the info sanction lists.

Bodyapplication/json
complianceIdListArray of strings

List of Compliance Entries Ids.

Example: ["10291020670"]
curl -i -X POST \
  https://idp.cdq.com/_mock/apis/index-api/api-v1/systemindexes/complianceentries/removebyids \
  -H 'Content-Type: application/json' \
  -d '{
    "complianceIdList": [
      "10291020670"
    ]
  }'

Responses

OK

Bodyapplication/json
entriesToRemoveinteger

Number of removed entries.

Example: "3"
Response
application/json
{ "entriesToRemove": "3" }