Expand my Community achievements bar.

SOLVED

ingest partly data using http api connector

Avatar

Level 3

hi all

can i ingest only selected fields for the schema using the http api source ?

example  schema  :

clientid (primary id) 

firstName:string

balance : int

so in the initial ingestion  from the API  i have ingested one record with the mapper  

3333,joe,400 

now i need to update the balance only 

so i posted 3333,500.  using the same source api 

what happened  is that the "joe" disappear from the profile...

 

how can i handle it better ? this is just short example , in the real scenario i have hundred of fields  that i don't what to pass since they haven not changed 

Topics

Topics help categorize Community content and increase your ability to discover relevant content.

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

Hello 

 

When writing data to a record data set only the last data ingested into the data will appear upon profile.

 

With the above scenario you are ingesting two /POST commands.

         id, name, balance

post1 3333,joe,400 

post2   3333, no value provided,500 

 

The result of this entry upon profile will only contain id of 333 and balance of 500 as the name value has been updated with a value not present.

 

To keep the name value present between payload 1 and payload 2 you will need to enable upsert for the dataSet which data is being inserted.  

 

https://experienceleague.adobe.com/docs/experience-platform/data-prep/upserts.html?lang=en

 

View solution in original post

3 Replies

Avatar

Level 3

Hi nshani1,

As per above scenario at dataset level you are able to see the two records ingested
1st record - 3333,joe,400 and
2nd record - 3333,500 

but at profile level you can able to see - 3333,joe,500

So at profile level attribute data is overwrite so "joe" is not disappear from the profile

I would suggest try to do small POC in local sandbox so you understand.

 

Regards,
Sandip 

Avatar

Correct answer by
Community Advisor

Hello 

 

When writing data to a record data set only the last data ingested into the data will appear upon profile.

 

With the above scenario you are ingesting two /POST commands.

         id, name, balance

post1 3333,joe,400 

post2   3333, no value provided,500 

 

The result of this entry upon profile will only contain id of 333 and balance of 500 as the name value has been updated with a value not present.

 

To keep the name value present between payload 1 and payload 2 you will need to enable upsert for the dataSet which data is being inserted.  

 

https://experienceleague.adobe.com/docs/experience-platform/data-prep/upserts.html?lang=en

 

Avatar

Administrator

@nirshani Did you find the suggestion solution helpful? It would be great if you can  mark the answer as correct for posterity. If you have found out solution yourself, share it with wider audience in the community.