Handles authentication using Laravel Sanctum (cookie-based). Use when implementing login, register, logout, and protecting API routes.
Use this skill when:
Authentication uses Laravel Sanctum (SPA mode):
→ validate input → create user (hashed password) → login user automatically → return success response
→ validate credentials → attempt login
IF success: → create session → return success
ELSE: → THROW error
→ destroy session → return success
IF user NOT authenticated: → return 401
ELSE: → allow access
use Illuminate\Support\Facades\Auth;
public function login(array $data): void
{
if (!Auth::attempt($data)) {
throw new \Exception('Invalid credentials');
}
}
public function login(LoginRequest $request)
{
$this->service->login($request->validated());
return ApiResponse::success(null, 'Login successful');
}
Route::middleware('auth:sanctum')->group(function () {
Route::get('/workspaces', ...);
});
$user = auth()->user();
return ['token' => $token];
Auth::attempt(...)
// route without auth:sanctum