Create webhook
curl --request POST \
--url https://api.struct.to/v1/webhooks \
--header 'Content-Type: application/json' \
--data '
{
"url": "<string>",
"secret": "<string>",
"filters": {
"wallet_addresses": [
"<string>"
],
"traders": [
"<string>"
],
"condition_ids": [
"<string>"
],
"position_ids": [
"<string>"
],
"event_slugs": [
"<string>"
],
"tags": [
"<string>"
],
"series_slugs": [
"<string>"
],
"outcomes": [
"<string>"
],
"position_outcome_indices": [
1
],
"trade_types": [
"<string>"
],
"min_usd_value": 123,
"min_price": 123,
"max_price": 123,
"min_realized_pnl_usd": 123,
"max_realized_pnl_usd": 123,
"min_volume_usd": 123,
"max_volume_usd": 123,
"min_buy_usd": 123,
"min_sell_volume_usd": 123,
"min_win_rate": 123,
"min_markets_traded": 123,
"min_net_shares": 123,
"max_net_shares": 123,
"min_fees": 123,
"min_txns": 123,
"min_unique_traders": 123,
"min_price_change_pct": 123,
"min_probability_change_pct": 123,
"timeframes": [],
"milestone_amounts": [
123
],
"spike_ratio": 123,
"window_secs": 1,
"exclude_shortterm_markets": true,
"asset_symbols": [],
"one_shot": true,
"fire_if_already_past": true
},
"description": "<string>"
}
'import requests
url = "https://api.struct.to/v1/webhooks"
payload = {
"url": "<string>",
"secret": "<string>",
"filters": {
"wallet_addresses": ["<string>"],
"traders": ["<string>"],
"condition_ids": ["<string>"],
"position_ids": ["<string>"],
"event_slugs": ["<string>"],
"tags": ["<string>"],
"series_slugs": ["<string>"],
"outcomes": ["<string>"],
"position_outcome_indices": [1],
"trade_types": ["<string>"],
"min_usd_value": 123,
"min_price": 123,
"max_price": 123,
"min_realized_pnl_usd": 123,
"max_realized_pnl_usd": 123,
"min_volume_usd": 123,
"max_volume_usd": 123,
"min_buy_usd": 123,
"min_sell_volume_usd": 123,
"min_win_rate": 123,
"min_markets_traded": 123,
"min_net_shares": 123,
"max_net_shares": 123,
"min_fees": 123,
"min_txns": 123,
"min_unique_traders": 123,
"min_price_change_pct": 123,
"min_probability_change_pct": 123,
"timeframes": [],
"milestone_amounts": [123],
"spike_ratio": 123,
"window_secs": 1,
"exclude_shortterm_markets": True,
"asset_symbols": [],
"one_shot": True,
"fire_if_already_past": True
},
"description": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
url: '<string>',
secret: '<string>',
filters: {
wallet_addresses: ['<string>'],
traders: ['<string>'],
condition_ids: ['<string>'],
position_ids: ['<string>'],
event_slugs: ['<string>'],
tags: ['<string>'],
series_slugs: ['<string>'],
outcomes: ['<string>'],
position_outcome_indices: [1],
trade_types: ['<string>'],
min_usd_value: 123,
min_price: 123,
max_price: 123,
min_realized_pnl_usd: 123,
max_realized_pnl_usd: 123,
min_volume_usd: 123,
max_volume_usd: 123,
min_buy_usd: 123,
min_sell_volume_usd: 123,
min_win_rate: 123,
min_markets_traded: 123,
min_net_shares: 123,
max_net_shares: 123,
min_fees: 123,
min_txns: 123,
min_unique_traders: 123,
min_price_change_pct: 123,
min_probability_change_pct: 123,
timeframes: [],
milestone_amounts: [123],
spike_ratio: 123,
window_secs: 1,
exclude_shortterm_markets: true,
asset_symbols: [],
one_shot: true,
fire_if_already_past: true
},
description: '<string>'
})
};
fetch('https://api.struct.to/v1/webhooks', 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.struct.to/v1/webhooks",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'url' => '<string>',
'secret' => '<string>',
'filters' => [
'wallet_addresses' => [
'<string>'
],
'traders' => [
'<string>'
],
'condition_ids' => [
'<string>'
],
'position_ids' => [
'<string>'
],
'event_slugs' => [
'<string>'
],
'tags' => [
'<string>'
],
'series_slugs' => [
'<string>'
],
'outcomes' => [
'<string>'
],
'position_outcome_indices' => [
1
],
'trade_types' => [
'<string>'
],
'min_usd_value' => 123,
'min_price' => 123,
'max_price' => 123,
'min_realized_pnl_usd' => 123,
'max_realized_pnl_usd' => 123,
'min_volume_usd' => 123,
'max_volume_usd' => 123,
'min_buy_usd' => 123,
'min_sell_volume_usd' => 123,
'min_win_rate' => 123,
'min_markets_traded' => 123,
'min_net_shares' => 123,
'max_net_shares' => 123,
'min_fees' => 123,
'min_txns' => 123,
'min_unique_traders' => 123,
'min_price_change_pct' => 123,
'min_probability_change_pct' => 123,
'timeframes' => [
],
'milestone_amounts' => [
123
],
'spike_ratio' => 123,
'window_secs' => 1,
'exclude_shortterm_markets' => true,
'asset_symbols' => [
],
'one_shot' => true,
'fire_if_already_past' => true
],
'description' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.struct.to/v1/webhooks"
payload := strings.NewReader("{\n \"url\": \"<string>\",\n \"secret\": \"<string>\",\n \"filters\": {\n \"wallet_addresses\": [\n \"<string>\"\n ],\n \"traders\": [\n \"<string>\"\n ],\n \"condition_ids\": [\n \"<string>\"\n ],\n \"position_ids\": [\n \"<string>\"\n ],\n \"event_slugs\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"series_slugs\": [\n \"<string>\"\n ],\n \"outcomes\": [\n \"<string>\"\n ],\n \"position_outcome_indices\": [\n 1\n ],\n \"trade_types\": [\n \"<string>\"\n ],\n \"min_usd_value\": 123,\n \"min_price\": 123,\n \"max_price\": 123,\n \"min_realized_pnl_usd\": 123,\n \"max_realized_pnl_usd\": 123,\n \"min_volume_usd\": 123,\n \"max_volume_usd\": 123,\n \"min_buy_usd\": 123,\n \"min_sell_volume_usd\": 123,\n \"min_win_rate\": 123,\n \"min_markets_traded\": 123,\n \"min_net_shares\": 123,\n \"max_net_shares\": 123,\n \"min_fees\": 123,\n \"min_txns\": 123,\n \"min_unique_traders\": 123,\n \"min_price_change_pct\": 123,\n \"min_probability_change_pct\": 123,\n \"timeframes\": [],\n \"milestone_amounts\": [\n 123\n ],\n \"spike_ratio\": 123,\n \"window_secs\": 1,\n \"exclude_shortterm_markets\": true,\n \"asset_symbols\": [],\n \"one_shot\": true,\n \"fire_if_already_past\": true\n },\n \"description\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.struct.to/v1/webhooks")
.header("Content-Type", "application/json")
.body("{\n \"url\": \"<string>\",\n \"secret\": \"<string>\",\n \"filters\": {\n \"wallet_addresses\": [\n \"<string>\"\n ],\n \"traders\": [\n \"<string>\"\n ],\n \"condition_ids\": [\n \"<string>\"\n ],\n \"position_ids\": [\n \"<string>\"\n ],\n \"event_slugs\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"series_slugs\": [\n \"<string>\"\n ],\n \"outcomes\": [\n \"<string>\"\n ],\n \"position_outcome_indices\": [\n 1\n ],\n \"trade_types\": [\n \"<string>\"\n ],\n \"min_usd_value\": 123,\n \"min_price\": 123,\n \"max_price\": 123,\n \"min_realized_pnl_usd\": 123,\n \"max_realized_pnl_usd\": 123,\n \"min_volume_usd\": 123,\n \"max_volume_usd\": 123,\n \"min_buy_usd\": 123,\n \"min_sell_volume_usd\": 123,\n \"min_win_rate\": 123,\n \"min_markets_traded\": 123,\n \"min_net_shares\": 123,\n \"max_net_shares\": 123,\n \"min_fees\": 123,\n \"min_txns\": 123,\n \"min_unique_traders\": 123,\n \"min_price_change_pct\": 123,\n \"min_probability_change_pct\": 123,\n \"timeframes\": [],\n \"milestone_amounts\": [\n 123\n ],\n \"spike_ratio\": 123,\n \"window_secs\": 1,\n \"exclude_shortterm_markets\": true,\n \"asset_symbols\": [],\n \"one_shot\": true,\n \"fire_if_already_past\": true\n },\n \"description\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.struct.to/v1/webhooks")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"url\": \"<string>\",\n \"secret\": \"<string>\",\n \"filters\": {\n \"wallet_addresses\": [\n \"<string>\"\n ],\n \"traders\": [\n \"<string>\"\n ],\n \"condition_ids\": [\n \"<string>\"\n ],\n \"position_ids\": [\n \"<string>\"\n ],\n \"event_slugs\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"series_slugs\": [\n \"<string>\"\n ],\n \"outcomes\": [\n \"<string>\"\n ],\n \"position_outcome_indices\": [\n 1\n ],\n \"trade_types\": [\n \"<string>\"\n ],\n \"min_usd_value\": 123,\n \"min_price\": 123,\n \"max_price\": 123,\n \"min_realized_pnl_usd\": 123,\n \"max_realized_pnl_usd\": 123,\n \"min_volume_usd\": 123,\n \"max_volume_usd\": 123,\n \"min_buy_usd\": 123,\n \"min_sell_volume_usd\": 123,\n \"min_win_rate\": 123,\n \"min_markets_traded\": 123,\n \"min_net_shares\": 123,\n \"max_net_shares\": 123,\n \"min_fees\": 123,\n \"min_txns\": 123,\n \"min_unique_traders\": 123,\n \"min_price_change_pct\": 123,\n \"min_probability_change_pct\": 123,\n \"timeframes\": [],\n \"milestone_amounts\": [\n 123\n ],\n \"spike_ratio\": 123,\n \"window_secs\": 1,\n \"exclude_shortterm_markets\": true,\n \"asset_symbols\": [],\n \"one_shot\": true,\n \"fire_if_already_past\": true\n },\n \"description\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"url": "<string>",
"created_at": 123,
"updated_at": 123,
"has_secret": true,
"filters": {
"wallet_addresses": [
"<string>"
],
"traders": [
"<string>"
],
"condition_ids": [
"<string>"
],
"min_usd_value": 123,
"event_slugs": [
"<string>"
],
"tags": [
"<string>"
],
"series_slugs": [
"<string>"
],
"min_price": 123,
"max_price": 123,
"min_realized_pnl_usd": 123,
"max_realized_pnl_usd": 123,
"min_volume_usd": 123,
"max_volume_usd": 123,
"min_liquidity_usd": 123,
"max_liquidity_usd": 123,
"min_buy_usd": 123,
"min_win_rate": 123,
"min_markets_traded": 123,
"min_net_shares": 123,
"max_net_shares": 123,
"position_ids": [
"<string>"
],
"outcomes": [
"<string>"
],
"position_outcome_indices": [
1
],
"trade_types": [
"<string>"
],
"min_fees": 123,
"min_txns": 123,
"min_unique_traders": 123,
"min_sell_volume_usd": 123,
"min_price_change_pct": 123,
"min_probability_change_pct": 123,
"timeframes": [],
"milestone_amounts": [
123
],
"spike_ratio": 123,
"exclude_shortterm_markets": true,
"asset_symbols": [],
"window_secs": 1,
"oracle_event_types": [
"<string>"
],
"one_shot": true,
"fire_if_already_past": true
},
"description": "<string>",
"credits_used_24h": 123
}Webhooks
Create webhook
Create a new webhook subscription for real-time event notifications
POST
/
webhooks
Create webhook
curl --request POST \
--url https://api.struct.to/v1/webhooks \
--header 'Content-Type: application/json' \
--data '
{
"url": "<string>",
"secret": "<string>",
"filters": {
"wallet_addresses": [
"<string>"
],
"traders": [
"<string>"
],
"condition_ids": [
"<string>"
],
"position_ids": [
"<string>"
],
"event_slugs": [
"<string>"
],
"tags": [
"<string>"
],
"series_slugs": [
"<string>"
],
"outcomes": [
"<string>"
],
"position_outcome_indices": [
1
],
"trade_types": [
"<string>"
],
"min_usd_value": 123,
"min_price": 123,
"max_price": 123,
"min_realized_pnl_usd": 123,
"max_realized_pnl_usd": 123,
"min_volume_usd": 123,
"max_volume_usd": 123,
"min_buy_usd": 123,
"min_sell_volume_usd": 123,
"min_win_rate": 123,
"min_markets_traded": 123,
"min_net_shares": 123,
"max_net_shares": 123,
"min_fees": 123,
"min_txns": 123,
"min_unique_traders": 123,
"min_price_change_pct": 123,
"min_probability_change_pct": 123,
"timeframes": [],
"milestone_amounts": [
123
],
"spike_ratio": 123,
"window_secs": 1,
"exclude_shortterm_markets": true,
"asset_symbols": [],
"one_shot": true,
"fire_if_already_past": true
},
"description": "<string>"
}
'import requests
url = "https://api.struct.to/v1/webhooks"
payload = {
"url": "<string>",
"secret": "<string>",
"filters": {
"wallet_addresses": ["<string>"],
"traders": ["<string>"],
"condition_ids": ["<string>"],
"position_ids": ["<string>"],
"event_slugs": ["<string>"],
"tags": ["<string>"],
"series_slugs": ["<string>"],
"outcomes": ["<string>"],
"position_outcome_indices": [1],
"trade_types": ["<string>"],
"min_usd_value": 123,
"min_price": 123,
"max_price": 123,
"min_realized_pnl_usd": 123,
"max_realized_pnl_usd": 123,
"min_volume_usd": 123,
"max_volume_usd": 123,
"min_buy_usd": 123,
"min_sell_volume_usd": 123,
"min_win_rate": 123,
"min_markets_traded": 123,
"min_net_shares": 123,
"max_net_shares": 123,
"min_fees": 123,
"min_txns": 123,
"min_unique_traders": 123,
"min_price_change_pct": 123,
"min_probability_change_pct": 123,
"timeframes": [],
"milestone_amounts": [123],
"spike_ratio": 123,
"window_secs": 1,
"exclude_shortterm_markets": True,
"asset_symbols": [],
"one_shot": True,
"fire_if_already_past": True
},
"description": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
url: '<string>',
secret: '<string>',
filters: {
wallet_addresses: ['<string>'],
traders: ['<string>'],
condition_ids: ['<string>'],
position_ids: ['<string>'],
event_slugs: ['<string>'],
tags: ['<string>'],
series_slugs: ['<string>'],
outcomes: ['<string>'],
position_outcome_indices: [1],
trade_types: ['<string>'],
min_usd_value: 123,
min_price: 123,
max_price: 123,
min_realized_pnl_usd: 123,
max_realized_pnl_usd: 123,
min_volume_usd: 123,
max_volume_usd: 123,
min_buy_usd: 123,
min_sell_volume_usd: 123,
min_win_rate: 123,
min_markets_traded: 123,
min_net_shares: 123,
max_net_shares: 123,
min_fees: 123,
min_txns: 123,
min_unique_traders: 123,
min_price_change_pct: 123,
min_probability_change_pct: 123,
timeframes: [],
milestone_amounts: [123],
spike_ratio: 123,
window_secs: 1,
exclude_shortterm_markets: true,
asset_symbols: [],
one_shot: true,
fire_if_already_past: true
},
description: '<string>'
})
};
fetch('https://api.struct.to/v1/webhooks', 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.struct.to/v1/webhooks",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'url' => '<string>',
'secret' => '<string>',
'filters' => [
'wallet_addresses' => [
'<string>'
],
'traders' => [
'<string>'
],
'condition_ids' => [
'<string>'
],
'position_ids' => [
'<string>'
],
'event_slugs' => [
'<string>'
],
'tags' => [
'<string>'
],
'series_slugs' => [
'<string>'
],
'outcomes' => [
'<string>'
],
'position_outcome_indices' => [
1
],
'trade_types' => [
'<string>'
],
'min_usd_value' => 123,
'min_price' => 123,
'max_price' => 123,
'min_realized_pnl_usd' => 123,
'max_realized_pnl_usd' => 123,
'min_volume_usd' => 123,
'max_volume_usd' => 123,
'min_buy_usd' => 123,
'min_sell_volume_usd' => 123,
'min_win_rate' => 123,
'min_markets_traded' => 123,
'min_net_shares' => 123,
'max_net_shares' => 123,
'min_fees' => 123,
'min_txns' => 123,
'min_unique_traders' => 123,
'min_price_change_pct' => 123,
'min_probability_change_pct' => 123,
'timeframes' => [
],
'milestone_amounts' => [
123
],
'spike_ratio' => 123,
'window_secs' => 1,
'exclude_shortterm_markets' => true,
'asset_symbols' => [
],
'one_shot' => true,
'fire_if_already_past' => true
],
'description' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.struct.to/v1/webhooks"
payload := strings.NewReader("{\n \"url\": \"<string>\",\n \"secret\": \"<string>\",\n \"filters\": {\n \"wallet_addresses\": [\n \"<string>\"\n ],\n \"traders\": [\n \"<string>\"\n ],\n \"condition_ids\": [\n \"<string>\"\n ],\n \"position_ids\": [\n \"<string>\"\n ],\n \"event_slugs\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"series_slugs\": [\n \"<string>\"\n ],\n \"outcomes\": [\n \"<string>\"\n ],\n \"position_outcome_indices\": [\n 1\n ],\n \"trade_types\": [\n \"<string>\"\n ],\n \"min_usd_value\": 123,\n \"min_price\": 123,\n \"max_price\": 123,\n \"min_realized_pnl_usd\": 123,\n \"max_realized_pnl_usd\": 123,\n \"min_volume_usd\": 123,\n \"max_volume_usd\": 123,\n \"min_buy_usd\": 123,\n \"min_sell_volume_usd\": 123,\n \"min_win_rate\": 123,\n \"min_markets_traded\": 123,\n \"min_net_shares\": 123,\n \"max_net_shares\": 123,\n \"min_fees\": 123,\n \"min_txns\": 123,\n \"min_unique_traders\": 123,\n \"min_price_change_pct\": 123,\n \"min_probability_change_pct\": 123,\n \"timeframes\": [],\n \"milestone_amounts\": [\n 123\n ],\n \"spike_ratio\": 123,\n \"window_secs\": 1,\n \"exclude_shortterm_markets\": true,\n \"asset_symbols\": [],\n \"one_shot\": true,\n \"fire_if_already_past\": true\n },\n \"description\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.struct.to/v1/webhooks")
.header("Content-Type", "application/json")
.body("{\n \"url\": \"<string>\",\n \"secret\": \"<string>\",\n \"filters\": {\n \"wallet_addresses\": [\n \"<string>\"\n ],\n \"traders\": [\n \"<string>\"\n ],\n \"condition_ids\": [\n \"<string>\"\n ],\n \"position_ids\": [\n \"<string>\"\n ],\n \"event_slugs\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"series_slugs\": [\n \"<string>\"\n ],\n \"outcomes\": [\n \"<string>\"\n ],\n \"position_outcome_indices\": [\n 1\n ],\n \"trade_types\": [\n \"<string>\"\n ],\n \"min_usd_value\": 123,\n \"min_price\": 123,\n \"max_price\": 123,\n \"min_realized_pnl_usd\": 123,\n \"max_realized_pnl_usd\": 123,\n \"min_volume_usd\": 123,\n \"max_volume_usd\": 123,\n \"min_buy_usd\": 123,\n \"min_sell_volume_usd\": 123,\n \"min_win_rate\": 123,\n \"min_markets_traded\": 123,\n \"min_net_shares\": 123,\n \"max_net_shares\": 123,\n \"min_fees\": 123,\n \"min_txns\": 123,\n \"min_unique_traders\": 123,\n \"min_price_change_pct\": 123,\n \"min_probability_change_pct\": 123,\n \"timeframes\": [],\n \"milestone_amounts\": [\n 123\n ],\n \"spike_ratio\": 123,\n \"window_secs\": 1,\n \"exclude_shortterm_markets\": true,\n \"asset_symbols\": [],\n \"one_shot\": true,\n \"fire_if_already_past\": true\n },\n \"description\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.struct.to/v1/webhooks")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"url\": \"<string>\",\n \"secret\": \"<string>\",\n \"filters\": {\n \"wallet_addresses\": [\n \"<string>\"\n ],\n \"traders\": [\n \"<string>\"\n ],\n \"condition_ids\": [\n \"<string>\"\n ],\n \"position_ids\": [\n \"<string>\"\n ],\n \"event_slugs\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"series_slugs\": [\n \"<string>\"\n ],\n \"outcomes\": [\n \"<string>\"\n ],\n \"position_outcome_indices\": [\n 1\n ],\n \"trade_types\": [\n \"<string>\"\n ],\n \"min_usd_value\": 123,\n \"min_price\": 123,\n \"max_price\": 123,\n \"min_realized_pnl_usd\": 123,\n \"max_realized_pnl_usd\": 123,\n \"min_volume_usd\": 123,\n \"max_volume_usd\": 123,\n \"min_buy_usd\": 123,\n \"min_sell_volume_usd\": 123,\n \"min_win_rate\": 123,\n \"min_markets_traded\": 123,\n \"min_net_shares\": 123,\n \"max_net_shares\": 123,\n \"min_fees\": 123,\n \"min_txns\": 123,\n \"min_unique_traders\": 123,\n \"min_price_change_pct\": 123,\n \"min_probability_change_pct\": 123,\n \"timeframes\": [],\n \"milestone_amounts\": [\n 123\n ],\n \"spike_ratio\": 123,\n \"window_secs\": 1,\n \"exclude_shortterm_markets\": true,\n \"asset_symbols\": [],\n \"one_shot\": true,\n \"fire_if_already_past\": true\n },\n \"description\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"url": "<string>",
"created_at": 123,
"updated_at": 123,
"has_secret": true,
"filters": {
"wallet_addresses": [
"<string>"
],
"traders": [
"<string>"
],
"condition_ids": [
"<string>"
],
"min_usd_value": 123,
"event_slugs": [
"<string>"
],
"tags": [
"<string>"
],
"series_slugs": [
"<string>"
],
"min_price": 123,
"max_price": 123,
"min_realized_pnl_usd": 123,
"max_realized_pnl_usd": 123,
"min_volume_usd": 123,
"max_volume_usd": 123,
"min_liquidity_usd": 123,
"max_liquidity_usd": 123,
"min_buy_usd": 123,
"min_win_rate": 123,
"min_markets_traded": 123,
"min_net_shares": 123,
"max_net_shares": 123,
"position_ids": [
"<string>"
],
"outcomes": [
"<string>"
],
"position_outcome_indices": [
1
],
"trade_types": [
"<string>"
],
"min_fees": 123,
"min_txns": 123,
"min_unique_traders": 123,
"min_sell_volume_usd": 123,
"min_price_change_pct": 123,
"min_probability_change_pct": 123,
"timeframes": [],
"milestone_amounts": [
123
],
"spike_ratio": 123,
"exclude_shortterm_markets": true,
"asset_symbols": [],
"window_secs": 1,
"oracle_event_types": [
"<string>"
],
"one_shot": true,
"fire_if_already_past": true
},
"description": "<string>",
"credits_used_24h": 123
}Body
application/json
Request body for creating a webhook
Destination URL for webhook deliveries (must be HTTPS)
Event to subscribe to
Available options:
trader_first_trade, trader_new_market, trader_whale_trade, trader_new_trade, trader_trade_event, trader_global_pnl, trader_market_pnl, trader_category_pnl, trader_position_resolved, trader_exit_markers, position_holder_metrics, condition_holder_metrics, event_holder_metrics, condition_metrics, event_metrics, tag_metrics, position_metrics, position_liquidity, market_liquidity, event_liquidity, market_volume_milestone, event_volume_milestone, position_volume_milestone, market_volume_spike, event_volume_spike, position_volume_spike, close_to_bond, market_created, asset_price_tick, asset_price_window_update, price_spike, probability_spike, oracle_events, price_threshold, market_resolved, market_disputed Optional secret for HMAC signature verification
Optional filters for event matching
Show child attributes
Show child attributes
Optional description/name
Response
Webhook created successfully
Webhook response (returned from API)
Unique webhook ID
Destination URL
Subscribed event
Available options:
trader_first_trade, trader_new_market, trader_whale_trade, trader_new_trade, trader_trade_event, trader_global_pnl, trader_market_pnl, trader_category_pnl, trader_position_resolved, trader_exit_markers, position_holder_metrics, condition_holder_metrics, event_holder_metrics, condition_metrics, event_metrics, tag_metrics, position_metrics, position_liquidity, market_liquidity, event_liquidity, market_volume_milestone, event_volume_milestone, position_volume_milestone, market_volume_spike, event_volume_spike, position_volume_spike, close_to_bond, market_created, asset_price_tick, asset_price_window_update, price_spike, probability_spike, oracle_events, price_threshold, market_resolved, market_disputed Current webhook status
Available options:
active, paused, disabled, suspended Created timestamp (ms)
Updated timestamp (ms)
Whether an HMAC secret is configured
Active filters (omitted when no filters are set)
Show child attributes
Show child attributes
Description/name
Credits consumed by this webhook in the last 24 hours
Last modified on July 13, 2026
Was this page helpful?
⌘I