Salesforce Rest API

Salesforce Rest Api



В това ръководство ще обсъдим как да вмъкнете записите в Salesforce с REST API чрез http методите POST и PUT в Workbench. Като част от това ръководство ще обсъдим как да използваме Workbench и да извличаме конкретни записи с помощта на sObject, да извличаме множество записи от обект с помощта на заявка и да извличаме записите чрез писане на потребителския REST API на Apex.

Метод POST

POST е http метод, който добавя един/множество записи наведнъж в Salesforce. Можем да вмъкнем записите с URI чрез персонализирания Apex REST API или директно от URI.

Персонализиран ресурс за почивка в Apex

За да напишем REST в Apex, трябва да използваме някои анотации, които имат достъп до REST API във вашия Apex клас.







@HttpPost анотация

Този метод се извиква, когато се изпрати HTTP POST, който позволява методът Apex да бъде изложен като REST ресурс. След това създава нов ресурс.



Синтаксис: @httpPost

Пример:



Напишете Apex класа „RestApi_Post_Record.apxc“, който включва метода REST „POST“ за вмъкване на полетата за състояние, приоритет и тема в обекта „Case“ на Salesforce.





  1. Създайте Post_Method с три параметъра: статус, приоритет и тема от тип низ.
  2. Създайте обект „Case“, като подадете тези параметри.
  3. Използвайте DML за вмъкване, за да вмъкнете записа в обекта „Case“ на Salesforce.
@RestResource(urlMapping='/v56.0/RestApi_Post_Record/')
глобален клас RestApi_Post_Record{

// REST - метод за публикуване
@httpPost
глобален статичен случай Post_Method(Приоритет на низ, Статус на низ, Тема на низ){
Case case_obj= new Case(Priority=priority,Status = status,Subject=subject);

// Вмъкване на DML
вмъкнете case_obj;
върне case_obj;
}
}

URI и резултат:

Отидете на Workbench и навигирайте до REST Explorer. Посочете следния URI и го изпълнете:



/services/apexrest/v56.0/RestApi_Post_Record/

Посочете данните в тялото на заявката:

{
'Приоритет': 'Висок',
'Състояние': 'Ново',
'Тема': 'Мобилен проблем'
}

Отворете записа в Salesforce (придвижете се до обекта „Case“ от стартовия панел на приложения).

Вмъкване на единичен запис директно от URI

Отидете до REST Explorer в раздела „Помощни програми“ и посочете следния URI и посочете този запис под тялото на заявката:

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

Тяло на заявката:

{
'Приоритет': 'Среден',
'Състояние': 'Ново',
„Тема“: „Екипи на Microsoft – не се появяват“
}

Отидете в раздела „Случаи“ на Salesforce и прегледайте записа.

Вмъкване на множество записи директно от URI

Ако искате да вмъкнете няколко записа наведнъж, трябва да посочим URI, както следва: /services/data/v56.0/composite/tree/sObject

Основният текст на искането съхранява записите в следния формат:

'записи' :[{
'atributes' : {'type' : 'Object', 'referenceId' : 'reference1'},
поле:стойност,
...
...
},{
'atributes' : {'type' : 'Object', 'referenceId' : 'reference1'},
поле:стойност,
...
...
}]
}

Нека вмъкнем два записа в обекта „Case“ на Salesforce.

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

Тяло на заявката:

{
'записи' :[{
'atributes': {'type': 'Case', 'referenceId': 'reference1'},
'Приоритет': 'Висок',
'Състояние': 'Ново',
'Тема': 'Проблем с дизайна на механичен ротор',
'Тип': 'Електрически'
},{
'atributes' : {'type' : 'Case', 'referenceId' : 'reference2'},
'Приоритет': 'Нисък',
'Състояние': 'Ново',
'Тема': 'Стартиране на генератор след електрическа повреда' ,
'Тип': 'Електрически'
}]
}

Два записа се вмъкват в Salesforce с CaseNumber 00001038 и 00001039.

Метод PUT

Както обсъдихме по-рано, PUT е http метод, който се използва за създаване/актуализиране на записите. В това ръководство използваме този метод за създаване на нов запис в Salesforce с помощта на персонализирания REST API.

@httpPut : Този метод се извиква, когато се изпраща HTTP PUT, което позволява методът Apex да бъде изложен като REST ресурс. След това създава нов ресурс или актуализира съществуващия ресурс.

Синтаксис: @httpPut

Пример:

Напишете Apex класа “RestApi_Put_Record.apxc”, който включва метода REST “PUT” за вмъкване на полетата за състояние, приоритет и описание в обекта “Case” на Salesforce.

@RestResource(urlMapping='/v56.0/RestApi_Put_Record/')
глобален клас RestApi_Put_Record{

// REST - Put Method
@httpPut
глобален статичен Case Put_Method(String Priority, String Status,String Subject){
Case case_obj= new Case(Priority=priority,Status = status,Subject=subject);

// Вмъкване на DML
вмъкнете case_obj;
върне case_obj;
}
}

URI и резултат:

Отидете на Workbench и навигирайте до REST Explorer. Посочете следния URI и го изпълнете:

/services/apexrest/v56.0/RestApi_Put_Record/

Посочете данните в тялото на заявката:

{
'Приоритет': 'Висок',
'Състояние': 'Затворено',
„Тема“: „Необходимо е ръководство за мелница на зеленчуци“
}

Отворете записа в Salesforce (придвижете се до обекта „Case“ от стартовия панел на приложения).

Заключение

Сега можете да вмъкнете записите в Salesforce с помощта на методите http PUT и POST. Научихме как да вмъкваме записите директно в Workbench и да използваме персонализирания REST API чрез класа Apex. Обектът „Case“ на Salesforce се използва в това ръководство като пример. Действителната разлика между PUT и POST е, че POST се използва за вмъкване на данните, докато PUT се използва за вмъкване/актуализиране на данните. Анотацията @httpPut се използва за метода PUT, а анотацията @httpPost се използва за метода POST.