Getting Started
Quick Start
Move from account setup to a working AI-agent-first flow in a few steps.
Fast path
From account setup to a working AI agent in four practical steps
Use this page when you care about completing the workflow, not reading every concept first.
New user flow: Sign in → open /profile → set plan (dates, budget) → generate a personal API token → your AI agent calls GET /api/v1/agent/signal (optional POST /api/v1/agent/heartbeat); you execute trades on your exchange or venue. Stacking Sats does not custody funds or place orders for you.
Auth: Use a personal API token from /profile with Authorization: Bearer <token> on every Agent API request.
Your AI agent polls the signal on whatever schedule you configure. Stacking Sats does not run trades or host automation crons for you.
Workflow
- 1
Sign in and open your profile
Visit `/profile`, sign in, and confirm the app loads profile data without redirect or auth errors.
- Profile page loads successfully
- 2
Set your plan inputs
In your profile, set the strategy start date and the budget you want the model to allocate across the active window.
- Plan saves successfully
- Selected dates map to a valid `bitcoin_dca` period
- 3
Generate an API token
Create a token on `/profile`, copy it once, and store it only in your AI agent’s secure configuration (`Authorization: Bearer <token>`).
- Token works in a test `curl` or SDK call
- 4
Poll the signal and trade off-platform
Schedule your AI agent to call `GET /api/v1/agent/signal` daily (or as needed). Execute trades on your preferred exchange; Stacking Sats never takes custody.
- 200 response with signal JSON
- You place orders where you custody funds
API token setup
- Use a personal API token generated from your profile (not shared across users).
- Pass the token as `Authorization: Bearer <token>` on Agent API requests.
- Rotate or revoke the token from your profile if it is exposed or you no longer trust the AI agent.
Troubleshooting
Signal returns 401 Unauthorized
- Confirm the token is copied exactly and has not been revoked.
- Confirm the token is present on every request header.
Signal returns 409 SUBSCRIPTION_PERIOD_INVALID
- Open
/profileand adjust plan dates so they align with a valid model period (see Agent API for details).
Signal returns 503 DCA_DATA_UNAVAILABLE
- Ensure
bitcoin_dcadata exists for your environment and your plan dates fall inside a valid period.