middleware(['auth', 'verified', PrivateInvestmentResponse::class, 'throttle:api', TerritorialRequest::class])->group(function () { Route::get('/search', [TerritorialRegistryController::class, 'index']); Route::get('/{collection}', [TerritorialRegistryController::class, 'index'])->whereIn('collection', ['countries', 'provinces', 'districts', 'admin-posts', 'localities']); Route::get('/territories/{type}/{id}', [TerritorialRegistryController::class, 'show'])->whereUuid('id'); Route::middleware(['can:manage-portal', RequireZoneMfa::class])->group(function () { Route::get('/sources', [TerritorialRegistryController::class, 'sources']); Route::get('/drafts', [TerritorialRegistryController::class, 'drafts']); Route::post('/sources', [TerritorialRegistryController::class, 'source']); Route::post('/territories', [TerritorialRegistryController::class, 'save']); Route::patch('/territories/{id}', [TerritorialRegistryController::class, 'save'])->whereUuid('id'); Route::post('/territories/{id}/transitions', [TerritorialRegistryController::class, 'transition'])->whereUuid('id'); Route::post('/sources/{id}/transitions', [TerritorialRegistryController::class, 'sourceTransition'])->whereUuid('id'); }); });