- Changed super admin detection from role-based to `is_super_admin` flag in AdminUser model
- Added `requireDefaultAdminSiteId()` method to throw validation error when no integration site exists
- Enhanced site deletion to migrate platform role bindings to fallback site and auto-delete site-specific admin accounts
- Made agent line code optional with auto-generation fallback using `{site_code}-agent-{counter}` format
35 lines
2.4 KiB
PHP
35 lines
2.4 KiB
PHP
<?php
|
|
|
|
use Illuminate\Support\Facades\Route;
|
|
use App\Http\Controllers\Api\V1\Admin\Integration\AdminIntegrationSiteIndexController;
|
|
use App\Http\Controllers\Api\V1\Admin\Integration\AdminIntegrationSiteStoreController;
|
|
use App\Http\Controllers\Api\V1\Admin\Integration\AdminIntegrationSiteShowController;
|
|
use App\Http\Controllers\Api\V1\Admin\Integration\AdminIntegrationSiteUpdateController;
|
|
use App\Http\Controllers\Api\V1\Admin\Integration\AdminIntegrationSiteRotateSecretsController;
|
|
use App\Http\Controllers\Api\V1\Admin\Integration\AdminIntegrationSiteConnectivityTestController;
|
|
use App\Http\Controllers\Api\V1\Admin\Integration\AdminIntegrationSiteExportController;
|
|
use App\Http\Controllers\Api\V1\Admin\Integration\AdminIntegrationSiteSecretsController;
|
|
use App\Http\Controllers\Api\V1\Admin\Integration\AdminIntegrationSiteDestroyController;
|
|
|
|
Route::middleware('admin.api-resource')
|
|
->group(function (): void {
|
|
Route::get('integration-sites', AdminIntegrationSiteIndexController::class)
|
|
->name('api.v1.admin.integration-sites.index');
|
|
Route::post('integration-sites', AdminIntegrationSiteStoreController::class)
|
|
->name('api.v1.admin.integration-sites.store');
|
|
Route::get('integration-sites/{admin_site}', AdminIntegrationSiteShowController::class)
|
|
->name('api.v1.admin.integration-sites.show');
|
|
Route::put('integration-sites/{admin_site}', AdminIntegrationSiteUpdateController::class)
|
|
->name('api.v1.admin.integration-sites.update');
|
|
Route::delete('integration-sites/{admin_site}', AdminIntegrationSiteDestroyController::class)
|
|
->name('api.v1.admin.integration-sites.destroy');
|
|
Route::post('integration-sites/{admin_site}/rotate-secrets', AdminIntegrationSiteRotateSecretsController::class)
|
|
->name('api.v1.admin.integration-sites.rotate-secrets');
|
|
Route::post('integration-sites/{admin_site}/connectivity-test', AdminIntegrationSiteConnectivityTestController::class)
|
|
->name('api.v1.admin.integration-sites.connectivity-test');
|
|
Route::get('integration-sites/{admin_site}/export', AdminIntegrationSiteExportController::class)
|
|
->name('api.v1.admin.integration-sites.export');
|
|
Route::get('integration-sites/{admin_site}/secrets', AdminIntegrationSiteSecretsController::class)
|
|
->name('api.v1.admin.integration-sites.secrets');
|
|
});
|