35 lines
1.3 KiB
PHP
35 lines
1.3 KiB
PHP
<?php
|
|
|
|
use App\Http\Controllers\Api\Admin\AuthController as AdminAuthController;
|
|
use App\Http\Controllers\Api\Admin\ClientController;
|
|
use App\Http\Controllers\Api\Admin\LlmProviderController;
|
|
use App\Http\Controllers\Api\AuthController;
|
|
use App\Http\Controllers\Api\LlmController;
|
|
use Illuminate\Support\Facades\Route;
|
|
|
|
// Public routes
|
|
Route::post('/auth/token', [AuthController::class, 'getAccessToken']);
|
|
|
|
// Protected routes (require access token)
|
|
Route::middleware('auth.access_token')->group(function () {
|
|
Route::post('/llm/request', [LlmController::class, 'request']);
|
|
});
|
|
|
|
// Admin routes
|
|
Route::prefix('admin')->group(function () {
|
|
// Admin auth routes (public)
|
|
Route::post('login', [AdminAuthController::class, 'login']);
|
|
|
|
// Protected admin routes
|
|
Route::middleware(['auth:sanctum', 'auth.admin'])->group(function () {
|
|
Route::post('logout', [AdminAuthController::class, 'logout']);
|
|
Route::post('change-password', [AdminAuthController::class, 'changePassword']);
|
|
|
|
// LLM Provider management
|
|
Route::apiResource('llm-providers', LlmProviderController::class);
|
|
|
|
// Client management
|
|
Route::apiResource('clients', ClientController::class);
|
|
Route::post('clients/{id}/auth-token', [ClientController::class, 'generateAuthToken']);
|
|
});
|
|
});
|