curl --request GET \
--url https://api.orderly.org/v1/public/binary/info/{symbol}import requests
url = "https://api.orderly.org/v1/public/binary/info/{symbol}"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.orderly.org/v1/public/binary/info/{symbol}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.orderly.org/v1/public/binary/info/{symbol}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.orderly.org/v1/public/binary/info/{symbol}"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.orderly.org/v1/public/binary/info/{symbol}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.orderly.org/v1/public/binary/info/{symbol}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"symbol": "<binary_symbol>",
"product_type": "BINARY",
"status": "ACTIVE",
"activated_at": 123,
"observation_start_at": 123,
"expire_at": 123,
"s0": 123,
"index_price_symbol": "PERP_BTC_USDC",
"fee_model": "BINARY_PROBABILITY",
"s1": 123,
"outcome": "UP",
"settlement_price_per_share": 123,
"result_committed_at": 123,
"rule_version": "binary-v1",
"quote_min": 123,
"quote_max": 123,
"quote_tick": 123,
"base_min": 123,
"base_max": 123,
"base_tick": 123,
"min_notional": 123,
"price_evidence": {
"s0": {
"price": 123,
"timestamp": 123,
"source": "live"
},
"s1": {
"price": 123,
"timestamp": 123,
"source": "live"
}
},
"manual_correction": {},
"funding_period": 123,
"cap_funding": 123,
"floor_funding": 123,
"interest_rate": 123,
"cap_ir": 123,
"floor_ir": 123,
"imr_factor": 123,
"deviation_factor": 123,
"mark_index_price_deviation_floor": 123,
"mark_index_price_deviation_cap": 123
},
"timestamp": 1702989203989
}Get Orderly Predict round info for one round
GET /v1/public/binary/info/{symbol}
Returns the full lifecycle information for a single Predict round, from when it opens for trading through result publication. Clients keep polling this same endpoint after expiry instead of switching to another endpoint.
Looked up from the same snapshot as GET /v1/public/binary/info. Returns successfully even before the result is published; it never responds with a “result not ready” state. Returns RESOURCE_NOT_FOUND when the symbol does not exist, is not a Predict symbol, has not yet opened for trading, or has fallen outside the most recent 300 rounds.
Whether the result has been published is determined only by whether result_committed_at has a value, never by status, s1, or outcome.
curl --request GET \
--url https://api.orderly.org/v1/public/binary/info/{symbol}import requests
url = "https://api.orderly.org/v1/public/binary/info/{symbol}"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.orderly.org/v1/public/binary/info/{symbol}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.orderly.org/v1/public/binary/info/{symbol}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.orderly.org/v1/public/binary/info/{symbol}"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.orderly.org/v1/public/binary/info/{symbol}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.orderly.org/v1/public/binary/info/{symbol}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"symbol": "<binary_symbol>",
"product_type": "BINARY",
"status": "ACTIVE",
"activated_at": 123,
"observation_start_at": 123,
"expire_at": 123,
"s0": 123,
"index_price_symbol": "PERP_BTC_USDC",
"fee_model": "BINARY_PROBABILITY",
"s1": 123,
"outcome": "UP",
"settlement_price_per_share": 123,
"result_committed_at": 123,
"rule_version": "binary-v1",
"quote_min": 123,
"quote_max": 123,
"quote_tick": 123,
"base_min": 123,
"base_max": 123,
"base_tick": 123,
"min_notional": 123,
"price_evidence": {
"s0": {
"price": 123,
"timestamp": 123,
"source": "live"
},
"s1": {
"price": 123,
"timestamp": 123,
"source": "live"
}
},
"manual_correction": {},
"funding_period": 123,
"cap_funding": 123,
"floor_funding": 123,
"interest_rate": 123,
"cap_ir": 123,
"floor_ir": 123,
"imr_factor": 123,
"deviation_factor": 123,
"mark_index_price_deviation_floor": 123,
"mark_index_price_deviation_cap": 123
},
"timestamp": 1702989203989
}Path Parameters
The round's permanent Predict symbol, as returned by Predict info. Never constructed by the client.