DEVELOPER PLATFORM · REST API V1

Build with StackSats.

Build on the same managed Orders, Positions and Results shown in the StackSats PWA. Available with API & Business.

https://stacksats.ai/api/v1
Start 7-day API trial

Authentication

All API requests require a Bearer token in the Authorization header. API keys are available with an active API & Business subscription.

Header
Authorization: Bearer sk_live_xxx

Keep your API key secret. Never expose it in client-side code, public repositories, or shared documents. Rotate compromised keys immediately from your dashboard.

Orders

GET/api/v1/orders
The current broker-verified managed shortlist shown in the PWA Orders tab. Ranking combines frozen setup quality with current fillability. No order size, broker ID or account data is exposed.
Response
{
  "status": "ok",
  "data": {
    "contract_version": "client_managed_orders_v1",
    "status": { "state": "FRESH", "verified_at": "2026-08-26T16:20:05Z" },
    "items": [{
      "asset": "SOL", "action": "ACCUMULATION",
      "price_eur": 78.771, "current_price_eur": 82.184,
      "customer_priority": 1, "top_quality_order": true
    }]
  }
}

Positions

GET/api/v1/positions
Current StackSats-managed positions from the authenticated broker snapshot, including average entry, live price, open return, portfolio allocation and the next managed action. Quantities and portfolio value stay private.
Response
{
  "status": "ok",
  "data": {
    "contract_version": "client_managed_positions_v1",
    "items": [{
      "asset": "DOGE", "direction": "LONG",
      "average_entry_eur": 0.08913, "current_price_eur": 0.08968,
      "unrealized_return_pct": 0.62, "data_live": true
    }]
  }
}

Results

GET/api/v1/results
Exact managed Long Term outcomes from the same proven cohort as PWA Results. Manual activity, retired strategies and Trade/Swing history do not enter this contract.
ParameterTypeDescription
limitintegeroptionalMaximum outcomes. Default: 100, max: 200
Response
{
  "status": "ok",
  "data": {
    "contract_version": "client_managed_results_v1",
    "summary": { "closed_outcomes": 22, "win_rate_pct": 100.0, "average_net_return_pct": 5.36 },
    "items": [{ "symbol": "DOGE", "net_return_pct": 3.72, "entry_price": 0.08913, "exit_price": 0.09245 }]
  }
}

Rate Limits

Rate limits are per API key and depend on your subscription tier. Exceeding limits returns HTTP 429 with a Retry-After header.

PlanRequests / dayRequests / minute
API & Business10,00060
Enterprise100,000300

Rate Limit Headers

Every response includes rate limit information in headers:

Headers
X-RateLimit-Limit: 10000
X-RateLimit-Remaining: 9847
X-RateLimit-Reset: 1711497600

Error Codes

The API uses standard HTTP status codes. Error responses include a JSON body with details.

400Bad RequestInvalid parameters or missing required fields
401UnauthorizedMissing or invalid Bearer token
403ForbiddenValid token but insufficient plan permissions
404Not FoundUnknown endpoint or invalid symbol
429Rate LimitedToo many requests. Check Retry-After header
500Server ErrorInternal error. Contact support if persistent
Error Response
{
  "status": "error",
  "code": 401,
  "message": "Invalid or expired API key",
  "meta": {
    "timestamp": "2026-03-29T10:15:00Z",
    "version": "1.0"
  }
}