This API possibility to transform string with python code.
Transformation API (1)
https://idp.cdq.com/_mock/apis/transformation-api/api-v1/
https://api.corporate-data-league.ch/transformation-api/soap/v1/
https://api.corporate-data-league.ch/transformation-api/
Set to 'true' if you want to apply the reverse mapping
- Mock server
https://idp.cdq.com/_mock/apis/transformation-api/api-v1/datatransformationdefinitions/{id}/transform
- Production SOAP
https://api.corporate-data-league.ch/transformation-api/soap/v1/datatransformationdefinitions/{id}/transform
- Production
https://api.corporate-data-league.ch/transformation-api/datatransformationdefinitions/{id}/transform
curl -i -X POST \
https://idp.cdq.com/_mock/apis/transformation-api/api-v1/datatransformationdefinitions/c074b9f3-abf0-4f8e-9a20-74deb6cfa2a4/transform \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"inputJson": [
{}
],
"reverse": "true",
"validationSchemaId": "66432427ba96dd27add2ea34"
}'{ "resultJson": [ {} ] }
Set to 'true' if you want to apply the reverse mapping
- Mock server
https://idp.cdq.com/_mock/apis/transformation-api/api-v1/public/datatransformationdefinitions/{id}/transform
- Production SOAP
https://api.corporate-data-league.ch/transformation-api/soap/v1/public/datatransformationdefinitions/{id}/transform
- Production
https://api.corporate-data-league.ch/transformation-api/public/datatransformationdefinitions/{id}/transform
curl -i -X POST \
https://idp.cdq.com/_mock/apis/transformation-api/api-v1/public/datatransformationdefinitions/c074b9f3-abf0-4f8e-9a20-74deb6cfa2a4/transform \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"inputJson": [
{}
],
"reverse": "true",
"validationSchemaId": "66432427ba96dd27add2ea34"
}'{ "resultJson": [ {} ] }
Set to 'true' if you want to apply the reverse mapping
ID of Json validation schema
- Mock server
https://idp.cdq.com/_mock/apis/transformation-api/api-v1/datatransformationdefinitions/transform
- Production SOAP
https://api.corporate-data-league.ch/transformation-api/soap/v1/datatransformationdefinitions/transform
- Production
https://api.corporate-data-league.ch/transformation-api/datatransformationdefinitions/transform
curl -i -X POST \
https://idp.cdq.com/_mock/apis/transformation-api/api-v1/datatransformationdefinitions/transform \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"inputJson": [
{}
],
"reverse": "true",
"validationSchemaId": "66432427ba96dd27add2ea34",
"dataTransformationDefinition": {
"imports": [
{
"id": "c074b9f3-abf0-4f8e-9a20-74deb6cfa2a4"
}
],
"name": "My DTD",
"direction": "INBOUND",
"type": {
"name": "BUSINESS_PARTNER",
"technicalKey": "BUSINESS_PARTNER"
},
"mappings": [
{
"sourceAttributes": [
"businessPartner.record"
],
"sourceSelections": [
{
"selectionType": "CONCATENATION",
"value": ","
}
],
"targetAttributes": [
"businessPartner.externalId"
],
"targetTransformations": [
{
"constantValue": "constant",
"targetAttributes": [
"businessPartner.externalId"
],
"transformationName": "CAPITALIZE",
"defaultValue": "default",
"transformationType": "CAPITALIZE"
}
],
"ignoredValues": [
"ignored value"
]
}
],
"reverseMappings": [
{
"sourceAttributes": [
"businessPartner.record"
],
"sourceSelections": [
{
"selectionType": "CONCATENATION",
"value": ","
}
],
"targetAttributes": [
"businessPartner.externalId"
],
"targetTransformations": [
{
"constantValue": "constant",
"targetAttributes": [
"businessPartner.externalId"
],
"transformationName": "CAPITALIZE",
"defaultValue": "default",
"transformationType": "CAPITALIZE"
}
],
"ignoredValues": [
"ignored value"
]
}
],
"valueMappings": [
{
"sourceConditions": [
{
"sourceValue": "AU",
"sourceAttribute": "$.identifications[*].country.code",
"sourceRegex": "^GR\\..{1,}"
}
],
"sourceValue": "AE1",
"targetValue": "AE",
"targetAttribute": "$.identifications[*].country.code",
"sourceAttribute": "$.identifications[*].country.code",
"disabled": "false"
}
],
"values": [
{
"sourceValue": "AE1",
"sourceAttribute": "identifications[*].indentificationType.code"
}
],
"customTransformations": [
{
"name": "Code above.",
"code": "Code above."
}
]
}
}'{ "resultJson": [ {} ] }
Set to 'true' if you want to apply the reverse mapping
ID of Json validation schema
- Mock server
https://idp.cdq.com/_mock/apis/transformation-api/api-v1/public/datatransformationdefinitions/transform
- Production SOAP
https://api.corporate-data-league.ch/transformation-api/soap/v1/public/datatransformationdefinitions/transform
- Production
https://api.corporate-data-league.ch/transformation-api/public/datatransformationdefinitions/transform
curl -i -X POST \
https://idp.cdq.com/_mock/apis/transformation-api/api-v1/public/datatransformationdefinitions/transform \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"inputJson": [
{}
],
"reverse": "true",
"validationSchemaId": "66432427ba96dd27add2ea34",
"dataTransformationDefinition": {
"imports": [
{
"id": "c074b9f3-abf0-4f8e-9a20-74deb6cfa2a4"
}
],
"name": "My DTD",
"direction": "INBOUND",
"type": {
"name": "BUSINESS_PARTNER",
"technicalKey": "BUSINESS_PARTNER"
},
"mappings": [
{
"sourceAttributes": [
"businessPartner.record"
],
"sourceSelections": [
{
"selectionType": "CONCATENATION",
"value": ","
}
],
"targetAttributes": [
"businessPartner.externalId"
],
"targetTransformations": [
{
"constantValue": "constant",
"targetAttributes": [
"businessPartner.externalId"
],
"transformationName": "CAPITALIZE",
"defaultValue": "default",
"transformationType": "CAPITALIZE"
}
],
"ignoredValues": [
"ignored value"
]
}
],
"reverseMappings": [
{
"sourceAttributes": [
"businessPartner.record"
],
"sourceSelections": [
{
"selectionType": "CONCATENATION",
"value": ","
}
],
"targetAttributes": [
"businessPartner.externalId"
],
"targetTransformations": [
{
"constantValue": "constant",
"targetAttributes": [
"businessPartner.externalId"
],
"transformationName": "CAPITALIZE",
"defaultValue": "default",
"transformationType": "CAPITALIZE"
}
],
"ignoredValues": [
"ignored value"
]
}
],
"valueMappings": [
{
"sourceConditions": [
{
"sourceValue": "AU",
"sourceAttribute": "$.identifications[*].country.code",
"sourceRegex": "^GR\\..{1,}"
}
],
"sourceValue": "AE1",
"targetValue": "AE",
"targetAttribute": "$.identifications[*].country.code",
"sourceAttribute": "$.identifications[*].country.code",
"disabled": "false"
}
],
"values": [
{
"sourceValue": "AE1",
"sourceAttribute": "identifications[*].indentificationType.code"
}
]
}
}'{ "resultJson": [ {} ] }
ID of the message transformation which should be applied.
URL of the original message to be transformed.
- Mock server
https://idp.cdq.com/_mock/apis/transformation-api/api-v1/datatransformationdefinitions/transformMessage
- Production SOAP
https://api.corporate-data-league.ch/transformation-api/soap/v1/datatransformationdefinitions/transformMessage
- Production
https://api.corporate-data-league.ch/transformation-api/datatransformationdefinitions/transformMessage
curl -i -X POST \
https://idp.cdq.com/_mock/apis/transformation-api/api-v1/datatransformationdefinitions/transformMessage \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"configurationId": "/sap-odm/v2",
"url": "referencedata/rest/businesspartners/lookup",
"message": {},
"type": "REQUEST"
}'{ "transformedMessage": {} }
- Mock server
https://idp.cdq.com/_mock/apis/transformation-api/api-v1/datatransformationdefinitions/proxyMessage
- Production SOAP
https://api.corporate-data-league.ch/transformation-api/soap/v1/datatransformationdefinitions/proxyMessage
- Production
https://api.corporate-data-league.ch/transformation-api/datatransformationdefinitions/proxyMessage
curl -i -X POST \
https://idp.cdq.com/_mock/apis/transformation-api/api-v1/datatransformationdefinitions/proxyMessage \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Cdq-Forwarded-Path: /api/v1/lookup' \
-H 'Content-Type: application/json' \
-H 'X-Forwarded-Method: GET' \
-H 'X-Message-Transformation-Configuration-Id: c074b9f3-abf0-4f8e-9a20-74deb6cfa2a4'"example"
- Mock server
https://idp.cdq.com/_mock/apis/transformation-api/api-v1/transformation
- Production SOAP
https://api.corporate-data-league.ch/transformation-api/soap/v1/transformation
- Production
https://api.corporate-data-league.ch/transformation-api/transformation
curl -i -X POST \
https://idp.cdq.com/_mock/apis/transformation-api/api-v1/transformation \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"transformationScript": "code",
"contentToTransform": "content"
}'OK
The transformation script can return one string or map of key values. Depending on the return type in the script, the transformationResults will have different structure:
- when a script returns a string, the result array will have one element without key
- when a script returns a map, then the array will have filled the key and values
{ "inputJson": "{...}", "transformationResults": [ { … } ] }