This API provides services to upload, manipulate and download businesspartner data in the CDL Cloud.
Data Exchange API (5)
https://idp.cdq.com/_mock/apis/data-exchange-api/api-v5/
https://api.corporate-data-league.ch/data-exchange/soap/v5/
https://api.corporate-data-league.ch/data-exchange/
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.
- Mock server
https://idp.cdq.com/_mock/apis/data-exchange-api/api-v5/v4/cdqpool/businesspartners
- Production SOAP
https://api.corporate-data-league.ch/data-exchange/soap/v5/v4/cdqpool/businesspartners
- Production
https://api.corporate-data-league.ch/data-exchange/v4/cdqpool/businesspartners
curl -i -X POST \
-u <username>:<password> \
https://idp.cdq.com/_mock/apis/data-exchange-api/api-v5/v4/cdqpool/businesspartners \
-H 'Content-Type: application/json' \
-H 'X-Credential-Username: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3' \
-d '{
"businessPartner": {
"id": "63e635235c06b7396330fe40",
"createdAt": "2020-08-31T16:47+00:00",
"modifiedAt": "2020-08-31T16:47+00:00",
"externalId": "The ID managed in the customer'\''s SAP systems.",
"dataSource": "\"CUSTOM_DATA_SOURCE\" or \"648824a691d8d2503d65103e\"",
"disclosed": "false",
"updateMonitoring": "true",
"updateCommercialMonitoring": [
{
"type": {
"technicalKey": "DNB"
},
"value": "true"
}
],
"metadata": {
"lastUpdatedAt": "2020-08-31T16:47+00:00",
"lastSyncAt": "2020-02-11T00:00:00Z",
"sharingStatus": {
"status": "SHARED_WITH_NO_MATCH",
"description": "UNDER_CONSIDERATION: The business partner will be considered for the sharing process."
},
"identityLinks": [
{
"linkId": "6465f2492bdcd350159a79d6",
"cdqId": "VIES:PL8660001429",
"addressId": "0",
"externalAddressId": "123456789",
"status": {
"details": [
{}
]
}
}
],
"logResultStatuses": [
{
"processingLogId": "CURATION_LOG",
"triggerProcessedAt": "2020-08-31T16:47+00:00",
"triggerType": {
"name": "CREATED",
"technicalKey": "CREATED"
},
"trigger": {
"processedAt": "2020-08-31T16:47+00:00",
"provenance": {
"name": "VIES",
"technicalKey": "VIES",
"cdqId": "VIES:PL8660001429"
},
"type": {
"name": "CREATED",
"technicalKey": "CREATED"
}
},
"jobProcessedAt": "2020-08-31T16:47+00:00",
"processedAt": "2020-08-31T16:47+00:00",
"status": "INFO",
"description": "Validation Level",
"processingStatus": {
"technicalKey": "IN_PROGRESS",
"modifiedAt": "2020-08-31T16:47+00:00"
},
"previousProcessingStatus": {
"technicalKey": "IN_PROGRESS",
"modifiedAt": "2020-08-31T16:47+00:00"
}
}
],
"decisionLogResult": {
"reviewStatus": "REVIEWED",
"naturalPersonsReviewStatus": "REVIEWED",
"duplicatesReviewStatus": "REVIEWED"
}
},
"record": "{\"name\": \"BUSINESSPARTNER_NAME\", ...}",
"additionalInformation": [
{
"key": "KEY",
"value": "1"
}
],
"names": [
{
"type": {
"url": "https://meta.cdq.com/Business_partner/name/type",
"name": "Local Name",
"technicalKey": "LOCAL"
},
"value": "Corporate Data Quality AG",
"shortName": "CDQ AG",
"language": {
"name": "German",
"technicalKey": "DE"
},
"details": [
{
"value": "Corporate Data Quality AG - Marketing Department",
"type": {
"name": "Legal Entity",
"url": "https://meta.cdq.com/Business_partner/type",
"technicalKey": "LEGAL_ENTITY"
}
}
]
}
],
"legalForm": {
"name": "Aktiengesellschaft",
"url": "https://meta.cdq.com/Business_partner/legal_form",
"technicalKey": "DE_9866",
"language": {
"name": "German",
"technicalKey": "DE"
},
"mainAbbreviation": "AG",
"categories": [
{
"name": "Limited Liability Company",
"shortName": "LLC",
"url": "https://meta.cdq.com/Business_partner/legal_form/category/technical_key/LF001",
"technicalKey": "LIMITED"
}
]
},
"identifiers": [
{
"type": {
"url": "https://meta.cdq.com/Business_partner/identifier/type",
"name": "CH_VAT_ID",
"technicalKey": "CH_VAT_ID"
},
"value": "CHE-218.608.886 HR/MWST",
"issuingBody": {
"name": "Amtsgericht Aachen",
"url": "https://meta.cdq.com/Business_partner/identifier/issuing_body",
"technicalKey": "Amtsgericht Aachen",
"jurisdiction": {
"country": {
"shortName": "CH",
"value": "Switzerland"
}
}
},
"status": {
"name": "ACTIVE",
"technicalKey": "ACTIVE"
}
}
],
"categories": [
{
"name": "Hotel",
"url": "https://meta.cdq.com/Business_partner/category",
"technicalKey": "HOTEL"
}
],
"status": {
"type": {
"name": "In Liquidation",
"url": "https://meta.cdq.com/Business_partner/status/type",
"technicalKey": "IN_LIQUIDATION"
},
"officialDenotation": "Good Standing",
"validFrom": "2022-02-26",
"validUntil": "2022-02-26"
},
"profile": {
"minorityIndicator": {
"value": "Social enterprise"
},
"classifications": [
{
"value": "Manufacture of pesticides and other agrochemical products.",
"code": "20.20Z",
"type": {
"name": "NAF 2003",
"url": "https://meta.cdq.com/Business_partner/partner_profile/classification/type",
"technicalKey": "NAF_2003"
}
}
],
"phoneNumbers": [
{
"countryPrefix": "+41",
"number": "71 571 10 40",
"type": {
"name": "FAX",
"url": "https://meta.cdq.com/Business_partner/partner_profile/phone_number/type",
"technicalKey": "FAX"
},
"value": "+41 71 571 10 40"
}
],
"websites": [
{
"url": "https://cdq.com",
"type": {
"name": "Corporate Website",
"url": "https://meta.cdq.com/Business_Partner/partner_profile/website/type",
"technicalKey": "WEBSITE_TYPE_CORPORATE"
}
}
],
"contactEmails": [
{
"value": "developer-portal@cdq.com"
}
],
"tags": [
{
"value": "Warehouse",
"type": {
"technicalKey": "WAREHOUSE"
}
}
],
"vatPayerStatus": {
"publicationDate": "2020-07-21T17:32:28Z",
"status": {
"name": "RELIABLE",
"technicalKey": "VAT_PAYER_STATUS"
},
"registrationAuthority": {
"registrationAuthorityId": "RA000009",
"registrationAuthorityEntityId": "RA000009",
"otherRegistrationAuthorityId": "RA000009"
}
},
"hcpProfile": {
"generalLicense": {
"professionType": {
"name": "Doctor",
"url": "https://meta.cdq.com/Business_partner/partner_profile/hcp_profile/general_license/profession_type/technical_key",
"technicalKey": "DOCTOR"
},
"licenseStatus": {
"name": "Granted",
"url": "https://meta.cdq.com/Business_partner/partner_profile/hcp_profile/general_license/license_status/technical_key",
"technicalKey": "GRANTED"
}
},
"operationalPermissions": [
{
"issuingAuthority": "Swiss Medical Association",
"permissionStatus": {
"name": "Granted",
"url": "https://meta.cdq.com/Business_partner/partner_profile/hcp_profile/operational_permissions/permission_status/url",
"technicalKey": "GRANTED"
},
"activityStatus": {
"name": "Inactive",
"url": "https://meta.cdq.com/Business_partner/partner_profile/hcp_profile/operational_permissions/activity_status/url",
"technicalKey": "INACTIVE"
},
"practiceLocations": [
{}
]
}
]
}
},
"relations": [
{
"startedAt": "2019-08-31T16:47+00:00",
"endedAt": "2019-08-31T16:47+00:00",
"type": {
"name": "Commercial ultimate",
"technicalKey": "COMMERCIAL_ULTIMATE",
"url": "https://meta.cdq.com/Business_partner/relation/type"
},
"class": {
"name": "CDQ Hierarchy",
"technicalKey": "BUSINESS_PARTNER_RELATION_CLASS_CDQ_HIERARCHY",
"url": "https://meta.cdq.com/Business_partner/relation/class"
},
"startNode": {
"externalId": "The ID managed in the customer'\''s SAP systems.",
"dataSourceId": "648824a691d8d2503d65103e"
},
"endNode": {
"externalId": "The ID managed in the customer'\''s SAP systems.",
"dataSourceId": "648824a691d8d2503d65103e"
},
"deactivatedAt": "2019-08-31T16:47+00:00"
}
],
"types": [
{
"name": "Legal Entity",
"url": "https://meta.cdq.com/Business_partner/type",
"technicalKey": "LEGAL_ENTITY"
}
],
"addresses": [
{
"id": "0001",
"externalId": "1",
"cdqId": "CDQID-123456789",
"version": {
"language": {
"name": "German",
"technicalKey": "DE"
},
"characterSet": {
"name": "International",
"technicalKey": "INTERNATIONAL"
}
},
"identifyingName": {
"value": "John Doe"
},
"careOf": {
"value": "CDQ GmbH c/o Product Department"
},
"contexts": [
{
"value": "Production hall 7, Storage field 8."
}
],
"country": {
"shortName": "CH",
"value": "Switzerland"
},
"administrativeAreas": [
{
"value": "Sankt Gallen",
"shortName": "SG",
"isoCode": "CH-SG",
"type": {
"name": "COUNTY",
"url": "https://meta.cdq.com/Address/administrative_area/type",
"technicalKey": "COUNTY"
},
"language": {
"name": "German",
"technicalKey": "DE"
}
}
],
"postCodes": [
{
"value": "9000",
"type": {
"name": "Regular",
"url": "https://meta.cdq.com/Address/post_code/type",
"technicalKey": "REGULAR"
}
}
],
"localities": [
{
"type": {
"name": "City",
"url": "https://meta.cdq.com/Address/locality/type",
"technicalKey": "CITY"
},
"shortName": "St. Gallen",
"value": "Sankt Gallen",
"language": {
"name": "German",
"technicalKey": "DE"
}
}
],
"thoroughfares": [
{
"type": {
"name": "Industrial zone",
"url": "https://meta.cdq.com/Address/thoroughfare/type",
"technicalKey": "INDUSTRIAL_ZONE"
},
"shortName": "Lukasstr. 4",
"number": "4",
"value": "Lukasstraße 4",
"name": "Lukasstraße",
"direction": "221-bis Baker Street, North",
"language": {
"name": "German",
"technicalKey": "DE"
}
}
],
"premises": [
{
"value": "Lukasstraße 4",
"shortName": "Lukasstr. 4",
"number": "4",
"type": {
"name": "Factory",
"url": "https://meta.cdq.com/Address/premise/type",
"technicalKey": "FACTORY"
},
"language": {
"name": "German",
"technicalKey": "DE"
}
}
],
"postalDeliveryPoints": [
{
"type": {
"name": "Mailbox",
"url": "https://meta.cdq.com/Address/postal_delivery_point/type",
"technicalKey": "MAILBOX"
},
"shortName": "St Gallen, Postfach 460",
"number": "460",
"value": "Postfach",
"language": {
"name": "German",
"technicalKey": "DE"
}
}
],
"geographicCoordinates": {
"latitude": "47.439549",
"longitude": "9.395275"
},
"types": [
{
"name": "Legal Address",
"url": "https://meta.cdq.com/Address/type",
"technicalKey": "LEGAL_ADDRESS"
}
]
}
],
"bankAccounts": [
{
"internationalBankAccountIdentifier": "CH8800781619278412000",
"internationalBankIdentifier": "KBSGCH22XXX",
"nationalBankAccountIdentifier": "619278412000",
"nationalBankIdentifier": "00781",
"countryCode": "DE",
"vendorPaymentSummary": {
"firstPaymentDate": "2020-08-31T16:47+00:00",
"lastPaymentDate": "2020-08-31T16:47+00:00",
"numberOfPayments": "1"
}
}
],
"externalContext": {
"identifiers": [
{
"value": "7250017031",
"type": {
"technicalKey": "KUNNR"
}
}
]
}
}
}'OK
A CDQ ID identifies a business partner uniquely in the context of the Corporate Data League.
Date of modification (ISO 8601-compliant).
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.
Name or ID of a data source. Reflects the associated external system where the record originates from.
A flag to indicate whether the Business Partner should participate in the sharing or not. If 'true' this Business Partner might be used to create a new entry or update an existing entry in the community pool. Otherwise, it will not be considered for the sharing process. For more details, you can read about Sharing Scopes.
A flag to indicate whether the Business Partner should receive updates from non-commercial Reference Data Sources or not. If 'true' this Business Partner will receive updates since the change from 'false'. If 'false' this Business Partner will not receive any new updates since the change. If not provided, the previous value will not be changed. By default, Update Monitoring is activated.
Enabling update commercial monitoring has 2 possibilities:
- via Data Mapper Definition: include mapping of updateCommercialMonitoring in the Data Mapper Definition
- via direct Business Partner model upload: fill complete Business Partner model and
updateCommercialMonitoring. Null/undefinedupdateCommercialMonitoringresults in protection of this setup from the previous upsert. Empty or filledupdateCommercialMonitoringresults in data transition that may link or unlink to / from respective commercial Reference Data Source
Note: follow the approach that is currently used in your storage integration.
Stringified JSON of an individual Business Partner record. Characters: backslash \ and double quote " must be escaped (respectively: \\\\ and \"). Fields containing . are unallowed. Maximum size: 15MB.
The legal form of a business partner/type/legal entity is the form it takes in the eyes of the law governing it. The legal form of a company is the general type it may legally use to identify itself according to the local, regional, national, or international law governing it. This is normally reflected in the ending abbreviation after the company's name (e.g. AG, Inc., LLC, S.A.).
Describes the status of a business partner with respect to its level of activity (e.g. out of business) or legally relevant conditions (e.g. in liquidation).
Additional documentation can be found here.
List of Relations. Insert or update Business Partner Relations. Relations that are not listed in the request and start in the current business partner, are marked as INACTIVE.
In D&B storages, only not listed relations of class D&B Hierarchy and one of type [https://meta.cdq.com/Business_partner/relation/type/direct_legal_relation](Direct Legal Relation), [https://meta.cdq.com/Business_partner/relation/type/domestic_legal_ultimate_relation](Domestic Legal Ultimate Relation) or [https://meta.cdq.com/Business_partner/relation/type/global_legal_ultimate_relation](Global Legal Ultimate Relation), are marked as INACTIVE.
{ "id": "63e635235c06b7396330fe40", "createdAt": "2020-08-31T16:47+00:00", "modifiedAt": "2020-08-31T16:47+00:00", "externalId": "The ID managed in the customer's SAP systems.", "dataSource": "\"CUSTOM_DATA_SOURCE\" or \"648824a691d8d2503d65103e\"", "disclosed": "false", "updateMonitoring": "true", "updateCommercialMonitoring": [ { … } ], "metadata": { "lastUpdatedAt": "2020-08-31T16:47+00:00", "lastSyncAt": "2020-02-11T00:00:00Z", "sharingStatus": { … }, "identityLinks": [ … ], "logResultStatuses": [ … ], "decisionLogResult": { … } }, "record": "{\"name\": \"BUSINESSPARTNER_NAME\", ...}", "additionalInformation": [ { … } ], "names": [ { … } ], "legalForm": { "name": "Aktiengesellschaft", "url": "https://meta.cdq.com/Business_partner/legal_form", "technicalKey": "DE_9866", "language": { … }, "mainAbbreviation": "AG", "categories": [ … ] }, "identifiers": [ { … } ], "categories": [ { … } ], "status": { "type": { … }, "officialDenotation": "Good Standing", "validFrom": "2022-02-26", "validUntil": "2022-02-26" }, "profile": { "minorityIndicator": { … }, "classifications": [ … ], "phoneNumbers": [ … ], "websites": [ … ], "contactEmails": [ … ], "tags": [ … ], "vatPayerStatus": { … }, "hcpProfile": { … } }, "relations": [ { … } ], "types": [ { … } ], "addresses": [ { … } ], "bankAccounts": [ { … } ], "externalContext": { "identifiers": [ … ] } }
- Mock server
https://idp.cdq.com/_mock/apis/data-exchange-api/api-v5/v4/cdqpool/businesspartners
- Production SOAP
https://api.corporate-data-league.ch/data-exchange/soap/v5/v4/cdqpool/businesspartners
- Production
https://api.corporate-data-league.ch/data-exchange/v4/cdqpool/businesspartners
curl -i -X GET \
-u <username>:<password> \
https://idp.cdq.com/_mock/apis/data-exchange-api/api-v5/v4/cdqpool/businesspartners \
-H 'X-Credential-Username: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3'{ "startAfter": "5712566172571652", "limit": "100", "total": "67", "values": [ { … } ], "nextStartAfter": "5712566172571652" }
Request
Upsert Business Partners in a Business Partner storage in batches. Maximum of 1000 Business Partners are allowed per batch.
If no data source (via field: dataSource) is provided and the storage has only one, then this data source will be used/set. Other options are to provide an existing data source in the request, which will then be taken for all the Business Partner or to provide a data source for each Business Partner individually.
In the following cases an API error will be thrown:
- given data source in the Request or the BusinessPartner is unknown
- no data source given and more than one data source is attached to the storage
To start upserting Business Partners into a storage, use the following request.
PUT https://api.corporate-data-league.ch/data-exchange/rest/v4/storages/{YOUR STORAGE ID}/businesspartners
{
"dataSource": "{YOUR DATA SOURCE}",
"featuresOn": ["UPSERT_BY_EXTERNAL_ID"],
"businessPartners": [
{
"externalId": "123",
"record": "{\"MyId\":\"123\", \"City\":\"St. Gallen\"}"
}]
}The response is shown below.
{
"numberOfAccepted": "1",
"numberOfFailed": "0",
}
Upserting Business Partners enables automated data transformation from the record field to the Business Partner model. It requires a Data Mapper Definition and assigned to dataMapperDefinitionId field of a data source Business Partner is being upserted to.
To enable automated data transformation, one of the following features is required:
- TRANSFORM_RECORD - synchronous transformation, limited for batch size <= 250,
- ENABLE_ASYNC - asynchronous transformation. Enabled by default when TRANSFORM_RECORD is not requested.
Automated data transformation can be executed together with the UPSERT_BY_EXTERNAL_ID feature, but it requires to provide external ID in two places:
- field
externalIdof a Business Partner, - property in
recordfield together with the Business Partner attribute mapping rule defined in Data Mapper Definition.
Warn: in order to support multiple data sources, include dataSource into the request, either in $.dataSource or $.businessPartners[*].dataSource. Otherwise, multiple data sources with no selection of data source will lead to "No DataSource was provided for the given Business Partners and the storage has more than one attached to it." exception.
Parameters for Business Partners Upsert.
Name or ID of a data source. Reflects the associated external system where the record originates from.
ID of related Data Mapper Definition that is used for mapping data of this Business Partner Storage.
Unique identifier for a data transformation definition.
List of Business Partners.
A CDQ ID identifies a business partner uniquely in the context of the Corporate Data League.
Date of creation (ISO 8601-compliant).
Date of modification (ISO 8601-compliant).
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.
Name or ID of a data source. Reflects the associated external system where the record originates from.
A flag to indicate whether the Business Partner should participate in the sharing or not. If 'true' this Business Partner might be used to create a new entry or update an existing entry in the community pool. Otherwise, it will not be considered for the sharing process. For more details, you can read about Sharing Scopes.
A flag to indicate whether the Business Partner should receive updates from non-commercial Reference Data Sources or not. If 'true' this Business Partner will receive updates since the change from 'false'. If 'false' this Business Partner will not receive any new updates since the change. If not provided, the previous value will not be changed. By default, Update Monitoring is activated.
Enabling update commercial monitoring has 2 possibilities:
- via Data Mapper Definition: include mapping of updateCommercialMonitoring in the Data Mapper Definition
- via direct Business Partner model upload: fill complete Business Partner model and
updateCommercialMonitoring. Null/undefinedupdateCommercialMonitoringresults in protection of this setup from the previous upsert. Empty or filledupdateCommercialMonitoringresults in data transition that may link or unlink to / from respective commercial Reference Data Source
Note: follow the approach that is currently used in your storage integration.
Information about results of Business Partner processing.
Stringified JSON of an individual Business Partner record. Characters: backslash \ and double quote " must be escaped (respectively: \\\\ and \"). Fields containing . are unallowed. Maximum size: 15MB.
List of additional information.
The legal form of a business partner/type/legal entity is the form it takes in the eyes of the law governing it. The legal form of a company is the general type it may legally use to identify itself according to the local, regional, national, or international law governing it. This is normally reflected in the ending abbreviation after the company's name (e.g. AG, Inc., LLC, S.A.).
Describes the status of a business partner with respect to its level of activity (e.g. out of business) or legally relevant conditions (e.g. in liquidation).
Additional documentation can be found here.
List of Relations. Insert or update Business Partner Relations. Relations that are not listed in the request and start in the current business partner, are marked as INACTIVE.
In D&B storages, only not listed relations of class D&B Hierarchy and one of type [https://meta.cdq.com/Business_partner/relation/type/direct_legal_relation](Direct Legal Relation), [https://meta.cdq.com/Business_partner/relation/type/domestic_legal_ultimate_relation](Domestic Legal Ultimate Relation) or [https://meta.cdq.com/Business_partner/relation/type/global_legal_ultimate_relation](Global Legal Ultimate Relation), are marked as INACTIVE.
Features to be activated during the upsert.
| Items Enum Value | Description |
|---|---|
| UPSERT_BY_EXTERNAL_ID | Updates a Business Partners identified by external ID instead of an insert if the external ID is already present in this storage. |
| API_ERROR_ON_FAILURES | Throws exception instead of default Upsert Failure Log. |
| TRANSFORM_RECORD | Transforms record into Business Partner model using the dataMapperDefinition attached to the dataSource. Supported only for batch size up to 250 Business Partners. |
| ENABLE_SETTINGS | Enables usage of user and organization settings in upsert process. Enabled by default. |
| ENABLE_ASYNC | Stores data to the storage. Enables asynchronous data processing for transformation, updates, indexing and sharing processes. Requires externalId to be present in the businessPartner. Enabled by default when TRANSFORM_RECORD not used. |
Features to be deactivated during the upsert.
| Items Enum Value | Description |
|---|---|
| UPSERT_BY_EXTERNAL_ID | Updates a Business Partners identified by external ID instead of an insert if the external ID is already present in this storage. |
| API_ERROR_ON_FAILURES | Throws exception instead of default Upsert Failure Log. |
| TRANSFORM_RECORD | Transforms record into Business Partner model using the dataMapperDefinition attached to the dataSource. Supported only for batch size up to 250 Business Partners. |
| ENABLE_SETTINGS | Enables usage of user and organization settings in upsert process. Enabled by default. |
| ENABLE_ASYNC | Stores data to the storage. Enables asynchronous data processing for transformation, updates, indexing and sharing processes. Requires externalId to be present in the businessPartner. Enabled by default when TRANSFORM_RECORD not used. |
- Mock server
https://idp.cdq.com/_mock/apis/data-exchange-api/api-v5/v4/cdqpool/businesspartners
- Production SOAP
https://api.corporate-data-league.ch/data-exchange/soap/v5/v4/cdqpool/businesspartners
- Production
https://api.corporate-data-league.ch/data-exchange/v4/cdqpool/businesspartners
curl -i -X PUT \
-u <username>:<password> \
https://idp.cdq.com/_mock/apis/data-exchange-api/api-v5/v4/cdqpool/businesspartners \
-H 'Content-Type: application/json' \
-H 'X-Credential-Username: 87b1bdb1-ba87-4522-b363-c5a0e6e917b3' \
-d '{
"dataSource": "YOUR_DATASOURCE_ID",
"featuresOn": [
"UPSERT_BY_EXTERNAL_ID"
],
"businessPartners": [
{
"externalId": "YOUR_EXTERNAL_ID",
"record": "{\"Customer number:\"YOUR_EXTERNAL_ID\", \"Name\":\"COMPANY_NAME\", \"Country\":\"COUNTRY_CODE\", \"City\":\"CITY\", \"Street\":\"STREET\", \"Postal code\":\"POSTAL_CODE\"}"
}
]
}'{ "numberOfAccepted": "10", "numberOfInserts": "10", "numberOfUpdates": "10", "numberOfFailed": "10", "failures": [ { … } ], "featuresOn": [ "UPSERT_BY_EXTERNAL_ID" ] }