API Documentation
Complete reference for the Vantaa Static Sites REST API.
https://api.vantaa.dotaws.dgstage.se | Format: JSON | Auth: Bearer JWTAuthentication
Protected endpoints require a JWT access token in the Authorization header. Obtain a token via the OAuth2 login flow: visit GET /auth/login, authenticate with Google SSO, and receive tokens via GET /auth/callback.
Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6...
Create an HTML page from raw content.
| Parameter | Type | Required | Description |
|---|---|---|---|
| key | string | required | S3 object key (e.g., reports/q1.html) |
| htmlContent | string | required | HTML content to store |
{"message":"Content created successfully","key":"reports/q1.html","url":"https://vantaa.dotaws.dgstage.se/reports/q1.html"}
Upload a file with base64-encoded body.
| Parameter | Type | Required | Description |
|---|---|---|---|
| key | string | required | S3 object key |
| body | string | required | Base64-encoded file content |
| contentType | string | required | MIME type (e.g., image/png) |
Upload multiple files in a single request. Max 10MB total payload.
List files in the S3 bucket. Supports ?prefix= query parameter for filtering.
{"files":[{"key":"reports/q1.html","size":2048,"lastModified":"2026-04-05T10:30:00.000Z"}],"count":1}
Get metadata for a specific file (size, content type, last modified, ETag).
Delete a file from S3. Returns 404 if the file doesn't exist.
Move or rename a file. Copies to the new key, then deletes the original.
| Parameter | Type | Required | Description |
|---|---|---|---|
| sourceKey | string | required | Current file path |
| destinationKey | string | required | New file path |
Invalidate CloudFront cache for specified paths. Use /* to clear everything.
Health check endpoint. Returns 200 with status and timestamp.
MCP Streamable HTTP endpoint. Accepts JSON-RPC 2.0 requests.
upload_file, create_content, list_files, get_file, delete_file, move_file, batch_upload, invalidate_cache