docs: audit all 157 tool pages against live schemas

Reconcile every tool page's parameters, defaults, and response shape against the tool's Zod settings schema and executionHint in code. Notable fixes: color-palette (add count + format params, hex output, median-cut algorithm), favicon (add 5 params, was documented as having none), qr-generate (add logoDataUri), convert (add ppm/eps/tga formats), video-loudnorm (-16 LUFS not -14), smart-crop (async 202 not sync 200), images-to-video (1080x1080 square), and several output-filename and behavior-note corrections.

Also normalize API endpoint paths to /api/v1/tools/<id> (no modality segment) and standardize curl examples on the Docker API port 1349. Verified with a clean docs build.
This commit is contained in:
SnapOtter
2026-06-18 14:12:28 +08:00
parent d24e244af4
commit 8532f3227b
160 changed files with 518 additions and 441 deletions
+6 -5
View File
@@ -8,7 +8,7 @@ Create bar, line, or pie charts from CSV or JSON data. Returns a PNG image of th
## API Endpoint
`POST /api/v1/tools/data/chart-maker`
`POST /api/v1/tools/chart-maker`
Accepts multipart form data with a CSV or JSON file and a JSON `settings` field.
@@ -24,7 +24,7 @@ Accepts multipart form data with a CSV or JSON file and a JSON `settings` field.
## Example Request
```bash
curl -X POST http://localhost:1349/api/v1/tools/data/chart-maker \
curl -X POST http://localhost:1349/api/v1/tools/chart-maker \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@sales.csv" \
-F 'settings={"kind": "line", "title": "Monthly Sales", "width": 960, "height": 540}'
@@ -35,7 +35,7 @@ curl -X POST http://localhost:1349/api/v1/tools/data/chart-maker \
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/sales.png",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/sales_chart.png",
"originalSize": 1024,
"processedSize": 48500
}
@@ -44,6 +44,7 @@ curl -X POST http://localhost:1349/api/v1/tools/data/chart-maker \
## Notes
- Input must be a `.csv` or `.json` file. CSV files should have a header row with column names.
- The first column is used as the category axis; remaining numeric columns become data series.
- JSON input should be an array of objects with consistent keys.
- The first column is used as the category label; the second column must be numeric and provides the data values. Only two columns are used.
- JSON input should be an array of `{label, value}` objects, or a plain object whose keys become labels and values become data points.
- Maximum 100 data points. All values must be zero or greater.
- Output is always a PNG image regardless of input format.
+2 -2
View File
@@ -8,7 +8,7 @@ Bundle multiple files of any type into a single ZIP archive. Duplicate filenames
## API Endpoint
`POST /api/v1/tools/data/create-zip`
`POST /api/v1/tools/create-zip`
Accepts multipart form data with two or more files. No settings field is required.
@@ -19,7 +19,7 @@ This tool has no configurable parameters. Upload 2--50 files of any type to bund
## Example Request
```bash
curl -X POST http://localhost:1349/api/v1/tools/data/create-zip \
curl -X POST http://localhost:1349/api/v1/tools/create-zip \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@report.pdf" \
-F "file=@data.csv" \
+3 -3
View File
@@ -8,7 +8,7 @@ Convert between CSV and Excel (XLSX) formats in both directions. Upload a CSV or
## API Endpoint
`POST /api/v1/tools/data/csv-excel`
`POST /api/v1/tools/csv-excel`
Accepts multipart form data with a CSV, TSV, or XLSX file and a JSON `settings` field.
@@ -23,7 +23,7 @@ Accepts multipart form data with a CSV, TSV, or XLSX file and a JSON `settings`
CSV to Excel:
```bash
curl -X POST http://localhost:1349/api/v1/tools/data/csv-excel \
curl -X POST http://localhost:1349/api/v1/tools/csv-excel \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@data.csv" \
-F 'settings={"sheet": 1}'
@@ -32,7 +32,7 @@ curl -X POST http://localhost:1349/api/v1/tools/data/csv-excel \
Excel to CSV:
```bash
curl -X POST http://localhost:1349/api/v1/tools/data/csv-excel \
curl -X POST http://localhost:1349/api/v1/tools/csv-excel \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@report.xlsx" \
-F 'settings={"sheet": 2}'
+3 -3
View File
@@ -8,7 +8,7 @@ Convert between CSV and JSON formats in both directions. Upload a CSV or TSV fil
## API Endpoint
`POST /api/v1/tools/data/csv-json`
`POST /api/v1/tools/csv-json`
Accepts multipart form data with a CSV, TSV, or JSON file and a JSON `settings` field.
@@ -23,7 +23,7 @@ Accepts multipart form data with a CSV, TSV, or JSON file and a JSON `settings`
CSV to JSON:
```bash
curl -X POST http://localhost:1349/api/v1/tools/data/csv-json \
curl -X POST http://localhost:1349/api/v1/tools/csv-json \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@users.csv" \
-F 'settings={"pretty": true}'
@@ -32,7 +32,7 @@ curl -X POST http://localhost:1349/api/v1/tools/data/csv-json \
JSON to CSV:
```bash
curl -X POST http://localhost:1349/api/v1/tools/data/csv-json \
curl -X POST http://localhost:1349/api/v1/tools/csv-json \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@users.json" \
-F 'settings={}'
+3 -3
View File
@@ -8,7 +8,7 @@ Safely extract files from a ZIP archive. Single-file archives return the contain
## API Endpoint
`POST /api/v1/tools/data/extract-zip`
`POST /api/v1/tools/extract-zip`
Accepts multipart form data with a ZIP file. No settings field is required.
@@ -19,7 +19,7 @@ This tool has no configurable parameters. Upload a `.zip` file to extract.
## Example Request
```bash
curl -X POST http://localhost:1349/api/v1/tools/data/extract-zip \
curl -X POST http://localhost:1349/api/v1/tools/extract-zip \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@archive.zip"
```
@@ -29,7 +29,7 @@ curl -X POST http://localhost:1349/api/v1/tools/data/extract-zip \
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/archive.zip",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/archive_extracted.zip",
"originalSize": 2800000,
"processedSize": 3500000
}
+3 -3
View File
@@ -8,7 +8,7 @@ Convert between JSON and XML formats in both directions. Upload a JSON file to g
## API Endpoint
`POST /api/v1/tools/data/json-xml`
`POST /api/v1/tools/json-xml`
Accepts multipart form data with a JSON or XML file and a JSON `settings` field.
@@ -23,7 +23,7 @@ Accepts multipart form data with a JSON or XML file and a JSON `settings` field.
JSON to XML:
```bash
curl -X POST http://localhost:1349/api/v1/tools/data/json-xml \
curl -X POST http://localhost:1349/api/v1/tools/json-xml \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@config.json" \
-F 'settings={"pretty": true}'
@@ -32,7 +32,7 @@ curl -X POST http://localhost:1349/api/v1/tools/data/json-xml \
XML to JSON:
```bash
curl -X POST http://localhost:1349/api/v1/tools/data/json-xml \
curl -X POST http://localhost:1349/api/v1/tools/json-xml \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@config.xml" \
-F 'settings={"pretty": true}'
+2 -2
View File
@@ -8,7 +8,7 @@ Combine multiple CSV or TSV files with matching columns into a single merged fil
## API Endpoint
`POST /api/v1/tools/data/merge-csvs`
`POST /api/v1/tools/merge-csvs`
Accepts multipart form data with two or more CSV files. No settings field is required.
@@ -19,7 +19,7 @@ This tool has no configurable parameters. Upload 2--20 CSV or TSV files with mat
## Example Request
```bash
curl -X POST http://localhost:1349/api/v1/tools/data/merge-csvs \
curl -X POST http://localhost:1349/api/v1/tools/merge-csvs \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@january.csv" \
-F "file=@february.csv" \
+3 -3
View File
@@ -8,7 +8,7 @@ Split a large CSV or TSV file into smaller files by row count. Returns a ZIP arc
## API Endpoint
`POST /api/v1/tools/data/split-csv`
`POST /api/v1/tools/split-csv`
Accepts multipart form data with a CSV file and a JSON `settings` field.
@@ -22,7 +22,7 @@ Accepts multipart form data with a CSV file and a JSON `settings` field.
## Example Request
```bash
curl -X POST http://localhost:1349/api/v1/tools/data/split-csv \
curl -X POST http://localhost:1349/api/v1/tools/split-csv \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@large-dataset.csv" \
-F 'settings={"rowsPerFile": 500, "keepHeader": true}'
@@ -33,7 +33,7 @@ curl -X POST http://localhost:1349/api/v1/tools/data/split-csv \
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/large-dataset-split.zip",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/large-dataset_parts.zip",
"originalSize": 1048576,
"processedSize": 1050000
}
+2 -2
View File
@@ -8,7 +8,7 @@ Extract repeating elements from an XML file into a flat CSV table. The tool auto
## API Endpoint
`POST /api/v1/tools/data/xml-to-csv`
`POST /api/v1/tools/xml-to-csv`
Accepts multipart form data with an XML file. No settings field is required.
@@ -19,7 +19,7 @@ This tool has no configurable parameters. The repeating element is auto-detected
## Example Request
```bash
curl -X POST http://localhost:1349/api/v1/tools/data/xml-to-csv \
curl -X POST http://localhost:1349/api/v1/tools/xml-to-csv \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@catalog.xml"
```
+4 -4
View File
@@ -8,7 +8,7 @@ Convert between YAML and JSON formats in both directions. Upload a YAML file to
## API Endpoint
`POST /api/v1/tools/data/yaml-json`
`POST /api/v1/tools/yaml-json`
Accepts multipart form data with a YAML or JSON file. No settings field is required.
@@ -21,7 +21,7 @@ This tool has no configurable parameters. The conversion direction is determined
YAML to JSON:
```bash
curl -X POST http://localhost:1349/api/v1/tools/data/yaml-json \
curl -X POST http://localhost:1349/api/v1/tools/yaml-json \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@config.yaml"
```
@@ -29,7 +29,7 @@ curl -X POST http://localhost:1349/api/v1/tools/data/yaml-json \
JSON to YAML:
```bash
curl -X POST http://localhost:1349/api/v1/tools/data/yaml-json \
curl -X POST http://localhost:1349/api/v1/tools/yaml-json \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@config.json"
```
@@ -49,4 +49,4 @@ curl -X POST http://localhost:1349/api/v1/tools/data/yaml-json \
- Conversion direction is auto-detected from the input file extension: `.yaml` or `.yml` produces `.json`, and `.json` produces `.yaml`.
- Both `.yaml` and `.yml` extensions are accepted.
- Multi-document YAML files (separated by `---`) are supported.
- Only the first document in a multi-document YAML file is converted; additional documents separated by `---` are ignored.