name('api.docs'); // Guides Route::get('/guides', [DocsController::class, 'guides'])->name('api.guides'); Route::get('/guides/quickstart', [DocsController::class, 'quickstart'])->name('api.guides.quickstart'); Route::get('/guides/authentication', [DocsController::class, 'authentication'])->name('api.guides.authentication'); Route::get('/guides/qrcodes', [DocsController::class, 'qrcodes'])->name('api.guides.qrcodes'); Route::get('/guides/webhooks', [DocsController::class, 'webhooks'])->name('api.guides.webhooks'); Route::get('/guides/errors', [DocsController::class, 'errors'])->name('api.guides.errors'); // API Reference Route::get('/reference', [DocsController::class, 'reference'])->name('api.reference'); // Swagger UI Route::get('/swagger', [DocsController::class, 'swagger'])->name('api.swagger'); // Scalar (modern API reference with sidebar) Route::get('/scalar', [DocsController::class, 'scalar'])->name('api.scalar'); // ReDoc (three-panel API reference) Route::get('/redoc', [DocsController::class, 'redoc'])->name('api.redoc'); // OpenAPI spec (rate limited - expensive to generate) Route::get('/openapi.json', [DocsController::class, 'openapi']) ->middleware('throttle:60,1') ->name('api.openapi.json');