Thank you both! You validated that my approach was correct. I double checked my code, and my code was dropping the crosswalks before making the API call. It works now
Original Message:
Sent: 06-22-2023 07:00
From: Ashish Rawat
Subject: How to correctly set the crosswalk for a cumulative entity update API call
If crosswalk 2 doesn't exist already then you have to use the concept of dataprovider in order to add a new crosswalk to the existing entity.
This will be an insert operation rather than update. here is an example of data provider crosswalk
"crosswalks": [
{
"type": "configuration/sources/CrosswalkType1",
"value": "ID1",
"contributorProvider": true,
"dataProvider": false,
"sourceTable": "HCP"
}, {
"type": "configuration/sources/CrosswalkType2",
"value": "ID2",
"contributorProvider": false,
"dataProvider": true,
"sourceTable": "HCP"
}
]
If Crosswalk2 two already exist then, it could be a syntax issue, here is an example
[{
"type": "UPDATE_ATTRIBUTE",
"uri": "<<URI of existing value>>",
"newValue": [
{
"value": "<<New Value>>"
}
],
"crosswalk": {
"type": "configuration/sources/CrosswalkType2",
"value": "ID2",
"sourceTable": "HCP"
}
}]
------------------------------
Ashish Rawat
Sr. Manager
Fresh Gravity
Bangalore
Original Message:
Sent: 06-21-2023 16:48
From: Joseph Hoppe
Subject: How to correctly set the crosswalk for a cumulative entity update API call
I create `entity1` providing `crosswalkType1` with `crosswalkValue1` by using the `Create Entities` API. If I go to the Reltio website and go to the entity > `Sources` , I can see, as expected, that the data source for the attributes I provided is `crosswalkType1`.
I then want to update attributes on the entity, so I call the `cumulative entity update API` to insert attributes. This change is coming from a different source system, so I provide:
"crosswalk": { "type": "configuration/sources/crosswalkType2", "value": "crosswalkValue2" }
I can see on the Reltio website that the values provided by cumulative entity update have won survivorship. But when I hover over the values, the source system states that the data is coming from `Reltio` as opposed to `crosswalkType2`.
How can I make the cumulative entity update API and specify that these attributes are coming from a different, specific source system?
When calling the Get Entities by URI API, it appears as though Reltio has added a crosswalk that these changes have come from the Source System Reltio
"crosswalks":{
...
{
"uri": "entities/04w3O6V/crosswalks/Qt4kk7n",
"type": "configuration/sources/Reltio",
"value": "04w3O6V",
"reltioLoadDate": "2023-06-21T20:32:07.925Z",
"createDate": "2023-06-21T20:32:07.925Z",
"updateDate": "2023-06-21T20:32:07.925Z",
"attributes": [
"entities/04w3O6V/attributes/...",
...
],
"singleAttributeUpdateDates": {
"entities/04w3O6V/attributes/...",
...
}
}
Thanks, Joe
------------------------------
Joseph Hoppe
------------------------------