dogabot dogabot Documentation

Public API

dogabot exposes a scoped REST API at https://api.dogabot.com/api/v1 for Pro and Institutional accounts. Authenticate with an API key (dbk_live_…), not a Clerk browser session.

This site is the reference: every path here is on the API-key allowlist. Create a key in the app, then use curl, CI, or desk tools. MCP install stays on GitHub and Learn.

How to use this documentation

Prefer a typed client? See the SDKs page for Python, JavaScript/TypeScript, and Go. Prefer a shell? See the CLI.

Building strategy params? See Named rule examples for every builtin rule’s wire shape (enabled / invert / params), or download /rule-examples.json. For curated Ask AI / customLogic payloads see Ask AI recipes (/recipe-examples.json).

Quick start

Bash Code
export DOGABOT_API_KEY=dbk_live_...
curl -H "Authorization: Bearer $DOGABOT_API_KEY" https://api.dogabot.com/api/v1/me

Place a paper order, then poll

Place-order returns an async ack. Copy client_order_id and poll until the order is filled or rejected. Send a new Idempotency-Key only for a new intent; reuse it when retrying the same request.

Bash Code
curl -X POST https://api.dogabot.com/api/v1/terminal/place-order \
  -H "Authorization: Bearer $DOGABOT_API_KEY" \
  -H "Idempotency-Key: place-paper-btc-1" \
  -H "Content-Type: application/json" \
  -d '{"exchange":"hyperliquid","symbol":"BTC","side":"buy","quantity":0.001,"order_type":"market","trading_mode":"paper","broadcast_mode":"personal"}'

curl -H "Authorization: Bearer $DOGABOT_API_KEY" \
  https://api.dogabot.com/api/v1/terminal/orders/by-client-order-id/dogabot-t1a2b3c4

Start or stop (Institutional write)

Lifecycle writes need write:lifecycle, feat:api:write, and Idempotency-Key. MCP cannot start or stop automations.

Bash Code
curl -X POST https://api.dogabot.com/api/v1/followers/42/start \
  -H "Authorization: Bearer $DOGABOT_API_KEY" \
  -H "Idempotency-Key: start-follower-42"

Who can call it

PlanKeysAccessRate limit
Pro Up to 3 active Read scopes. Terminal place/cancel needs write:terminal and feat:terminal. 60 requests / minute / key
Institutional Up to 10 active Read plus write when ops enables feat:api:write on the account. 300 requests / minute / key

IP allowlist

Each key can restrict callers to public IPs or CIDRs. Empty allowlist means any IP. Restrictions apply to REST and MCP. Do not use 127.0.0.1.

What is not public

API keys cannot mint other keys, read or write exchange secrets, call ops-only or checkout routes, act as another user, or force-close automations. Those stay on the signed-in webapp. MCP is served at https://mcp.dogabot.com/mcp, not as a REST path on api.dogabot.com.