Salesforce Rest API

Salesforce Rest Api



V tejto príručke budeme diskutovať o tom, ako vložiť záznamy do Salesforce s REST API prostredníctvom metód POST a PUT http vo Workbench. Ako súčasť tejto príručky budeme diskutovať o tom, ako používať Workbench a získavať konkrétne záznamy pomocou sObject, získavať viacero záznamov z objektu pomocou dotazu a získavať záznamy napísaním vlastného REST API Apex.

Metóda POST

POST je metóda http, ktorá do Salesforce pridáva jeden/viacero záznamov naraz. Záznamy s URI môžeme vložiť cez vlastné Apex REST API alebo priamo z URI.

Vlastný oddychový zdroj v Apex

Ak chcete napísať REST v Apex, musíme použiť niektoré anotácie, ktoré pristupujú k REST API vo vašej triede Apex.







@HttpPost Anotácia

Táto metóda sa volá, keď sa odošle HTTP POST, čo umožňuje, aby bola metóda Apex vystavená ako prostriedok REST. Potom vytvorí nový zdroj.



Syntax: @httpPost

Príklad:



Napíšte triedu Apex „RestApi_Post_Record.apxc“, ktorá zahŕňa metódu REST „POST“ na vloženie polí stavu, priority a predmetu do objektu Salesforce „Case“.





  1. Vytvorte Post_Method s tromi parametrami: stav, priorita a predmet typu reťazca.
  2. Vytvorte objekt „Case“ zadaním týchto parametrov.
  3. Použite insert DML na vloženie záznamu do objektu Salesforce „Case“.
@RestResource(urlMapping='/v56.0/RestApi_Post_Record/')
globálna trieda RestApi_Post_Record{

// REST - Post Method
@httpPost
global static Case Post_Method(Priorita reťazca, Stav reťazca, Predmet reťazca){
Case case_obj= new Case(Priorita=priorita,Stav = stav,Predmet=predmet);

// Vložte DML
vložiť case_obj;
return case_obj;
}
}

URI a výsledok:

Prejdite na Workbench a prejdite do Prieskumníka REST. Zadajte nasledujúci URI a spustite ho:



/services/apexrest/v56.0/RestApi_Post_Record/

Zadajte údaje v tele žiadosti:

{
'Priorita':'Vysoká',
'Stav':'Nové',
'Predmet':'Problém s mobilom'
}

Otvorte záznam v Salesforce (prejdite na objekt „Case“ zo spúšťača aplikácií).

Vložte jeden záznam priamo z URI

Prejdite do REST Explorer na karte „Utilities“ a zadajte nasledujúci URI a zadajte tento záznam v časti Telo požiadavky:

/services/data/v56.0/objects/Case/

Telo žiadosti:

{
'Priorita':'Stredná',
'Stav':'Nové',
'Predmet':'Tímy Microsoftu - neprichádza'
}

Prejdite na kartu „Prípady“ v službe Salesforce a zobrazte záznam.

Vložiť viacero záznamov priamo z URI

Ak chcete vložiť viacero záznamov naraz, musíme zadať URI takto: /services/data/v56.0/composite/tree/sObject

Dožadujúci orgán uchováva záznamy v tomto formáte:

'záznamy' :[{
'attributes' : {'type' : 'Object', 'referenceId' : 'reference1'},
pole:hodnota,
...
...
},{
'attributes' : {'type' : 'Object', 'referenceId' : 'reference1'},
pole:hodnota,
...
...
}]
}

Vložme dva záznamy do objektu Salesforce „Case“.

Identifikátor URI: /services/data/v56.0/composite/tree/Case/

Telo žiadosti:

{
'záznamy' :[{
'attributes' : {'type' : 'Case', 'referenceId' : 'reference1'},
'Priorita':'Vysoká',
'Stav':'Nové',
'Predmet':'Problém s dizajnom mechanického rotora',
'Typ':'Elektrický'
},{
'attributes' : {'type' : 'Case', 'referenceId' : 'reference2'},
'Priorita':'Nízka',
'Stav':'Nové',
'Predmet':'Spustenie generátora po elektrickom výpadku' ,
'Typ':'Elektrický'
}]
}

Do Salesforce sa vložia dva záznamy s CaseNumber 00001038 a 00001039.

Metóda PUT

Ako sme už diskutovali, PUT je metóda http, ktorá sa používa na vytváranie/aktualizáciu záznamov. V tejto príručke používame túto metódu na vytvorenie nového záznamu Salesforce pomocou vlastného rozhrania REST API.

@httpPut : Táto metóda sa volá, keď sa odošle HTTP PUT, čo umožňuje, aby bola metóda Apex vystavená ako prostriedok REST. Potom vytvorí nový zdroj alebo aktualizuje existujúci zdroj.

Syntax: @httpPut

Príklad:

Napíšte triedu Apex „RestApi_Put_Record.apxc“, ktorá zahŕňa metódu REST „PUT“ na vloženie polí stavu, priority a popisu do objektu Salesforce „Case“.

@RestResource(urlMapping='/v56.0/RestApi_Put_Record/')
globálna trieda RestApi_Put_Record{

// REST - Put Method
@httpPut
global static Case Put_Method(Priorita reťazca, Stav reťazca, Predmet reťazca){
Case case_obj= new Case(Priorita=priorita,Stav = stav,Predmet=predmet);

// Vložte DML
vložiť case_obj;
return case_obj;
}
}

URI a výsledok:

Prejdite na Workbench a prejdite na REST Explorer. Zadajte nasledujúci URI a spustite ho:

/services/apexrest/v56.0/RestApi_Put_Record/

Zadajte údaje v tele žiadosti:

{
'Priorita':'Vysoká',
'Stav':'Zatvorené',
'Predmet':'Potrebný sprievodca mlynčekom na zeleninu'
}

Otvorte záznam v Salesforce (prejdite na objekt „Case“ zo spúšťača aplikácií).

Záver

Teraz môžete vkladať záznamy do Salesforce pomocou metód http PUT a POST. Naučili sme sa vkladať záznamy priamo do Workbench a používať vlastné REST API cez triedu Apex. Objekt Salesforce „Case“ sa v tejto príručke používa ako príklad. Skutočný rozdiel medzi PUT a POST je v tom, že POST sa používa na vkladanie údajov, zatiaľ čo PUT sa používa na vkladanie/aktualizáciu údajov. Anotácia @httpPut sa používa pre metódu PUT a anotácia @httpPost sa používa pre metódu POST.