Authentication
| Method | Path | Description |
|---|---|---|
| POST | /auth/login | Login with email and password |
| POST | /auth/signup | Create a new account |
| GET | /auth/verify | Verify token validity |
| GET | /auth/me | Get current user |
| POST | /auth/refresh | Refresh access token |
| POST | /auth/logout | Logout and invalidate token |
| GET | /auth/google | Initiate Google OAuth |
| GET | /auth/github | Initiate GitHub OAuth |
| POST | /auth/exchange-code | Exchange OAuth code for token |
| POST | /auth/forgot-password | Request password reset |
| POST | /auth/reset-password | Reset password with token |
Chat & AI
| Method | Path | Description |
|---|---|---|
| POST | /chat/stream | Stream AI chat responses (SSE) |
| POST | /tools/result | Submit tool execution result |
| GET | /task/{task_id}/status | Get async task status |
Schematic
| Method | Path | Description |
|---|---|---|
| POST | /schematic/version | Save a schematic version |
| GET | /schematic/versions | List schematic versions |
| GET | /schematic/version/{id} | Get a specific version |
| POST | /schematic/restore | Restore a version |
PCB
| Method | Path | Description |
|---|---|---|
| POST | /pcb/autoroute | Autoroute PCB via Freerouting (SSE) |
Downloads
| Method | Path | Description |
|---|---|---|
| GET | /downloads/public | Get signed download URL |
| GET | /downloads/versions | List available versions |
| GET | /downloads/channels | List release channels |
| GET | /downloads/check-update | Check for updates |
Payments
| Method | Path | Description |
|---|---|---|
| POST | /payments/checkout | Create Stripe checkout session |
| GET | /payments/billing-portal | Get billing portal URL |
| GET | /payments/subscription | Get subscription details |
| POST | /payments/cancel | Cancel subscription |
| POST | /payments/reactivate | Reactivate subscription |
| POST | /payments/webhook | Stripe webhook handler |
User
| Method | Path | Description |
|---|---|---|
| GET | /user/profile | Get user profile |
| PUT | /user/profile | Update user profile |

