Agent Management
POST /v1/agents/register
Section titled “POST /v1/agents/register”Register a new AI agent. No authentication required.
curl -X POST https://agents.systemr.ai/v1/agents/register \ -H "Content-Type: application/json" \ -d '{ "owner_id": "owner-123", "agent_name": "AlphaBot", "agent_type": "trading", "description": "Momentum equity strategy", "authorized_instruments": ["AAPL", "MSFT", "GOOGL"], "max_position_size_pct": "5.0", "max_daily_loss_pct": "2.0" }'Request body:
| Field | Type | Required | Description |
|---|---|---|---|
owner_id | string | Yes | Owner identifier. |
agent_name | string | Yes | Display name (1 to 100 chars). |
agent_type | string | Yes | trading, analysis, risk, or composite. |
description | string | No | Description (up to 500 chars). |
authorized_instruments | string[] | No | Instrument whitelist. |
authorized_actions | string[] | No | Action whitelist. |
max_position_size_pct | string | No | Max position size %. |
max_daily_loss_pct | string | No | Max daily loss %. |
Response (201):
{ "agent_id": "agt_a1b2c3d4", "agent_name": "AlphaBot", "agent_type": "trading", "mode": "sandbox", "api_key": "sr_agent_abc123def456ghi789...", "created_at": "2026-03-25T12:00:00Z"}GET /v1/agents/me
Section titled “GET /v1/agents/me”Get the authenticated agent’s information.
curl https://agents.systemr.ai/v1/agents/me \ -H "X-API-Key: sr_agent_..."Response (200):
{ "agent_id": "agt_a1b2c3d4", "owner_id": "owner-123", "agent_name": "AlphaBot", "agent_type": "trading", "mode": "sandbox", "is_active": true, "created_at": "2026-03-25T12:00:00Z", "description": "Momentum equity strategy"}GET /v1/agents/list
Section titled “GET /v1/agents/list”List all agents belonging to the authenticated agent’s owner.
curl https://agents.systemr.ai/v1/agents/list \ -H "X-API-Key: sr_agent_..."Response (200):
{ "agents": [ { "agent_id": "agt_a1b2c3d4", "owner_id": "owner-123", "agent_name": "AlphaBot", "agent_type": "trading", "mode": "sandbox", "is_active": true, "created_at": "2026-03-25T12:00:00Z", "description": "Momentum equity strategy" }, { "agent_id": "agt_e5f6g7h8", "owner_id": "owner-123", "agent_name": "RiskWatcher", "agent_type": "risk", "mode": "live", "is_active": true, "created_at": "2026-03-20T08:00:00Z", "description": null } ], "count": 2}PUT /v1/agents/mode
Section titled “PUT /v1/agents/mode”Change the agent’s operational mode.
curl -X PUT https://agents.systemr.ai/v1/agents/mode \ -H "X-API-Key: sr_agent_..." \ -H "Content-Type: application/json" \ -d '{"mode": "live"}'Request body:
| Field | Type | Required | Description |
|---|---|---|---|
mode | string | Yes | sandbox, live, suspended, or terminated. |
Response (200): Same as GET /v1/agents/me with updated mode.
POST /v1/agents/link-wallet
Section titled “POST /v1/agents/link-wallet”Link a Solana wallet to the agent. Verifies wallet ownership via Ed25519 signature and checks presale buyer status on-chain.
curl -X POST https://agents.systemr.ai/v1/agents/link-wallet \ -H "X-API-Key: sr_agent_..." \ -H "Content-Type: application/json" \ -d '{ "solana_wallet_address": "7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU", "signature": "BASE58_SIGNATURE", "message": "Link wallet to agent agt_a1b2c3d4" }'Request body:
| Field | Type | Required | Description |
|---|---|---|---|
solana_wallet_address | string | Yes | Base58-encoded Solana public key. |
signature | string | Yes | Base58-encoded Ed25519 signature. |
message | string | Yes | Signed message (must contain agent_id). |
Response (200):
{ "agent_id": "agt_a1b2c3d4", "solana_wallet_address": "7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU", "is_presale_buyer": true, "message": "Wallet linked. Presale buyer verified. 20% discount active."}