name('legacy-service.') ->middleware(['auth:sanctum', EnsureApiUserIsActive::class, EnsureApiTokenRateLimit::class]) ->group(function (): void { Route::get('pressreleases', [PressReleaseController::class, 'index'])->name('pressreleases.index'); Route::post('pressreleases', [PressReleaseController::class, 'store'])->name('pressreleases.store'); Route::get('pressreleases/{pressRelease}', [PressReleaseController::class, 'show'])->name('pressreleases.show'); Route::get('pressreleases/{pressRelease}/images', [PressReleaseImageController::class, 'index'])->name('pressreleases.images.index'); Route::post('pressreleases/{pressRelease}/images', [PressReleaseImageController::class, 'store'])->name('pressreleases.images.store'); Route::get('users/me/companies', [CompanyController::class, 'index'])->name('companies.index'); Route::get('users/me/companies/{company}', [CompanyController::class, 'show'])->name('companies.show'); }); // Alles Übrige unter /service/… (inkl. der nicht übernommenen // Schreib-Endpoints für Pressemappen/Kontakte): klarer Hinweis statt 404. Route::any('service/{path?}', function () { return response()->json([ 'message' => 'This legacy endpoint is not available anymore. Companies and press contacts are managed in your customer account; see the current API reference for everything else.', 'account_url' => url('/customer'), 'docs_url' => url('/docs/api/v1'), ], 410); })->where('path', '.*')->name('legacy-service.gone');