Salesforce Rest API

Salesforce Rest Api



W tym przewodniku omówimy, jak wstawić rekordy do Salesforce za pomocą REST API za pomocą metod POST i PUT http w Workbench. W ramach tego przewodnika omówimy, jak używać Workbencha i pobierać określone rekordy za pomocą sObject, pobierać wiele rekordów z obiektu za pomocą zapytania i pobierać rekordy, pisząc niestandardowe API REST Apex.

Metoda POST

POST to metoda http, która dodaje jeden/wiele rekordów jednocześnie do Salesforce. Rekordy z URI możemy wstawić poprzez niestandardowe API Apex REST lub bezpośrednio z URI.

Niestandardowy zasób odpoczynku w Apex

Aby napisać REST w Apex, musimy wykorzystać pewne adnotacje, które uzyskują dostęp do API REST w twojej klasie Apex.







Adnotacja @HttpPost

Ta metoda jest wywoływana, gdy wysyłany jest HTTP POST, który umożliwia udostępnienie metody Apex jako zasobu REST. Następnie tworzy nowy zasób.



Składnia: @httpPost

Przykład:



Napisz klasę Apex „RestApi_Post_Record.apxc”, która obejmuje metodę REST „POST” w celu wstawienia pól statusu, priorytetu i tematu do obiektu Salesforce „Case”.





  1. Utwórz Post_Method z trzema parametrami: status, priorytet i temat typu string.
  2. Utwórz obiekt „Case”, przekazując te parametry.
  3. Użyj kodu DML wstawiania, aby wstawić rekord do obiektu Salesforce „Case”.
@RestResource(urlMapping='/v56.0/RestApi_Post_Record/')
klasa globalna RestApi_Post_Record{

// REST — metoda wysyłania
@httpPost
global static Post_Method sprawy (Priorytet ciągu, Status ciągu, Temat ciągu){
Sprawa case_obj= nowa Sprawa(Priorytet=priorytet,Status=status,Temat=temat);

// Wstaw plik DML
wstaw case_obj;
zwróć case_obj;
}
}

Identyfikator URI i wynik:

Przejdź do Workbench i przejdź do Eksploratora REST. Podaj następujący identyfikator URI i wykonaj go:



/services/apexrest/v56.0/RestApi_Post_Record/

Określ dane w treści żądania:

{
'Priorytet': 'Wysoki',
'Stan': 'Nowy',
„Temat”: „Problem z telefonem komórkowym”
}

Otwórz rekord w Salesforce (przejdź do obiektu „Case” z poziomu App Launcher).

Wstaw pojedynczy rekord bezpośrednio z URI

Przejdź do Eksploratora REST na karcie „Narzędzia” i podaj następujący identyfikator URI oraz podaj ten rekord w treści żądania:

/services/data/v56.0/obiekty/Sprawa/

Treść żądania:

{
'Priorytet': 'Średni',
'Stan': 'Nowy',
„Temat”: „Zespoły firmy Microsoft — nie nadchodzą”
}

Przejdź do zakładki Salesforce „Sprawy” i przejrzyj rekord.

Wstaw wiele rekordów bezpośrednio z URI

Jeśli chcesz wstawić wiele rekordów jednocześnie, musimy określić identyfikator URI w następujący sposób: /services/data/v56.0/composite/tree/sObject

Organ wnioskujący przechowuje akta w następującym formacie:

'rekordy' :[{
'atrybuty' : {'typ' : 'Obiekt', 'referenceId' : 'reference1'},
wartość pola,
...
...
},{
'atrybuty' : {'typ' : 'Obiekt', 'referenceId' : 'reference1'},
wartość pola,
...
...
}]
}

Wstawmy dwa rekordy do obiektu Salesforce „Case”.

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

Treść żądania:

{
'rekordy' :[{
'atrybuty' : {'type' : 'Case', 'referenceId' : 'reference1'},
'Priorytet': 'Wysoki',
'Stan': 'Nowy',
'Temat': 'Problem projektowy z wirnikiem mechanicznym',
„Typ”: „Elektryczny”
},{
'atrybuty' : {'type' : 'Case', 'referenceId' : 'reference2'},
'Priorytet': 'Niski',
'Stan': 'Nowy',
'Subject':'Uruchamianie generatora po awarii elektrycznej' ,
„Typ”: „Elektryczny”
}]
}

Do Salesforce wstawiane są dwa rekordy o numerach sprawy 00001038 i 00001039.

Metoda PUT

Jak omówiliśmy wcześniej, PUT to metoda http, która służy do tworzenia/aktualizowania rekordów. W tym przewodniku wykorzystamy tę metodę do utworzenia nowego rekordu Salesforce przy użyciu niestandardowego interfejsu API REST.

@httpPut : Ta metoda jest wywoływana, gdy wysyłane jest polecenie HTTP PUT, które umożliwia wyeksponowanie metody Apex jako zasobu REST. Następnie tworzy nowy zasób lub aktualizuje istniejący zasób.

Składnia: @httpPut

Przykład:

Napisz klasę Apex „RestApi_Put_Record.apxc”, która obejmuje metodę REST „PUT” w celu wstawienia pól stanu, priorytetu i opisu do obiektu Salesforce „Case”.

@RestResource(urlMapping='/v56.0/RestApi_Put_Record/')
klasa globalna RestApi_Put_Record{

// REST — metoda umieszczania
@httpPut
global static Case Put_Method(String Priority, String Status, String Temat){
Sprawa case_obj= nowa Sprawa(Priorytet=priorytet,Status=status,Temat=temat);

// Wstaw plik DML
wstaw case_obj;
zwróć case_obj;
}
}

Identyfikator URI i wynik:

Przejdź do Workbench i przejdź do Eksploratora REST. Podaj następujący identyfikator URI i wykonaj go:

/services/apexrest/v56.0/RestApi_Put_Record/

Określ dane w treści żądania:

{
'Priorytet': 'Wysoki',
'Status': 'Zamknięte',
„Subject”: „Potrzebny przewodnik po maszynce do mielenia warzyw”
}

Otwórz rekord w Salesforce (przejdź do obiektu „Case” z poziomu App Launcher).

Wniosek

Teraz możesz wstawiać rekordy do Salesforce za pomocą metod http PUT i POST. Nauczyliśmy się wstawiać rekordy bezpośrednio do Workbencha i używać niestandardowego API REST poprzez klasę Apex. Obiekt Salesforce „Case” został wykorzystany w tym przewodniku jako przykład. Rzeczywista różnica między PUT i POST polega na tym, że POST służy do wstawiania danych, podczas gdy PUT służy do wstawiania/aktualizacji danych. Adnotacja @httpPut jest używana dla metody PUT, a adnotacja @httpPost jest używana dla metody POST.