JSON inserts records into Salesforce

Hi, this is a long snapshot, but I'm trying to insert data into a Sales-Force object via an API call from PHP (Framework Codeigniter). I use the CURL protocol and the record is not inserted, but I also do not receive an error message.

All my connection settings are correct, and I receive the write / update files successfully, but I cannot insert.

public function insert_record($object_name, $field_list=FALSE) { $request = trim($this->instance_url). '/services/data/'.$this->api_version.'/sobjects/'.trim($object_name).'/'; return $this->execute_request($request, FALSE , json_encode($field_list)); } 

Function call:

 $record_to_insert = array("Name__c" => "Ricky Hernadez", "Status__c" => "Single", "Description__c" => "This is a test"); $this->data['results'] =$results = $this->salesforce->insert_record("Online_Participant__c", $record_to_insert); 

this is what the $ results array contains:

 object(stdClass)#24 (2) { ["recentItems"]=> array(1) { [0]=> object(stdClass)#25 (3) { ["attributes"]=> object(stdClass)#26 (2) { ["type"]=> string(21) "Online_Participant__c" ["url"]=> string(70) "/services/data/v22.0/sobjects/Online_Participant__c/a0bi00000027HGbAAM" } ["Id"]=> string(18) "a0bi00000027HGbAAM" ["Name"]=> string(6) "OP0004" } } ["objectDescribe"]=> object(stdClass)#27 (21) { ["name"]=> string(21) "Online_Participant__c" ["label"]=> string(18) "Online Participant" ["keyPrefix"]=> string(3) "a0b" ["labelPlural"]=> string(19) "Online Participants" ["custom"]=> bool(true) ["layoutable"]=> bool(true) ["activateable"]=> bool(false) ["urls"]=> object(stdClass)#28 (3) { ["sobject"]=> string(51) "/services/data/v22.0/sobjects/Online_Participant__c" ["describe"]=> string(60) "/services/data/v22.0/sobjects/Online_Participant__c/describe" ["rowTemplate"]=> string(56) "/services/data/v22.0/sobjects/Online_Participant__c/{ID}" } ["searchable"]=> bool(true) ["deprecatedAndHidden"]=> bool(false) ["createable"]=> bool(true) ["updateable"]=> bool(true) ["deletable"]=> bool(true) ["customSetting"]=> bool(false) ["feedEnabled"]=> bool(false) ["mergeable"]=> bool(false) ["queryable"]=> bool(true) ["replicateable"]=> bool(true) ["retrieveable"]=> bool(true) ["undeletable"]=> bool(true) ["triggerable"]=> bool(true) } } 
+4
source share
2 answers

It seems that you are making a GET request, you need to use POST to create a new entry.

+1
source

I highly recommend you use Force.com PHP Toolkit because you will avoid such problems.

You can download it here: http://wiki.developerforce.com/page/Force.com_Toolkit_for_PHP

Sample code: http://wiki.developerforce.com/page/PHP_Toolkit_20.0_Samples

+1
source

Source: https://habr.com/ru/post/1484579/


All Articles