Gaukite įrašus naudodami „Rest“ API sistemoje „Salesforce“.

Gaukite Irasus Naudodami Rest Api Sistemoje Salesforce



Šiame vadove aptarsime, kaip gauti Salesforce įrašus naudojant REST API per Workbench sistemoje Salesforce. Šiame vadove aptarsime, kaip naudoti „Workbench“, gauti konkrečius įrašus naudojant „sObject“ ir gauti kelis įrašus iš objekto naudojant užklausą ir gauti įrašus parašydami „Apex“ tinkintą REST API. Demonstravimui naudosime „Salesforce Standard Case“ objektą. Nereikia kurti jokio atvejo įrašo „Salesforce“ vidinėje programoje. Naudojame esamą standartinį atvejo įrašą, kurį pateikia „Salesforce“.

Pristatome Workbench

Workbench nėra oficialus Salesforce.com produktas. Tačiau mes naudosime „Salesforce“ duomenų apdorojimo operacijoms, pvz., pasirinkimui, įterpimui, įtraukimui, atnaujinimui ir ištrynimui atlikti, tiesiog prisijungę prie „Salesforce“ paskyros (palaikoma ir „Sandbox“, ir „Production“). Tai yra oficiali svetainė, skirta prisijungti prie „Workbench“ su „Salesforce“: https://workbench.developerforce.com/login.php .

Nuo šiol laikykite tik esamą API versiją ir spustelėkite mygtuką „Prisijungti naudojant Salesforce“.







Mums reikia REST Explorer. Eikite į skirtuką „Komunalinės paslaugos“ ir spustelėkite „REST Explorer“.







Pamatysite vartotojo sąsają, kaip ir toliau esančioje iliustracijoje. Turime pasirinkti GET, kad gautume įrašus iš „Salesforce“ visame šiame vadove. Turime nurodyti URI, kuris gauna „Salesforce“ įrašus, ir spustelėkite mygtuką „Vykdyti“.



Gaukite konkretų įrašą naudodami „Salesforce“ ID

Remdamiesi „Salesforce“ įrašo ID, galime gauti visą „Salesforce“ įrašą. Turime nustatyti URI taip:

/ paslaugos / duomenis / v56.0 / subjektai / objectAPINname / id

Čia „objectAPIName“ yra „Salesforce“ standartinis / tinkintas objektas, o „id“ nurodo „Salesforce“ ID.

Grąžinti:

Gausite HTTP/1.1 200 OK neapdorotą atsakymą JSON formatu, kaip nurodyta toliau:

{
'atributai' : {
'tipas' :
'url' :
} ,
'laukas' : vertė,
...
}

Pavyzdys:

Šiame pavyzdyje gauname 5005i00000W4GM5AAN bylos įrašą.

TIPAS: / paslaugos / duomenis / v56.0 / subjektai / Byla / 5005i00000W4GM5AAN

Rezultatas:

Matome, kad atsakymas generuojamas JSON formatu.

Rezultatus taip pat galime peržiūrėti tiesiogiai iš čia:

Gaukite kelis įrašus naudodami užklausą

Atėjo laikas gauti kelis įrašus iš „Salesforce“ objekto. Anksčiau objektus nurodydavome URI. Čia turime nurodyti užklausą, kuri užklausą paima kaip parametrą.

URI: paslaugos / duomenis / v57.0 / užklausą / ? q =PASIRINKITE+laukas1,laukas2,....+iš+ObjectAPINname

Norėdami sujungti raktinius žodžius užklausoje, turime naudoti „+“ kaip skirtuką. Jis grąžina bendrą dydį ir įrašo į aplanką. Kiekvieno įrašo aplanko pavadinimas yra [1 punktas],… [punktas n].

1 pavyzdys:
Grąžinkime įrašus, kuriuose yra CaseNumber, būsena, prioritetas ir aprašas iš objekto Case.

/ paslaugos / duomenis / v57.0 / užklausą / ? q =PASIRINKITE+Atvejo numeris,Būsena,Prioritetas,Aprašymas+iš+Atvejis

Rezultatas:

Spustelėję „Išplėsti viską“, pamatysite visus įrašus su atributais ir reikšmėmis.

Leiskite parodyti pirmąjį ir paskutinį įrašą:

2 pavyzdys:
Grąžinkime tik tris įrašus su tais pačiais laukais, kaip matyti pirmame pavyzdyje.

/ paslaugos / duomenis / v57.0 / užklausą / ? q =PASIRINKITE+Atvejo numeris,Būsena,Prioritetas,Aprašas+nuo+atvejo+riba+ 2

Rezultatas:
Pirmieji du įrašai, esantys objekte Case, grąžinami.

3 pavyzdys:
Užklausoje, parenkančioje įrašus, kurių būsena „Naujas“, nurodykime sąlygą WHERE.

/ paslaugos / duomenis / v57.0 / užklausą / ? q =PASIRINKITE+Atvejo numeris,Būsena,Prioritetas,Aprašas+iš+atvejo+kur+ Būsena = 'Naujas'

Rezultatas:

Yra penki įrašai, kurių būsena yra „Naujas“.

Pasirinktinis poilsio šaltinis „Apex“.

Galime naudoti „Salesforce Apex“, kuri grąžina įrašą iš „Salesforce“ objekto, nurodydami URI „Workbench“. Norėdami parašyti REST „Apex“, turime naudoti kai kuriuos komentarus, kurie pasiekia jūsų „Apex“ klasės REST API. Įsitikinkite, kad mūsų Apex klasė turi būti visuotinai statinė.

1. @RestResource anotacija

Ši anotacija naudojama norint įjungti, kuri „Apex“ klasę atskleidžia kaip REST šaltinį. UrlMapping naudojamas kaip parametras, naudojamas URI rasti Workbench.

Sintaksė: @RestResource(urlMapping='/Version/ApexClassName/')

„Versija“ yra jūsų „Workbench“ versija, pvz., V56.0, o „ApexClassName“ yra jūsų „Apex“ klasė, kurioje naudojami „Rest“ API ištekliai.

2. @HttpGet anotacija

Ši anotacija naudojama norint įjungti, kuri „Apex“ klasę atskleidžia kaip REST šaltinį. Jis iškviečiamas, kai serveriui siunčiama HTTP GET užklausa ir grąžinamas nurodytas šaltinis.

Sintaksė: @httpGet

1 pavyzdys: vienas parametras

Parašykite 'RestApi_Get_Record.apxc' Apex klasę, kuri apima 'Rest Get' metodą, kad grąžintumėte ID, CaseNumber, būseną, prioritetą ir kilmę iš atvejo objekto.

@ RestResource ( urlMapping = „/v56.0/RestApi_Get_Record/“ )
pasaulinė klasė RestApi_Get_Record {

// REST – gaukite metodą
@ httpGauti
global static Case getCaseDetails ( ) {

// Sukurti objektą dėl Bylos objektas
Case_obj = naujas atvejis ( ) ;
Žemėlapis < Styga, styga > paramsMap = RestContext.request.params;

// Gauti atvejis id
String caseid = paramsMap.get ( 'input_id' ) ;

// SOQL užklausa, kuri bus grąžinti id ,Bylos numeris,Būsena,Prioritetas,Kilmė iš bylos iš
// bylos objektas
case_obj = [ pasirinkite id ,Atvejo numeris,Būsena,Prioritetas,Kilmė iš atvejo, kur Id =:caseid ] ;
grąžinti case_obj;
}
}

URI ir rezultatas:

Eikite į Workbench ir eikite į REST Explorer. Perduokite ID kaip 5002t00000Pdzr2AAB į input_id parametrą.

/ paslaugos / viršūnė / v56.0 / RestApi_Get_Record / ? įvesties_id =5002t00000Pdzr2AAB

Paaiškinimas:

  • Sukurkite objektą „case_obj“ atvejui.
  • Gaukite parametrus naudodami RestContext.request.params.
  • Gaukite atvejo ID iš parametro input_id ir išsaugokite jį kintamajame caseid.
  • Parašykite SOQL užklausą, kuri grąžina ID, CaseNumber, būseną, prioritetą, kilmę iš atvejo iš „caseid“ atvejo objekto Case.
  • Grąžinkite atvejo objektą (case_obj).

2 pavyzdys: keli parametrai

Naudokite ankstesnę „Apex“ klasę ir gaukite „Status“ parametrą kartu su ID. Nurodykite šiuos du parametrus „Workbench“ URI, atskirtą „&“.

@ RestResource ( urlMapping = „/v56.0/RestApi_Get_Record/“ )
pasaulinė klasė RestApi_Get_Record {

// REST – gaukite metodą
@ httpGauti
global static Case getCaseDetails ( ) {

// Sukurti objektą dėl Bylos objektas
Case_obj = naujas atvejis ( ) ;
Žemėlapis < Styga, styga > id_param = RestContext.request.params;
Žemėlapis < Styga, styga > status_param = RestContext.request.params;

// Gaukite id_param į case_id
Eilutė case_id = id_param.get ( 'input_id' ) ;
// Įveskite status_param į case_status
Eilutė case_status =status_param.get ( 'status' ) ;

case_obj = [ pasirinkite id ,CaseNumber,Būsena,Prioritetas,Kilmė iš atvejo, kur Id =:atvejo_id ir Būsena =:atvejo_būsena ] ;
grąžinti case_obj;
}
}

URI ir rezultatas:

Eikite į Workbench ir eikite į REST Explorer. URI nurodykite input_id kaip 5002t00000PdzqwAAB ir būseną kaip „Uždaryta“.

/ paslaugos / viršūnė / v56.0 / RestApi_Get_Record / ? įvesties_id =5002t00000PdzqwAAB & statusą =Uždaryta

Išvada

Aptarėme tris Salesforce įrašų gavimo per Salesforce REST API, naudojant Workbench, scenarijus. Norėdami grąžinti konkretų įrašą, turime nurodyti sObject, perduodant ID kaip parametrą URI. Panašiai perduodame užklausos parametrus, kad gautume konkrečius įrašus. Naudodami „Apex“, galime sukurti savo „Gauti“ metodą, kad pasirinktume įrašą pagal vieną / kelis parametrus.