@structbuild/sdk 0.6.1 → 0.6.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -88,6 +88,11 @@ export interface components {
88
88
  };
89
89
  /** @description Subscription filters for the `asset_price_tick` event. All fields are optional. */
90
90
  AssetPriceTickFilters: {
91
+ /**
92
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
93
+ * successful delivery. Applies to any webhook event.
94
+ */
95
+ one_shot?: boolean | null;
91
96
  /** @description Restrict to these crypto assets. Empty = all assets. */
92
97
  asset_symbols?: components["schemas"]["WebhookAssetSymbol"][] | null;
93
98
  };
@@ -108,6 +113,11 @@ export interface components {
108
113
  };
109
114
  /** @description Subscription filters for the `asset_price_window_update` event. All fields are optional. */
110
115
  AssetPriceWindowUpdateFilters: {
116
+ /**
117
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
118
+ * successful delivery. Applies to any webhook event.
119
+ */
120
+ one_shot?: boolean | null;
111
121
  /** @description Restrict to these crypto assets. Empty = all assets. */
112
122
  asset_symbols?: components["schemas"]["WebhookAssetSymbol"][] | null;
113
123
  /** @description Restrict to these candle sizes. Empty = all sizes. */
@@ -159,73 +169,170 @@ export interface components {
159
169
  AssetWindowFilterTimeframe: "5m" | "15m" | "1h" | "4h" | "1d" | "24h";
160
170
  /** @description Category PnL webhook payload. */
161
171
  CategoryPnlPayload: {
172
+ /** @description Trader wallet address. */
162
173
  trader?: string | null;
174
+ /** @description Category. */
163
175
  category?: string | null;
164
176
  /** @description Aggregation timeframe: "1d", "7d", "30d", or "lifetime" */
165
177
  timeframe: string;
166
- /** Format: double */
178
+ /**
179
+ * Format: double
180
+ * @description Realized pnl in USD.
181
+ */
167
182
  realized_pnl_usd?: number | null;
168
- /** Format: int64 */
183
+ /**
184
+ * Format: int64
185
+ * @description Markets in this category.
186
+ */
169
187
  markets_in_category?: number | null;
170
- /** Format: int64 */
188
+ /**
189
+ * Format: int64
190
+ * @description Markets traded.
191
+ */
171
192
  markets_traded?: number | null;
172
- /** Format: int64 */
193
+ /**
194
+ * Format: int64
195
+ * @description Number of outcomes traded.
196
+ */
173
197
  outcomes_traded?: number | null;
174
- /** Format: int64 */
198
+ /**
199
+ * Format: int64
200
+ * @description Total buy count.
201
+ */
175
202
  total_buys?: number | null;
176
- /** Format: int64 */
203
+ /**
204
+ * Format: int64
205
+ * @description Total sell count.
206
+ */
177
207
  total_sells?: number | null;
178
- /** Format: int64 */
208
+ /**
209
+ * Format: int64
210
+ * @description Total redemption count.
211
+ */
179
212
  total_redemptions?: number | null;
180
- /** Format: int64 */
213
+ /**
214
+ * Format: int64
215
+ * @description Total merge count.
216
+ */
181
217
  total_merges?: number | null;
182
- /** Format: int64 */
218
+ /**
219
+ * Format: int64
220
+ * @description Total split count.
221
+ */
183
222
  total_splits?: number | null;
184
- /** Format: double */
223
+ /**
224
+ * Format: double
225
+ * @description Total volume in USD.
226
+ */
185
227
  total_volume_usd?: number | null;
186
- /** Format: double */
228
+ /**
229
+ * Format: double
230
+ * @description Buy in USD.
231
+ */
187
232
  buy_usd?: number | null;
188
- /** Format: double */
233
+ /**
234
+ * Format: double
235
+ * @description Sell in USD.
236
+ */
189
237
  sell_usd?: number | null;
190
- /** Format: double */
238
+ /**
239
+ * Format: double
240
+ * @description Redemption in USD.
241
+ */
191
242
  redemption_usd?: number | null;
192
- /** Format: double */
243
+ /**
244
+ * Format: double
245
+ * @description Merge in USD.
246
+ */
193
247
  merge_usd?: number | null;
194
- /** Format: double */
248
+ /**
249
+ * Format: double
250
+ * @description Convert collateral in USD.
251
+ */
195
252
  convert_collateral_usd?: number | null;
196
- /** Format: double */
253
+ /**
254
+ * Format: double
255
+ * @description Split volume in USD.
256
+ */
197
257
  split_volume_usd?: number | null;
198
- /** Format: double */
258
+ /**
259
+ * Format: double
260
+ * @description Total fees amount.
261
+ */
199
262
  total_fees?: number | null;
200
- /** Format: double */
263
+ /**
264
+ * Format: double
265
+ * @description Total shares bought.
266
+ */
201
267
  total_shares_bought?: number | null;
202
- /** Format: int64 */
268
+ /**
269
+ * Format: int64
270
+ * @description Markets won.
271
+ */
203
272
  markets_won?: number | null;
204
- /** Format: int64 */
273
+ /**
274
+ * Format: int64
275
+ * @description Markets lost.
276
+ */
205
277
  markets_lost?: number | null;
206
- /** Format: double */
278
+ /**
279
+ * Format: double
280
+ * @description Market win rate percent.
281
+ */
207
282
  market_win_rate_pct?: number | null;
208
- /** Format: double */
283
+ /**
284
+ * Format: double
285
+ * @description Average hold time seconds.
286
+ */
209
287
  avg_hold_time_seconds?: number | null;
210
- /** Format: double */
288
+ /**
289
+ * Format: double
290
+ * @description Best trade pnl in USD.
291
+ */
211
292
  best_trade_pnl_usd?: number | null;
293
+ /** @description Best trade condition id. */
212
294
  best_trade_condition_id?: string | null;
213
- /** Format: double */
295
+ /**
296
+ * Format: double
297
+ * @description Worst trade pnl in USD.
298
+ */
214
299
  worst_trade_pnl_usd?: number | null;
300
+ /** @description Worst trade condition id. */
215
301
  worst_trade_condition_id?: string | null;
216
- /** Format: double */
302
+ /**
303
+ * Format: double
304
+ * @description Total wins in USD.
305
+ */
217
306
  total_wins_usd?: number | null;
218
- /** Format: double */
307
+ /**
308
+ * Format: double
309
+ * @description Total losses in USD.
310
+ */
219
311
  total_losses_usd?: number | null;
220
- /** Format: double */
312
+ /**
313
+ * Format: double
314
+ * @description Average win in USD.
315
+ */
221
316
  avg_win_usd?: number | null;
222
- /** Format: double */
317
+ /**
318
+ * Format: double
319
+ * @description Average loss in USD.
320
+ */
223
321
  avg_loss_usd?: number | null;
224
- /** Format: double */
322
+ /**
323
+ * Format: double
324
+ * @description Profit factor.
325
+ */
225
326
  profit_factor?: number | null;
226
- /** Format: int64 */
327
+ /**
328
+ * Format: int64
329
+ * @description First trade timestamp.
330
+ */
227
331
  first_trade_at?: number | null;
228
- /** Format: int64 */
332
+ /**
333
+ * Format: int64
334
+ * @description Last trade timestamp.
335
+ */
229
336
  last_trade_at?: number | null;
230
337
  };
231
338
  /**
@@ -233,6 +340,15 @@ export interface components {
233
340
  * `min_probability` or `max_probability` is required (enforced at runtime).
234
341
  */
235
342
  CloseToBondFilters: {
343
+ /**
344
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
345
+ * successful delivery. Applies to any webhook event.
346
+ */
347
+ one_shot?: boolean | null;
348
+ /** @description Restrict to markets carrying any of these tags or category names (case-insensitive). Empty = all. */
349
+ tags?: string[] | null;
350
+ /** @description Restrict to markets in any of these series (by slug, case-insensitive). Empty = all. */
351
+ series_slugs?: string[] | null;
236
352
  /**
237
353
  * Format: double
238
354
  * @description Trigger when the YES outcome price is ≥ this value (e.g. 0.95 for 95% certainty). At least one of `min_probability` or `max_probability` must be set.
@@ -329,15 +445,31 @@ export interface components {
329
445
  threshold: number;
330
446
  };
331
447
  ConditionHolderMetricsFilters: {
448
+ /** @description Market condition IDs to match. */
332
449
  condition_ids?: string[];
450
+ /**
451
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
452
+ * successful delivery. Applies to any webhook event.
453
+ */
454
+ one_shot?: boolean | null;
333
455
  };
334
456
  ConditionHolderMetricsPayload: {
335
- /** Format: int32 */
457
+ /**
458
+ * Format: int32
459
+ * @description Unix timestamp in seconds.
460
+ */
336
461
  ts: number;
337
- /** Format: int64 */
462
+ /**
463
+ * Format: int64
464
+ * @description Block number.
465
+ */
338
466
  block: number;
467
+ /** @description Market condition ID. */
339
468
  condition_id: string;
340
- /** Format: int32 */
469
+ /**
470
+ * Format: int32
471
+ * @description Number of holders.
472
+ */
341
473
  holder_count: number;
342
474
  };
343
475
  /** @description Payload delivered when a market's volume or transaction metrics cross a configured threshold */
@@ -444,6 +576,7 @@ export interface components {
444
576
  };
445
577
  /** @description Delete webhook response */
446
578
  DeleteWebhookResponse: {
579
+ /** @description Whether the webhook was deleted. */
447
580
  deleted: boolean;
448
581
  };
449
582
  /**
@@ -496,19 +629,91 @@ export interface components {
496
629
  event_slug?: string | null;
497
630
  };
498
631
  EventHolderMetricsFilters: {
632
+ /** @description Event slugs to match. */
499
633
  event_slugs?: string[];
634
+ /**
635
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
636
+ * successful delivery. Applies to any webhook event.
637
+ */
638
+ one_shot?: boolean | null;
500
639
  };
501
640
  EventHolderMetricsPayload: {
502
- /** Format: int32 */
641
+ /**
642
+ * Format: int32
643
+ * @description Unix timestamp in seconds.
644
+ */
503
645
  ts: number;
504
- /** Format: int64 */
646
+ /**
647
+ * Format: int64
648
+ * @description Block number.
649
+ */
505
650
  block: number;
651
+ /** @description Event slug. */
506
652
  event_slug: string;
507
- /** Format: int32 */
653
+ /**
654
+ * Format: int32
655
+ * @description Number of holders.
656
+ */
508
657
  holder_count: number;
509
658
  };
659
+ /**
660
+ * @description Subscription filters for the `event_liquidity` event.
661
+ *
662
+ * At least one of `min_liquidity_usd`, `max_liquidity_usd`, or `one_shot` must be set.
663
+ * Thresholds are edge-triggered: a callback fires when liquidity crosses the threshold,
664
+ * then re-arms once it crosses back (unless `one_shot`).
665
+ */
666
+ EventLiquidityFilters: {
667
+ /**
668
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
669
+ * successful delivery.
670
+ */
671
+ one_shot?: boolean | null;
672
+ /**
673
+ * Format: double
674
+ * @description Fire when total liquidity crosses up through this USD value.
675
+ */
676
+ min_liquidity_usd?: number | null;
677
+ /**
678
+ * Format: double
679
+ * @description Fire when total liquidity crosses down through this USD value.
680
+ */
681
+ max_liquidity_usd?: number | null;
682
+ /** @description **Required.** Events to receive liquidity updates for. */
683
+ event_slugs: string[];
684
+ };
685
+ /** @description Event liquidity webhook payload. */
686
+ EventLiquidityPayload: {
687
+ /** @description Event slug. */
688
+ event_slug: string;
689
+ /**
690
+ * Format: double
691
+ * @description Total order-book liquidity in USD at the time of firing.
692
+ */
693
+ liquidity_usd: number;
694
+ /**
695
+ * Format: double
696
+ * @description The threshold (USD) that was crossed.
697
+ */
698
+ threshold_usd: number;
699
+ /**
700
+ * @description `"above"` when liquidity crossed up through `min_liquidity_usd`,
701
+ * `"below"` when it crossed down through `max_liquidity_usd`.
702
+ */
703
+ direction: string;
704
+ /**
705
+ * Format: int64
706
+ * @description Update timestamp (Unix millis).
707
+ */
708
+ liquidity_updated_at: number;
709
+ };
510
710
  /** @description Subscription filters for the `event_metrics` event. All fields are optional. */
511
711
  EventMetricsFilters: {
712
+ /**
713
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
714
+ * successful delivery. Applies to any webhook event.
715
+ */
716
+ one_shot?: boolean | null;
512
717
  /** @description Restrict to these events. Empty = all events. */
513
718
  event_slugs?: string[] | null;
514
719
  /** @description Restrict to these aggregation windows. */
@@ -518,13 +723,25 @@ export interface components {
518
723
  * @description Only fire when aggregated event volume ≥ this value (USD).
519
724
  */
520
725
  min_volume_usd?: number | null;
521
- /** Format: double */
726
+ /**
727
+ * Format: double
728
+ * @description Maximum volume USD.
729
+ */
522
730
  max_volume_usd?: number | null;
523
- /** Format: int64 */
731
+ /**
732
+ * Format: int64
733
+ * @description Minimum transactions.
734
+ */
524
735
  min_txns?: number | null;
525
- /** Format: int64 */
736
+ /**
737
+ * Format: int64
738
+ * @description Minimum unique traders.
739
+ */
526
740
  min_unique_traders?: number | null;
527
- /** Format: double */
741
+ /**
742
+ * Format: double
743
+ * @description Minimum fees.
744
+ */
528
745
  min_fees?: number | null;
529
746
  /** @description When `true`, suppress webhooks for short-term "updown" markets. Default: `false`. */
530
747
  exclude_shortterm_markets?: boolean | null;
@@ -598,6 +815,11 @@ export interface components {
598
815
  };
599
816
  /** @description Subscription filters for the `event_volume_milestone` event. */
600
817
  EventVolumeMilestoneFilters: {
818
+ /**
819
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
820
+ * successful delivery. Applies to any webhook event.
821
+ */
822
+ one_shot?: boolean | null;
601
823
  /** @description **Required.** Aggregation windows to monitor. */
602
824
  timeframes: components["schemas"]["MetricFilterTimeframe"][];
603
825
  /** @description Restrict to these events. */
@@ -609,7 +831,9 @@ export interface components {
609
831
  };
610
832
  /** @description Event volume milestone webhook payload */
611
833
  EventVolumeMilestonePayload: {
834
+ /** @description Event slug. */
612
835
  event_slug: string;
836
+ /** @description Metric timeframe. */
613
837
  timeframe: string;
614
838
  /**
615
839
  * Format: double
@@ -634,6 +858,11 @@ export interface components {
634
858
  };
635
859
  /** @description Subscription filters for the `event_volume_spike` event. `spike_ratio` is required. */
636
860
  EventVolumeSpikeFilters: {
861
+ /**
862
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
863
+ * successful delivery. Applies to any webhook event.
864
+ */
865
+ one_shot?: boolean | null;
637
866
  /**
638
867
  * Format: double
639
868
  * @description **Required.** Multiplier threshold (must be > 1.0). Fires when current volume >= snapshot × ratio.
@@ -653,9 +882,13 @@ export interface components {
653
882
  };
654
883
  /** @description Event volume spike webhook payload */
655
884
  EventVolumeSpikePayload: {
885
+ /** @description Event slug. */
656
886
  event_slug: string;
887
+ /** @description Event title. */
657
888
  event_title?: string | null;
889
+ /** @description Image URL. */
658
890
  image_url?: string | null;
891
+ /** @description Metric timeframe. */
659
892
  timeframe: string;
660
893
  /**
661
894
  * Format: double
@@ -690,26 +923,50 @@ export interface components {
690
923
  };
691
924
  /** @description Exit Markers webhook payload — one position open->closed transition. */
692
925
  ExitMarkersPayload: {
926
+ /** @description Trader wallet address. */
693
927
  trader: string;
928
+ /** @description Outcome token ID. */
694
929
  position_id: string;
930
+ /** @description Market condition ID. */
695
931
  condition_id: string;
932
+ /** @description Event slug. */
696
933
  event_slug: string;
934
+ /** @description Market slug. */
697
935
  market_slug: string;
936
+ /** @description Title. */
698
937
  title: string;
938
+ /** @description Market question. */
699
939
  question: string;
940
+ /** @description Image URL. */
700
941
  image_url: string;
942
+ /** @description Outcome name. */
701
943
  outcome: string;
702
- /** Format: int32 */
944
+ /**
945
+ * Format: int32
946
+ * @description Outcome index.
947
+ */
703
948
  outcome_index?: number | null;
704
- /** Format: double */
949
+ /**
950
+ * Format: double
951
+ * @description Pnl in USD.
952
+ */
705
953
  pnl_usd: number;
706
- /** Format: double */
954
+ /**
955
+ * Format: double
956
+ * @description Pnl percent.
957
+ */
707
958
  pnl_pct: number;
708
- /** Format: double */
959
+ /**
960
+ * Format: double
961
+ * @description Cost basis in USD.
962
+ */
709
963
  cost_basis_usd: number;
710
964
  /** @description resolved_win | resolved_loss | sold_win | sold_loss */
711
965
  reason: string;
712
- /** Format: int64 */
966
+ /**
967
+ * Format: int64
968
+ * @description Block number.
969
+ */
713
970
  block: number;
714
971
  /**
715
972
  * Format: int32
@@ -785,6 +1042,7 @@ export interface components {
785
1042
  };
786
1043
  /** @description Global PnL webhook payload. */
787
1044
  GlobalPnlPayload: {
1045
+ /** @description Trader wallet address. */
788
1046
  trader?: string | null;
789
1047
  /** @description Aggregation timeframe: "1d", "7d", "30d", or "lifetime" */
790
1048
  timeframe: string;
@@ -793,87 +1051,203 @@ export interface components {
793
1051
  * @description Realized PnL for the timeframe (matches REST `/pnl/global`).
794
1052
  */
795
1053
  realized_pnl_usd?: number | null;
796
- /** Format: int64 */
1054
+ /**
1055
+ * Format: int64
1056
+ * @description Events traded.
1057
+ */
797
1058
  events_traded?: number | null;
798
- /** Format: int64 */
1059
+ /**
1060
+ * Format: int64
1061
+ * @description Markets traded.
1062
+ */
799
1063
  markets_traded?: number | null;
800
- /** Format: int64 */
1064
+ /**
1065
+ * Format: int64
1066
+ * @description Total buy count.
1067
+ */
801
1068
  total_buys?: number | null;
802
- /** Format: int64 */
1069
+ /**
1070
+ * Format: int64
1071
+ * @description Total sell count.
1072
+ */
803
1073
  total_sells?: number | null;
804
- /** Format: int64 */
1074
+ /**
1075
+ * Format: int64
1076
+ * @description Total redemption count.
1077
+ */
805
1078
  total_redemptions?: number | null;
806
- /** Format: int64 */
1079
+ /**
1080
+ * Format: int64
1081
+ * @description Total merge count.
1082
+ */
807
1083
  total_merges?: number | null;
808
- /** Format: int64 */
1084
+ /**
1085
+ * Format: int64
1086
+ * @description Total split count.
1087
+ */
809
1088
  total_splits?: number | null;
810
- /** Format: double */
1089
+ /**
1090
+ * Format: double
1091
+ * @description Total volume in USD.
1092
+ */
811
1093
  total_volume_usd?: number | null;
812
- /** Format: double */
1094
+ /**
1095
+ * Format: double
1096
+ * @description Buy volume in USD.
1097
+ */
813
1098
  buy_volume_usd?: number | null;
814
- /** Format: double */
1099
+ /**
1100
+ * Format: double
1101
+ * @description Sell volume in USD.
1102
+ */
815
1103
  sell_volume_usd?: number | null;
816
- /** Format: double */
1104
+ /**
1105
+ * Format: double
1106
+ * @description Redemption volume in USD.
1107
+ */
817
1108
  redemption_volume_usd?: number | null;
818
- /** Format: double */
1109
+ /**
1110
+ * Format: double
1111
+ * @description Merge volume in USD.
1112
+ */
819
1113
  merge_volume_usd?: number | null;
820
- /** Format: double */
1114
+ /**
1115
+ * Format: double
1116
+ * @description Convert collateral in USD.
1117
+ */
821
1118
  convert_collateral_usd?: number | null;
822
- /** Format: double */
1119
+ /**
1120
+ * Format: double
1121
+ * @description Split volume in USD.
1122
+ */
823
1123
  split_volume_usd?: number | null;
824
- /** Format: int64 */
1124
+ /**
1125
+ * Format: int64
1126
+ * @description Maker rebate count.
1127
+ */
825
1128
  maker_rebate_count?: number | null;
826
- /** Format: double */
1129
+ /**
1130
+ * Format: double
1131
+ * @description Maker rebate in USD.
1132
+ */
827
1133
  maker_rebate_usd?: number | null;
828
- /** Format: int64 */
1134
+ /**
1135
+ * Format: int64
1136
+ * @description Reward count.
1137
+ */
829
1138
  reward_count?: number | null;
830
- /** Format: double */
1139
+ /**
1140
+ * Format: double
1141
+ * @description Reward in USD.
1142
+ */
831
1143
  reward_usd?: number | null;
832
- /** Format: int64 */
1144
+ /**
1145
+ * Format: int64
1146
+ * @description Yield count.
1147
+ */
833
1148
  yield_count?: number | null;
834
- /** Format: double */
1149
+ /**
1150
+ * Format: double
1151
+ * @description Yield in USD.
1152
+ */
835
1153
  yield_usd?: number | null;
836
- /** Format: int64 */
1154
+ /**
1155
+ * Format: int64
1156
+ * @description Total credit count.
1157
+ */
837
1158
  total_credit_count?: number | null;
838
- /** Format: double */
1159
+ /**
1160
+ * Format: double
1161
+ * @description Total credit in USD.
1162
+ */
839
1163
  total_credit_usd?: number | null;
840
- /** Format: int64 */
1164
+ /**
1165
+ * Format: int64
1166
+ * @description Markets won.
1167
+ */
841
1168
  markets_won?: number | null;
842
- /** Format: int64 */
1169
+ /**
1170
+ * Format: int64
1171
+ * @description Markets lost.
1172
+ */
843
1173
  markets_lost?: number | null;
844
- /** Format: double */
1174
+ /**
1175
+ * Format: double
1176
+ * @description Market win rate percent.
1177
+ */
845
1178
  market_win_rate_pct?: number | null;
846
- /** Format: double */
1179
+ /**
1180
+ * Format: double
1181
+ * @description Total wins in USD.
1182
+ */
847
1183
  total_wins_usd?: number | null;
848
- /** Format: double */
1184
+ /**
1185
+ * Format: double
1186
+ * @description Total losses in USD.
1187
+ */
849
1188
  total_losses_usd?: number | null;
850
- /** Format: double */
1189
+ /**
1190
+ * Format: double
1191
+ * @description Average win in USD.
1192
+ */
851
1193
  avg_win_usd?: number | null;
852
- /** Format: double */
1194
+ /**
1195
+ * Format: double
1196
+ * @description Average loss in USD.
1197
+ */
853
1198
  avg_loss_usd?: number | null;
854
- /** Format: double */
1199
+ /**
1200
+ * Format: double
1201
+ * @description Profit factor.
1202
+ */
855
1203
  profit_factor?: number | null;
856
- /** Format: double */
1204
+ /**
1205
+ * Format: double
1206
+ * @description Average hold time seconds.
1207
+ */
857
1208
  avg_hold_time_seconds?: number | null;
858
- /** Format: double */
1209
+ /**
1210
+ * Format: double
1211
+ * @description Total fees amount.
1212
+ */
859
1213
  total_fees?: number | null;
860
- /** Format: double */
1214
+ /**
1215
+ * Format: double
1216
+ * @description Best trade pnl in USD.
1217
+ */
861
1218
  best_trade_pnl_usd?: number | null;
1219
+ /** @description Best trade condition id. */
862
1220
  best_trade_condition_id?: string | null;
863
- /** Format: double */
1221
+ /**
1222
+ * Format: double
1223
+ * @description Worst trade pnl in USD.
1224
+ */
864
1225
  worst_trade_pnl_usd?: number | null;
1226
+ /** @description Worst trade condition id. */
865
1227
  worst_trade_condition_id?: string | null;
866
- /** Format: int64 */
1228
+ /**
1229
+ * Format: int64
1230
+ * @description First trade timestamp.
1231
+ */
867
1232
  first_trade_at?: number | null;
868
- /** Format: int64 */
1233
+ /**
1234
+ * Format: int64
1235
+ * @description Last trade timestamp.
1236
+ */
869
1237
  last_trade_at?: number | null;
870
1238
  };
871
1239
  /** @description Response for GET /v1/webhook/events */
872
1240
  ListEventsResponse: {
1241
+ /** @description Supported webhook events. */
873
1242
  events: components["schemas"]["WebhookEventInfo"][];
874
1243
  };
875
1244
  /** @description Subscription filters for the `market_created` event. All fields are optional. */
876
1245
  MarketCreatedFilters: {
1246
+ /**
1247
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
1248
+ * successful delivery. Applies to any webhook event.
1249
+ */
1250
+ one_shot?: boolean | null;
877
1251
  /** @description Restrict to markets with these tags or category names (case-insensitive match). */
878
1252
  tags?: string[] | null;
879
1253
  /** @description Restrict to markets belonging to these events. */
@@ -924,8 +1298,116 @@ export interface components {
924
1298
  /** @description Whether this is a neg-risk market */
925
1299
  neg_risk: boolean;
926
1300
  };
1301
+ /** @description Subscription filters for the `market_disputed` event. All fields are optional. */
1302
+ MarketDisputedFilters: {
1303
+ /**
1304
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
1305
+ * successful delivery. Applies to any webhook event.
1306
+ */
1307
+ one_shot?: boolean | null;
1308
+ /** @description Restrict to these markets. */
1309
+ condition_ids?: string[] | null;
1310
+ /** @description Restrict to markets in these events. */
1311
+ event_slugs?: string[] | null;
1312
+ /** @description When `true`, suppress webhooks for short-term "updown" markets. Default: `false`. */
1313
+ exclude_shortterm_markets?: boolean | null;
1314
+ };
1315
+ /** @description Market-disputed webhook payload */
1316
+ MarketDisputedPayload: {
1317
+ /** @description Condition ID (the contested market), when resolvable */
1318
+ condition_id?: string | null;
1319
+ /** @description Which oracle event produced this dispute: `"dispute_price"` or `"assertion_disputed"`. */
1320
+ dispute_kind: string;
1321
+ /** @description Address that filed the dispute */
1322
+ disputer: string;
1323
+ /** @description Address that made the disputed proposal/assertion, when known */
1324
+ proposer?: string | null;
1325
+ /** @description The proposed outcome that was disputed, when known (e.g. "Yes", "No") */
1326
+ proposed_outcome?: string | null;
1327
+ /**
1328
+ * Format: double
1329
+ * @description The proposed price (0.0–1.0) that was disputed (`DisputePrice` only)
1330
+ */
1331
+ proposed_price?: number | null;
1332
+ /** @description Market question */
1333
+ question?: string | null;
1334
+ /** @description Market slug */
1335
+ market_slug?: string | null;
1336
+ /** @description Event slug */
1337
+ event_slug?: string | null;
1338
+ /** @description Market image URL */
1339
+ image_url?: string | null;
1340
+ /** @description Transaction hash of the dispute event */
1341
+ hash: string;
1342
+ /**
1343
+ * Format: int64
1344
+ * @description Block number
1345
+ */
1346
+ block?: number | null;
1347
+ /**
1348
+ * Format: int64
1349
+ * @description Confirmed timestamp (Unix seconds)
1350
+ */
1351
+ confirmed_at?: number | null;
1352
+ };
1353
+ /**
1354
+ * @description Subscription filters for the `market_liquidity` event.
1355
+ *
1356
+ * At least one of `min_liquidity_usd`, `max_liquidity_usd`, or `one_shot` must be set.
1357
+ * Thresholds are edge-triggered: a callback fires when liquidity crosses the threshold,
1358
+ * then re-arms once it crosses back (unless `one_shot`).
1359
+ */
1360
+ MarketLiquidityFilters: {
1361
+ /**
1362
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
1363
+ * successful delivery.
1364
+ */
1365
+ one_shot?: boolean | null;
1366
+ /**
1367
+ * Format: double
1368
+ * @description Fire when total liquidity crosses up through this USD value.
1369
+ */
1370
+ min_liquidity_usd?: number | null;
1371
+ /**
1372
+ * Format: double
1373
+ * @description Fire when total liquidity crosses down through this USD value.
1374
+ */
1375
+ max_liquidity_usd?: number | null;
1376
+ /** @description **Required.** Markets to receive liquidity updates for. */
1377
+ condition_ids: string[];
1378
+ };
1379
+ /** @description Market liquidity webhook payload. */
1380
+ MarketLiquidityPayload: {
1381
+ /** @description Market condition ID. */
1382
+ condition_id: string;
1383
+ /**
1384
+ * Format: double
1385
+ * @description Total order-book liquidity in USD at the time of firing.
1386
+ */
1387
+ liquidity_usd: number;
1388
+ /**
1389
+ * Format: double
1390
+ * @description The threshold (USD) that was crossed.
1391
+ */
1392
+ threshold_usd: number;
1393
+ /**
1394
+ * @description `"above"` when liquidity crossed up through `min_liquidity_usd`,
1395
+ * `"below"` when it crossed down through `max_liquidity_usd`.
1396
+ */
1397
+ direction: string;
1398
+ /**
1399
+ * Format: int64
1400
+ * @description Update timestamp (Unix millis).
1401
+ */
1402
+ liquidity_updated_at: number;
1403
+ };
927
1404
  /** @description Subscription filters for the `condition_metrics` event. All fields are optional. */
928
1405
  MarketMetricsFilters: {
1406
+ /**
1407
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
1408
+ * successful delivery. Applies to any webhook event.
1409
+ */
1410
+ one_shot?: boolean | null;
929
1411
  /** @description Restrict to these markets. Empty = all markets. */
930
1412
  condition_ids?: string[] | null;
931
1413
  /** @description Restrict to these aggregation windows. Empty = all windows. */
@@ -958,51 +1440,168 @@ export interface components {
958
1440
  };
959
1441
  /** @description Market PnL webhook payload. */
960
1442
  MarketPnlPayload: {
1443
+ /** @description Trader wallet address. */
961
1444
  trader?: string | null;
1445
+ /** @description Market condition ID. */
962
1446
  condition_id?: string | null;
1447
+ /** @description Event slug. */
963
1448
  event_slug?: string | null;
1449
+ /** @description Category. */
964
1450
  category?: string | null;
965
1451
  /** @description Aggregation timeframe: "1d", "7d", "30d", or "lifetime" */
966
1452
  timeframe: string;
967
- /** Format: double */
1453
+ /**
1454
+ * Format: double
1455
+ * @description Realized pnl in USD.
1456
+ */
968
1457
  realized_pnl_usd?: number | null;
969
- /** Format: double */
1458
+ /**
1459
+ * Format: double
1460
+ * @description Current shares balance.
1461
+ */
970
1462
  current_shares_balance?: number | null;
971
- /** Format: int64 */
1463
+ /**
1464
+ * Format: int64
1465
+ * @description Number of outcomes traded.
1466
+ */
972
1467
  outcomes_traded?: number | null;
973
- /** Format: int64 */
1468
+ /**
1469
+ * Format: int64
1470
+ * @description Total buy count.
1471
+ */
974
1472
  total_buys?: number | null;
975
- /** Format: int64 */
1473
+ /**
1474
+ * Format: int64
1475
+ * @description Total sell count.
1476
+ */
976
1477
  total_sells?: number | null;
977
- /** Format: int64 */
1478
+ /**
1479
+ * Format: int64
1480
+ * @description Total redemption count.
1481
+ */
978
1482
  total_redemptions?: number | null;
979
- /** Format: int64 */
1483
+ /**
1484
+ * Format: int64
1485
+ * @description Total merge count.
1486
+ */
980
1487
  total_merges?: number | null;
981
- /** Format: int64 */
1488
+ /**
1489
+ * Format: int64
1490
+ * @description Total split count.
1491
+ */
982
1492
  total_splits?: number | null;
983
- /** Format: double */
1493
+ /**
1494
+ * Format: double
1495
+ * @description Buy in USD.
1496
+ */
984
1497
  buy_usd?: number | null;
985
- /** Format: double */
1498
+ /**
1499
+ * Format: double
1500
+ * @description Sell in USD.
1501
+ */
986
1502
  sell_usd?: number | null;
987
- /** Format: double */
1503
+ /**
1504
+ * Format: double
1505
+ * @description Redemption in USD.
1506
+ */
988
1507
  redemption_usd?: number | null;
989
- /** Format: double */
1508
+ /**
1509
+ * Format: double
1510
+ * @description Merge in USD.
1511
+ */
990
1512
  merge_usd?: number | null;
991
- /** Format: double */
1513
+ /**
1514
+ * Format: double
1515
+ * @description Convert collateral in USD.
1516
+ */
992
1517
  convert_collateral_usd?: number | null;
993
- /** Format: double */
1518
+ /**
1519
+ * Format: double
1520
+ * @description Split volume in USD.
1521
+ */
994
1522
  split_volume_usd?: number | null;
995
- /** Format: double */
1523
+ /**
1524
+ * Format: double
1525
+ * @description Total fees amount.
1526
+ */
996
1527
  total_fees?: number | null;
997
- /** Format: double */
1528
+ /**
1529
+ * Format: double
1530
+ * @description Total shares bought.
1531
+ */
998
1532
  total_shares_bought?: number | null;
999
- /** Format: int64 */
1533
+ /**
1534
+ * Format: int64
1535
+ * @description First trade timestamp.
1536
+ */
1000
1537
  first_trade_at?: number | null;
1001
- /** Format: int64 */
1538
+ /**
1539
+ * Format: int64
1540
+ * @description Last trade timestamp.
1541
+ */
1002
1542
  last_trade_at?: number | null;
1003
1543
  };
1544
+ /** @description Subscription filters for the `market_resolved` event. All fields are optional. */
1545
+ MarketResolvedFilters: {
1546
+ /**
1547
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
1548
+ * successful delivery. Applies to any webhook event.
1549
+ */
1550
+ one_shot?: boolean | null;
1551
+ /** @description Restrict to these markets. */
1552
+ condition_ids?: string[] | null;
1553
+ /** @description Restrict to markets in these events. */
1554
+ event_slugs?: string[] | null;
1555
+ /** @description Only fire when the winning outcome matches one of these (e.g. \["Yes"\]). */
1556
+ outcomes?: string[] | null;
1557
+ /** @description When `true`, suppress webhooks for short-term "updown" markets. Default: `false`. */
1558
+ exclude_shortterm_markets?: boolean | null;
1559
+ };
1560
+ /** @description Market-resolved webhook payload */
1561
+ MarketResolvedPayload: {
1562
+ /** @description Condition ID (the resolved market) */
1563
+ condition_id: string;
1564
+ /** @description Winning outcome name when known (e.g. "Yes", "No") */
1565
+ winning_outcome?: string | null;
1566
+ /**
1567
+ * Format: double
1568
+ * @description Settled price (0.0–1.0) when the resolution event carries one
1569
+ * (`QuestionResolved` only). 1.0 = full YES, 0.0 = full NO, 0.5 = split.
1570
+ */
1571
+ settled_price?: number | null;
1572
+ /**
1573
+ * @description Which oracle event produced this resolution: `"question_resolved"`,
1574
+ * `"question_emergency_resolved"`, `"condition_resolution"`, or `"neg_risk_outcome_reported"`.
1575
+ */
1576
+ resolution_kind: string;
1577
+ /** @description Market question */
1578
+ question?: string | null;
1579
+ /** @description Market slug */
1580
+ market_slug?: string | null;
1581
+ /** @description Event slug */
1582
+ event_slug?: string | null;
1583
+ /** @description Market image URL */
1584
+ image_url?: string | null;
1585
+ /** @description Transaction hash of the resolution event */
1586
+ hash: string;
1587
+ /**
1588
+ * Format: int64
1589
+ * @description Block number
1590
+ */
1591
+ block?: number | null;
1592
+ /**
1593
+ * Format: int64
1594
+ * @description Confirmed timestamp (Unix seconds)
1595
+ */
1596
+ confirmed_at?: number | null;
1597
+ };
1004
1598
  /** @description Subscription filters for the `market_volume_milestone` event. */
1005
1599
  MarketVolumeMilestoneFilters: {
1600
+ /**
1601
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
1602
+ * successful delivery. Applies to any webhook event.
1603
+ */
1604
+ one_shot?: boolean | null;
1006
1605
  /** @description **Required.** Aggregation windows to monitor (e.g. \["1h", "24h"\]). */
1007
1606
  timeframes: components["schemas"]["MetricFilterTimeframe"][];
1008
1607
  /** @description Restrict to these markets. Empty = all markets. */
@@ -1012,6 +1611,11 @@ export interface components {
1012
1611
  };
1013
1612
  /** @description Subscription filters for the `market_volume_spike` event. `spike_ratio` is required. */
1014
1613
  MarketVolumeSpikeFilters: {
1614
+ /**
1615
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
1616
+ * successful delivery. Applies to any webhook event.
1617
+ */
1618
+ one_shot?: boolean | null;
1015
1619
  /**
1016
1620
  * Format: double
1017
1621
  * @description **Required.** Multiplier threshold (must be > 1.0). Fires when current volume >= snapshot × ratio. The snapshot is set automatically on first data and resets after each fire.
@@ -1029,11 +1633,17 @@ export interface components {
1029
1633
  };
1030
1634
  /** @description Market volume spike webhook payload */
1031
1635
  MarketVolumeSpikePayload: {
1636
+ /** @description Market condition ID. */
1032
1637
  condition_id: string;
1638
+ /** @description Market question. */
1033
1639
  question?: string | null;
1640
+ /** @description Market slug. */
1034
1641
  market_slug?: string | null;
1642
+ /** @description Event slug. */
1035
1643
  event_slug?: string | null;
1644
+ /** @description Image URL. */
1036
1645
  image_url?: string | null;
1646
+ /** @description Metric timeframe. */
1037
1647
  timeframe: string;
1038
1648
  /**
1039
1649
  * Format: double
@@ -1243,6 +1853,7 @@ export interface components {
1243
1853
  /**
1244
1854
  * @description CLOB V2 builder code (lower-cased `0x...` bytes32 hex). Absent on V1
1245
1855
  * trades; may be `0x0000…` for V2 trades placed without a builder code.
1856
+ * CLOB builder code.
1246
1857
  */
1247
1858
  builder_code?: string | null;
1248
1859
  /**
@@ -1314,6 +1925,11 @@ export interface components {
1314
1925
  });
1315
1926
  /** @description Subscription filters for the `oracle_events` event. All fields are optional. */
1316
1927
  OracleEventsFilters: {
1928
+ /**
1929
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
1930
+ * successful delivery. Applies to any webhook event.
1931
+ */
1932
+ one_shot?: boolean | null;
1317
1933
  /** @description Restrict to these event types (case-insensitive). Empty = all. */
1318
1934
  oracle_event_types?: components["schemas"]["OracleEventFilterType"][] | null;
1319
1935
  /** @description Restrict to events for these condition IDs. */
@@ -1340,11 +1956,15 @@ export interface components {
1340
1956
  * @description Polymarket webhook event types
1341
1957
  * @enum {string}
1342
1958
  */
1343
- PolymarketWebhookEvent: "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" | "market_volume_milestone" | "event_volume_milestone" | "position_volume_milestone" | "probability_spike" | "market_volume_spike" | "event_volume_spike" | "position_volume_spike" | "close_to_bond" | "market_created" | "asset_price_tick" | "asset_price_window_update" | "price_spike" | "oracle_events";
1959
+ PolymarketWebhookEvent: "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" | "probability_spike" | "market_volume_spike" | "event_volume_spike" | "position_volume_spike" | "close_to_bond" | "market_created" | "asset_price_tick" | "asset_price_window_update" | "price_spike" | "oracle_events" | "price_threshold" | "market_resolved" | "market_disputed";
1344
1960
  /**
1345
1961
  * @description Polymarket-specific webhook filters
1346
1962
  *
1347
- * Different webhook handlers use different subsets of these fields:
1963
+ * Different webhook handlers use different subsets of these fields.
1964
+ * The trade-driven events `price_spike`, `probability_spike`, and
1965
+ * `close_to_bond` additionally accept `tags` (matches a market's tags OR its
1966
+ * category) and `series_slugs` (matches the market's parent series); these are
1967
+ * resolved from the tags/series the crawler enriches onto each trade.
1348
1968
  * - first_trade: wallet_addresses, min_usd_value, min_probability, max_probability, condition_ids, event_slugs, tags
1349
1969
  * - new_market: wallet_addresses, condition_ids, event_slugs, min_usd_value, min_probability, max_probability
1350
1970
  * - whale_trade: min_usd_value (required), min_probability, max_probability, condition_ids, event_slugs
@@ -1356,10 +1976,10 @@ export interface components {
1356
1976
  * - tag_metrics: tags, min_volume_usd, max_volume_usd, min_fees, min_txns, timeframes
1357
1977
  * - position_metrics: position_ids, condition_ids, outcomes, min_volume_usd, max_volume_usd, min_buy_usd, min_sell_volume_usd, min_fees, min_txns, min_price_change_pct, min_probability_change_pct, timeframes
1358
1978
  * - volume_milestone: condition_ids, timeframes, milestone_amounts
1359
- * - close_to_bond: min_probability (high zone threshold), max_probability (low zone threshold), condition_ids, position_ids, outcomes, position_outcome_indices, event_slugs, exclude_shortterm_markets
1979
+ * - close_to_bond: min_probability (high zone threshold), max_probability (low zone threshold), condition_ids, tags, series_slugs, position_ids, outcomes, position_outcome_indices, event_slugs, exclude_shortterm_markets
1360
1980
  * - market_created: event_slugs, tags, exclude_shortterm_markets
1361
- * - probability_spike: condition_ids, event_slugs, outcomes, min_probability, max_probability, min_probability_change_pct, spike_direction, window_secs, exclude_shortterm_markets
1362
- * - price_spike: condition_ids, event_slugs, outcomes, min_price_change_pct, spike_direction, window_secs, exclude_shortterm_markets
1981
+ * - probability_spike: condition_ids, event_slugs, tags, series_slugs, outcomes, min_probability, max_probability, min_probability_change_pct, spike_direction, window_secs, exclude_shortterm_markets
1982
+ * - price_spike: condition_ids, event_slugs, tags, series_slugs, outcomes, min_price_change_pct, spike_direction, window_secs, exclude_shortterm_markets
1363
1983
  * - trader_new_trade: wallet_addresses, min_usd_value, min_probability, max_probability, condition_ids, event_slugs, trade_types, exclude_shortterm_markets
1364
1984
  * - trader_trade_event: wallet_addresses, min_usd_value, min_probability, max_probability, condition_ids, event_slugs, trade_types, exclude_shortterm_markets
1365
1985
  * - trader_first_trade: wallet_addresses, min_usd_value, min_probability, max_probability, exclude_shortterm_markets
@@ -1371,21 +1991,43 @@ export interface components {
1371
1991
  * Implements Hash + Eq manually (f64 fields use bit representation)
1372
1992
  */
1373
1993
  PolymarketWebhookFilter: {
1374
- /** @description Filter by wallet addresses (for first_trade, normalized to lowercase). Max 500 entries. */
1994
+ /**
1995
+ * @description Filter by wallet addresses (for first_trade, normalized to lowercase). Max 500 entries.
1996
+ * Wallet addresses to match.
1997
+ */
1375
1998
  wallet_addresses?: string[];
1376
- /** @description Filter by trader addresses (for PnL webhooks, normalized to lowercase). Max 500 entries. */
1999
+ /**
2000
+ * @description Filter by trader addresses (for PnL webhooks, normalized to lowercase). Max 500 entries.
2001
+ * Trader wallet addresses to match.
2002
+ */
1377
2003
  traders?: string[];
1378
- /** @description Filter by market/condition IDs. Max 500 entries. */
2004
+ /**
2005
+ * @description Filter by market/condition IDs. Max 500 entries.
2006
+ * Market condition IDs to match.
2007
+ */
1379
2008
  condition_ids?: string[];
1380
2009
  /**
1381
2010
  * Format: double
1382
2011
  * @description Filter by minimum USD value (for trades)
1383
2012
  */
1384
2013
  min_usd_value?: number | null;
1385
- /** @description Filter by event slugs. Max 500 entries. */
2014
+ /**
2015
+ * @description Filter by event slugs. Max 500 entries.
2016
+ * Event slugs to match.
2017
+ */
1386
2018
  event_slugs?: string[];
1387
- /** @description Filter by tags. Max 500 entries. */
2019
+ /**
2020
+ * @description Filter by tags or category names (case-insensitive). Matches a market's
2021
+ * tags or its category label. Max 500 entries.
2022
+ * Tags to match.
2023
+ */
1388
2024
  tags?: string[];
2025
+ /**
2026
+ * @description Filter by series slugs (case-insensitive). Matches a market's parent
2027
+ * series. Max 500 entries.
2028
+ * Series slugs to match.
2029
+ */
2030
+ series_slugs?: string[];
1389
2031
  /**
1390
2032
  * Format: double
1391
2033
  * @description Minimum probability threshold (0.0 - 1.0)
@@ -1416,6 +2058,18 @@ export interface components {
1416
2058
  * @description Maximum volume (USD) - for metrics webhooks
1417
2059
  */
1418
2060
  max_volume_usd?: number | null;
2061
+ /**
2062
+ * Format: double
2063
+ * @description Minimum order-book liquidity (USD) - for liquidity webhooks.
2064
+ * Fires when liquidity crosses up through this value.
2065
+ */
2066
+ min_liquidity_usd?: number | null;
2067
+ /**
2068
+ * Format: double
2069
+ * @description Maximum order-book liquidity (USD) - for liquidity webhooks.
2070
+ * Fires when liquidity crosses down through this value.
2071
+ */
2072
+ max_liquidity_usd?: number | null;
1419
2073
  /**
1420
2074
  * Format: double
1421
2075
  * @description Minimum buy volume (USD) - for PnL and metrics webhooks
@@ -1441,16 +2095,26 @@ export interface components {
1441
2095
  * @description Maximum net shares - for position PnL webhooks
1442
2096
  */
1443
2097
  max_net_shares?: number | null;
1444
- /** @description Filter by position IDs - for position PnL webhooks. Max 500 entries. */
2098
+ /**
2099
+ * @description Filter by position IDs - for position PnL webhooks. Max 500 entries.
2100
+ * Outcome token IDs to match.
2101
+ */
1445
2102
  position_ids?: string[];
1446
- /** @description Filter by outcomes (e.g., "Yes", "No") - for position PnL webhooks. Max 500 entries. */
2103
+ /**
2104
+ * @description Filter by outcomes (e.g., "Yes", "No") - for position PnL webhooks. Max 500 entries.
2105
+ * Outcome names to match.
2106
+ */
1447
2107
  outcomes?: string[];
1448
2108
  /**
1449
2109
  * @description Filter by position outcome index — for close_to_bond. Position 0 usually represents Yes/Up, 1 = No.
1450
2110
  * When non-empty, only trades whose outcome_index is in this list will match. Max 500 entries.
2111
+ * Outcome indices to match.
1451
2112
  */
1452
2113
  position_outcome_indices?: number[];
1453
- /** @description Filter by trade type (e.g. "OrderFilled", "Redemption", "Merge", "Split"). Empty = default behavior per handler. */
2114
+ /**
2115
+ * @description Filter by trade type (e.g. "OrderFilled", "Redemption", "Merge", "Split"). Empty = default behavior per handler.
2116
+ * Trade types to match.
2117
+ */
1454
2118
  trade_types?: string[];
1455
2119
  /**
1456
2120
  * Format: double
@@ -1482,9 +2146,15 @@ export interface components {
1482
2146
  * @description Minimum probability change percentage - for position metrics webhooks
1483
2147
  */
1484
2148
  min_probability_change_pct?: number | null;
1485
- /** @description Timeframes to track - for metrics webhooks (1m, 5m, 30m, 1h, 6h, 24h, 7d, 30d). */
2149
+ /**
2150
+ * @description Timeframes to track - for metrics webhooks (1m, 5m, 30m, 1h, 6h, 24h, 7d, 30d).
2151
+ * Metric timeframes to match.
2152
+ */
1486
2153
  timeframes?: components["schemas"]["WebhookTimeframe"][];
1487
- /** @description Milestone amounts to track - for volume milestone webhooks (e.g., 10000, 100000, 1000000). Max 500 entries. */
2154
+ /**
2155
+ * @description Milestone amounts to track - for volume milestone webhooks (e.g., 10000, 100000, 1000000). Max 500 entries.
2156
+ * Milestone amounts to match.
2157
+ */
1488
2158
  milestone_amounts?: number[];
1489
2159
  /**
1490
2160
  * Format: double
@@ -1503,6 +2173,7 @@ export interface components {
1503
2173
  /**
1504
2174
  * @description Filter by crypto asset symbol — for `asset_price_tick` and `asset_price_window_update` webhooks.
1505
2175
  * Valid values: "BTC", "ETH", "SOL", "XRP", "DOGE", "BNB", "HYPE". Empty = all assets.
2176
+ * Asset symbols to match.
1506
2177
  */
1507
2178
  asset_symbols?: components["schemas"]["WebhookAssetSymbol"][];
1508
2179
  spike_direction?: null | components["schemas"]["SpikeDirection"];
@@ -1526,31 +2197,127 @@ export interface components {
1526
2197
  * `QuestionInitialized`, `QuestionPaused`, `QuestionUnpaused`,
1527
2198
  * `QuestionFlagged`, `QuestionUnflagged`, `ConditionResolution`,
1528
2199
  * `NegRiskOutcomeReported`. Empty = all types.
2200
+ * Oracle event types to match.
1529
2201
  */
1530
2202
  oracle_event_types?: string[];
2203
+ /**
2204
+ * @description Fire-and-delete: when `true`, the subscription is deleted after its first
2205
+ * successful delivery. Works on any webhook event. (`price_threshold`
2206
+ * additionally requires `position_ids` or `condition_ids`.)
2207
+ */
2208
+ one_shot?: boolean;
2209
+ /**
2210
+ * @description For `price_threshold` — when `true`, fire immediately if the first observed
2211
+ * price is already past the target (no prior baseline). Default `false`.
2212
+ */
2213
+ fire_if_already_past?: boolean;
1531
2214
  };
1532
2215
  PositionHolderMetricsFilters: {
2216
+ /** @description Outcome token IDs to match. */
1533
2217
  position_ids?: string[];
2218
+ /**
2219
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
2220
+ * successful delivery. Applies to any webhook event.
2221
+ */
2222
+ one_shot?: boolean | null;
1534
2223
  };
1535
2224
  PositionHolderMetricsPayload: {
1536
- /** Format: int32 */
2225
+ /**
2226
+ * Format: int32
2227
+ * @description Unix timestamp in seconds.
2228
+ */
1537
2229
  ts: number;
1538
- /** Format: int64 */
2230
+ /**
2231
+ * Format: int64
2232
+ * @description Block number.
2233
+ */
1539
2234
  block: number;
2235
+ /** @description Outcome token ID. */
1540
2236
  position_id: string;
1541
- /** Format: int32 */
2237
+ /**
2238
+ * Format: int32
2239
+ * @description Number of holders.
2240
+ */
1542
2241
  holder_count: number;
1543
- /** Format: double */
2242
+ /**
2243
+ * Format: double
2244
+ * @description Total shares held.
2245
+ */
1544
2246
  total_balance: number;
1545
- /** Format: double */
2247
+ /**
2248
+ * Format: double
2249
+ * @description Total holder cost basis in USD.
2250
+ */
1546
2251
  total_cost_basis: number;
1547
- /** Format: int32 */
2252
+ /**
2253
+ * Format: int32
2254
+ * @description Number of market-level holders.
2255
+ */
1548
2256
  condition_holder_count?: number | null;
1549
- /** Format: int32 */
2257
+ /**
2258
+ * Format: int32
2259
+ * @description Number of event-level holders.
2260
+ */
1550
2261
  event_holder_count?: number | null;
1551
2262
  };
2263
+ /**
2264
+ * @description Subscription filters for the `position_liquidity` event.
2265
+ *
2266
+ * At least one of `min_liquidity_usd`, `max_liquidity_usd`, or `one_shot` must be set.
2267
+ * Thresholds are edge-triggered: a callback fires when liquidity crosses the threshold,
2268
+ * then re-arms once it crosses back (unless `one_shot`).
2269
+ */
2270
+ PositionLiquidityFilters: {
2271
+ /**
2272
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
2273
+ * successful delivery.
2274
+ */
2275
+ one_shot?: boolean | null;
2276
+ /**
2277
+ * Format: double
2278
+ * @description Fire when liquidity crosses up through this USD value.
2279
+ */
2280
+ min_liquidity_usd?: number | null;
2281
+ /**
2282
+ * Format: double
2283
+ * @description Fire when liquidity crosses down through this USD value.
2284
+ */
2285
+ max_liquidity_usd?: number | null;
2286
+ /** @description **Required.** Outcome token IDs to receive liquidity updates for. */
2287
+ position_ids: string[];
2288
+ };
2289
+ /** @description Position liquidity webhook payload. */
2290
+ PositionLiquidityPayload: {
2291
+ /** @description Outcome token (position) ID. */
2292
+ position_id: string;
2293
+ /**
2294
+ * Format: double
2295
+ * @description Order-book liquidity in USD at the time of firing.
2296
+ */
2297
+ liquidity_usd: number;
2298
+ /**
2299
+ * Format: double
2300
+ * @description The threshold (USD) that was crossed.
2301
+ */
2302
+ threshold_usd: number;
2303
+ /**
2304
+ * @description `"above"` when liquidity crossed up through `min_liquidity_usd`,
2305
+ * `"below"` when it crossed down through `max_liquidity_usd`.
2306
+ */
2307
+ direction: string;
2308
+ /**
2309
+ * Format: int64
2310
+ * @description Update timestamp (Unix millis).
2311
+ */
2312
+ liquidity_updated_at: number;
2313
+ };
1552
2314
  /** @description Subscription filters for the `position_metrics` event. All fields are optional. */
1553
2315
  PositionMetricsFilters: {
2316
+ /**
2317
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
2318
+ * successful delivery. Applies to any webhook event.
2319
+ */
2320
+ one_shot?: boolean | null;
1554
2321
  /** @description Restrict to these outcome token IDs. */
1555
2322
  position_ids?: string[] | null;
1556
2323
  /** @description Restrict to positions within these markets. */
@@ -1564,15 +2331,30 @@ export interface components {
1564
2331
  * @description Only fire when position volume ≥ this value (USD).
1565
2332
  */
1566
2333
  min_volume_usd?: number | null;
1567
- /** Format: double */
2334
+ /**
2335
+ * Format: double
2336
+ * @description Maximum volume USD.
2337
+ */
1568
2338
  max_volume_usd?: number | null;
1569
- /** Format: double */
2339
+ /**
2340
+ * Format: double
2341
+ * @description Minimum buy USD.
2342
+ */
1570
2343
  min_buy_usd?: number | null;
1571
- /** Format: double */
2344
+ /**
2345
+ * Format: double
2346
+ * @description Minimum sell volume USD.
2347
+ */
1572
2348
  min_sell_volume_usd?: number | null;
1573
- /** Format: int64 */
2349
+ /**
2350
+ * Format: int64
2351
+ * @description Minimum transactions.
2352
+ */
1574
2353
  min_txns?: number | null;
1575
- /** Format: int64 */
2354
+ /**
2355
+ * Format: int64
2356
+ * @description Minimum unique traders.
2357
+ */
1576
2358
  min_unique_traders?: number | null;
1577
2359
  /**
1578
2360
  * Format: double
@@ -1584,7 +2366,10 @@ export interface components {
1584
2366
  * @description Only fire when probability change % ≥ this value.
1585
2367
  */
1586
2368
  min_probability_change_pct?: number | null;
1587
- /** Format: double */
2369
+ /**
2370
+ * Format: double
2371
+ * @description Minimum fees.
2372
+ */
1588
2373
  min_fees?: number | null;
1589
2374
  };
1590
2375
  /** @description Payload delivered when a position's volume or transaction metrics cross a configured threshold */
@@ -1670,47 +2455,110 @@ export interface components {
1670
2455
  * @description Builder-attributed fees in USD
1671
2456
  */
1672
2457
  builder_fees?: number | null;
1673
- /** Format: int64 */
2458
+ /**
2459
+ * Format: int64
2460
+ * @description Transaction count.
2461
+ */
1674
2462
  txns?: number | null;
1675
- /** Format: int64 */
2463
+ /**
2464
+ * Format: int64
2465
+ * @description Buy count.
2466
+ */
1676
2467
  buys?: number | null;
1677
- /** Format: int64 */
2468
+ /**
2469
+ * Format: int64
2470
+ * @description Sell count.
2471
+ */
1678
2472
  sells?: number | null;
1679
- /** Format: int64 */
2473
+ /**
2474
+ * Format: int64
2475
+ * @description Builder-attributed transaction count.
2476
+ */
1680
2477
  builder_txns?: number | null;
1681
- /** Format: int64 */
2478
+ /**
2479
+ * Format: int64
2480
+ * @description Builder-attributed buy count.
2481
+ */
1682
2482
  builder_buys?: number | null;
1683
- /** Format: int64 */
2483
+ /**
2484
+ * Format: int64
2485
+ * @description Builder-attributed sell count.
2486
+ */
1684
2487
  builder_sells?: number | null;
1685
- /** Format: int64 */
2488
+ /**
2489
+ * Format: int64
2490
+ * @description Unique traders.
2491
+ */
1686
2492
  unique_traders?: number | null;
1687
- /** Format: int64 */
2493
+ /**
2494
+ * Format: int64
2495
+ * @description Unique makers.
2496
+ */
1688
2497
  unique_makers?: number | null;
1689
- /** Format: int64 */
2498
+ /**
2499
+ * Format: int64
2500
+ * @description Unique takers.
2501
+ */
1690
2502
  unique_takers?: number | null;
1691
- /** Format: int64 */
2503
+ /**
2504
+ * Format: int64
2505
+ * @description Unique builder traders.
2506
+ */
1692
2507
  unique_builder_traders?: number | null;
1693
- /** Format: double */
2508
+ /**
2509
+ * Format: double
2510
+ * @description Opening price.
2511
+ */
1694
2512
  price_open?: number | null;
1695
- /** Format: double */
2513
+ /**
2514
+ * Format: double
2515
+ * @description Closing price.
2516
+ */
1696
2517
  price_close?: number | null;
1697
- /** Format: double */
2518
+ /**
2519
+ * Format: double
2520
+ * @description Highest price.
2521
+ */
1698
2522
  price_high?: number | null;
1699
- /** Format: double */
2523
+ /**
2524
+ * Format: double
2525
+ * @description Lowest price.
2526
+ */
1700
2527
  price_low?: number | null;
1701
- /** Format: double */
2528
+ /**
2529
+ * Format: double
2530
+ * @description Opening implied probability.
2531
+ */
1702
2532
  probability_open?: number | null;
1703
- /** Format: double */
2533
+ /**
2534
+ * Format: double
2535
+ * @description Closing implied probability.
2536
+ */
1704
2537
  probability_close?: number | null;
1705
- /** Format: double */
2538
+ /**
2539
+ * Format: double
2540
+ * @description Highest implied probability.
2541
+ */
1706
2542
  probability_high?: number | null;
1707
- /** Format: double */
2543
+ /**
2544
+ * Format: double
2545
+ * @description Lowest implied probability.
2546
+ */
1708
2547
  probability_low?: number | null;
1709
- /** Format: double */
2548
+ /**
2549
+ * Format: double
2550
+ * @description Average shares per trade.
2551
+ */
1710
2552
  avg_trade_shares?: number | null;
1711
- /** Format: double */
2553
+ /**
2554
+ * Format: double
2555
+ * @description Average shares per buy.
2556
+ */
1712
2557
  avg_buy_shares?: number | null;
1713
- /** Format: double */
2558
+ /**
2559
+ * Format: double
2560
+ * @description Average shares per sell.
2561
+ */
1714
2562
  avg_sell_shares?: number | null;
1715
2563
  };
1716
2564
  PositionResolvedPayload: {
@@ -1854,6 +2702,11 @@ export interface components {
1854
2702
  };
1855
2703
  /** @description Subscription filters for the `position_volume_milestone` event. */
1856
2704
  PositionVolumeMilestoneFilters: {
2705
+ /**
2706
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
2707
+ * successful delivery. Applies to any webhook event.
2708
+ */
2709
+ one_shot?: boolean | null;
1857
2710
  /** @description **Required.** Aggregation windows to monitor. */
1858
2711
  timeframes: components["schemas"]["MetricFilterTimeframe"][];
1859
2712
  /** @description Restrict to these outcome token IDs. */
@@ -1867,11 +2720,18 @@ export interface components {
1867
2720
  };
1868
2721
  /** @description Position volume milestone webhook payload */
1869
2722
  PositionVolumeMilestonePayload: {
2723
+ /** @description Market condition ID. */
1870
2724
  condition_id?: string | null;
2725
+ /** @description Outcome token ID. */
1871
2726
  position_id: string;
2727
+ /** @description Outcome name. */
1872
2728
  outcome?: string | null;
1873
- /** Format: int32 */
2729
+ /**
2730
+ * Format: int32
2731
+ * @description Outcome index.
2732
+ */
1874
2733
  outcome_index?: number | null;
2734
+ /** @description Metric timeframe. */
1875
2735
  timeframe: string;
1876
2736
  /**
1877
2737
  * Format: double
@@ -1916,6 +2776,11 @@ export interface components {
1916
2776
  };
1917
2777
  /** @description Subscription filters for the `position_volume_spike` event. `spike_ratio` is required. */
1918
2778
  PositionVolumeSpikeFilters: {
2779
+ /**
2780
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
2781
+ * successful delivery. Applies to any webhook event.
2782
+ */
2783
+ one_shot?: boolean | null;
1919
2784
  /**
1920
2785
  * Format: double
1921
2786
  * @description **Required.** Multiplier threshold (must be > 1.0). Fires when current volume >= snapshot × ratio.
@@ -1937,15 +2802,26 @@ export interface components {
1937
2802
  };
1938
2803
  /** @description Position volume spike webhook payload */
1939
2804
  PositionVolumeSpikePayload: {
2805
+ /** @description Outcome token ID. */
1940
2806
  position_id: string;
2807
+ /** @description Market condition ID. */
1941
2808
  condition_id: string;
2809
+ /** @description Market question. */
1942
2810
  question?: string | null;
2811
+ /** @description Market slug. */
1943
2812
  market_slug?: string | null;
2813
+ /** @description Event slug. */
1944
2814
  event_slug?: string | null;
2815
+ /** @description Image URL. */
1945
2816
  image_url?: string | null;
2817
+ /** @description Outcome name. */
1946
2818
  outcome?: string | null;
1947
- /** Format: int32 */
2819
+ /**
2820
+ * Format: int32
2821
+ * @description Outcome index.
2822
+ */
1948
2823
  outcome_index?: number | null;
2824
+ /** @description Metric timeframe. */
1949
2825
  timeframe: string;
1950
2826
  /**
1951
2827
  * Format: double
@@ -1980,6 +2856,11 @@ export interface components {
1980
2856
  };
1981
2857
  /** @description Subscription filters for the `price_spike` event. */
1982
2858
  PriceSpikeFilters: {
2859
+ /**
2860
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
2861
+ * successful delivery. Applies to any webhook event.
2862
+ */
2863
+ one_shot?: boolean | null;
1983
2864
  /** @description Restrict to specific outcome token IDs. Empty = all positions. */
1984
2865
  position_ids?: string[] | null;
1985
2866
  /** @description Restrict to specific market condition IDs. Empty = all markets. */
@@ -1988,6 +2869,10 @@ export interface components {
1988
2869
  event_slugs?: string[] | null;
1989
2870
  /** @description Restrict to these outcome names (e.g. \["Yes", "No"\]). */
1990
2871
  outcomes?: string[] | null;
2872
+ /** @description Restrict to markets carrying any of these tags or category names (case-insensitive). Empty = all. */
2873
+ tags?: string[] | null;
2874
+ /** @description Restrict to markets in any of these series (by slug, case-insensitive). Empty = all. */
2875
+ series_slugs?: string[] | null;
1991
2876
  /**
1992
2877
  * Format: double
1993
2878
  * @description Minimum price percentage move to trigger (e.g. `10` for a 10% move).
@@ -2024,14 +2909,24 @@ export interface components {
2024
2909
  };
2025
2910
  /** @description Position price spike webhook payload */
2026
2911
  PriceSpikePayload: {
2912
+ /** @description Outcome token ID. */
2027
2913
  position_id: string;
2914
+ /** @description Market condition ID. */
2028
2915
  condition_id?: string | null;
2916
+ /** @description Market question. */
2029
2917
  question?: string | null;
2918
+ /** @description Market slug. */
2030
2919
  market_slug?: string | null;
2920
+ /** @description Event slug. */
2031
2921
  event_slug?: string | null;
2922
+ /** @description Image URL. */
2032
2923
  image_url?: string | null;
2924
+ /** @description Outcome name. */
2033
2925
  outcome?: string | null;
2034
- /** Format: int32 */
2926
+ /**
2927
+ * Format: int32
2928
+ * @description Outcome index.
2929
+ */
2035
2930
  outcome_index?: number | null;
2036
2931
  /**
2037
2932
  * Format: double
@@ -2051,8 +2946,126 @@ export interface components {
2051
2946
  */
2052
2947
  spike_pct: number;
2053
2948
  };
2949
+ /** @description Subscription filters for the `price_threshold` event. */
2950
+ PriceThresholdFilters: {
2951
+ /** @description Restrict to markets carrying any of these tags or category names (case-insensitive). Empty = all. */
2952
+ tags?: string[] | null;
2953
+ /** @description Restrict to markets in any of these series (by slug, case-insensitive). Empty = all. */
2954
+ series_slugs?: string[] | null;
2955
+ /**
2956
+ * Format: double
2957
+ * @description Upward target — fire when the YES price crosses up to ≥ this value (e.g. 0.75 for 75%). At least one of `min_probability` or `max_probability` must be set.
2958
+ */
2959
+ min_probability?: number | null;
2960
+ /**
2961
+ * Format: double
2962
+ * @description Downward target — fire when the YES price crosses down to ≤ this value (e.g. 0.25).
2963
+ */
2964
+ max_probability?: number | null;
2965
+ /** @description When `true`, delete the subscription after its first delivery (fire-and-delete). Requires `position_ids` or `condition_ids`. Default: `false`. */
2966
+ one_shot?: boolean | null;
2967
+ /** @description When `true`, fire immediately if the first observed price is already past the target (no prior baseline). Default: `false` (wait for an actual crossing). */
2968
+ fire_if_already_past?: boolean | null;
2969
+ /** @description Restrict to these markets. */
2970
+ condition_ids?: string[] | null;
2971
+ /** @description Restrict to these outcome token IDs. */
2972
+ position_ids?: string[] | null;
2973
+ /** @description Restrict to markets in these events. */
2974
+ event_slugs?: string[] | null;
2975
+ /** @description Restrict to these outcome names (e.g. \["Yes", "No"\]). */
2976
+ outcomes?: string[] | null;
2977
+ /** @description Restrict by outcome index. 0 = Yes/Up, 1 = No. Position 0 usually represents the Up/Yes side in binary markets. */
2978
+ position_outcome_indices?: number[] | null;
2979
+ /** @description When `true`, suppress webhooks for short-term "updown" markets. Default: `false`. */
2980
+ exclude_shortterm_markets?: boolean | null;
2981
+ };
2982
+ /** @description Price-threshold crossing webhook payload */
2983
+ PriceThresholdPayload: {
2984
+ /** @description Trader address (the limit-order maker) */
2985
+ trader: string;
2986
+ /** @description Taker address (the order filler — often the exchange contract) */
2987
+ taker: string;
2988
+ /** @description Position ID (ERC1155 token ID) */
2989
+ position_id: string;
2990
+ /** @description Condition ID (parent market) */
2991
+ condition_id?: string | null;
2992
+ /** @description Outcome name (e.g. "Yes", "No") */
2993
+ outcome?: string | null;
2994
+ /**
2995
+ * Format: int32
2996
+ * @description Outcome index (0 = Yes/Up, 1 = No). Position 0 usually represents Yes/Up.
2997
+ */
2998
+ outcome_index?: number | null;
2999
+ /** @description Market question */
3000
+ question?: string | null;
3001
+ /** @description Market slug */
3002
+ market_slug?: string | null;
3003
+ /** @description Event slug */
3004
+ event_slug?: string | null;
3005
+ /** @description Trade ID */
3006
+ trade_id: string;
3007
+ /** @description Transaction hash */
3008
+ hash: string;
3009
+ /**
3010
+ * Format: int64
3011
+ * @description Block number
3012
+ */
3013
+ block: number;
3014
+ /**
3015
+ * Format: int64
3016
+ * @description Confirmed timestamp (Unix seconds)
3017
+ */
3018
+ confirmed_at: number;
3019
+ /**
3020
+ * Format: double
3021
+ * @description USD size of the trade
3022
+ */
3023
+ amount_usd: number;
3024
+ /**
3025
+ * Format: double
3026
+ * @description Outcome shares traded
3027
+ */
3028
+ shares_amount: number;
3029
+ /**
3030
+ * Format: double
3031
+ * @description Fee paid (USD)
3032
+ */
3033
+ fee: number;
3034
+ /** @description Trade side ("Buy" or "Sell") */
3035
+ side: string;
3036
+ /**
3037
+ * Format: double
3038
+ * @description Last observed price before this trade (the baseline the crossing is measured from)
3039
+ */
3040
+ previous_price: number;
3041
+ /**
3042
+ * Format: double
3043
+ * @description Price per share (0.0–1.0) that crossed the threshold
3044
+ */
3045
+ price: number;
3046
+ /**
3047
+ * Format: double
3048
+ * @description Implied probability of the outcome (0.0–1.0)
3049
+ */
3050
+ probability?: number | null;
3051
+ /**
3052
+ * @description Crossing direction: `"up"` (crossed up to the `min_probability` target) or
3053
+ * `"down"` (crossed down to the `max_probability` target)
3054
+ */
3055
+ direction: string;
3056
+ /**
3057
+ * Format: double
3058
+ * @description The target threshold from the subscriber's filter that was crossed
3059
+ */
3060
+ threshold: number;
3061
+ };
2054
3062
  /** @description Subscription filters for the `probability_spike` event. */
2055
3063
  ProbabilitySpikeFilters: {
3064
+ /**
3065
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
3066
+ * successful delivery. Applies to any webhook event.
3067
+ */
3068
+ one_shot?: boolean | null;
2056
3069
  /** @description Restrict to specific outcome token IDs. Empty = all positions. */
2057
3070
  position_ids?: string[] | null;
2058
3071
  /** @description Restrict to specific market condition IDs. Empty = all markets. */
@@ -2071,6 +3084,10 @@ export interface components {
2071
3084
  * @description Maximum YES probability (0-1).
2072
3085
  */
2073
3086
  max_probability?: number | null;
3087
+ /** @description Restrict to markets carrying any of these tags or category names (case-insensitive). Empty = all. */
3088
+ tags?: string[] | null;
3089
+ /** @description Restrict to markets in any of these series (by slug, case-insensitive). Empty = all. */
3090
+ series_slugs?: string[] | null;
2074
3091
  /**
2075
3092
  * Format: double
2076
3093
  * @description Minimum probability percentage move to trigger (e.g. `10` for a 10% move).
@@ -2097,14 +3114,24 @@ export interface components {
2097
3114
  };
2098
3115
  /** @description Position probability spike webhook payload */
2099
3116
  ProbabilitySpikePayload: {
3117
+ /** @description Outcome token ID. */
2100
3118
  position_id: string;
3119
+ /** @description Market condition ID. */
2101
3120
  condition_id?: string | null;
3121
+ /** @description Market question. */
2102
3122
  question?: string | null;
3123
+ /** @description Market slug. */
2103
3124
  market_slug?: string | null;
3125
+ /** @description Event slug. */
2104
3126
  event_slug?: string | null;
3127
+ /** @description Image URL. */
2105
3128
  image_url?: string | null;
3129
+ /** @description Outcome name. */
2106
3130
  outcome?: string | null;
2107
- /** Format: int32 */
3131
+ /**
3132
+ * Format: int32
3133
+ * @description Outcome index.
3134
+ */
2108
3135
  outcome_index?: number | null;
2109
3136
  /**
2110
3137
  * Format: double
@@ -2415,6 +3442,11 @@ export interface components {
2415
3442
  SpikeDirection: "up" | "down" | "both";
2416
3443
  /** @description Subscription filters for the `tag_metrics` event. All fields are optional. */
2417
3444
  TagMetricsFilters: {
3445
+ /**
3446
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
3447
+ * successful delivery. Applies to any webhook event.
3448
+ */
3449
+ one_shot?: boolean | null;
2418
3450
  /** @description Restrict to these tags. Empty = all tags. */
2419
3451
  tags?: string[] | null;
2420
3452
  /** @description Restrict to these aggregation windows. */
@@ -2424,13 +3456,25 @@ export interface components {
2424
3456
  * @description Only fire when aggregated tag volume >= this value (USD).
2425
3457
  */
2426
3458
  min_volume_usd?: number | null;
2427
- /** Format: double */
3459
+ /**
3460
+ * Format: double
3461
+ * @description Maximum volume USD.
3462
+ */
2428
3463
  max_volume_usd?: number | null;
2429
- /** Format: int64 */
3464
+ /**
3465
+ * Format: int64
3466
+ * @description Minimum transactions.
3467
+ */
2430
3468
  min_txns?: number | null;
2431
- /** Format: int64 */
3469
+ /**
3470
+ * Format: int64
3471
+ * @description Minimum unique traders.
3472
+ */
2432
3473
  min_unique_traders?: number | null;
2433
- /** Format: double */
3474
+ /**
3475
+ * Format: double
3476
+ * @description Minimum fees.
3477
+ */
2434
3478
  min_fees?: number | null;
2435
3479
  };
2436
3480
  /** @description Payload delivered when a tag's aggregated volume or transaction metrics cross a configured threshold */
@@ -2508,6 +3552,11 @@ export interface components {
2508
3552
  TradeEventFilterType: "OrderFilled" | "OrdersMatched" | "MakerRebate" | "Reward" | "Yield" | "Redemption" | "Merge" | "Split" | "Cancelled" | "PositionsConverted" | "Initialization" | "Proposal" | "Dispute" | "Settled" | "Resolution" | "ConditionResolution" | "Reset" | "Flag" | "Unflag" | "Pause" | "Unpause" | "ManualResolution" | "NegRiskOutcomeReported" | "RegisterToken";
2509
3553
  /** @description Subscription filters for the `trader_category_pnl` event. All fields are optional. */
2510
3554
  TraderCategoryPnlFilters: {
3555
+ /**
3556
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
3557
+ * successful delivery. Applies to any webhook event.
3558
+ */
3559
+ one_shot?: boolean | null;
2511
3560
  /** @description Track only these trader wallet addresses. Empty = all traders. */
2512
3561
  traders?: string[] | null;
2513
3562
  /** @description Restrict to these market categories (e.g. `politics`, `sports`). */
@@ -2557,6 +3606,11 @@ export interface components {
2557
3606
  };
2558
3607
  /** @description Subscription filters for the `trader_pnl_exits` event. All fields are optional. */
2559
3608
  TraderExitMarkersFilters: {
3609
+ /**
3610
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
3611
+ * successful delivery. Applies to any webhook event.
3612
+ */
3613
+ one_shot?: boolean | null;
2560
3614
  /** @description Track only these trader wallet addresses. Empty = all traders. */
2561
3615
  traders?: string[] | null;
2562
3616
  /** @description Restrict to these markets. */
@@ -2566,6 +3620,11 @@ export interface components {
2566
3620
  };
2567
3621
  /** @description Subscription filters for the `trader_first_trade` event. All fields are optional. */
2568
3622
  TraderFirstTradeFilters: {
3623
+ /**
3624
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
3625
+ * successful delivery. Applies to any webhook event.
3626
+ */
3627
+ one_shot?: boolean | null;
2569
3628
  /** @description Only fire for trades by these wallet addresses (lowercase). Empty = all traders. */
2570
3629
  wallet_addresses?: string[] | null;
2571
3630
  /** @description Restrict to trades in these markets. Empty = all markets. */
@@ -2592,6 +3651,11 @@ export interface components {
2592
3651
  };
2593
3652
  /** @description Subscription filters for the `trader_global_pnl` event. All fields are optional. */
2594
3653
  TraderGlobalPnlFilters: {
3654
+ /**
3655
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
3656
+ * successful delivery. Applies to any webhook event.
3657
+ */
3658
+ one_shot?: boolean | null;
2595
3659
  /** @description Track only these trader wallet addresses. Empty = all traders. */
2596
3660
  traders?: string[] | null;
2597
3661
  /**
@@ -2639,6 +3703,11 @@ export interface components {
2639
3703
  };
2640
3704
  /** @description Subscription filters for the `trader_market_pnl` event. All fields are optional. */
2641
3705
  TraderMarketPnlFilters: {
3706
+ /**
3707
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
3708
+ * successful delivery. Applies to any webhook event.
3709
+ */
3710
+ one_shot?: boolean | null;
2642
3711
  /** @description Track only these trader wallet addresses. */
2643
3712
  traders?: string[] | null;
2644
3713
  /** @description Restrict to these markets. */
@@ -2682,6 +3751,11 @@ export interface components {
2682
3751
  };
2683
3752
  /** @description Subscription filters for the `trader_new_market` event. All fields are optional. */
2684
3753
  TraderNewMarketFilters: {
3754
+ /**
3755
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
3756
+ * successful delivery. Applies to any webhook event.
3757
+ */
3758
+ one_shot?: boolean | null;
2685
3759
  /** @description Only fire for these wallet addresses (lowercase). Empty = all traders. */
2686
3760
  wallet_addresses?: string[] | null;
2687
3761
  /** @description Restrict to these markets. */
@@ -2708,6 +3782,11 @@ export interface components {
2708
3782
  };
2709
3783
  /** @description Subscription filters for the `trader_new_trade` event. All fields are optional. */
2710
3784
  TraderNewTradeFilters: {
3785
+ /**
3786
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
3787
+ * successful delivery. Applies to any webhook event.
3788
+ */
3789
+ one_shot?: boolean | null;
2711
3790
  /** @description Only fire for trades by these wallet addresses. Empty = all traders. */
2712
3791
  wallet_addresses?: string[] | null;
2713
3792
  /** @description Restrict to these markets. */
@@ -2736,6 +3815,11 @@ export interface components {
2736
3815
  };
2737
3816
  /** @description Subscription filters for the `trader_position_resolved` event. All fields are optional. */
2738
3817
  TraderPositionResolvedFilters: {
3818
+ /**
3819
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
3820
+ * successful delivery. Applies to any webhook event.
3821
+ */
3822
+ one_shot?: boolean | null;
2739
3823
  /** @description Track only these trader wallet addresses. Empty = all traders. */
2740
3824
  traders?: string[] | null;
2741
3825
  /** @description Restrict to these markets. */
@@ -2754,6 +3838,11 @@ export interface components {
2754
3838
  * `event_slug` in the typed webhook payload.
2755
3839
  */
2756
3840
  TraderTradeEventFilters: {
3841
+ /**
3842
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
3843
+ * successful delivery. Applies to any webhook event.
3844
+ */
3845
+ one_shot?: boolean | null;
2757
3846
  /** @description Only fire for events associated with these wallet addresses. Empty = all traders. */
2758
3847
  wallet_addresses?: string[] | null;
2759
3848
  /** @description Restrict to these markets. For `PositionsConverted`, this also matches the NegRisk `market_id`. */
@@ -2782,6 +3871,11 @@ export interface components {
2782
3871
  };
2783
3872
  /** @description Subscription filters for the `trader_whale_trade` event. All fields are optional. */
2784
3873
  TraderWhaleTradeFilters: {
3874
+ /**
3875
+ * @description Fire-and-delete: when `true`, delete the subscription after its first
3876
+ * successful delivery. Applies to any webhook event.
3877
+ */
3878
+ one_shot?: boolean | null;
2785
3879
  /** @description Only fire for trades by these wallet addresses. Empty = all traders. */
2786
3880
  wallet_addresses?: string[] | null;
2787
3881
  /** @description Restrict to these markets. */
@@ -2820,7 +3914,9 @@ export interface components {
2820
3914
  };
2821
3915
  /** @description Volume milestone webhook payload */
2822
3916
  VolumeMilestonePayload: {
3917
+ /** @description Market condition ID. */
2823
3918
  condition_id: string;
3919
+ /** @description Metric timeframe. */
2824
3920
  timeframe: string;
2825
3921
  /**
2826
3922
  * Format: double
@@ -2885,8 +3981,16 @@ export interface components {
2885
3981
  position_ids?: string[];
2886
3982
  /** @description Filter by event slugs. Max 500 entries. */
2887
3983
  event_slugs?: string[];
2888
- /** @description Filter by tags or category names (case-insensitive) — for market_created. Max 500 entries. */
3984
+ /**
3985
+ * @description Filter by tags or category names (case-insensitive). Matches a market's tags or its
3986
+ * category label — for market_created and all market-keyed events. Max 500 entries.
3987
+ */
2889
3988
  tags?: string[];
3989
+ /**
3990
+ * @description Filter by series slugs (case-insensitive). Matches a market's parent series — for all
3991
+ * market-keyed events. Max 500 entries.
3992
+ */
3993
+ series_slugs?: string[];
2890
3994
  /** @description Filter by outcomes (e.g. "Yes", "No") — for position metrics / close_to_bond. Max 500 entries. */
2891
3995
  outcomes?: string[];
2892
3996
  /** @description Filter by position outcome index — for close_to_bond. Position 0 = Yes/Up, 1 = No. Max 500 entries. */
@@ -3009,6 +4113,17 @@ export interface components {
3009
4113
  * Valid values: "BTC", "ETH", "SOL", "XRP", "DOGE", "BNB", "HYPE". Empty = all assets (send everything).
3010
4114
  */
3011
4115
  asset_symbols?: components["schemas"]["WebhookAssetSymbol"][];
4116
+ /**
4117
+ * @description Fire-and-delete: delete the subscription after its first successful
4118
+ * delivery. Works on any webhook event. (`price_threshold` additionally
4119
+ * requires `position_ids` or `condition_ids`.)
4120
+ */
4121
+ one_shot?: boolean;
4122
+ /**
4123
+ * @description For `price_threshold` — fire immediately if the first observed price is
4124
+ * already past the target. Default `false` (wait for an actual crossing).
4125
+ */
4126
+ fire_if_already_past?: boolean;
3012
4127
  };
3013
4128
  /** @description List webhooks response */
3014
4129
  WebhookListResponseBody: {
@@ -3195,6 +4310,7 @@ export interface components {
3195
4310
  /**
3196
4311
  * @description CLOB V2 builder code (lower-cased `0x...` bytes32 hex). Absent on V1
3197
4312
  * trades; may be `0x0000…` for V2 trades placed without a builder code.
4313
+ * CLOB builder code.
3198
4314
  */
3199
4315
  builder_code?: string | null;
3200
4316
  /**
@@ -3737,7 +4853,7 @@ export interface components {
3737
4853
  * @description All alert event types supported by both HTTP webhooks and the alerts WebSocket.
3738
4854
  * @enum {string}
3739
4855
  */
3740
- WsAlertEventType: "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_pnl_exits" | "position_holder_metrics" | "condition_holder_metrics" | "event_holder_metrics" | "condition_metrics" | "event_metrics" | "tag_metrics" | "position_metrics" | "market_volume_milestone" | "event_volume_milestone" | "position_volume_milestone" | "probability_spike" | "price_spike" | "market_volume_spike" | "event_volume_spike" | "position_volume_spike" | "close_to_bond" | "market_created" | "oracle_events" | "asset_price_tick" | "asset_price_window_update";
4856
+ WsAlertEventType: "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_pnl_exits" | "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" | "probability_spike" | "price_spike" | "market_volume_spike" | "event_volume_spike" | "position_volume_spike" | "close_to_bond" | "price_threshold" | "market_resolved" | "market_disputed" | "market_created" | "oracle_events" | "asset_price_tick" | "asset_price_window_update";
3741
4857
  /** @description Server acknowledgement for a successful alert subscription. */
3742
4858
  WsAlertSubscribedResponse: {
3743
4859
  /** @enum {string} */
@@ -4907,6 +6023,159 @@ export interface components {
4907
6023
  timestamp: number;
4908
6024
  data: components["schemas"]["PositionMetricsPayload"];
4909
6025
  };
6026
+ WsAlertPositionLiquiditySubscribeMessage: ({
6027
+ /** @enum {string} */
6028
+ op: "subscribe";
6029
+ /** @enum {string} */
6030
+ event: "position_liquidity";
6031
+ } & components["schemas"]["PositionLiquidityFilters"] & {
6032
+ /**
6033
+ * @description discriminator enum property added by openapi-typescript
6034
+ * @enum {string}
6035
+ */
6036
+ event: "position_liquidity";
6037
+ }) | unknown;
6038
+ WsAlertPositionLiquidityUnsubscribeMessage: ({
6039
+ /** @enum {string} */
6040
+ op: "unsubscribe";
6041
+ /** @enum {string} */
6042
+ event: "position_liquidity";
6043
+ } & components["schemas"]["PositionLiquidityFilters"] & {
6044
+ /**
6045
+ * @description discriminator enum property added by openapi-typescript
6046
+ * @enum {string}
6047
+ */
6048
+ event: "position_liquidity";
6049
+ }) | unknown;
6050
+ /**
6051
+ * @description Pushed `position_liquidity` alert. The `data` payload matches the corresponding HTTP webhook payload schema.
6052
+ * @example {
6053
+ * "event": "position_liquidity",
6054
+ * "timestamp": 1743500000000,
6055
+ * "data": {
6056
+ * "position_id": "71321045679252212594626385532706912750332728571942532289631379312455583992563",
6057
+ * "liquidity_usd": 48000,
6058
+ * "threshold_usd": 50000,
6059
+ * "direction": "below",
6060
+ * "liquidity_updated_at": 1700000000000
6061
+ * }
6062
+ * }
6063
+ */
6064
+ WsAlertPositionLiquidityEvent: {
6065
+ /**
6066
+ * @description discriminator enum property added by openapi-typescript
6067
+ * @enum {string}
6068
+ */
6069
+ event: "position_liquidity";
6070
+ /**
6071
+ * Format: int64
6072
+ * @description Unix timestamp in milliseconds
6073
+ */
6074
+ timestamp: number;
6075
+ data: components["schemas"]["PositionLiquidityPayload"];
6076
+ };
6077
+ WsAlertMarketLiquiditySubscribeMessage: ({
6078
+ /** @enum {string} */
6079
+ op: "subscribe";
6080
+ /** @enum {string} */
6081
+ event: "market_liquidity";
6082
+ } & components["schemas"]["MarketLiquidityFilters"] & {
6083
+ /**
6084
+ * @description discriminator enum property added by openapi-typescript
6085
+ * @enum {string}
6086
+ */
6087
+ event: "market_liquidity";
6088
+ }) | unknown;
6089
+ WsAlertMarketLiquidityUnsubscribeMessage: ({
6090
+ /** @enum {string} */
6091
+ op: "unsubscribe";
6092
+ /** @enum {string} */
6093
+ event: "market_liquidity";
6094
+ } & components["schemas"]["MarketLiquidityFilters"] & {
6095
+ /**
6096
+ * @description discriminator enum property added by openapi-typescript
6097
+ * @enum {string}
6098
+ */
6099
+ event: "market_liquidity";
6100
+ }) | unknown;
6101
+ /**
6102
+ * @description Pushed `market_liquidity` alert. The `data` payload matches the corresponding HTTP webhook payload schema.
6103
+ * @example {
6104
+ * "event": "market_liquidity",
6105
+ * "timestamp": 1743500000000,
6106
+ * "data": {
6107
+ * "condition_id": "0x0000000000000000000000000000000000000000000000000000000000000000",
6108
+ * "liquidity_usd": 125000,
6109
+ * "threshold_usd": 100000,
6110
+ * "direction": "above",
6111
+ * "liquidity_updated_at": 1700000000000
6112
+ * }
6113
+ * }
6114
+ */
6115
+ WsAlertMarketLiquidityEvent: {
6116
+ /**
6117
+ * @description discriminator enum property added by openapi-typescript
6118
+ * @enum {string}
6119
+ */
6120
+ event: "market_liquidity";
6121
+ /**
6122
+ * Format: int64
6123
+ * @description Unix timestamp in milliseconds
6124
+ */
6125
+ timestamp: number;
6126
+ data: components["schemas"]["MarketLiquidityPayload"];
6127
+ };
6128
+ WsAlertEventLiquiditySubscribeMessage: ({
6129
+ /** @enum {string} */
6130
+ op: "subscribe";
6131
+ /** @enum {string} */
6132
+ event: "event_liquidity";
6133
+ } & components["schemas"]["EventLiquidityFilters"] & {
6134
+ /**
6135
+ * @description discriminator enum property added by openapi-typescript
6136
+ * @enum {string}
6137
+ */
6138
+ event: "event_liquidity";
6139
+ }) | unknown;
6140
+ WsAlertEventLiquidityUnsubscribeMessage: ({
6141
+ /** @enum {string} */
6142
+ op: "unsubscribe";
6143
+ /** @enum {string} */
6144
+ event: "event_liquidity";
6145
+ } & components["schemas"]["EventLiquidityFilters"] & {
6146
+ /**
6147
+ * @description discriminator enum property added by openapi-typescript
6148
+ * @enum {string}
6149
+ */
6150
+ event: "event_liquidity";
6151
+ }) | unknown;
6152
+ /**
6153
+ * @description Pushed `event_liquidity` alert. The `data` payload matches the corresponding HTTP webhook payload schema.
6154
+ * @example {
6155
+ * "event": "event_liquidity",
6156
+ * "timestamp": 1743500000000,
6157
+ * "data": {
6158
+ * "event_slug": "us-presidential-election-2024",
6159
+ * "liquidity_usd": 2500000,
6160
+ * "threshold_usd": 1000000,
6161
+ * "direction": "above",
6162
+ * "liquidity_updated_at": 1700000000000
6163
+ * }
6164
+ * }
6165
+ */
6166
+ WsAlertEventLiquidityEvent: {
6167
+ /**
6168
+ * @description discriminator enum property added by openapi-typescript
6169
+ * @enum {string}
6170
+ */
6171
+ event: "event_liquidity";
6172
+ /**
6173
+ * Format: int64
6174
+ * @description Unix timestamp in milliseconds
6175
+ */
6176
+ timestamp: number;
6177
+ data: components["schemas"]["EventLiquidityPayload"];
6178
+ };
4910
6179
  WsAlertMarketVolumeMilestoneSubscribeMessage: {
4911
6180
  /** @enum {string} */
4912
6181
  op: "subscribe";
@@ -5428,6 +6697,190 @@ export interface components {
5428
6697
  timestamp: number;
5429
6698
  data: components["schemas"]["CloseToBondPayload"];
5430
6699
  };
6700
+ WsAlertPriceThresholdSubscribeMessage: ({
6701
+ /** @enum {string} */
6702
+ op: "subscribe";
6703
+ /** @enum {string} */
6704
+ event: "price_threshold";
6705
+ } & components["schemas"]["PriceThresholdFilters"] & {
6706
+ /**
6707
+ * @description discriminator enum property added by openapi-typescript
6708
+ * @enum {string}
6709
+ */
6710
+ event: "price_threshold";
6711
+ }) | unknown | unknown;
6712
+ WsAlertPriceThresholdUnsubscribeMessage: ({
6713
+ /** @enum {string} */
6714
+ op: "unsubscribe";
6715
+ /** @enum {string} */
6716
+ event: "price_threshold";
6717
+ } & components["schemas"]["PriceThresholdFilters"] & {
6718
+ /**
6719
+ * @description discriminator enum property added by openapi-typescript
6720
+ * @enum {string}
6721
+ */
6722
+ event: "price_threshold";
6723
+ }) | unknown | unknown;
6724
+ /**
6725
+ * @description Pushed `price_threshold` alert. The `data` payload matches the corresponding HTTP webhook payload schema.
6726
+ * @example {
6727
+ * "event": "price_threshold",
6728
+ * "timestamp": 1743500000000,
6729
+ * "data": {
6730
+ * "trader": "0x0000000000000000000000000000000000000000",
6731
+ * "taker": "0x0000000000000000000000000000000000000000",
6732
+ * "position_id": "452312848583266388373324160190187140051835877600158453279131187530910662656",
6733
+ * "condition_id": "0x0000000000000000000000000000000000000000000000000000000000000000",
6734
+ * "outcome": "Yes",
6735
+ * "outcome_index": 0,
6736
+ * "question": "Will this test webhook fire correctly?",
6737
+ * "market_slug": "test-market-0000000000",
6738
+ * "event_slug": "test-event-0000000000",
6739
+ * "trade_id": "00000000-0000-0000-0000-000000000000",
6740
+ * "hash": "0x0000000000000000000000000000000000000000000000000000000000000000",
6741
+ * "block": 0,
6742
+ * "confirmed_at": 1700000000,
6743
+ * "amount_usd": 500,
6744
+ * "shares_amount": 666.67,
6745
+ * "fee": 2.5,
6746
+ * "side": "Buy",
6747
+ * "previous_price": 0.72,
6748
+ * "price": 0.75,
6749
+ * "probability": 0.75,
6750
+ * "direction": "up",
6751
+ * "threshold": 0.75
6752
+ * }
6753
+ * }
6754
+ */
6755
+ WsAlertPriceThresholdEvent: {
6756
+ /**
6757
+ * @description discriminator enum property added by openapi-typescript
6758
+ * @enum {string}
6759
+ */
6760
+ event: "price_threshold";
6761
+ /**
6762
+ * Format: int64
6763
+ * @description Unix timestamp in milliseconds
6764
+ */
6765
+ timestamp: number;
6766
+ data: components["schemas"]["PriceThresholdPayload"];
6767
+ };
6768
+ WsAlertMarketResolvedSubscribeMessage: {
6769
+ /** @enum {string} */
6770
+ op: "subscribe";
6771
+ /** @enum {string} */
6772
+ event: "market_resolved";
6773
+ } & components["schemas"]["MarketResolvedFilters"] & {
6774
+ /**
6775
+ * @description discriminator enum property added by openapi-typescript
6776
+ * @enum {string}
6777
+ */
6778
+ event: "market_resolved";
6779
+ };
6780
+ WsAlertMarketResolvedUnsubscribeMessage: {
6781
+ /** @enum {string} */
6782
+ op: "unsubscribe";
6783
+ /** @enum {string} */
6784
+ event: "market_resolved";
6785
+ } & components["schemas"]["MarketResolvedFilters"] & {
6786
+ /**
6787
+ * @description discriminator enum property added by openapi-typescript
6788
+ * @enum {string}
6789
+ */
6790
+ event: "market_resolved";
6791
+ };
6792
+ /**
6793
+ * @description Pushed `market_resolved` alert. The `data` payload matches the corresponding HTTP webhook payload schema.
6794
+ * @example {
6795
+ * "event": "market_resolved",
6796
+ * "timestamp": 1743500000000,
6797
+ * "data": {
6798
+ * "condition_id": "0x0000000000000000000000000000000000000000000000000000000000000000",
6799
+ * "winning_outcome": "Yes",
6800
+ * "settled_price": 1,
6801
+ * "resolution_kind": "question_resolved",
6802
+ * "question": "Will this test webhook fire correctly?",
6803
+ * "market_slug": "test-market-0000000000",
6804
+ * "event_slug": "test-event-0000000000",
6805
+ * "image_url": "https://polymarket-upload.s3.us-east-2.amazonaws.com/test.png",
6806
+ * "hash": "0x0000000000000000000000000000000000000000000000000000000000000000",
6807
+ * "block": 0,
6808
+ * "confirmed_at": 1700000000
6809
+ * }
6810
+ * }
6811
+ */
6812
+ WsAlertMarketResolvedEvent: {
6813
+ /**
6814
+ * @description discriminator enum property added by openapi-typescript
6815
+ * @enum {string}
6816
+ */
6817
+ event: "market_resolved";
6818
+ /**
6819
+ * Format: int64
6820
+ * @description Unix timestamp in milliseconds
6821
+ */
6822
+ timestamp: number;
6823
+ data: components["schemas"]["MarketResolvedPayload"];
6824
+ };
6825
+ WsAlertMarketDisputedSubscribeMessage: {
6826
+ /** @enum {string} */
6827
+ op: "subscribe";
6828
+ /** @enum {string} */
6829
+ event: "market_disputed";
6830
+ } & components["schemas"]["MarketDisputedFilters"] & {
6831
+ /**
6832
+ * @description discriminator enum property added by openapi-typescript
6833
+ * @enum {string}
6834
+ */
6835
+ event: "market_disputed";
6836
+ };
6837
+ WsAlertMarketDisputedUnsubscribeMessage: {
6838
+ /** @enum {string} */
6839
+ op: "unsubscribe";
6840
+ /** @enum {string} */
6841
+ event: "market_disputed";
6842
+ } & components["schemas"]["MarketDisputedFilters"] & {
6843
+ /**
6844
+ * @description discriminator enum property added by openapi-typescript
6845
+ * @enum {string}
6846
+ */
6847
+ event: "market_disputed";
6848
+ };
6849
+ /**
6850
+ * @description Pushed `market_disputed` alert. The `data` payload matches the corresponding HTTP webhook payload schema.
6851
+ * @example {
6852
+ * "event": "market_disputed",
6853
+ * "timestamp": 1743500000000,
6854
+ * "data": {
6855
+ * "condition_id": "0x0000000000000000000000000000000000000000000000000000000000000000",
6856
+ * "dispute_kind": "dispute_price",
6857
+ * "disputer": "0x0000000000000000000000000000000000000000",
6858
+ * "proposer": "0x0000000000000000000000000000000000000001",
6859
+ * "proposed_outcome": "Yes",
6860
+ * "proposed_price": 1,
6861
+ * "question": "Will this test webhook fire correctly?",
6862
+ * "market_slug": "test-market-0000000000",
6863
+ * "event_slug": "test-event-0000000000",
6864
+ * "image_url": "https://polymarket-upload.s3.us-east-2.amazonaws.com/test.png",
6865
+ * "hash": "0x0000000000000000000000000000000000000000000000000000000000000000",
6866
+ * "block": 0,
6867
+ * "confirmed_at": 1700000000
6868
+ * }
6869
+ * }
6870
+ */
6871
+ WsAlertMarketDisputedEvent: {
6872
+ /**
6873
+ * @description discriminator enum property added by openapi-typescript
6874
+ * @enum {string}
6875
+ */
6876
+ event: "market_disputed";
6877
+ /**
6878
+ * Format: int64
6879
+ * @description Unix timestamp in milliseconds
6880
+ */
6881
+ timestamp: number;
6882
+ data: components["schemas"]["MarketDisputedPayload"];
6883
+ };
5431
6884
  WsAlertMarketCreatedSubscribeMessage: {
5432
6885
  /** @enum {string} */
5433
6886
  op: "subscribe";
@@ -5662,11 +7115,11 @@ export interface components {
5662
7115
  data: components["schemas"]["AssetPriceWindowUpdatePayload"];
5663
7116
  };
5664
7117
  /** @description Typed subscribe request for the alerts WebSocket. The request shape depends on `event`; filters follow the schema associated with that event type. */
5665
- WsAlertSubscribeMessage: components["schemas"]["WsAlertTraderFirstTradeSubscribeMessage"] | components["schemas"]["WsAlertTraderNewMarketSubscribeMessage"] | components["schemas"]["WsAlertTraderWhaleTradeSubscribeMessage"] | components["schemas"]["WsAlertTraderNewTradeSubscribeMessage"] | components["schemas"]["WsAlertTraderTradeEventSubscribeMessage"] | components["schemas"]["WsAlertTraderGlobalPnlSubscribeMessage"] | components["schemas"]["WsAlertTraderMarketPnlSubscribeMessage"] | components["schemas"]["WsAlertTraderCategoryPnlSubscribeMessage"] | components["schemas"]["WsAlertTraderPositionResolvedSubscribeMessage"] | components["schemas"]["WsAlertTraderPnlExitsSubscribeMessage"] | components["schemas"]["WsAlertPositionHolderMetricsSubscribeMessage"] | components["schemas"]["WsAlertConditionHolderMetricsSubscribeMessage"] | components["schemas"]["WsAlertEventHolderMetricsSubscribeMessage"] | components["schemas"]["WsAlertConditionMetricsSubscribeMessage"] | components["schemas"]["WsAlertEventMetricsSubscribeMessage"] | components["schemas"]["WsAlertTagMetricsSubscribeMessage"] | components["schemas"]["WsAlertPositionMetricsSubscribeMessage"] | components["schemas"]["WsAlertMarketVolumeMilestoneSubscribeMessage"] | components["schemas"]["WsAlertEventVolumeMilestoneSubscribeMessage"] | components["schemas"]["WsAlertPositionVolumeMilestoneSubscribeMessage"] | components["schemas"]["WsAlertProbabilitySpikeSubscribeMessage"] | components["schemas"]["WsAlertPriceSpikeSubscribeMessage"] | components["schemas"]["WsAlertMarketVolumeSpikeSubscribeMessage"] | components["schemas"]["WsAlertEventVolumeSpikeSubscribeMessage"] | components["schemas"]["WsAlertPositionVolumeSpikeSubscribeMessage"] | components["schemas"]["WsAlertCloseToBondSubscribeMessage"] | components["schemas"]["WsAlertMarketCreatedSubscribeMessage"] | components["schemas"]["WsAlertOracleEventsSubscribeMessage"] | components["schemas"]["WsAlertAssetPriceTickSubscribeMessage"] | components["schemas"]["WsAlertAssetPriceWindowUpdateSubscribeMessage"];
7118
+ WsAlertSubscribeMessage: components["schemas"]["WsAlertTraderFirstTradeSubscribeMessage"] | components["schemas"]["WsAlertTraderNewMarketSubscribeMessage"] | components["schemas"]["WsAlertTraderWhaleTradeSubscribeMessage"] | components["schemas"]["WsAlertTraderNewTradeSubscribeMessage"] | components["schemas"]["WsAlertTraderTradeEventSubscribeMessage"] | components["schemas"]["WsAlertTraderGlobalPnlSubscribeMessage"] | components["schemas"]["WsAlertTraderMarketPnlSubscribeMessage"] | components["schemas"]["WsAlertTraderCategoryPnlSubscribeMessage"] | components["schemas"]["WsAlertTraderPositionResolvedSubscribeMessage"] | components["schemas"]["WsAlertTraderPnlExitsSubscribeMessage"] | components["schemas"]["WsAlertPositionHolderMetricsSubscribeMessage"] | components["schemas"]["WsAlertConditionHolderMetricsSubscribeMessage"] | components["schemas"]["WsAlertEventHolderMetricsSubscribeMessage"] | components["schemas"]["WsAlertConditionMetricsSubscribeMessage"] | components["schemas"]["WsAlertEventMetricsSubscribeMessage"] | components["schemas"]["WsAlertTagMetricsSubscribeMessage"] | components["schemas"]["WsAlertPositionMetricsSubscribeMessage"] | components["schemas"]["WsAlertPositionLiquiditySubscribeMessage"] | components["schemas"]["WsAlertMarketLiquiditySubscribeMessage"] | components["schemas"]["WsAlertEventLiquiditySubscribeMessage"] | components["schemas"]["WsAlertMarketVolumeMilestoneSubscribeMessage"] | components["schemas"]["WsAlertEventVolumeMilestoneSubscribeMessage"] | components["schemas"]["WsAlertPositionVolumeMilestoneSubscribeMessage"] | components["schemas"]["WsAlertProbabilitySpikeSubscribeMessage"] | components["schemas"]["WsAlertPriceSpikeSubscribeMessage"] | components["schemas"]["WsAlertMarketVolumeSpikeSubscribeMessage"] | components["schemas"]["WsAlertEventVolumeSpikeSubscribeMessage"] | components["schemas"]["WsAlertPositionVolumeSpikeSubscribeMessage"] | components["schemas"]["WsAlertCloseToBondSubscribeMessage"] | components["schemas"]["WsAlertPriceThresholdSubscribeMessage"] | components["schemas"]["WsAlertMarketResolvedSubscribeMessage"] | components["schemas"]["WsAlertMarketDisputedSubscribeMessage"] | components["schemas"]["WsAlertMarketCreatedSubscribeMessage"] | components["schemas"]["WsAlertOracleEventsSubscribeMessage"] | components["schemas"]["WsAlertAssetPriceTickSubscribeMessage"] | components["schemas"]["WsAlertAssetPriceWindowUpdateSubscribeMessage"];
5666
7119
  /** @description Typed unsubscribe request for the alerts WebSocket. The request shape depends on `event` and must match the original subscription filters. */
5667
- WsAlertUnsubscribeMessage: components["schemas"]["WsAlertTraderFirstTradeUnsubscribeMessage"] | components["schemas"]["WsAlertTraderNewMarketUnsubscribeMessage"] | components["schemas"]["WsAlertTraderWhaleTradeUnsubscribeMessage"] | components["schemas"]["WsAlertTraderNewTradeUnsubscribeMessage"] | components["schemas"]["WsAlertTraderTradeEventUnsubscribeMessage"] | components["schemas"]["WsAlertTraderGlobalPnlUnsubscribeMessage"] | components["schemas"]["WsAlertTraderMarketPnlUnsubscribeMessage"] | components["schemas"]["WsAlertTraderCategoryPnlUnsubscribeMessage"] | components["schemas"]["WsAlertTraderPositionResolvedUnsubscribeMessage"] | components["schemas"]["WsAlertTraderPnlExitsUnsubscribeMessage"] | components["schemas"]["WsAlertPositionHolderMetricsUnsubscribeMessage"] | components["schemas"]["WsAlertConditionHolderMetricsUnsubscribeMessage"] | components["schemas"]["WsAlertEventHolderMetricsUnsubscribeMessage"] | components["schemas"]["WsAlertConditionMetricsUnsubscribeMessage"] | components["schemas"]["WsAlertEventMetricsUnsubscribeMessage"] | components["schemas"]["WsAlertTagMetricsUnsubscribeMessage"] | components["schemas"]["WsAlertPositionMetricsUnsubscribeMessage"] | components["schemas"]["WsAlertMarketVolumeMilestoneUnsubscribeMessage"] | components["schemas"]["WsAlertEventVolumeMilestoneUnsubscribeMessage"] | components["schemas"]["WsAlertPositionVolumeMilestoneUnsubscribeMessage"] | components["schemas"]["WsAlertProbabilitySpikeUnsubscribeMessage"] | components["schemas"]["WsAlertPriceSpikeUnsubscribeMessage"] | components["schemas"]["WsAlertMarketVolumeSpikeUnsubscribeMessage"] | components["schemas"]["WsAlertEventVolumeSpikeUnsubscribeMessage"] | components["schemas"]["WsAlertPositionVolumeSpikeUnsubscribeMessage"] | components["schemas"]["WsAlertCloseToBondUnsubscribeMessage"] | components["schemas"]["WsAlertMarketCreatedUnsubscribeMessage"] | components["schemas"]["WsAlertOracleEventsUnsubscribeMessage"] | components["schemas"]["WsAlertAssetPriceTickUnsubscribeMessage"] | components["schemas"]["WsAlertAssetPriceWindowUpdateUnsubscribeMessage"];
7120
+ WsAlertUnsubscribeMessage: components["schemas"]["WsAlertTraderFirstTradeUnsubscribeMessage"] | components["schemas"]["WsAlertTraderNewMarketUnsubscribeMessage"] | components["schemas"]["WsAlertTraderWhaleTradeUnsubscribeMessage"] | components["schemas"]["WsAlertTraderNewTradeUnsubscribeMessage"] | components["schemas"]["WsAlertTraderTradeEventUnsubscribeMessage"] | components["schemas"]["WsAlertTraderGlobalPnlUnsubscribeMessage"] | components["schemas"]["WsAlertTraderMarketPnlUnsubscribeMessage"] | components["schemas"]["WsAlertTraderCategoryPnlUnsubscribeMessage"] | components["schemas"]["WsAlertTraderPositionResolvedUnsubscribeMessage"] | components["schemas"]["WsAlertTraderPnlExitsUnsubscribeMessage"] | components["schemas"]["WsAlertPositionHolderMetricsUnsubscribeMessage"] | components["schemas"]["WsAlertConditionHolderMetricsUnsubscribeMessage"] | components["schemas"]["WsAlertEventHolderMetricsUnsubscribeMessage"] | components["schemas"]["WsAlertConditionMetricsUnsubscribeMessage"] | components["schemas"]["WsAlertEventMetricsUnsubscribeMessage"] | components["schemas"]["WsAlertTagMetricsUnsubscribeMessage"] | components["schemas"]["WsAlertPositionMetricsUnsubscribeMessage"] | components["schemas"]["WsAlertPositionLiquidityUnsubscribeMessage"] | components["schemas"]["WsAlertMarketLiquidityUnsubscribeMessage"] | components["schemas"]["WsAlertEventLiquidityUnsubscribeMessage"] | components["schemas"]["WsAlertMarketVolumeMilestoneUnsubscribeMessage"] | components["schemas"]["WsAlertEventVolumeMilestoneUnsubscribeMessage"] | components["schemas"]["WsAlertPositionVolumeMilestoneUnsubscribeMessage"] | components["schemas"]["WsAlertProbabilitySpikeUnsubscribeMessage"] | components["schemas"]["WsAlertPriceSpikeUnsubscribeMessage"] | components["schemas"]["WsAlertMarketVolumeSpikeUnsubscribeMessage"] | components["schemas"]["WsAlertEventVolumeSpikeUnsubscribeMessage"] | components["schemas"]["WsAlertPositionVolumeSpikeUnsubscribeMessage"] | components["schemas"]["WsAlertCloseToBondUnsubscribeMessage"] | components["schemas"]["WsAlertPriceThresholdUnsubscribeMessage"] | components["schemas"]["WsAlertMarketResolvedUnsubscribeMessage"] | components["schemas"]["WsAlertMarketDisputedUnsubscribeMessage"] | components["schemas"]["WsAlertMarketCreatedUnsubscribeMessage"] | components["schemas"]["WsAlertOracleEventsUnsubscribeMessage"] | components["schemas"]["WsAlertAssetPriceTickUnsubscribeMessage"] | components["schemas"]["WsAlertAssetPriceWindowUpdateUnsubscribeMessage"];
5668
7121
  /** @description Typed pushed-event envelope for the alerts WebSocket. The `data` payload depends on `event` and matches the corresponding HTTP webhook payload schema. */
5669
- WsAlertEventPayload: components["schemas"]["WsAlertTraderFirstTradeEvent"] | components["schemas"]["WsAlertTraderNewMarketEvent"] | components["schemas"]["WsAlertTraderWhaleTradeEvent"] | components["schemas"]["WsAlertTraderNewTradeEvent"] | components["schemas"]["WsAlertTraderTradeEventEvent"] | components["schemas"]["WsAlertTraderGlobalPnlEvent"] | components["schemas"]["WsAlertTraderMarketPnlEvent"] | components["schemas"]["WsAlertTraderCategoryPnlEvent"] | components["schemas"]["WsAlertTraderPositionResolvedEvent"] | components["schemas"]["WsAlertTraderPnlExitsEvent"] | components["schemas"]["WsAlertPositionHolderMetricsEvent"] | components["schemas"]["WsAlertConditionHolderMetricsEvent"] | components["schemas"]["WsAlertEventHolderMetricsEvent"] | components["schemas"]["WsAlertConditionMetricsEvent"] | components["schemas"]["WsAlertEventMetricsEvent"] | components["schemas"]["WsAlertTagMetricsEvent"] | components["schemas"]["WsAlertPositionMetricsEvent"] | components["schemas"]["WsAlertMarketVolumeMilestoneEvent"] | components["schemas"]["WsAlertEventVolumeMilestoneEvent"] | components["schemas"]["WsAlertPositionVolumeMilestoneEvent"] | components["schemas"]["WsAlertProbabilitySpikeEvent"] | components["schemas"]["WsAlertPriceSpikeEvent"] | components["schemas"]["WsAlertMarketVolumeSpikeEvent"] | components["schemas"]["WsAlertEventVolumeSpikeEvent"] | components["schemas"]["WsAlertPositionVolumeSpikeEvent"] | components["schemas"]["WsAlertCloseToBondEvent"] | components["schemas"]["WsAlertMarketCreatedEvent"] | components["schemas"]["WsAlertOracleEventsEvent"] | components["schemas"]["WsAlertAssetPriceTickEvent"] | components["schemas"]["WsAlertAssetPriceWindowUpdateEvent"];
7122
+ WsAlertEventPayload: components["schemas"]["WsAlertTraderFirstTradeEvent"] | components["schemas"]["WsAlertTraderNewMarketEvent"] | components["schemas"]["WsAlertTraderWhaleTradeEvent"] | components["schemas"]["WsAlertTraderNewTradeEvent"] | components["schemas"]["WsAlertTraderTradeEventEvent"] | components["schemas"]["WsAlertTraderGlobalPnlEvent"] | components["schemas"]["WsAlertTraderMarketPnlEvent"] | components["schemas"]["WsAlertTraderCategoryPnlEvent"] | components["schemas"]["WsAlertTraderPositionResolvedEvent"] | components["schemas"]["WsAlertTraderPnlExitsEvent"] | components["schemas"]["WsAlertPositionHolderMetricsEvent"] | components["schemas"]["WsAlertConditionHolderMetricsEvent"] | components["schemas"]["WsAlertEventHolderMetricsEvent"] | components["schemas"]["WsAlertConditionMetricsEvent"] | components["schemas"]["WsAlertEventMetricsEvent"] | components["schemas"]["WsAlertTagMetricsEvent"] | components["schemas"]["WsAlertPositionMetricsEvent"] | components["schemas"]["WsAlertPositionLiquidityEvent"] | components["schemas"]["WsAlertMarketLiquidityEvent"] | components["schemas"]["WsAlertEventLiquidityEvent"] | components["schemas"]["WsAlertMarketVolumeMilestoneEvent"] | components["schemas"]["WsAlertEventVolumeMilestoneEvent"] | components["schemas"]["WsAlertPositionVolumeMilestoneEvent"] | components["schemas"]["WsAlertProbabilitySpikeEvent"] | components["schemas"]["WsAlertPriceSpikeEvent"] | components["schemas"]["WsAlertMarketVolumeSpikeEvent"] | components["schemas"]["WsAlertEventVolumeSpikeEvent"] | components["schemas"]["WsAlertPositionVolumeSpikeEvent"] | components["schemas"]["WsAlertCloseToBondEvent"] | components["schemas"]["WsAlertPriceThresholdEvent"] | components["schemas"]["WsAlertMarketResolvedEvent"] | components["schemas"]["WsAlertMarketDisputedEvent"] | components["schemas"]["WsAlertMarketCreatedEvent"] | components["schemas"]["WsAlertOracleEventsEvent"] | components["schemas"]["WsAlertAssetPriceTickEvent"] | components["schemas"]["WsAlertAssetPriceWindowUpdateEvent"];
5670
7123
  };
5671
7124
  responses: never;
5672
7125
  parameters: never;
@@ -5694,6 +7147,9 @@ export interface WsAlertSubscribeMap {
5694
7147
  event_metrics: components["schemas"]["WsAlertEventMetricsSubscribeMessage"];
5695
7148
  tag_metrics: components["schemas"]["WsAlertTagMetricsSubscribeMessage"];
5696
7149
  position_metrics: components["schemas"]["WsAlertPositionMetricsSubscribeMessage"];
7150
+ position_liquidity: components["schemas"]["WsAlertPositionLiquiditySubscribeMessage"];
7151
+ market_liquidity: components["schemas"]["WsAlertMarketLiquiditySubscribeMessage"];
7152
+ event_liquidity: components["schemas"]["WsAlertEventLiquiditySubscribeMessage"];
5697
7153
  market_volume_milestone: components["schemas"]["WsAlertMarketVolumeMilestoneSubscribeMessage"];
5698
7154
  event_volume_milestone: components["schemas"]["WsAlertEventVolumeMilestoneSubscribeMessage"];
5699
7155
  position_volume_milestone: components["schemas"]["WsAlertPositionVolumeMilestoneSubscribeMessage"];
@@ -5703,6 +7159,9 @@ export interface WsAlertSubscribeMap {
5703
7159
  event_volume_spike: components["schemas"]["WsAlertEventVolumeSpikeSubscribeMessage"];
5704
7160
  position_volume_spike: components["schemas"]["WsAlertPositionVolumeSpikeSubscribeMessage"];
5705
7161
  close_to_bond: components["schemas"]["WsAlertCloseToBondSubscribeMessage"];
7162
+ price_threshold: components["schemas"]["WsAlertPriceThresholdSubscribeMessage"];
7163
+ market_resolved: components["schemas"]["WsAlertMarketResolvedSubscribeMessage"];
7164
+ market_disputed: components["schemas"]["WsAlertMarketDisputedSubscribeMessage"];
5706
7165
  market_created: components["schemas"]["WsAlertMarketCreatedSubscribeMessage"];
5707
7166
  oracle_events: components["schemas"]["WsAlertOracleEventsSubscribeMessage"];
5708
7167
  asset_price_tick: components["schemas"]["WsAlertAssetPriceTickSubscribeMessage"];
@@ -5726,6 +7185,9 @@ export interface WsAlertEventDataMap {
5726
7185
  event_metrics: components["schemas"]["EventMetricsPayload"];
5727
7186
  tag_metrics: components["schemas"]["TagMetricsPayload"];
5728
7187
  position_metrics: components["schemas"]["PositionMetricsPayload"];
7188
+ position_liquidity: components["schemas"]["PositionLiquidityPayload"];
7189
+ market_liquidity: components["schemas"]["MarketLiquidityPayload"];
7190
+ event_liquidity: components["schemas"]["EventLiquidityPayload"];
5729
7191
  market_volume_milestone: components["schemas"]["VolumeMilestonePayload"];
5730
7192
  event_volume_milestone: components["schemas"]["EventVolumeMilestonePayload"];
5731
7193
  position_volume_milestone: components["schemas"]["PositionVolumeMilestonePayload"];
@@ -5735,6 +7197,9 @@ export interface WsAlertEventDataMap {
5735
7197
  event_volume_spike: components["schemas"]["EventVolumeSpikePayload"];
5736
7198
  position_volume_spike: components["schemas"]["PositionVolumeSpikePayload"];
5737
7199
  close_to_bond: components["schemas"]["CloseToBondPayload"];
7200
+ price_threshold: components["schemas"]["PriceThresholdPayload"];
7201
+ market_resolved: components["schemas"]["MarketResolvedPayload"];
7202
+ market_disputed: components["schemas"]["MarketDisputedPayload"];
5738
7203
  market_created: components["schemas"]["MarketCreatedPayload"];
5739
7204
  oracle_events: components["schemas"]["OracleEventTyped"];
5740
7205
  asset_price_tick: components["schemas"]["AssetPriceTickPayload"];