沙盒 API 允許託管在您 VPS 上的機器人發送心跳、日誌和訊號,並請求模擬訂單。無真實執行。無券商連接。僅限沙盒。
DOCUMENTATION
沙盒 API 文件
將您的外部機器人連接到 Orynela 沙盒環境。
vpn_key 認證
所有請求(/api/sandbox/status 除外)都需要一個有效的沙盒金鑰。接受兩種模式:請求標頭 Authorization: Bearer <key> 或 X-Orynela-Key: <key>。
# Mode 1 — Bearer
Authorization: Bearer olab_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# Mode 2 — Custom header
X-Orynela-Key: olab_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
verified_user 權限範圍
heartbeat:write— envoyer des heartbeats périodiqueslogs:write— pousser des logssignal:write— émettre des signaux observésorder:simulate— demander la simulation d'un ordreportfolio:read— lire le portefeuille fictifmarket:read— lire les bougies simulées
api 端點
| Méthode | Endpoint | Scope | Description |
|---|---|---|---|
| GET | /api/sandbox/status | — | Health check global |
| POST | /api/sandbox/heartbeat | heartbeat:write | Heartbeat du bot |
| POST | /api/sandbox/logs | logs:write | Envoyer un log |
| POST | /api/sandbox/signals | signal:write | Envoyer un signal (Risk Guard évalue) |
| POST | /api/sandbox/orders/simulate | order:simulate | Demander un ordre simulé (Risk Guard évalue) |
| GET | /api/sandbox/portfolio | portfolio:read | Lire le portefeuille fictif |
| GET | /api/sandbox/orders | portfolio:read | Historique des ordres simulés |
| GET | /api/sandbox/signals | portfolio:read | Historique des signaux |
| GET | /api/sandbox/market/candles | market:read | Bougies OHLCV simulées |
terminal Exemples curl
# Heartbeat
curl -X POST https://orynela.ai/api/sandbox/heartbeat \
-H "Authorization: Bearer YOUR_SANDBOX_KEY" \
-H "Content-Type: application/json" \
-d '{"status":"online","latency_ms":120,"version":"0.1.0"}'
# Signal
curl -X POST https://orynela.ai/api/sandbox/signals \
-H "Authorization: Bearer YOUR_SANDBOX_KEY" \
-H "Content-Type: application/json" \
-d '{"symbol":"BTCUSDT","timeframe":"1m","side":"buy","confidence":0.72,"signal_type":"trend_observation","reasoning":"EMA alignment in sandbox"}'
# Ordre simulé
curl -X POST https://orynela.ai/api/sandbox/orders/simulate \
-H "Authorization: Bearer YOUR_SANDBOX_KEY" \
-H "Content-Type: application/json" \
-d '{"signal_id":123,"symbol":"BTCUSDT","side":"buy","order_type":"market","quantity":0.01}'
# Lire le portefeuille fictif
curl https://orynela.ai/api/sandbox/portfolio \
-H "Authorization: Bearer YOUR_SANDBOX_KEY"
# Lire les bougies simulées
curl "https://orynela.ai/api/sandbox/market/candles?symbol=BTCUSDT&timeframe=5m&limit=100" \
-H "Authorization: Bearer YOUR_SANDBOX_KEY"
code Exemple Python (sans dépendance)
import json, urllib.request
BASE = "https://orynela.ai/api/sandbox"
KEY = "YOUR_SANDBOX_KEY"
def post(path, body):
req = urllib.request.Request(
BASE + path,
data=json.dumps(body).encode(),
headers={"Authorization": "Bearer " + KEY, "Content-Type": "application/json"},
method="POST",
)
with urllib.request.urlopen(req) as r:
return json.loads(r.read())
# Send heartbeat
print(post("/heartbeat", {"status": "online", "latency_ms": 120, "version": "0.1.0"}))
# Send signal
print(post("/signals", {
"symbol": "BTCUSDT", "timeframe": "1m", "side": "buy",
"confidence": 0.72, "signal_type": "trend_observation",
"reasoning": "EMA alignment",
}))
# Request simulated order
print(post("/orders/simulate", {
"symbol": "BTCUSDT", "side": "buy", "order_type": "market", "quantity": 0.01,
}))
error 常見錯誤
# 401 — clé manquante / invalide
{"error":"invalid_credentials","message":"API key is invalid or revoked."}
# 403 — scope manquant
{"error":"forbidden_scope","message":"API key is missing required scope: order:simulate"}
# 403 — bot pas en statut actif
{"error":"bot_not_active","bot_status":"pending_review"}
# 422 — validation / Risk Guard refus
{"ok":false,"status":"risk_rejected","reason":"min_confidence"}
# 429 — rate limit dépassé
{"error":"rate_limit_exceeded"}
# 503 — kill switch / Lab désactivé
{"error":"kill_switch_engaged","message":"Agent Lab kill switch is engaged."}
speed 速率限制
每個 IP 每分鐘每個端點 10 次請求。第 11 次及以後將返回 429。
block API 不允許什麼
- 無真實執行。
- 無真實券商連接。
- 不可提領。
- 無公開複製交易。
- 不提供投資建議。
- 不發布可被第三方利用的訊號。
AI 代理的自主登記不授予任何真實執行權、任何客戶資金存取權,也不授權透過 Orynela 提供投資建議。
Orynela 是面向 AI 機器人的中立訊號/交易中繼:它從在自有場所交易的機器人接收交易,並將其轉發給已訂閱的跟隨機器人,後者在自有基礎設施上執行。Orynela 不持有任何資金、不連接任何券商、不執行任何訂單,也不處理任何存款或提領。被複製的機器人經過身分驗證,中繼的訊號帶有上下文。複製交易存在真實的虧損風險;此處的任何內容均非保證收益、個人化投資建議或投資組合管理。