https://github.com/phpnexus/oauth2-freee
Freee OAuth 2.0 support for the PHP League's OAuth 2.0 Client
https://github.com/phpnexus/oauth2-freee
Last synced: 2 months ago
JSON representation
Freee OAuth 2.0 support for the PHP League's OAuth 2.0 Client
- Host: GitHub
- URL: https://github.com/phpnexus/oauth2-freee
- Owner: phpnexus
- License: mit
- Created: 2024-02-05T03:40:26.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-02-06T09:54:48.000Z (over 2 years ago)
- Last Synced: 2025-03-21T16:53:29.669Z (about 1 year ago)
- Language: PHP
- Size: 30.3 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Freee Provider for OAuth 2.0 Client
[](https://github.com/phpnexus/oauth2-freee/actions)
[](https://coveralls.io/github/phpnexus/oauth2-freee?branch=main)
[](https://github.com/phpnexus/oauth2-freee/blob/main/LICENSE)
[](https://packagist.org/packages/phpnexus/oauth2-freee)
[](https://packagist.org/packages/phpnexus/oauth2-freee/stats)
This package provides Freee OAuth 2.0 support for the PHP League's [OAuth 2.0 Client](https://github.com/thephpleague/oauth2-client).
## Installation
To install, use composer:
```
composer require phpnexus/oauth2-freee
```
## Usage
Usage is the same as The League's OAuth client, using `\PhpNexus\OAuth2\Client\Provider\Freee` as the provider.
### Authorization Code Flow
```php
$provider = new PhpNexus\OAuth2\Client\Provider\Freee([
'clientId' => '{freee-app-client-id}',
'clientSecret' => '{freee-app-client-secret}',
'redirectUri' => 'https://example.com/redirect-url'
]);
```
For further usage of this package please refer to the [core package documentation on "Authorization Code Grant"](https://github.com/thephpleague/oauth2-client#usage).
### Refreshing a Token
Once your application is authorized, you can refresh an expired token using a refresh token rather than going through the entire process of obtaining a brand new token. To do so, simply reuse this refresh token from your data store to request a refresh.
```php
$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.
}
```
For further usage of this package please refer to the [core package documentation on "Refreshing a Token"](https://github.com/thephpleague/oauth2-client#refreshing-a-token).
## Testing
``` bash
$ ./vendor/bin/phpunit
```
## Contributing
Please see [CONTRIBUTING](https://github.com/phpnexus/oauth2-freee/blob/main/CONTRIBUTING.md) for details.
## Credits
- [Mark Prosser](https://github.com/markinjapan)
- [All Contributors](https://github.com/phpnexus/oauth2-freee/contributors)
## License
The MIT License (MIT). Please see [License File](https://github.com/phpnexus/oauth2-freee/blob/main/LICENSE) for more information.