fipamo/routes/api.php
ro 458b076f73
FEATURE: full asset restore from backup archive
the current restore process only restored images and not the additional
file types that are allowed, so that has been added

also tweaked the reset request to include the correct token so the
request does not fail API authorization
2024-07-09 16:26:01 -06:00

55 lines
2.2 KiB
PHP

<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\API\AuthAPIController;
use App\Http\Controllers\API\PageAPIController;
use App\Http\Controllers\API\FileUploadAPIController;
use App\Http\Controllers\API\SettingsAPIController;
use App\Http\Controllers\API\InitAPIController;
use App\Http\Controllers\API\MailAPIController;
/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider and all of them will
| be assigned to the "api" middleware group. Make something great!
|
*/
//check if session is active
Route::get("/v1/status", [AuthAPIController::class, 'status']);
//site setup
Route::post("/v1/init", [InitAPIController::class, 'setupFresh']);
Route::post("/v1/restore", [InitAPIController::class, 'setupRestore']);
//handle page editing actions
Route::group(['prefix' => '/v1/page', 'middleware' => 'validate.token'], function () {
Route::put("/write", [PageAPIController::class, 'write']);
Route::post("/create", [PageAPIController::class, 'create']);
Route::delete("/delete", [PageAPIController::class, 'delete']);
});
//settings
Route::group(['prefix' => '/v1/settings', 'middleware' => 'validate.token'], function () {
Route::put("/publish", [SettingsAPIController::class, 'publish']);
Route::put("/sync", [SettingsAPIController::class, 'sync']);
Route::put("/nav-sync", [SettingsAPIController::class, 'navSync']);
});
//backups
Route::group(['prefix' => '/v1/backup', 'middleware' => 'validate.token'], function () {
Route::put("/create", [SettingsAPIController::class, 'createBackup']);
Route::get("/content-download", [SettingsAPIController::class, 'downloadBackup']);
Route::get("/files-download", [SettingsAPIController::class, 'downloadBackup']);
});
//other
Route::group(['prefix' => '/v1', 'middleware' => 'validate.token'], function () {
Route::post("/files", [FileUploadAPIController::class, 'upload']);
Route::post("/reset", [InitAPIController::class, 'setupReset']);
Route::post("/mailer", [MailAPIController::class, 'sendNotify']);
});