N°08 / Ship
HTTP API reference
The Banger control plane is a small REST API. The CLI, the MCP server, and the dashboard all hit the same endpoints. You can use it directly for any integration use case the SDKs don’t cover yet.
Base URL
https://api.banger.fi/api/v1Authentication
Bearer token in the Authorization header:
curl https://api.banger.fi/api/v1/strategies \
-H "Authorization: Bearer bk_live_..."Generate keys at /settings. Keys have a scope: read < deploy < admin. Endpoints state which scope they require.
Endpoints
Strategies
| Method | Path | Scope | Description |
|---|---|---|---|
GET | /strategies | read | List your strategies |
POST | /strategies | deploy | Upload a new strategy from source |
GET | /strategies/:id | read | Fetch a strategy with source |
PATCH | /strategies/:id | deploy | Update name, source, visibility, etc. |
DELETE | /strategies/:id | deploy | Soft-delete |
GET | /strategies/:id/performance?range=24h | read | P&L series + summary |
Deployments
| Method | Path | Scope | Description |
|---|---|---|---|
GET | /deployments[?status=running] | read | List your deployments (with strategy names) |
POST | /deployments | deploy | Start a deployment for a strategy |
POST | /deployments/:id/stop | deploy | Stop a running deployment |
Marketplace
| Method | Path | Scope | Description |
|---|---|---|---|
GET | /marketplace | read | List public strategies |
GET | /marketplace/:id | read | Public strategy detail (incl. source) |
POST | /marketplace/:id/clone | deploy | Fork into your account; optionally start a deployment |
Positions
| Method | Path | Scope | Description |
|---|---|---|---|
GET | /positions[?venue=polymarket] | read | Open positions across running deployments |
Account (dashboard-only)
These endpoints use Clerk session auth, not API keys — you can’t hit them from the CLI/MCP. They power the dashboard UI directly.
| Method | Path | Description |
|---|---|---|
GET/POST | /api_keys | List + mint API keys |
DELETE | /api_keys/:id | Revoke |
GET/POST | /venue_credentials | List + add (encrypted) BYO venue keys |
POST | /billing/checkout | Create a Stripe Checkout session for a tier upgrade |
POST | /billing/portal | Open the Stripe Customer Portal |
Errors
All error responses are JSON in the shape { "error": "..." }. Common statuses:
401— missing or invalid auth403— auth ok, but scope insufficient404— resource not found (or not yours)400— invalid request body (withissuesfrom Zod for details)500— something on our end
Rate limits
Not enforced in v0. Be reasonable. Production rate limits will be per-API-key, with separate buckets for read vs deploy.