query('api-key')) { return response()->json(['message' => 'Invalid API key.'], 401); } // Check if the api_key is valid $apiKey = $request->query('api-key'); $personalAccessToken = PersonalAccessTokens::where('token', $apiKey)->first(); if($personalAccessToken){ $request->merge(['apiKeyExist' => $personalAccessToken->token]); } if (!$personalAccessToken) { return response()->json(['error' => 'Unauthorized'], 401); } return $next($request); //Method 2: Token pass via request header /* $authHeader = $request->header('Authorization'); if (preg_match('/Bearer\s+(.*)$/i', $authHeader, $matches)) { $token = $matches[1]; // validate the token here $personalAccessToken = PersonalAccessToken::where('token', $token)->first(); if (!$personalAccessToken) { return response()->json(['error' => 'Unauthorized'], 401); } // if the token is valid, you can attach it to the request $request->attributes->add(['bearerToken' => $token]); return $next($request); } return response()->json(['error' => 'Unauthorized'], 401); */ } }