RIP.BET Docs

API reference

This is the public route map, grouped by capability. Each route lists the authentication it requires, and every path is relative to the base URL for your environment.

Auth legend

The Auth column, where present in the route tables below, uses one of these levels. See Authentication for the signing model and Errors and limits for what a failed check returns.

AuthWhat the caller sends
NoneNo credentials. Safe for unauthenticated reads.
JWTA bearer token (Authorization: Bearer <jwt>) for an authenticated user.
JWT + wallet signatureA JWT plus a user-signed EIP-712 order payload.
JWT + agent signatureA JWT plus a signature from an approved agent wallet.
JWT + approved agentA JWT, an active approved agent wallet, and (when waitlist gating is enabled) allowlist access.
JWT + signaturesA JWT plus the required wallet and/or agent signature(s) for the action.
JWT or deployment policyA JWT; whether a caller may read another address is deployment/partner-contract dependent. May return 403 depending on deployment policy.
JWT when gatedNo credentials unless the deployment gates the route, in which case a valid JWT is required.
None or gated by environmentNo credentials by default, but a deployment may require a JWT.

Authentication (a valid JWT) and authorization (allowlist access) are distinct. When waitlist access is enabled, market-data and binary/trading routes enforce allowlist access on top of the JWT check: expect 401 without a token and 403 when the user is authenticated but not allowed. A few JWT routes require only a valid JWT and never apply the allowlist — notably GET/POST /v1/access/request, the route used to request access (gating it behind the allowlist would prevent onboarding).

Health and runtime

MethodPathAuthNotes
GET/liveNoneProcess is running
GET/readyNoneService is ready to serve traffic
GET/versionNoneAPI version metadata
GET/v1/runtime-configNoneWaitlist and feature flags

/metrics is not a public API endpoint.

Access

MethodPathAuthNotes
GET/v1/access/selfJWTCurrent identity and access state
GET/v1/access/requestJWTCurrent user's access request
POST/v1/access/requestJWTSubmit or update an access request

Scalar market data

These routes are available in scalar mode. When waitlist access is enabled, they require an allowed JWT.

MethodPathNotes
GET/v1/marketsScalar asset metadata
GET/v1/bucketCurrent and next bucket
GET/v1/bucketsHistorical buckets
GET/v1/buckets/{asset_code}/{start_ts}One bucket
GET/v1/book?asset=NYCTMP1Cached order book
GET/v1/ticker?asset=NYCTMP1Current mark, OI, and utilization
GET/v1/oi-statusOI and close-only state

Scalar trading

MethodPathAuthNotes
POST/v1/predictJWTSimple scalar prediction package
POST/v1/ordersJWT + wallet signatureDirect signed scalar order
POST/v1/orders/prepareJWTPrepare an agent-signed order
POST/v1/orders/submitJWT + agent signatureSubmit prepared order
POST/v1/leverage/prepareJWTPrepare leverage action
POST/v1/leverage/submitJWT + agent signatureSubmit leverage action
POST/v1/closeJWT + wallet signatureReduce-only close
POST/v1/agent/approveJWTApprove an agent wallet

/v1/close-all currently returns 501 Not Implemented. Build clients around explicit position reads and individual closes.

Binary markets

Binary routes are available in binary mode and are hidden in scalar mode. Send a JWT and expect allowlist checks.

MethodPathAuthNotes
GET/v1/binary/statusJWTHealth, pause state, active asset
GET/v1/binary/marketsJWTBinary assets and phases
GET/v1/binary/bucketJWTCurrent binary bucket
GET/v1/binary/book?asset=GBETAJWTBest bid/ask snapshot
POST/v1/binary/setupJWT + signaturesSet binary leverage to 2
POST/v1/binary/predictJWTServer-assisted binary entry
POST/v1/binary/closeJWTReduce-only binary close

Binary diagnostic endpoints are not documented here as public trading APIs.

Outcome markets

Outcome routes require the outcome feature to be enabled; check /v1/runtime-config first. Prepare routes also need an active approved agent — see Outcome markets for the full prerequisite.

MethodPathAuthNotes
GET/v1/outcomes/metaNoneOutcome registry, sides, expiry state
GET/v1/outcomes/price-historyNoneRecent price series for outcome coins
GET/v1/outcomes/ohlcNoneOHLC series for outcome coins
POST/v1/outcomes/transfer/prepareJWTPrepare USDH transfer
POST/v1/outcomes/transfer/submitJWT + wallet signatureSubmit prepared transfer
POST/v1/outcomes/orders/prepareJWT + approved agentPrepare outcome order
POST/v1/outcomes/orders/submitJWT + agent signatureSubmit prepared order
POST/v1/outcomes/cancel/prepareJWT + approved agentPrepare cancel by cloid
POST/v1/outcomes/cancel/submitJWT + agent signatureSubmit prepared cancel
GET/v1/outcomes/orders/open/{address}JWTOpen outcome orders
POST/v1/outcomes/order-statusJWTLookup order status by oid or cloid
POST/v1/outcomes/conversions/prepareJWT + approved agentPrepare an outcome conversion
POST/v1/outcomes/conversions/submitJWT + agent signatureSubmit a prepared conversion
GET/v1/outcomes/conversions/historyJWTConversion history

Conversion routes require outcome_conversions_enabled; check /v1/runtime-config first.

When the deployment gates access (waitlist enabled), every protected outcome route — including the submit calls, the transfer routes, GET /v1/outcomes/orders/open/{address}, and POST /v1/outcomes/order-status — enforces allowlist access on top of the auth shown above and returns 403not_allowlisted for a waitlisted user, or access_revoked for a blocked or revoked user. GET /v1/outcomes/conversions/history is JWT-only and never applies the allowlist.

Account and history

Some address-scoped reads may accept an address in the path, but access policy is deployment and partner-contract dependent. Clients should be ready to send a JWT and handle 403.

MethodPathAuthNotes
GET/v1/positions/{address}JWT or deployment policyReconstructed positions
GET/v1/account/{address}JWT or deployment policyAccount summary
GET/v1/fees/{address}JWT or deployment policyEffective fee rates
GET/v1/trades/{address}JWT or deployment policyFills
GET/v1/orders/open/{address}JWT or deployment policyOpen orders
GET/v1/orders/history/{address}JWT or deployment policyFilled order history
GET/v1/profile/{address}JWT or deployment policyTrader profile
PUT/v1/profileJWTUpdate own profile
GET/v1/stats/{address}JWT when gatedTrading statistics
GET/v1/pnl/calendar/{address}JWT when gatedPnL calendar

Referrals and rewards

MethodPathAuthNotes
GET/v1/referrals/resolve?code=...NoneResolve a referral code
GET/v1/referrals/codeJWTUser's codes
POST/v1/referrals/codeJWTCreate or update a code
POST/v1/referrals/intentJWTSet referral relationship
GET/v1/referrals/treeJWTReferral tree and earnings
GET/v1/referrals/payoutsJWTPayout history
GET/v1/rewards/{address}None or gated by environmentPoints and rewards

POST /v1/referrals is legacy. When the newer referral system is enabled it returns 410 Gone.

WebSocket and charts

PathNotes
/v1/wsVersioned WebSocket endpoint
/wsAlias
/tv/configTradingView UDF config
/tv/symbolsTradingView symbols
/tv/historyTradingView history
/tv/timeTradingView server time
/tv/searchTradingView symbol search
/tv-mark/*Mark-price chart endpoints in binary mode

OpenAPI spec

The repository includes a machine-readable OpenAPI document (openapi.yaml) at its root, handy for generating typed clients, validating requests, and standing up mock servers. Treat this page as the authority on which routes are public: the published OpenAPI spec currently includes internal and admin routes that are not part of the public contract, so generate clients against the public subset documented here.

Excluded routes

Admin, analytics, whitelist, runtime-setting mutation, HIP-3 deployer action, referral admin, service metrics, and operator routes are intentionally excluded from public docs. If your integration needs one of those capabilities, treat it as a partner contract issue, not a public API assumption.

POST /v1/cancel and POST /v1/schedule-cancel are also excluded. They look like order endpoints, but they are not public user endpoints in the current API.

On this page