Browse docs

PHP SDK

Official PHP 8.1+ SDK. Works with any framework (Laravel, Symfony, Slim, plain PHP). JWKS caching built in.

Install

composer require kolaylogin/kolaylogin

Verify a session

use KolayLogin\Session;

$claims = Session::verifyJwt(
    $_COOKIE['__session'] ?? '',
    'https://api.kolaylogin.com',
    'https://example.com',
);
echo $claims->sub;

Admin client

$kolay = new \KolayLogin\Client(
    'https://api.kolaylogin.com',
    getenv('KL_SECRET_KEY'),
);

$result = $kolay->users->list(limit: 20);
$org    = $kolay->organizations->create('Acme', 'acme');
$invite = $kolay->invitations->create(
  email: 'new@example.com',
  orgId: $org['organization']['id'],
);

Laravel middleware

public function handle(Request $request, Closure $next)
{
    $jwt = $request->cookie('__session');
    try {
        $claims = \KolayLogin\Session::verifyJwt($jwt, config('services.kolaylogin.base_url'));
    } catch (\Throwable $e) {
        abort(401);
    }
    $request->attributes->set('userId', $claims->sub);
    return $next($request);
}