From 61076a9ef2727677dc0a5b5c14a51dde62003476 Mon Sep 17 00:00:00 2001 From: seb Date: Wed, 14 Oct 2026 03:06:25 +0200 Subject: [PATCH] u --- .agents/skills/backend/SKILL.md | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/.agents/skills/backend/SKILL.md b/.agents/skills/backend/SKILL.md index 421431d..237072a 100644 --- a/.agents/skills/backend/SKILL.md +++ b/.agents/skills/backend/SKILL.md @@ -7,7 +7,7 @@ description: >- # Dash API Routes Overview (All) -Overview of all 232 API endpoints across all modules. +Overview of all 233 API endpoints across all modules. ### Notation @@ -24,7 +24,7 @@ Params: path values first, then `query:` and `body:` (`body?` = optional body). - `T6` = `{ id: int, number: str, type: str, supplierId: int|null, date: str, lines: T28[], files: T13[], externalNumber?: str|null, createdAt?: str, ledger?: T50 }` - `T7` = `{ id: int, number: str, type: str, date: str, lines: T28[], shippings: T36[], entityId?: int|null, externalNumber?: str|null, createdAt?: str|null, lineCount?: int, packageCount?: int }` - `T8` = `{ name: str, path: str, totalSizeBytes: int, timestamp: str|null, manifest?: T9|null }` -- `T9` = `{ id: str, timestamp: str, dateKey: str, monthKey: str, dbProvider: str, manual: bool, files: T17, totalSizeBytes: int, durationMs: int }` +- `T9` = `{ id: str, timestamp: str, dateKey: str, monthKey: str, dbProvider: str, files: T17, totalSizeBytes: int, durationMs: int }` - `T10` = `{ labeltemplate: T11 }` - `T11` = `{ id: int, name: str, width: num, height: num, dpi: int, type: str, content: T24, thumb?: str|null }` - `T12` = `{ quote: T15 }` @@ -266,9 +266,12 @@ _none_ #### List backups and service status — `GET /backup` _none_ - Returns: `200 { status: { enabled: bool, isRunning: bool, dbProvider: str, mssqlWarning: bool, backupDir: str, retention: { hourlyMax: int, dailyMax: int, monthly: str }, counts: { hourly: int, daily: int, monthly: int }, latestHourly?: T8|null, latestDaily?: T8|null, latestMonthly?: T8|null }, backups: { counts: { hourly: int, daily: int, monthly: int }, hourly: T8[], daily: T8[], monthly: T8[] } }` -#### Trigger manual backup — `POST /backup/run` -_none_ -- Returns: `200 { success: bool, id: str, timestamp: str, promotedDaily: bool, promotedMonthly: bool, totalSizeBytes: int, pruneResult: { hourlyPruned: int, dailyPruned: int }, manifest: T9 }` +#### List VFS files in a backup — `GET /backup/{id}/vfs` +- Params: `id: str, query: companyId?: int` +- Returns: `200 { backupId: str, companyId: int, files: { name: str, size: int, mime: str, mtime: str }[] }` +#### Recover VFS file from a backup — `POST /backup/{id}/vfs/recover` +- Params: `id: str, body: { path: str, companyId?: int }` +- Returns: `200 { success: bool, backupId: str, companyId: int, path: str, sizeBytes: int, mime: str }` ### Section: /brand