artifacts-dashboard/docs/API.md
Paweł Orzech f845647934
Some checks failed
Release / release (push) Has been cancelled
Initial release: Artifacts MMO Dashboard & Automation Platform
Full-stack dashboard for controlling, automating, and analyzing
Artifacts MMO characters via the game's HTTP API.

Backend (FastAPI):
- Async Artifacts API client with rate limiting and retry
- 6 automation strategies (combat, gathering, crafting, trading, task, leveling)
- Automation engine with runner, manager, cooldown tracker, pathfinder
- WebSocket relay (game server -> frontend)
- Game data cache, character snapshots, price history, analytics
- 9 API routers, 7 database tables, 3 Alembic migrations
- 108 unit tests

Frontend (Next.js 15 + shadcn/ui):
- Live character dashboard with HP/XP bars and cooldowns
- Character detail with stats, equipment, inventory, skills, manual actions
- Automation management with live log streaming
- Interactive canvas map with content-type coloring and zoom/pan
- Bank management, Grand Exchange with price charts
- Events, logs, analytics pages with Recharts
- WebSocket auto-reconnect with query cache invalidation
- Settings page, error boundaries, dark theme

Infrastructure:
- Docker Compose (dev + prod)
- GitHub Actions CI/CD
- Documentation (Architecture, Automation, Deployment, API)
2026-03-01 19:46:45 +01:00

78 lines
1.3 KiB
Markdown

# API Reference
Base URL: `http://localhost:8000`
## Health
### `GET /health`
Returns service health status.
## Characters
### `GET /api/characters`
List all characters with current state.
### `GET /api/characters/{name}`
Get detailed character info including equipment, inventory, and skills.
## Game Data
### `GET /api/game/items`
All game items (cached).
### `GET /api/game/monsters`
All monsters (cached).
### `GET /api/game/resources`
All resources (cached).
### `GET /api/game/maps`
All map tiles (cached).
## Dashboard
### `GET /api/dashboard`
Aggregated dashboard data for all characters.
## Automations
### `GET /api/automations`
List all automation configs.
### `POST /api/automations`
Create a new automation.
### `POST /api/automations/{id}/start`
Start an automation.
### `POST /api/automations/{id}/stop`
Stop an automation.
### `POST /api/automations/{id}/pause`
Pause an automation.
### `POST /api/automations/{id}/resume`
Resume a paused automation.
## Bank
### `GET /api/bank`
Bank contents with item details.
## Exchange
### `GET /api/exchange/orders`
Active GE orders.
### `GET /api/exchange/prices/{item_code}`
Price history for an item.
## Events
### `GET /api/events`
Active and historical game events.
## WebSocket
### `WS /ws/live`
Real-time event stream (character updates, automation status, game events).