{"openapi":"3.1.0","info":{"title":"VARJIX API","version":"1.0.0","description":"Headless trading infrastructure REST API. Place binary & digit contracts on Deriv via a single Bearer-authenticated endpoint. Idempotent, sub-second settlement on ticks, AI-buildable.","contact":{"name":"VARJIX","url":"https://api.varjix.com","email":"support@varjix.com"},"license":{"name":"Proprietary"},"termsOfService":"https://varjix.com/terms"},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"vk_live_*","description":"API key issued via api.varjix.com/dashboard/keys"},"cookieAuth":{"type":"apiKey","in":"cookie","name":"varjix_session","description":"Cross-subdomain partner session set on .varjix.com"}},"schemas":{}},"paths":{"/v1/community/profile":{"get":{"responses":{"200":{"description":"Default Response"}}},"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"displayName":{"type":"string","maxLength":60},"bio":{"type":"string","maxLength":500},"avatarUrl":{"type":["string","null"],"maxLength":1024},"isPublic":{"type":"boolean"}},"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/v1/community/leaderboard":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/v1/community/messages":{"get":{"responses":{"200":{"description":"Default Response"}}},"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["content"],"properties":{"content":{"type":"string","minLength":1,"maxLength":1000}}}}}},"responses":{"200":{"description":"Default Response"}}}},"/v1/community/messages/{id}":{"delete":{"parameters":[{"schema":{"type":"string"},"in":"path","name":"id","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/community/bots":{"get":{"responses":{"200":{"description":"Default Response"}}},"post":{"responses":{"200":{"description":"Default Response"}}}},"/v1/community/bots/{id}":{"delete":{"parameters":[{"schema":{"type":"string"},"in":"path","name":"id","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/community/bots/{id}/like":{"post":{"parameters":[{"schema":{"type":"string"},"in":"path","name":"id","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/usage":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/v1/auth/deriv/exchange":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["traderExternalId","accounts"],"properties":{"traderExternalId":{"type":"string","minLength":1,"maxLength":128},"email":{"type":"string"},"name":{"type":"string"},"accounts":{"type":"array","minItems":1,"maxItems":20,"items":{"type":"object","required":["accountId","token","accountMode"],"properties":{"accountId":{"type":"string","minLength":1},"token":{"type":"string","minLength":10},"accountMode":{"type":"string","enum":["REAL","DEMO"]},"currency":{"type":"string"}}}}}}}}},"responses":{"200":{"description":"Default Response"}}}},"/v1/trades/collect":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["stake_amount","contract_type","deriv_contract_id","client_deriv_loginid","profit_loss","trade_timestamp"],"properties":{"stake_amount":{"type":"number","exclusiveMinimum":0},"contract_type":{"type":"string","minLength":1,"maxLength":32},"deriv_contract_id":{"type":"string","minLength":1,"maxLength":64},"client_deriv_loginid":{"type":"string","minLength":1,"maxLength":32},"payout_amount":{"type":"number"},"profit_loss":{"type":"number"},"currency":{"type":"string","maxLength":8},"trade_timestamp":{"type":"string","minLength":10,"maxLength":40},"trader_external_id":{"type":"string","minLength":1,"maxLength":128},"symbol":{"type":"string","minLength":1,"maxLength":32},"metadata":{"type":"object","additionalProperties":true}}}}}},"responses":{"200":{"description":"Default Response"}}}},"/v1/trades/history":{"get":{"parameters":[{"schema":{"type":"integer","minimum":1,"maximum":200},"in":"query","name":"limit","required":false}],"responses":{"200":{"description":"Default Response"}}}},"/v1/me":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/v1/accounts":{"get":{"parameters":[{"schema":{"type":"string"},"in":"query","name":"traderExternalId","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/accounts/active":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["traderExternalId","accountId"],"properties":{"traderExternalId":{"type":"string"},"accountId":{"type":"string"}}}}}},"responses":{"200":{"description":"Default Response"}}}},"/v1/balance":{"get":{"parameters":[{"schema":{"type":"string"},"in":"query","name":"traderExternalId","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/orders/binary":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["traderExternalId","clientOrderId","asset","contractType","stake","duration","durationUnit"],"properties":{"traderExternalId":{"type":"string"},"clientOrderId":{"type":"string","minLength":8,"maxLength":64},"asset":{"type":"string"},"contractType":{"type":"string","enum":["CALL","PUT","DIGITMATCH","DIGITDIFF","DIGITOVER","DIGITUNDER","DIGITEVEN","DIGITODD"]},"stake":{"type":"number","minimum":0.35},"duration":{"type":"integer","minimum":1},"durationUnit":{"type":"string","enum":["t","s","m","h","d"]},"barrier":{"type":"string"},"waitForSettle":{"type":"boolean"}}}}}},"responses":{"200":{"description":"Default Response"}}}},"/v1/orders/{id}/close":{"post":{"parameters":[{"schema":{"type":"string"},"in":"path","name":"id","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/orders":{"get":{"parameters":[{"schema":{"type":"string"},"in":"query","name":"traderExternalId","required":false},{"schema":{"type":"string","enum":["PENDING","OPEN","CLOSED","FAILED"]},"in":"query","name":"status","required":false},{"schema":{"type":"integer","minimum":1,"maximum":200},"in":"query","name":"limit","required":false},{"schema":{"type":"string"},"in":"query","name":"cursor","required":false}],"responses":{"200":{"description":"Default Response"}}}},"/v1/orders/multiplier":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["traderExternalId","clientOrderId","asset","direction","stake","multiplier"],"properties":{"traderExternalId":{"type":"string"},"clientOrderId":{"type":"string","minLength":8,"maxLength":64},"asset":{"type":"string","minLength":1},"direction":{"type":"string","enum":["up","down"]},"stake":{"type":"number","minimum":1},"multiplier":{"type":"number","minimum":1},"stopLoss":{"type":"number","minimum":0},"takeProfit":{"type":"number","minimum":0}}}}}},"responses":{"200":{"description":"Default Response"}}}},"/v1/orders/multiplier/{orderId}/close":{"post":{"parameters":[{"schema":{"type":"string"},"in":"path","name":"orderId","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/positions":{"get":{"parameters":[{"schema":{"type":"string"},"in":"query","name":"traderExternalId","required":false}],"responses":{"200":{"description":"Default Response"}}}},"/v1/multipliers/spec/{asset}":{"get":{"parameters":[{"schema":{"type":"string"},"in":"path","name":"asset","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/copy/leaders":{"get":{"parameters":[{"schema":{"type":"string","enum":["tenant","global"]},"in":"query","name":"scope","required":false}],"responses":{"200":{"description":"Default Response"}}}},"/v1/copy/follow":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["traderExternalId","leaderId"],"properties":{"traderExternalId":{"type":"string"},"leaderId":{"type":"string"},"riskPct":{"type":"number","minimum":1,"maximum":200},"maxDrawdownPct":{"type":"number","minimum":5,"maximum":90}}}}}},"responses":{"200":{"description":"Default Response"}}}},"/v1/copy/unfollow":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["traderExternalId","leaderId"],"properties":{"traderExternalId":{"type":"string"},"leaderId":{"type":"string"}}}}}},"responses":{"200":{"description":"Default Response"}}}},"/v1/copy/me":{"get":{"parameters":[{"schema":{"type":"string"},"in":"query","name":"traderExternalId","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/ai/copilot/signal":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["asset"],"properties":{"asset":{"type":"string","minLength":1},"traderExternalId":{"type":"string"},"balance":{"type":"number","minimum":0,"description":"Override balance used in prompt context"}}}}}},"responses":{"200":{"description":"Default Response"}}}},"/v1/templates":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/v1/templates/{slug}/deploy":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["tenantSlug","brandName"],"properties":{"tenantSlug":{"type":"string","pattern":"^[a-z0-9][a-z0-9-]{1,30}[a-z0-9]$"},"brandName":{"type":"string","minLength":2,"maxLength":60},"primaryColor":{"type":"string","pattern":"^#[0-9a-fA-F]{6}$"},"contactEmail":{"type":"string","format":"email"}}}}}},"parameters":[{"schema":{"type":"string"},"in":"path","name":"slug","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/templates/mine":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/v1/keys":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"label":{"type":"string","maxLength":80},"scopes":{"type":"array","items":{"type":"string"}}}}}}},"responses":{"200":{"description":"Default Response"}}},"get":{"responses":{"200":{"description":"Default Response"}}}},"/v1/keys/{id}":{"delete":{"parameters":[{"schema":{"type":"string"},"in":"path","name":"id","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/traders/signup":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["email","password"],"properties":{"email":{"type":"string","minLength":5,"maxLength":254},"password":{"type":"string","minLength":8,"maxLength":256},"name":{"type":"string","maxLength":128}}}}}},"responses":{"200":{"description":"Default Response"}}}},"/v1/traders/login":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["email","password"],"properties":{"email":{"type":"string","minLength":5,"maxLength":254},"password":{"type":"string","minLength":1,"maxLength":256}}}}}},"responses":{"200":{"description":"Default Response"}}}},"/v1/traders/me":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/v1/traders/logout":{"post":{"responses":{"200":{"description":"Default Response"}}}},"/v1/marketplace/bots":{"get":{"parameters":[{"schema":{"type":"integer","minimum":1,"default":1},"in":"query","name":"page","required":false},{"schema":{"type":"integer","minimum":1,"maximum":100,"default":20},"in":"query","name":"limit","required":false},{"schema":{"type":"string"},"in":"query","name":"category","required":false},{"schema":{"type":"string"},"in":"query","name":"riskLevel","required":false},{"schema":{"type":"string"},"in":"query","name":"search","required":false},{"schema":{"type":"string","enum":["newest","top-rated","top-downloads"],"default":"newest"},"in":"query","name":"sort","required":false}],"responses":{"200":{"description":"Default Response"}}}},"/v1/marketplace/bots/{id}":{"get":{"parameters":[{"schema":{"type":"string"},"in":"path","name":"id","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/marketplace/bots/{id}/reviews":{"get":{"parameters":[{"schema":{"type":"integer","minimum":1,"default":1},"in":"query","name":"page","required":false},{"schema":{"type":"integer","minimum":1,"maximum":50,"default":20},"in":"query","name":"limit","required":false},{"schema":{"type":"string"},"in":"path","name":"id","required":true}],"responses":{"200":{"description":"Default Response"}}},"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["rating"],"properties":{"rating":{"type":"integer","minimum":1,"maximum":5},"comment":{"type":"string","maxLength":2000}}}}}},"parameters":[{"schema":{"type":"string"},"in":"path","name":"id","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/marketplace/bots/{id}/purchase":{"post":{"parameters":[{"schema":{"type":"string"},"in":"path","name":"id","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/marketplace/bots/{id}/subscribe":{"post":{"parameters":[{"schema":{"type":"string"},"in":"path","name":"id","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/marketplace/subscriptions/{id}/cancel":{"post":{"parameters":[{"schema":{"type":"string"},"in":"path","name":"id","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/marketplace/my/purchases":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/v1/marketplace/my/subscriptions":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/v1/marketplace/creator/bots":{"get":{"responses":{"200":{"description":"Default Response"}}},"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name","description","category","riskLevel","strategyType","code"],"properties":{"name":{"type":"string","minLength":3,"maxLength":120},"description":{"type":"string","minLength":10,"maxLength":500},"longDescription":{"type":"string","maxLength":5000},"category":{"type":"string","enum":["trend","scalp","grid","ai","arbitrage","custom"]},"riskLevel":{"type":"string","enum":["low","medium","high"]},"strategyType":{"type":"string"},"supportedAssets":{"type":"array","items":{"type":"string"}},"screenshots":{"type":"array","items":{"type":"string"}},"demoVideoUrl":{"type":"string"},"oneTimePriceUsd":{"type":"number","minimum":0},"monthlyPriceUsd":{"type":"number","minimum":0},"code":{"type":"string","minLength":1},"version":{"type":"string"}}}}}},"responses":{"200":{"description":"Default Response"}}}},"/v1/marketplace/creator/bots/{id}":{"patch":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"description":{"type":"string","maxLength":500},"longDescription":{"type":"string","maxLength":5000},"screenshots":{"type":"array","items":{"type":"string"}},"demoVideoUrl":{"type":"string"},"name":{"type":"string","minLength":3,"maxLength":120},"category":{"type":"string"},"riskLevel":{"type":"string"},"strategyType":{"type":"string"},"supportedAssets":{"type":"array","items":{"type":"string"}},"oneTimePriceUsd":{"type":"number","minimum":0},"monthlyPriceUsd":{"type":"number","minimum":0},"code":{"type":"string"}}}}}},"parameters":[{"schema":{"type":"string"},"in":"path","name":"id","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/marketplace/creator/bots/{id}/publish":{"post":{"parameters":[{"schema":{"type":"string"},"in":"path","name":"id","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/marketplace/creator/bots/{id}/retire":{"post":{"parameters":[{"schema":{"type":"string"},"in":"path","name":"id","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/marketplace/creator/earnings":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/v1/marketplace/creator/payouts":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["amountUsd","destinationAddress"],"properties":{"amountUsd":{"type":"number","minimum":0.01},"destinationAddress":{"type":"string","minLength":34,"maxLength":34}}}}}},"responses":{"200":{"description":"Default Response"}}},"get":{"parameters":[{"schema":{"type":"integer","minimum":1,"default":1},"in":"query","name":"page","required":false},{"schema":{"type":"integer","minimum":1,"maximum":100,"default":20},"in":"query","name":"limit","required":false}],"responses":{"200":{"description":"Default Response"}}}},"/v1/admin/marketplace/purchases/{id}/refund":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["reason"],"properties":{"reason":{"type":"string","minLength":3}}}}}},"parameters":[{"schema":{"type":"string"},"in":"path","name":"id","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/ai/bot-analysis":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["symbol","recentCandles","currentPrice"],"properties":{"symbol":{"type":"string"},"currentPrice":{"type":"number"},"strategyHint":{"type":"string"},"recentCandles":{"type":"array","maxItems":200,"items":{"type":"object","required":["epoch","open","high","low","close"],"properties":{"epoch":{"type":"number"},"open":{"type":"number"},"high":{"type":"number"},"low":{"type":"number"},"close":{"type":"number"}}}}}}}}},"responses":{"200":{"description":"Default Response"}}}},"/v1/_spec":{"get":{"responses":{"200":{"description":"Default Response"}}}}},"servers":[{"url":"https://api.varjix.com","description":"Production"}],"security":[{"bearerAuth":[]}],"tags":[{"name":"Auth","description":"Partner sign-in + trader Deriv token exchange"},{"name":"Identity","description":"Current partner profile + plan + scopes"},{"name":"Accounts","description":"Trader Deriv account management"},{"name":"Trading","description":"Place / close / list orders"},{"name":"Keys","description":"Partner self-service API key CRUD (cookie-authenticated)"}]}