Skip to main content
added 2759 characters in body; edited tags; edited title
Source Link

How to use third party rest api json data to create accountOpportunity in salesforce?

I am into an integration projecthave JSON something like below and it's newmy code is written for an update as well as an insert but if I'm trying to me, till nowinsert another set of records it will only go to update since I didn't find any example please do needfuliterating only OppMap which is nothing but Opportunity Records. My Scenario what I want is when I try to hit the third party API onceinsert another set some values match with project id needs to update and the response comes Iremaining value need to create an accountinsert in salesforce. please provide some samples.Opportunity

[
   {
      "OWNER_TYPE":"Government",
      "ProjectId":"001"
   },
   {
      "OWNER_TYPE":"Government",
      "ProjectId":"002"
   }
]
    List<object> arr =(List<object>)JSON.deserializeUntyped(response.getBody()); 
List<Opportunity> opList = new List<Opportunity>();
List<Opportunity> opListUpd = new List<Opportunity>();
Map<String,Object> mp_StrObj = new Map<String,Object>();
Map<String,Object> newMap = new Map<String,Object>();

for(object obj :arr)
{
    mp_StrObj = (Map<string,Object>)obj;
    newMap.put(string.valueof(mp_StrObj.get('ProjectId')),mp_StrObj);
    
}
system.debug('val'+newMap); 
    System.debug('mp_StrObj'+mp_StrObj);
Map<String, Opportunity> OppMap = new Map<String, Opportunity>([SELECT Id,RecordTypeId,Name,CloseDate,StageName,ProjectId FROM Opportunity WHERE ProjectId IN :newMap.keySet()]);

for (String eachIdFromMap : newMap.keyset())
{
    System.debug('clsDataMap'+newMap);
    System.debug('e'+eachIdFromMap);
    System.debug('OppMap'+OppMap);
    if(!OppMap.isEmpty()){
        for(Opportunity le:OppMap.values())
        {
            if(!OppMap.isEmpty() && le.ProjectId== eachIdFromMap)
            {
                System.debug('update'); 
                
                le.CloseDate=Date.today();
                le.RecordTypeId='01228000001HoFFAA0';
                le.Name='Testupd'+String.valueof(mp_StrObj.get('PROJECTID'));
                le.StageName='S0 - Prospecting';
                opListUpd.add(le);
            }
            else
            {
              Opportunity Opp = new Opportunity();
              Opp.CloseDate=Date.today();
               Opp.Name='Test'+String.valueof(mp_StrObj.get('PROJECTID'));
              Opp.StageName='S0 - Prospecting';
               opList.add(Opp);
             }
        }
    }
    if(OppMap.isEmpty())
    {
        System.debug('insert');
    Opportunity Opp = new Opportunity();
    Opp.CloseDate=Date.today();
    Opp.Name='Test'+String.valueof(mp_StrObj.get('PROJECTID'));
    Opp.StageName='S0 - Prospecting';
    opList.add(Opp);
    }
    System.debug('opListUpd'+opListUpd);
    System.debug('opList'+opList);
    if(opListUpd.size()>0)
    {
        update opListUpd;
    }
    if (opList.size()>0){
        insert opList;
    }

How to use third party rest api json data to create account in salesforce?

I am into an integration project and it's new to me, till now I didn't find any example please do needful. My Scenario is to hit the third party API once the response comes I need to create an account in salesforce. please provide some samples.

How to use third party rest api json data to create Opportunity in salesforce?

I have JSON something like below and my code is written for an update as well as an insert but if I'm trying to insert another set of records it will only go to update since I iterating only OppMap which is nothing but Opportunity Records. what I want is when I try to insert another set some values match with project id needs to update and the remaining value need to insert in Opportunity

[
   {
      "OWNER_TYPE":"Government",
      "ProjectId":"001"
   },
   {
      "OWNER_TYPE":"Government",
      "ProjectId":"002"
   }
]
    List<object> arr =(List<object>)JSON.deserializeUntyped(response.getBody()); 
List<Opportunity> opList = new List<Opportunity>();
List<Opportunity> opListUpd = new List<Opportunity>();
Map<String,Object> mp_StrObj = new Map<String,Object>();
Map<String,Object> newMap = new Map<String,Object>();

for(object obj :arr)
{
    mp_StrObj = (Map<string,Object>)obj;
    newMap.put(string.valueof(mp_StrObj.get('ProjectId')),mp_StrObj);
    
}
system.debug('val'+newMap); 
    System.debug('mp_StrObj'+mp_StrObj);
Map<String, Opportunity> OppMap = new Map<String, Opportunity>([SELECT Id,RecordTypeId,Name,CloseDate,StageName,ProjectId FROM Opportunity WHERE ProjectId IN :newMap.keySet()]);

for (String eachIdFromMap : newMap.keyset())
{
    System.debug('clsDataMap'+newMap);
    System.debug('e'+eachIdFromMap);
    System.debug('OppMap'+OppMap);
    if(!OppMap.isEmpty()){
        for(Opportunity le:OppMap.values())
        {
            if(!OppMap.isEmpty() && le.ProjectId== eachIdFromMap)
            {
                System.debug('update'); 
                
                le.CloseDate=Date.today();
                le.RecordTypeId='01228000001HoFFAA0';
                le.Name='Testupd'+String.valueof(mp_StrObj.get('PROJECTID'));
                le.StageName='S0 - Prospecting';
                opListUpd.add(le);
            }
            else
            {
              Opportunity Opp = new Opportunity();
              Opp.CloseDate=Date.today();
               Opp.Name='Test'+String.valueof(mp_StrObj.get('PROJECTID'));
              Opp.StageName='S0 - Prospecting';
               opList.add(Opp);
             }
        }
    }
    if(OppMap.isEmpty())
    {
        System.debug('insert');
    Opportunity Opp = new Opportunity();
    Opp.CloseDate=Date.today();
    Opp.Name='Test'+String.valueof(mp_StrObj.get('PROJECTID'));
    Opp.StageName='S0 - Prospecting';
    opList.add(Opp);
    }
    System.debug('opListUpd'+opListUpd);
    System.debug('opList'+opList);
    if(opListUpd.size()>0)
    {
        update opListUpd;
    }
    if (opList.size()>0){
        insert opList;
    }
Source Link

How to use third party rest api json data to create account in salesforce?

I am into an integration project and it's new to me, till now I didn't find any example please do needful. My Scenario is to hit the third party API once the response comes I need to create an account in salesforce. please provide some samples.