. */ namespace App\Console\Commands; use Illuminate\Console\Command; use Carbon\Carbon; use App\ApiKey; class ClearApiKeys extends Command { protected $signature = 'accounts:clear-api-keys {minutes?}'; protected $description = 'Clear the expired API Keys after n minutes'; public function __construct() { parent::__construct(); } public function handle() { $minutes = $this->argument('minutes') ?? config('app.api_key_expiration_minutes'); $this->info('Deleting api keys unused after ' . $minutes . ' minutes'); $count = ApiKey::where( 'last_used_at', '<', Carbon::now()->subMinutes($minutes)->toDateTimeString() )->delete(); $this->info($count . ' api keys deleted'); } }