Обычно API-интерфейсы не связаны с сохранением состояния сеанса между запросами.
Вы всегда можете добавить дополнительные группы с отдельными охранниками к одним и тем же маршрутам и использовать их в соответствии с вашими потребностями. Например,
Route::group(['middleware' => 'auth:api'], function () {
Route::post('/user', 'UserController@apiUser');
}
Route::group(['middleware' => 'auth'], function () {
Route::post('/user', 'UserController@index');
}
, а затем отдельно ссылка
$user = auth('web')->user();
или
$user = auth('api')->user();
Прочтите здесь для реализации Laravel API с использованием Passport . Вы также можете рассмотреть Laravel Sanctum , который предлагает поддержку генерации токенов API для ваших пользователей.