I ran into a problem where I’ve started to deploy Vue components using the Vue Router from within Laravel. As soon as I enabled the Vue route for /{any} I lost access to the api routes.


Route::get('/{any}', function () {
  return view('home');
})->name('home')->where('any', '.*');



const routes = [
    path: '/',
    name: 'home',
    component: home
  }, {
  }, {
    path: '*',
    name: 'notFound',
    component: notFound

I took a look at the Laravel RouteServiceProvider.php and noticed that the order of the web and api providers put the web first, so I swapped them around and now my api’s are back in business.

* Define the routes for the application.
* @return void
public function map()
  $this->mapApiRoutes(); // Needs to be first