stevenmaguire / oauth2-salesforce
Salesforce OAuth 2.0 Client Provider for The PHP League OAuth2-Client
Installs: 1 205 081
Dependents: 4
Suggesters: 0
Security: 0
Stars: 31
Watchers: 5
Forks: 13
Open Issues: 6
Requires
- league/oauth2-client: ^2.0
Requires (Dev)
- mockery/mockery: ~0.9
- phpunit/phpunit: ~4.0
- squizlabs/php_codesniffer: ~2.0
README
This package provides Salesforce OAuth 2.0 support for the PHP League's OAuth 2.0 Client.
Installation
To install, use composer:
composer require stevenmaguire/oauth2-salesforce
Usage
Usage is the same as The League's OAuth client, using \Stevenmaguire\OAuth2\Client\Provider\Salesforce
as the provider.
Authorization Code Flow
$provider = new Stevenmaguire\OAuth2\Client\Provider\Salesforce([ 'clientId' => '{salesforce-client-id}', 'clientSecret' => '{salesforce-client-secret}', 'redirectUri' => 'https://example.com/callback-url', 'domain' => '{custom-salesforce-domain}' // optional, defaults to https://login.salesforce.com ]);
For further usage of this package please refer to the core package documentation on "Authorization Code Grant".
Refreshing a Token
$provider = new Stevenmaguire\OAuth2\Client\Provider\Salesforce([ 'clientId' => '{salesforce-client-id}', 'clientSecret' => '{salesforce-client-secret}', 'redirectUri' => 'https://example.com/callback-url' ]); $existingAccessToken = getAccessTokenFromYourDataStore(); if ($existingAccessToken->hasExpired()) { $newAccessToken = $provider->getAccessToken('refresh_token', [ 'refresh_token' => $existingAccessToken->getRefreshToken() ]); // Purge old access token and store new access token to your data store. }
Using a custom Salesforce domain
$provider->setDomain('https://foo-bar.salesforce.com');
For further usage of this package please refer to the core package documentation on "Refreshing a Token".
Testing
$ ./vendor/bin/phpunit
Contributing
Please see CONTRIBUTING for details.
Credits
License
The MIT License (MIT). Please see License File for more information.