не разрабатывал api и web в одном, но логика должна быть такая. Авторизуешься с помощью api - получаешь token, его сохраняешь в сессию, а так же отметку, что авторизован session('authenticated', time()) и на web в каждом запросе в заголовок добавляешь Authorization: Bearer: {token}