Token Scopes: Checking Scopes

'scopes' => \Laravel\Passport\Http\Middleware\CheckScopes::class,
'scope' => \Laravel\Passport\Http\Middleware\CheckForAnyScope::class,

Check For All Scopes

Route::get('/orders', function () {
    // Access token has both "check-status" and "place-orders" scopes...
})->middleware('scopes:check-status,place-orders');

Check For Any Scopes

Route::get('/orders', function () {
    // Access token has either "check-status" or "place-orders" scope...
})->middleware('scope:check-status,place-orders');

Checking Scopes On A Token Instance

Use Illuminate\Http\Request;

Route::get('/orders', function (Request $request) {
    if ($request->user()->tokenCan('place-orders')) {
        //
    }
});

Additional Scope Methods

Laravel\Passport\Passport::scopeIds();
Laravel\Passport\Passport::scopes();
Laravel\Passport\Passport::scopesFor(['place-orders', 'check-status']);
Laravel\Passport\Passport::hasScope('place-orders');

Token Scopes: Checking Scopes — Structure map

Clickable & Draggable!

Token Scopes: Checking Scopes — Related pages: