Salesforce Rest API

Salesforce Rest Api



V tem priročniku bomo razpravljali o tem, kako vstaviti zapise v Salesforce z REST API prek metod POST in PUT http v Workbench. Kot del tega priročnika bomo razpravljali o tem, kako uporabljati Workbench in pridobiti določene zapise z uporabo sObject, pridobiti več zapisov iz objekta s pomočjo poizvedbe in pridobiti zapise s pisanjem API-ja REST po meri Apex.

Metoda POST

POST je metoda http, ki v Salesforce doda enega/več zapisov hkrati. Zapise z URI-jem lahko vstavimo prek prilagojenega Apex REST API-ja ali neposredno iz URI-ja.

Vir počitka po meri v Apexu

Za pisanje REST v Apexu moramo uporabiti nekaj opomb, ki dostopajo do API-ja REST v vašem razredu Apex.







Opomba @HttpPost

Ta metoda se pokliče, ko je poslan HTTP POST, ki omogoča, da je metoda Apex izpostavljena kot vir REST. Nato ustvari nov vir.



Sintaksa: @httpPost

primer:



Napišite razred Apex »RestApi_Post_Record.apxc«, ki vključuje metodo REST »POST« za vstavljanje polj statusa, prioritete in predmeta v predmet »Case« Salesforce.





  1. Ustvarite Post_Method s tremi parametri: statusom, prioriteto in zadevo vrste niza.
  2. Ustvarite objekt »Case« s posredovanjem teh parametrov.
  3. Uporabite DML za vstavljanje, da vstavite zapis v predmet Salesforce »Case«.
@RestResource(urlMapping='/v56.0/RestApi_Post_Record/')
globalni razred RestApi_Post_Record{

// REST - Metoda objave
@httpPost
global static Case Post_Method(String Priority, String Status,String Subject){
Case case_obj= nov primer(Priority=priority,Status = status,Subject=subject);

// Vstavi DML
vstavi case_obj;
vrni case_obj;
}
}

URI in rezultat:

Pojdite na Workbench in se pomaknite do REST Explorerja. Določite naslednji URI in ga izvedite:



/services/apexrest/v56.0/RestApi_Post_Record/

Navedite podatke v telesu zahteve:

{
'Prednost': 'Visoka',
'Stanje': 'Novo',
'Zadeva': 'Težava z mobilnim telefonom'
}

Odprite zapis v Salesforce (v zaganjalniku aplikacij se pomaknite do predmeta »Case«).

Vstavite en sam zapis neposredno iz URI

Pomaknite se do raziskovalca REST pod zavihkom »Utilities« in podajte naslednji URI ter podajte ta zapis pod telesom zahteve:

/services/data/v56.0/sobjects/Case/

Telo zahteve:

{
'Prednost': 'Srednja',
'Stanje': 'Novo',
'Zadeva': 'Microsoftove ekipe – ne prihajajo'
}

Pojdite na zavihek »Primeri« Salesforce in si oglejte zapis.

Vstavite več zapisov neposredno iz URI

Če želite vstaviti več zapisov hkrati, moramo podati URI na naslednji način: /services/data/v56.0/composite/tree/sObject

Telo zahteve hrani zapise v naslednji obliki:

'zapisi' :[{
'attributes': {'type': 'Object', 'referenceId': 'reference1'},
polje:vrednost,
...
...
},{
'attributes': {'type': 'Object', 'referenceId': 'reference1'},
polje:vrednost,
...
...
}]
}

V objekt Salesforce »Case« vstavimo dva zapisa.

URI: /services/data/v56.0/composite/tree/Case/

Telo zahteve:

{
'zapisi' :[{
'attributes' : {'type' : 'Case', 'referenceId' : 'reference1'},
'Prednost': 'Visoka',
'Stanje': 'Novo',
'Zadeva': 'Programska težava z mehanskim rotorjem',
'Vrsta': 'Elektrika'
},{
'attributes': {'type': 'Case', 'referenceId': 'reference2'},
'Prednost': 'Nizka',
'Stanje': 'Novo',
'Zadeva': 'Zagon generatorja po električni okvari' ,
'Vrsta': 'Elektrika'
}]
}

Dva zapisa sta vstavljena v Salesforce s CaseNumber 00001038 in 00001039.

Metoda PUT

Kot smo že omenili, je PUT metoda http, ki se uporablja za ustvarjanje/posodabljanje zapisov. V tem priročniku uporabljamo to metodo za ustvarjanje novega zapisa Salesforce z uporabo API-ja REST po meri.

@httpPut : Ta metoda se pokliče, ko se pošlje HTTP PUT, ki omogoči, da je metoda Apex izpostavljena kot vir REST. Nato ustvari nov vir ali posodobi obstoječi vir.

Sintaksa: @httpPut

primer:

Napišite razred Apex »RestApi_Put_Record.apxc«, ki vključuje metodo REST »PUT« za vstavljanje polj statusa, prioritete in opisa v predmet »Case« Salesforce.

@RestResource(urlMapping='/v56.0/RestApi_Put_Record/')
globalni razred RestApi_Put_Record{

// REST - Put metoda
@httpPut
global static Case Put_Method(String Priority, String Status,String Subject){
Case case_obj= nov primer(Priority=priority,Status = status,Subject=subject);

// Vstavi DML
vstavi case_obj;
vrni case_obj;
}
}

URI in rezultat:

Pojdite na Workbench in se pomaknite do REST Explorerja. Določite naslednji URI in ga izvedite:

/services/apexrest/v56.0/RestApi_Put_Record/

Navedite podatke v telesu zahteve:

{
'Prednost': 'Visoka',
'Stanje': 'Zaprto',
'Zadeva': 'Potreben je vodnik za mlinček za zelenjavo'
}

Odprite zapis v Salesforce (v zaganjalniku aplikacij se pomaknite do predmeta »Case«).

Zaključek

Zdaj lahko zapise vstavite v Salesforce z metodama http PUT in POST. Naučili smo se, kako vstaviti zapise neposredno v Workbench in uporabiti API REST po meri prek razreda Apex. Objekt Salesforce »Case« je v tem priročniku uporabljen kot primer. Dejanska razlika med PUT in POST je v tem, da se POST uporablja za vstavljanje podatkov, PUT pa za vstavljanje/posodabljanje podatkov. Pripis @httpPut se uporablja za metodo PUT, pripis @httpPost pa za metodo POST.