BookStackApp/BookStack · error · SocialDriverNotConfigured

errors.social_driver_not_configured

Error message

errors.social_driver_not_configured

What it means

SocialDriverNotConfigured thrown by ensureDriverActive when the requested social driver name is in the valid list (e.g. github, google, okta) but its service config is empty, meaning the admin has enabled/routed to a driver that was never configured. Input at fault: a driver name whose services.{driver}.* config values are missing.

Source

Thrown at app/Access/SocialDriverManager.php:132

    protected function getDriverConfigProperty(string $driver, string $property): mixed
    {
        return config("services.{$driver}.{$property}");
    }

    /**
     * Ensure the social driver is correct and supported.
     *
     * @throws SocialDriverNotConfigured
     */
    public function ensureDriverActive(string $driverName): void
    {
        if (!in_array($driverName, $this->validDrivers)) {
            abort(404, trans('errors.social_driver_not_found'));
        }

        if (!$this->checkDriverConfigured($driverName)) {
            throw new SocialDriverNotConfigured(trans('errors.social_driver_not_configured', ['socialAccount' => Str::title($driverName)]));
        }
    }

    /**
     * Check a social driver has been configured correctly.
     */
    protected function checkDriverConfigured(string $driver): bool
    {
        $lowerName = strtolower($driver);
        $configPrefix = 'services.' . $lowerName . '.';
        $config = [config($configPrefix . 'client_id'), config($configPrefix . 'client_secret'), config('services.callback_url')];

        return !in_array(false, $config) && !in_array(null, $config);
    }
}

View on GitHub (pinned to 18f8469a1c)

Solutions

  1. Configure the social driver's credentials in .env (e.g. GITHUB_APP_ID, GITHUB_APP_SECRET) so services.{driver} is populated
  2. If the driver is not intended to be used, remove or correct the link/route that activated it
  3. Check config/services.php overrides have not blanked out the driver settings
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at app/Access/SocialDriverManager.php:132 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of BookStackApp/BookStack@18f8469a1c (2026-09-02). Data as JSON: /api/errors/cf10e740b84e8335. Report an issue: GitHub.