Hi
we have seen how can we create a record using single rest request using OOB rest feature as below
/services/data/v40.0/sbjects/account
Method - POST
Body - JSON
{
"Name" :"testaccount"
}
Response will return with Id-
{
"Id":"001xxxxxxxxxxx"
}
Now if there is a need to insert data in tree structure in single request then which OOB Rest API need to follow, For this purpose we have Composite Tree API
Account -->contact (need to inset account and Contact in single oob rest req)
Here you go for tree API -
Url- /services/data/v41.0/composite/tree/account(Considering account to be parent node)
Method -Post
Body-
{
"records" :[{
"attributes" : {"type" : "Account", "referenceId" : "ref1"},
"name" : "ACC1",
"phone" : "1234567890",
"website" : "www.testtst.com",
"industry" : "Banking",
"Contacts" : {
"records" : [
{
"attributes" : {"type" : "Contact", "referenceId" : "ref2"},
"lastname" : "TestFname",
"Title" : "TestLName",
"email" : "sample@test.com"
},
{
"attributes" : {"type" : "Contact", "referenceId" : "ref3"},
"lastname" : "TestDLname",
"title" : "Dev",
"email" : "sample@testdev.com",
"Camping_Item__r" :
{
"records" : [{
"attributes" : {"type" : "Camping_Item__c", "referenceId" : "refCamping"},
"name" : "mohicamplist"
}]
}
}]
}
}]
}
Now the above example shows how can we create a tree structure(account-->contact-->campinglist) in single rest call which will take automatic references from parent to child record.
Now what if we need to create record in tree structure with population of references from parent to child dynamically- Then Composite request is solution .
-In this approach a series of rest request executes in a single call
Url-
/services/data/v41.0/composite/
{
"compositeRequest" : [
{
"method" : "POST",
"url" : "/services/data/v38.0/sobjects/Account",
"referenceId" : "refAccount",
"body" : { "Name" : "mohit composit1 Acc" }
},
{
"method" : "POST",
"url" : "/services/data/v38.0/sobjects/Contact",
"referenceId" : "refContact",
"body" : {
"LastName" : "Sample composit Contact1",
"AccountId" : "@{refAccount.id}"
}
},
{
"method" : "POST",
"url" : "/services/data/v38.0/sobjects/Camping_Item__c",
"referenceId" : "campingitem",
"body" : {
"name" : "ampingFnl",
"Account__c" : "@{refAccount.id}",
"Contact__c" : "@{refContact.id}",
}
} ]
}
we have seen how can we create a record using single rest request using OOB rest feature as below
/services/data/v40.0/sbjects/account
Method - POST
Body - JSON
{
"Name" :"testaccount"
}
Response will return with Id-
{
"Id":"001xxxxxxxxxxx"
}
Now if there is a need to insert data in tree structure in single request then which OOB Rest API need to follow, For this purpose we have Composite Tree API
Account -->contact (need to inset account and Contact in single oob rest req)
Here you go for tree API -
Url- /services/data/v41.0/composite/tree/account(Considering account to be parent node)
Method -Post
Body-
{
"records" :[{
"attributes" : {"type" : "Account", "referenceId" : "ref1"},
"name" : "ACC1",
"phone" : "1234567890",
"website" : "www.testtst.com",
"industry" : "Banking",
"Contacts" : {
"records" : [
{
"attributes" : {"type" : "Contact", "referenceId" : "ref2"},
"lastname" : "TestFname",
"Title" : "TestLName",
"email" : "sample@test.com"
},
{
"attributes" : {"type" : "Contact", "referenceId" : "ref3"},
"lastname" : "TestDLname",
"title" : "Dev",
"email" : "sample@testdev.com",
"Camping_Item__r" :
{
"records" : [{
"attributes" : {"type" : "Camping_Item__c", "referenceId" : "refCamping"},
"name" : "mohicamplist"
}]
}
}]
}
}]
}
Now the above example shows how can we create a tree structure(account-->contact-->campinglist) in single rest call which will take automatic references from parent to child record.
Now what if we need to create record in tree structure with population of references from parent to child dynamically- Then Composite request is solution .
-In this approach a series of rest request executes in a single call
Url-
/services/data/v41.0/composite/
{
"compositeRequest" : [
{
"method" : "POST",
"url" : "/services/data/v38.0/sobjects/Account",
"referenceId" : "refAccount",
"body" : { "Name" : "mohit composit1 Acc" }
},
{
"method" : "POST",
"url" : "/services/data/v38.0/sobjects/Contact",
"referenceId" : "refContact",
"body" : {
"LastName" : "Sample composit Contact1",
"AccountId" : "@{refAccount.id}"
}
},
{
"method" : "POST",
"url" : "/services/data/v38.0/sobjects/Camping_Item__c",
"referenceId" : "campingitem",
"body" : {
"name" : "ampingFnl",
"Account__c" : "@{refAccount.id}",
"Contact__c" : "@{refContact.id}",
}
} ]
}
No comments:
Post a Comment