compasshp / php-salesforce-rest-api
v0.0.1
2023-06-06 19:28 UTC
Requires
- php: >=8.0
- guzzlehttp/guzzle: ^7.0
This package is auto-updated.
Last update: 2024-12-06 22:45:51 UTC
README
Bijesh Shrestha
bjsmasth
bjsmasth@gmail.com
bjsmasth
php rest api
Install
Via Composer
composer require bjsmasth/php-salesforce-rest-api
Getting Started
Setting up a Connected App
- Log into to your Salesforce org
- Click on Setup in the upper right-hand menu
- Under Build click
Create > Apps
- Scroll to the bottom and click
New
under Connected Apps. - Enter the following details for the remote application:
- Connected App Name
- API Name
- Contact Email
- Enable OAuth Settings under the API dropdown
- Callback URL
- Select access scope (If you need a refresh token, specify it here)
- Click Save
After saving, you will now be given a Consumer Key and Consumer Secret. Update your config file with values for consumerKey
and consumerSecret
Setup
Authentication
$options = [ 'grant_type' => 'password', 'client_id' => 'CONSUMERKEY', 'client_secret' => 'CONSUMERSECRET', 'username' => 'SALESFORCE_USERNAME', 'password' => 'SALESFORCE_PASSWORD AND SECURITY_TOKEN' ]; $salesforce = new bjsmasth\Salesforce\Authentication\PasswordAuthentication($options); $salesforce->authenticate(); $access_token = $salesforce->getAccessToken(); $instance_url = $salesforce->getInstanceUrl(); Change Endpoint $salesforce = new bjsmasth\Salesforce\Authentication\PasswordAuthentication($options); $salesforce->setEndpoint('https://test.salesforce.com/'); $salesforce->authenticate(); $access_token = $salesforce->getAccessToken(); $instance_url = $salesforce->getInstanceUrl();
Query
$query = 'SELECT Id,Name FROM ACCOUNT LIMIT 100'; $crud = new \bjsmasth\Salesforce\CRUD(); $crud->query($query);
Create
$data = [ 'Name' => 'some name', ]; $crud->create('Account', $data); #returns id
Update
$new_data = [ 'Name' => 'another name', ]; $crud->update('Account', $id, $new_data); #returns status_code 204
Upsert
$new_data = [ 'Name' => 'another name', ]; $crud->upsert('Account', 'API Name/ Field Name', 'value', $new_data); #returns status_code 204 or 201
Delete
$crud->delete('Account', $id);