withServiceAccount(storage_path('firebase/firebase_credentials.json')) ->createMessaging(); // Replace with your actual FCM device token $deviceToken = 'dUYkBkPmRN11Z15hlHLE4c:APA91bG1SHwTBPpkLDbtlRYqu4UHSzdfxIMsmRrcXwqT1ULfxVNqMarMmr8pSNqQEg-bs2LXPag3N3APgAJOVaYsEzYOmFck2GH_tYhoiCzNwHZYKN99V0k'; $message = CloudMessage::withTarget('token', $deviceToken) ->withNotification(Notification::create('Test Title', 'Test Body')); try { $messaging->send($message); return response()->json(['status' => 'SUCCESS', 'message' => 'Notification sent!']); } catch (\Kreait\Firebase\Exception\MessagingException $e) { return response()->json(['status' => 'ERROR', 'message' => $e->getMessage()]); } catch (\Throwable $e) { return response()->json(['status' => 'ERROR', 'message' => $e->getMessage()]); } }); Route::middleware('auth:api')->group(function () { Route::post('v1/save-fcm-token', [WebsiteController::class, 'saveFcmToken']); Route::get('v1/sent-notification', [WebsiteController::class, 'sentNotification']); });