PHPackages                             recca0120/laravelpassport-provider - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. recca0120/laravelpassport-provider

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

recca0120/laravelpassport-provider
==================================

LaravelPassport OAuth2 Provider for Laravel Socialite

v1.0.2(8y ago)91.5k1MITPHPPHP ^5.6 || ^7.0

Since Jan 17Pushed 8y ago1 watchersCompare

[ Source](https://github.com/recca0120/laravelpassport-provider)[ Packagist](https://packagist.org/packages/recca0120/laravelpassport-provider)[ RSS](/packages/recca0120-laravelpassport-provider/feed)WikiDiscussions master Synced 5d ago

READMEChangelog (3)Dependencies (3)Versions (4)Used By (0)

Laravel Passport Provider
=========================

[](#laravel-passport-provider)

INSTALLATION
------------

[](#installation)

### 1.COMPOSER

[](#1composer)

```
// This assumes that you have composer installed globally
composer require recca0120/laravelpassport-provider
```

### 2. SERVICE PROVIDER

[](#2-service-provider)

- Remove Laravel\\Socialite\\SocialiteServiceProvider from your providers\[\] array in config\\app.php if you have added it already.
- Add \\SocialiteProviders\\Manager\\ServiceProvider::class to your providers\[\] array in config\\app.php.

For example:

```
'providers' => [
    // a whole bunch of providers
    // remove 'Laravel\Socialite\SocialiteServiceProvider',
    \SocialiteProviders\Manager\ServiceProvider::class, // add
];
```

- Note: If you would like to use the Socialite Facade, you need to [install it](https://github.com/laravel/socialite).

### 3. ADD THE EVENT AND LISTENERS

[](#3-add-the-event-and-listeners)

- Add SocialiteProviders\\Manager\\SocialiteWasCalled event to your listen\[\] array in &lt;app\_name&gt;/Providers/EventServiceProvider.
- Add your listeners (i.e. the ones from the providers) to the SocialiteProviders\\Manager\\SocialiteWasCalled\[\] that you just created.
- The listener that you add for this provider is 'SocialiteProviders\\HumanApi\\HumanApiExtendSocialite@handle',.
- Note: You do not need to add anything for the built-in socialite providers unless you override them with your own providers.

For example:

```
/**
 * The event handler mappings for the application.
 *
 * @var array
 */
protected $listen = [
    \SocialiteProviders\Manager\SocialiteWasCalled::class => [
        // add your listeners (aka providers) here
        'SocialiteProviders\LaravelPassport\LaravelPassportExtendSocialite@handle',
    ],
];
```

`REFERENCE`

- [Laravel docs about events](https://laravel.com/docs/5.0/events)
- [Laracasts video on events in Laravel 5](https://laracasts.com/lessons/laravel-5-events)

### 4. CONFIGURATION SETUP

[](#4-configuration-setup)

For development purpose, needed configuration is automatically retrieved from your .env if they are written as exactly shown below. However we recommend to **manually add an entry to the services configuration file** because after config files are cached for usage in production environment (Laravel command artisan config:cache), **values stored in the .env file are not accessible anymore by the application and the provider won’t work**.

`APPEND PROVIDER VALUES TO YOUR **.ENV** FILE`

```
SERVICE_LARAVELPASSPORT_HOST=http://server.dev
SERVICE_LARAVELPASSPORT_CLIENT_ID=client_id
SERVICE_LARAVELPASSPORT_CLIENT_SECRET=client_secret
SERVICE_LARAVELPASSPORT_REDIRECT=http://client.dev/auth/laravelpassport/callback
```

`ADD TO **CONFIG/SERVICES.PHP**.`

```
'laravelpassport' => [
    'host' => env('SERVICE_LARAVELPASSPORT_HOST'),
    'client_id' => env('SERVICE_LARAVELPASSPORT_CLIENT_ID'),
    'client_secret' => env('SERVICE_LARAVELPASSPORT_CLIENT_SECRET'),
    'redirect' => env('SERVICE_LARAVELPASSPORT_REDIRECT'),

    // optional
    'authorize_uri' => 'oauth/authorize', // if your authorize_uri isn't same, you can change it
    'token_uri' => 'oauth/token', // if your token_uri isn't same, you can change it
    'userinfo_uri' => 'api/user', // if your userinfo_uri isn't same, you can change it
    'userinfo_key' => '', // if your userinfo response is like {"data": {"id" => "xxx", "email" => "xxx@test.com"}} you can set userinfo_key 'userinfo_info' => 'data'
]
```

`REFERENCE`

- [Laravel docs on configuration](https://laravel.com/docs/master/configuration)

USAGE
-----

[](#usage)

- You should now be able to use it like you would regularly use Socialite (assuming you have the facade installed):

```
return Socialite::with('laravelpassport')->redirect();
```

### LUMEN SUPPORT

[](#lumen-support)

You can use Socialite providers with Lumen. Just make sure that you have facade support turned on and that you follow the setup directions properly.

**Note:** If you are using this with Lumen, all providers will automatically be stateless since Lumen does not keep track of state.

Also, configs cannot be parsed from the services\[\] in Lumen. You can only set the values in the .env file as shown exactly in this document. If needed, you can also override a config (shown below).

### STATELESS

[](#stateless)

- You can set whether or not you want to use the provider as stateless. Remember that the OAuth provider (Twitter, Tumblr, etc) must support whatever option you choose.

**Note:** If you are using this with Lumen, all providers will automatically be stateless since Lumen does not keep track of state.

```
// to turn off stateless
return Socialite::with('laravelpassport')->stateless(false)->redirect();

// to use stateless
return Socialite::with('laravelpassport')->stateless()->redirect();
```

### OVERRIDING A CONFIG

[](#overriding-a-config)

If you need to override the provider’s environment or config variables dynamically anywhere in your application, you may use the following:

```
$clientId = "secret";
$clientSecret = "secret";
$redirectUrl = "http://yourdomain.com/api/redirect";
$additionalProviderConfig = ['site' => 'meta.stackoverflow.com'];
$config = new \SocialiteProviders\Manager\Config($clientId, $clientSecret, $redirectUrl, $additionalProviderConfig);
return Socialite::with('laravelpassport')->setConfig($config)->redirect();
```

### RETRIEVING THE ACCESS TOKEN RESPONSE BODY

[](#retrieving-the-access-token-response-body)

Laravel Socialite by default only allows access to the access\_token. Which can be accessed via the \\Laravel\\Socialite\\User-&gt;token public property. Sometimes you need access to the whole response body which may contain items such as a refresh\_token.

You can get the access token response body, after you called the user() method in Socialite, by accessing the property $user-&gt;accessTokenResponseBody;

```
$user = Socialite::driver('laravelpassport')->user();
$accessTokenResponseBody = $user->accessTokenResponseBody;
```

laravelpassport

`REFERENCE`

- [Laravel Socialite Docs](https://github.com/laravel/socialite)
- [Laracasts Socialite video](https://laracasts.com/series/whats-new-in-laravel-5/episodes/9)

###  Health Score

31

—

LowBetter than 68% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity21

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity60

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~11 days

Total

3

Last Release

3019d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1390554?v=4)[Recca Tsai](/maintainers/recca0120)[@recca0120](https://github.com/recca0120)

---

Top Contributors

[![recca0120](https://avatars.githubusercontent.com/u/1390554?v=4)](https://github.com/recca0120 "recca0120 (11 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/recca0120-laravelpassport-provider/health.svg)

```
[![Health](https://phpackages.com/badges/recca0120-laravelpassport-provider/health.svg)](https://phpackages.com/packages/recca0120-laravelpassport-provider)
```

###  Alternatives

[socialiteproviders/microsoft

Microsoft OAuth2 Provider for Laravel Socialite

326.1M13](/packages/socialiteproviders-microsoft)[socialiteproviders/apple

Apple OAuth2 Provider for Laravel Socialite

618.4M8](/packages/socialiteproviders-apple)[socialiteproviders/instagram

Instagram OAuth2 Provider for Laravel Socialite

421.9M5](/packages/socialiteproviders-instagram)[socialiteproviders/microsoft-azure

Microsoft Azure OAuth2 Provider for Laravel Socialite

556.0M19](/packages/socialiteproviders-microsoft-azure)[socialiteproviders/laravelpassport

LaravelPassport OAuth2 Provider for Laravel Socialite

621.3M7](/packages/socialiteproviders-laravelpassport)[socialiteproviders/discord

Discord OAuth2 Provider for Laravel Socialite

422.0M17](/packages/socialiteproviders-discord)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
