How do I get Laravel session authentication working on my server?

I’m having this weird issue with my laravel app where my passport authentication only works on my server but not on my local environment using php artisan serve.

so the below works on my web server but not on local as authentication fails

 /**
 * Admin API Routes
 */
Route::group(['middleware'=>'auth:api'], static function () {
    Route::post('/page', 'ApiPageController@create');
});

on my local the response I get a the below response

{"message":"Unauthenticated."}

and this works on my local environment but not on my server:

 /**
 * Admin API Routes
 */
Route::group(['middleware'=>'auth:admin'], static function () {
    Route::post('/page', 'ApiPageController@create');
});

here’s my guard config

'guards' => [
        'web' => [
            'driver' => 'session',
            'provider' => 'users',
        ],

        'admin' => [
            'driver' => 'session',
            'provider' => 'users',
        ],

        'api' => [
            'driver' => 'passport',
            'provider' => 'users',
            'hash' => false,
        ],
    ],

Also on my server when ever I try to authenticate a customer it always seems to fail even when I’m clearly loggged in.

example of authentication in controller:

if(!auth('customers')->id()) {
    return $this->error('You are not authorized to access this', 403);
}

and my session are file based

I’m completly lost here as the behavior is inconsistent between environment and I’m not sure what I’m doing wrong.

Any help will be greatly appriciated

Thanks