pmxtjs 2.46.14 → 2.48.0
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.
- package/dist/esm/generated/src/apis/DefaultApi.d.ts +38 -1
- package/dist/esm/generated/src/apis/DefaultApi.js +56 -1
- package/dist/esm/generated/src/models/EventFetchParams.d.ts +6 -0
- package/dist/esm/generated/src/models/EventFetchParams.js +2 -0
- package/dist/esm/generated/src/models/FetchSeries200Response.d.ts +46 -0
- package/dist/esm/generated/src/models/FetchSeries200Response.js +47 -0
- package/dist/esm/generated/src/models/UnifiedEvent.d.ts +8 -0
- package/dist/esm/generated/src/models/UnifiedEvent.js +2 -0
- package/dist/esm/generated/src/models/UnifiedMarket.d.ts +8 -0
- package/dist/esm/generated/src/models/UnifiedMarket.js +2 -0
- package/dist/esm/generated/src/models/UnifiedSeries.d.ts +95 -0
- package/dist/esm/generated/src/models/UnifiedSeries.js +66 -0
- package/dist/esm/generated/src/models/index.d.ts +2 -0
- package/dist/esm/generated/src/models/index.js +2 -0
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/pmxt/client.d.ts +2 -1
- package/dist/esm/pmxt/client.js +47 -18
- package/dist/esm/pmxt/models.d.ts +47 -0
- package/dist/generated/src/apis/DefaultApi.d.ts +38 -1
- package/dist/generated/src/apis/DefaultApi.js +56 -1
- package/dist/generated/src/models/EventFetchParams.d.ts +6 -0
- package/dist/generated/src/models/EventFetchParams.js +2 -0
- package/dist/generated/src/models/FetchSeries200Response.d.ts +46 -0
- package/dist/generated/src/models/FetchSeries200Response.js +54 -0
- package/dist/generated/src/models/UnifiedEvent.d.ts +8 -0
- package/dist/generated/src/models/UnifiedEvent.js +2 -0
- package/dist/generated/src/models/UnifiedMarket.d.ts +8 -0
- package/dist/generated/src/models/UnifiedMarket.js +2 -0
- package/dist/generated/src/models/UnifiedSeries.d.ts +95 -0
- package/dist/generated/src/models/UnifiedSeries.js +73 -0
- package/dist/generated/src/models/index.d.ts +2 -0
- package/dist/generated/src/models/index.js +2 -0
- package/dist/index.d.ts +1 -0
- package/dist/pmxt/client.d.ts +2 -1
- package/dist/pmxt/client.js +47 -18
- package/dist/pmxt/models.d.ts +47 -0
- package/generated/.openapi-generator/FILES +4 -0
- package/generated/docs/DefaultApi.md +76 -2
- package/generated/docs/EventFetchParams.md +2 -0
- package/generated/docs/FetchSeries200Response.md +38 -0
- package/generated/docs/UnifiedEvent.md +2 -0
- package/generated/docs/UnifiedMarket.md +2 -0
- package/generated/docs/UnifiedSeries.md +55 -0
- package/generated/package.json +1 -1
- package/generated/src/apis/DefaultApi.ts +78 -0
- package/generated/src/models/EventFetchParams.ts +8 -0
- package/generated/src/models/FetchSeries200Response.ts +96 -0
- package/generated/src/models/UnifiedEvent.ts +8 -0
- package/generated/src/models/UnifiedMarket.ts +8 -0
- package/generated/src/models/UnifiedSeries.ts +155 -0
- package/generated/src/models/index.ts +2 -0
- package/index.ts +1 -0
- package/package.json +2 -2
- package/pmxt/client.ts +47 -23
- package/pmxt/models.ts +59 -0
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* Do not edit the class manually.
|
|
11
11
|
*/
|
|
12
12
|
import * as runtime from '../runtime.js';
|
|
13
|
-
import type { BaseResponse, BuildOrder200Response, BuildOrderRequest, CancelOrderRequest, CloseRequest, CompareMarketPrices200Response, CompareMarketPricesRequest, CreateOrder200Response, CreateOrderRequest, EventFilterCriteria, FetchArbitrage200Response, FetchBalance200Response, FetchEvent200Response, FetchEventMatches200Response, FetchEvents200Response, FetchEventsPaginated200Response, FetchMarket200Response, FetchMarketMatches200Response, FetchMarkets200Response, FetchMarketsPaginated200Response, FetchMatchedMarkets200Response, FetchMyTrades200Response, FetchOHLCV200Response, FetchOpenOrders200Response, FetchOrderBook200Response, FetchOrderBooks200Response, FetchOrderBooksRequest, FetchPositions200Response, FetchTrades200Response, FilterEventsRequest, FilterMarketsRequest, GetExecutionPrice200Response, GetExecutionPriceDetailed200Response, GetExecutionPriceDetailedRequest, GetExecutionPriceRequest, HealthCheck200Response, LoadMarkets200Response, LoadMarketsRequest, MarketFilterCriteria, SubmitOrderRequest, UnifiedEvent, UnifiedMarket } from '../models/index.js';
|
|
13
|
+
import type { BaseResponse, BuildOrder200Response, BuildOrderRequest, CancelOrderRequest, CloseRequest, CompareMarketPrices200Response, CompareMarketPricesRequest, CreateOrder200Response, CreateOrderRequest, EventFilterCriteria, FetchArbitrage200Response, FetchBalance200Response, FetchEvent200Response, FetchEventMatches200Response, FetchEvents200Response, FetchEventsPaginated200Response, FetchMarket200Response, FetchMarketMatches200Response, FetchMarkets200Response, FetchMarketsPaginated200Response, FetchMatchedMarkets200Response, FetchMyTrades200Response, FetchOHLCV200Response, FetchOpenOrders200Response, FetchOrderBook200Response, FetchOrderBooks200Response, FetchOrderBooksRequest, FetchPositions200Response, FetchSeries200Response, FetchTrades200Response, FilterEventsRequest, FilterMarketsRequest, GetExecutionPrice200Response, GetExecutionPriceDetailed200Response, GetExecutionPriceDetailedRequest, GetExecutionPriceRequest, HealthCheck200Response, LoadMarkets200Response, LoadMarketsRequest, MarketFilterCriteria, SubmitOrderRequest, UnifiedEvent, UnifiedMarket } from '../models/index.js';
|
|
14
14
|
export interface BuildOrderOperationRequest {
|
|
15
15
|
exchange: BuildOrderOperationExchangeEnum;
|
|
16
16
|
buildOrderRequest?: BuildOrderRequest;
|
|
@@ -69,6 +69,7 @@ export interface FetchEventRequest {
|
|
|
69
69
|
searchIn?: FetchEventSearchInEnum;
|
|
70
70
|
eventId?: string;
|
|
71
71
|
slug?: string;
|
|
72
|
+
series?: string;
|
|
72
73
|
filter?: EventFilterCriteria;
|
|
73
74
|
category?: string;
|
|
74
75
|
tags?: Array<string>;
|
|
@@ -96,6 +97,7 @@ export interface FetchEventsRequest {
|
|
|
96
97
|
searchIn?: FetchEventsSearchInEnum;
|
|
97
98
|
eventId?: string;
|
|
98
99
|
slug?: string;
|
|
100
|
+
series?: string;
|
|
99
101
|
filter?: EventFilterCriteria;
|
|
100
102
|
category?: string;
|
|
101
103
|
tags?: Array<string>;
|
|
@@ -243,6 +245,9 @@ export interface FetchRelatedMarketsRequest {
|
|
|
243
245
|
minDifference?: number;
|
|
244
246
|
sort?: FetchRelatedMarketsSortEnum;
|
|
245
247
|
}
|
|
248
|
+
export interface FetchSeriesRequest {
|
|
249
|
+
exchange: FetchSeriesExchangeEnum;
|
|
250
|
+
}
|
|
246
251
|
export interface FetchTradesRequest {
|
|
247
252
|
exchange: FetchTradesExchangeEnum;
|
|
248
253
|
outcomeId: string;
|
|
@@ -552,6 +557,16 @@ export declare class DefaultApi extends runtime.BaseAPI {
|
|
|
552
557
|
* Find Related Markets
|
|
553
558
|
*/
|
|
554
559
|
fetchRelatedMarkets(requestParameters: FetchRelatedMarketsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CompareMarketPrices200Response>;
|
|
560
|
+
/**
|
|
561
|
+
* Fetch the recurring series (fourth tier above Event -> Market -> Outcome) that this venue exposes. Returns an empty array on venues without a series concept (Limitless, Smarkets, Probable, Metaculus, Baozi, Hyperliquid, SuiBets, Polymarket US). - `params.id` -> a single matching series with its events populated where supported. - no params -> the full list, typically without nested events for payload size.
|
|
562
|
+
* Fetch Series
|
|
563
|
+
*/
|
|
564
|
+
fetchSeriesRaw(requestParameters: FetchSeriesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<FetchSeries200Response>>;
|
|
565
|
+
/**
|
|
566
|
+
* Fetch the recurring series (fourth tier above Event -> Market -> Outcome) that this venue exposes. Returns an empty array on venues without a series concept (Limitless, Smarkets, Probable, Metaculus, Baozi, Hyperliquid, SuiBets, Polymarket US). - `params.id` -> a single matching series with its events populated where supported. - no params -> the full list, typically without nested events for payload size.
|
|
567
|
+
* Fetch Series
|
|
568
|
+
*/
|
|
569
|
+
fetchSeries(requestParameters: FetchSeriesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<FetchSeries200Response>;
|
|
555
570
|
/**
|
|
556
571
|
* Fetch raw trade history for a specific outcome.
|
|
557
572
|
* Fetch Trades
|
|
@@ -1358,6 +1373,28 @@ export declare const FetchRelatedMarketsSortEnum: {
|
|
|
1358
1373
|
readonly PriceDifference: "priceDifference";
|
|
1359
1374
|
};
|
|
1360
1375
|
export type FetchRelatedMarketsSortEnum = typeof FetchRelatedMarketsSortEnum[keyof typeof FetchRelatedMarketsSortEnum];
|
|
1376
|
+
/**
|
|
1377
|
+
* @export
|
|
1378
|
+
*/
|
|
1379
|
+
export declare const FetchSeriesExchangeEnum: {
|
|
1380
|
+
readonly Polymarket: "polymarket";
|
|
1381
|
+
readonly Kalshi: "kalshi";
|
|
1382
|
+
readonly KalshiDemo: "kalshi-demo";
|
|
1383
|
+
readonly Limitless: "limitless";
|
|
1384
|
+
readonly Probable: "probable";
|
|
1385
|
+
readonly Baozi: "baozi";
|
|
1386
|
+
readonly Myriad: "myriad";
|
|
1387
|
+
readonly Opinion: "opinion";
|
|
1388
|
+
readonly Metaculus: "metaculus";
|
|
1389
|
+
readonly Smarkets: "smarkets";
|
|
1390
|
+
readonly PolymarketUs: "polymarket_us";
|
|
1391
|
+
readonly GeminiTitan: "gemini-titan";
|
|
1392
|
+
readonly Hyperliquid: "hyperliquid";
|
|
1393
|
+
readonly Suibets: "suibets";
|
|
1394
|
+
readonly Mock: "mock";
|
|
1395
|
+
readonly Router: "router";
|
|
1396
|
+
};
|
|
1397
|
+
export type FetchSeriesExchangeEnum = typeof FetchSeriesExchangeEnum[keyof typeof FetchSeriesExchangeEnum];
|
|
1361
1398
|
/**
|
|
1362
1399
|
* @export
|
|
1363
1400
|
*/
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
* Do not edit the class manually.
|
|
13
13
|
*/
|
|
14
14
|
import * as runtime from '../runtime.js';
|
|
15
|
-
import { BaseResponseFromJSON, BuildOrder200ResponseFromJSON, BuildOrderRequestToJSON, CancelOrderRequestToJSON, CloseRequestToJSON, CompareMarketPrices200ResponseFromJSON, CompareMarketPricesRequestToJSON, CreateOrder200ResponseFromJSON, CreateOrderRequestToJSON, FetchArbitrage200ResponseFromJSON, FetchBalance200ResponseFromJSON, FetchEvent200ResponseFromJSON, FetchEventMatches200ResponseFromJSON, FetchEvents200ResponseFromJSON, FetchEventsPaginated200ResponseFromJSON, FetchMarket200ResponseFromJSON, FetchMarketMatches200ResponseFromJSON, FetchMarkets200ResponseFromJSON, FetchMarketsPaginated200ResponseFromJSON, FetchMatchedMarkets200ResponseFromJSON, FetchMyTrades200ResponseFromJSON, FetchOHLCV200ResponseFromJSON, FetchOpenOrders200ResponseFromJSON, FetchOrderBook200ResponseFromJSON, FetchOrderBooks200ResponseFromJSON, FetchOrderBooksRequestToJSON, FetchPositions200ResponseFromJSON, FetchTrades200ResponseFromJSON, FilterEventsRequestToJSON, FilterMarketsRequestToJSON, GetExecutionPrice200ResponseFromJSON, GetExecutionPriceDetailed200ResponseFromJSON, GetExecutionPriceDetailedRequestToJSON, GetExecutionPriceRequestToJSON, HealthCheck200ResponseFromJSON, LoadMarkets200ResponseFromJSON, LoadMarketsRequestToJSON, SubmitOrderRequestToJSON, } from '../models/index.js';
|
|
15
|
+
import { BaseResponseFromJSON, BuildOrder200ResponseFromJSON, BuildOrderRequestToJSON, CancelOrderRequestToJSON, CloseRequestToJSON, CompareMarketPrices200ResponseFromJSON, CompareMarketPricesRequestToJSON, CreateOrder200ResponseFromJSON, CreateOrderRequestToJSON, FetchArbitrage200ResponseFromJSON, FetchBalance200ResponseFromJSON, FetchEvent200ResponseFromJSON, FetchEventMatches200ResponseFromJSON, FetchEvents200ResponseFromJSON, FetchEventsPaginated200ResponseFromJSON, FetchMarket200ResponseFromJSON, FetchMarketMatches200ResponseFromJSON, FetchMarkets200ResponseFromJSON, FetchMarketsPaginated200ResponseFromJSON, FetchMatchedMarkets200ResponseFromJSON, FetchMyTrades200ResponseFromJSON, FetchOHLCV200ResponseFromJSON, FetchOpenOrders200ResponseFromJSON, FetchOrderBook200ResponseFromJSON, FetchOrderBooks200ResponseFromJSON, FetchOrderBooksRequestToJSON, FetchPositions200ResponseFromJSON, FetchSeries200ResponseFromJSON, FetchTrades200ResponseFromJSON, FilterEventsRequestToJSON, FilterMarketsRequestToJSON, GetExecutionPrice200ResponseFromJSON, GetExecutionPriceDetailed200ResponseFromJSON, GetExecutionPriceDetailedRequestToJSON, GetExecutionPriceRequestToJSON, HealthCheck200ResponseFromJSON, LoadMarkets200ResponseFromJSON, LoadMarketsRequestToJSON, SubmitOrderRequestToJSON, } from '../models/index.js';
|
|
16
16
|
/**
|
|
17
17
|
*
|
|
18
18
|
*/
|
|
@@ -356,6 +356,9 @@ export class DefaultApi extends runtime.BaseAPI {
|
|
|
356
356
|
if (requestParameters['slug'] != null) {
|
|
357
357
|
queryParameters['slug'] = requestParameters['slug'];
|
|
358
358
|
}
|
|
359
|
+
if (requestParameters['series'] != null) {
|
|
360
|
+
queryParameters['series'] = requestParameters['series'];
|
|
361
|
+
}
|
|
359
362
|
if (requestParameters['filter'] != null) {
|
|
360
363
|
queryParameters['filter'] = requestParameters['filter'];
|
|
361
364
|
}
|
|
@@ -475,6 +478,9 @@ export class DefaultApi extends runtime.BaseAPI {
|
|
|
475
478
|
if (requestParameters['slug'] != null) {
|
|
476
479
|
queryParameters['slug'] = requestParameters['slug'];
|
|
477
480
|
}
|
|
481
|
+
if (requestParameters['series'] != null) {
|
|
482
|
+
queryParameters['series'] = requestParameters['series'];
|
|
483
|
+
}
|
|
478
484
|
if (requestParameters['filter'] != null) {
|
|
479
485
|
queryParameters['filter'] = requestParameters['filter'];
|
|
480
486
|
}
|
|
@@ -1242,6 +1248,34 @@ export class DefaultApi extends runtime.BaseAPI {
|
|
|
1242
1248
|
const response = await this.fetchRelatedMarketsRaw(requestParameters, initOverrides);
|
|
1243
1249
|
return await response.value();
|
|
1244
1250
|
}
|
|
1251
|
+
/**
|
|
1252
|
+
* Fetch the recurring series (fourth tier above Event -> Market -> Outcome) that this venue exposes. Returns an empty array on venues without a series concept (Limitless, Smarkets, Probable, Metaculus, Baozi, Hyperliquid, SuiBets, Polymarket US). - `params.id` -> a single matching series with its events populated where supported. - no params -> the full list, typically without nested events for payload size.
|
|
1253
|
+
* Fetch Series
|
|
1254
|
+
*/
|
|
1255
|
+
async fetchSeriesRaw(requestParameters, initOverrides) {
|
|
1256
|
+
if (requestParameters['exchange'] == null) {
|
|
1257
|
+
throw new runtime.RequiredError('exchange', 'Required parameter "exchange" was null or undefined when calling fetchSeries().');
|
|
1258
|
+
}
|
|
1259
|
+
const queryParameters = {};
|
|
1260
|
+
const headerParameters = {};
|
|
1261
|
+
let urlPath = `/api/{exchange}/fetchSeries`;
|
|
1262
|
+
urlPath = urlPath.replace(`{${"exchange"}}`, encodeURIComponent(String(requestParameters['exchange'])));
|
|
1263
|
+
const response = await this.request({
|
|
1264
|
+
path: urlPath,
|
|
1265
|
+
method: 'GET',
|
|
1266
|
+
headers: headerParameters,
|
|
1267
|
+
query: queryParameters,
|
|
1268
|
+
}, initOverrides);
|
|
1269
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => FetchSeries200ResponseFromJSON(jsonValue));
|
|
1270
|
+
}
|
|
1271
|
+
/**
|
|
1272
|
+
* Fetch the recurring series (fourth tier above Event -> Market -> Outcome) that this venue exposes. Returns an empty array on venues without a series concept (Limitless, Smarkets, Probable, Metaculus, Baozi, Hyperliquid, SuiBets, Polymarket US). - `params.id` -> a single matching series with its events populated where supported. - no params -> the full list, typically without nested events for payload size.
|
|
1273
|
+
* Fetch Series
|
|
1274
|
+
*/
|
|
1275
|
+
async fetchSeries(requestParameters, initOverrides) {
|
|
1276
|
+
const response = await this.fetchSeriesRaw(requestParameters, initOverrides);
|
|
1277
|
+
return await response.value();
|
|
1278
|
+
}
|
|
1245
1279
|
/**
|
|
1246
1280
|
* Fetch raw trade history for a specific outcome.
|
|
1247
1281
|
* Fetch Trades
|
|
@@ -2164,6 +2198,27 @@ export const FetchRelatedMarketsSortEnum = {
|
|
|
2164
2198
|
Volume: 'volume',
|
|
2165
2199
|
PriceDifference: 'priceDifference'
|
|
2166
2200
|
};
|
|
2201
|
+
/**
|
|
2202
|
+
* @export
|
|
2203
|
+
*/
|
|
2204
|
+
export const FetchSeriesExchangeEnum = {
|
|
2205
|
+
Polymarket: 'polymarket',
|
|
2206
|
+
Kalshi: 'kalshi',
|
|
2207
|
+
KalshiDemo: 'kalshi-demo',
|
|
2208
|
+
Limitless: 'limitless',
|
|
2209
|
+
Probable: 'probable',
|
|
2210
|
+
Baozi: 'baozi',
|
|
2211
|
+
Myriad: 'myriad',
|
|
2212
|
+
Opinion: 'opinion',
|
|
2213
|
+
Metaculus: 'metaculus',
|
|
2214
|
+
Smarkets: 'smarkets',
|
|
2215
|
+
PolymarketUs: 'polymarket_us',
|
|
2216
|
+
GeminiTitan: 'gemini-titan',
|
|
2217
|
+
Hyperliquid: 'hyperliquid',
|
|
2218
|
+
Suibets: 'suibets',
|
|
2219
|
+
Mock: 'mock',
|
|
2220
|
+
Router: 'router'
|
|
2221
|
+
};
|
|
2167
2222
|
/**
|
|
2168
2223
|
* @export
|
|
2169
2224
|
*/
|
|
@@ -70,6 +70,12 @@ export interface EventFetchParams {
|
|
|
70
70
|
* @memberof EventFetchParams
|
|
71
71
|
*/
|
|
72
72
|
slug?: string;
|
|
73
|
+
/**
|
|
74
|
+
* Filter events by their parent series. Accepts the venue-native series id / ticker / slug (e.g. Kalshi `"KXATPMATCH"`, Polymarket `"wta"`). Passed through to the vendor where supported, otherwise applied to `sourceMetadata` after fetch.
|
|
75
|
+
* @type {string}
|
|
76
|
+
* @memberof EventFetchParams
|
|
77
|
+
*/
|
|
78
|
+
series?: string;
|
|
73
79
|
/**
|
|
74
80
|
* Optional client-side filter applied after fetching
|
|
75
81
|
* @type {EventFilterCriteria}
|
|
@@ -60,6 +60,7 @@ export function EventFetchParamsFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
60
60
|
'searchIn': json['searchIn'] == null ? undefined : json['searchIn'],
|
|
61
61
|
'eventId': json['eventId'] == null ? undefined : json['eventId'],
|
|
62
62
|
'slug': json['slug'] == null ? undefined : json['slug'],
|
|
63
|
+
'series': json['series'] == null ? undefined : json['series'],
|
|
63
64
|
'filter': json['filter'] == null ? undefined : EventFilterCriteriaFromJSON(json['filter']),
|
|
64
65
|
'category': json['category'] == null ? undefined : json['category'],
|
|
65
66
|
'tags': json['tags'] == null ? undefined : json['tags'],
|
|
@@ -82,6 +83,7 @@ export function EventFetchParamsToJSONTyped(value, ignoreDiscriminator = false)
|
|
|
82
83
|
'searchIn': value['searchIn'],
|
|
83
84
|
'eventId': value['eventId'],
|
|
84
85
|
'slug': value['slug'],
|
|
86
|
+
'series': value['series'],
|
|
85
87
|
'filter': EventFilterCriteriaToJSON(value['filter']),
|
|
86
88
|
'category': value['category'],
|
|
87
89
|
'tags': value['tags'],
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PMXT Sidecar API
|
|
3
|
+
* A unified local sidecar API for prediction markets (Polymarket, Kalshi, Limitless). This API acts as a JSON-RPC-style gateway. Each endpoint corresponds to a specific method on the generic exchange implementation.
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: 0.4.4
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
import type { ErrorDetail } from './ErrorDetail.js';
|
|
13
|
+
import type { UnifiedSeries } from './UnifiedSeries.js';
|
|
14
|
+
/**
|
|
15
|
+
*
|
|
16
|
+
* @export
|
|
17
|
+
* @interface FetchSeries200Response
|
|
18
|
+
*/
|
|
19
|
+
export interface FetchSeries200Response {
|
|
20
|
+
/**
|
|
21
|
+
*
|
|
22
|
+
* @type {boolean}
|
|
23
|
+
* @memberof FetchSeries200Response
|
|
24
|
+
*/
|
|
25
|
+
success?: boolean;
|
|
26
|
+
/**
|
|
27
|
+
*
|
|
28
|
+
* @type {ErrorDetail}
|
|
29
|
+
* @memberof FetchSeries200Response
|
|
30
|
+
*/
|
|
31
|
+
error?: ErrorDetail;
|
|
32
|
+
/**
|
|
33
|
+
*
|
|
34
|
+
* @type {Array<UnifiedSeries>}
|
|
35
|
+
* @memberof FetchSeries200Response
|
|
36
|
+
*/
|
|
37
|
+
data?: Array<UnifiedSeries>;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Check if a given object implements the FetchSeries200Response interface.
|
|
41
|
+
*/
|
|
42
|
+
export declare function instanceOfFetchSeries200Response(value: object): value is FetchSeries200Response;
|
|
43
|
+
export declare function FetchSeries200ResponseFromJSON(json: any): FetchSeries200Response;
|
|
44
|
+
export declare function FetchSeries200ResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): FetchSeries200Response;
|
|
45
|
+
export declare function FetchSeries200ResponseToJSON(json: any): FetchSeries200Response;
|
|
46
|
+
export declare function FetchSeries200ResponseToJSONTyped(value?: FetchSeries200Response | null, ignoreDiscriminator?: boolean): any;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* PMXT Sidecar API
|
|
5
|
+
* A unified local sidecar API for prediction markets (Polymarket, Kalshi, Limitless). This API acts as a JSON-RPC-style gateway. Each endpoint corresponds to a specific method on the generic exchange implementation.
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 0.4.4
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
import { ErrorDetailFromJSON, ErrorDetailToJSON, } from './ErrorDetail.js';
|
|
15
|
+
import { UnifiedSeriesFromJSON, UnifiedSeriesToJSON, } from './UnifiedSeries.js';
|
|
16
|
+
/**
|
|
17
|
+
* Check if a given object implements the FetchSeries200Response interface.
|
|
18
|
+
*/
|
|
19
|
+
export function instanceOfFetchSeries200Response(value) {
|
|
20
|
+
return true;
|
|
21
|
+
}
|
|
22
|
+
export function FetchSeries200ResponseFromJSON(json) {
|
|
23
|
+
return FetchSeries200ResponseFromJSONTyped(json, false);
|
|
24
|
+
}
|
|
25
|
+
export function FetchSeries200ResponseFromJSONTyped(json, ignoreDiscriminator) {
|
|
26
|
+
if (json == null) {
|
|
27
|
+
return json;
|
|
28
|
+
}
|
|
29
|
+
return {
|
|
30
|
+
'success': json['success'] == null ? undefined : json['success'],
|
|
31
|
+
'error': json['error'] == null ? undefined : ErrorDetailFromJSON(json['error']),
|
|
32
|
+
'data': json['data'] == null ? undefined : (json['data'].map(UnifiedSeriesFromJSON)),
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
export function FetchSeries200ResponseToJSON(json) {
|
|
36
|
+
return FetchSeries200ResponseToJSONTyped(json, false);
|
|
37
|
+
}
|
|
38
|
+
export function FetchSeries200ResponseToJSONTyped(value, ignoreDiscriminator = false) {
|
|
39
|
+
if (value == null) {
|
|
40
|
+
return value;
|
|
41
|
+
}
|
|
42
|
+
return {
|
|
43
|
+
'success': value['success'],
|
|
44
|
+
'error': ErrorDetailToJSON(value['error']),
|
|
45
|
+
'data': value['data'] == null ? undefined : (value['data'].map(UnifiedSeriesToJSON)),
|
|
46
|
+
};
|
|
47
|
+
}
|
|
@@ -82,6 +82,14 @@ export interface UnifiedEvent {
|
|
|
82
82
|
* @memberof UnifiedEvent
|
|
83
83
|
*/
|
|
84
84
|
tags?: Array<string>;
|
|
85
|
+
/**
|
|
86
|
+
* Raw venue-specific metadata not captured by first-class fields (e.g. Kalshi series_ticker / series_title, Polymarket series). Passed through verbatim so downstream consumers can recover anything the unified shape omits. Each venue populates what it has.
|
|
87
|
+
* @type {{ [key: string]: any; }}
|
|
88
|
+
* @memberof UnifiedEvent
|
|
89
|
+
*/
|
|
90
|
+
sourceMetadata?: {
|
|
91
|
+
[key: string]: any;
|
|
92
|
+
};
|
|
85
93
|
/**
|
|
86
94
|
* The exchange/venue this event originates from (e.g. 'polymarket', 'kalshi'). Populated by the Router.
|
|
87
95
|
* @type {string}
|
|
@@ -51,6 +51,7 @@ export function UnifiedEventFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
51
51
|
'image': json['image'] == null ? undefined : json['image'],
|
|
52
52
|
'category': json['category'] == null ? undefined : json['category'],
|
|
53
53
|
'tags': json['tags'] == null ? undefined : json['tags'],
|
|
54
|
+
'sourceMetadata': json['sourceMetadata'] == null ? undefined : json['sourceMetadata'],
|
|
54
55
|
'sourceExchange': json['sourceExchange'] == null ? undefined : json['sourceExchange'],
|
|
55
56
|
};
|
|
56
57
|
}
|
|
@@ -73,6 +74,7 @@ export function UnifiedEventToJSONTyped(value, ignoreDiscriminator = false) {
|
|
|
73
74
|
'image': value['image'],
|
|
74
75
|
'category': value['category'],
|
|
75
76
|
'tags': value['tags'],
|
|
77
|
+
'sourceMetadata': value['sourceMetadata'],
|
|
76
78
|
'sourceExchange': value['sourceExchange'],
|
|
77
79
|
};
|
|
78
80
|
}
|
|
@@ -124,6 +124,14 @@ export interface UnifiedMarket {
|
|
|
124
124
|
* @memberof UnifiedMarket
|
|
125
125
|
*/
|
|
126
126
|
contractAddress?: string;
|
|
127
|
+
/**
|
|
128
|
+
* Raw venue-specific metadata not captured by first-class fields (e.g. Kalshi series_ticker / series_title from the parent event, Polymarket series). Passed through verbatim so downstream consumers can recover anything the unified shape omits. Each venue populates what it has.
|
|
129
|
+
* @type {{ [key: string]: any; }}
|
|
130
|
+
* @memberof UnifiedMarket
|
|
131
|
+
*/
|
|
132
|
+
sourceMetadata?: {
|
|
133
|
+
[key: string]: any;
|
|
134
|
+
};
|
|
127
135
|
/**
|
|
128
136
|
* The exchange/venue this market originates from (e.g. 'polymarket', 'kalshi'). Populated by the Router.
|
|
129
137
|
* @type {string}
|
|
@@ -60,6 +60,7 @@ export function UnifiedMarketFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
60
60
|
'tickSize': json['tickSize'] == null ? undefined : json['tickSize'],
|
|
61
61
|
'status': json['status'] == null ? undefined : json['status'],
|
|
62
62
|
'contractAddress': json['contractAddress'] == null ? undefined : json['contractAddress'],
|
|
63
|
+
'sourceMetadata': json['sourceMetadata'] == null ? undefined : json['sourceMetadata'],
|
|
63
64
|
'sourceExchange': json['sourceExchange'] == null ? undefined : json['sourceExchange'],
|
|
64
65
|
'yes': json['yes'] == null ? undefined : MarketOutcomeFromJSON(json['yes']),
|
|
65
66
|
'no': json['no'] == null ? undefined : MarketOutcomeFromJSON(json['no']),
|
|
@@ -93,6 +94,7 @@ export function UnifiedMarketToJSONTyped(value, ignoreDiscriminator = false) {
|
|
|
93
94
|
'tickSize': value['tickSize'],
|
|
94
95
|
'status': value['status'],
|
|
95
96
|
'contractAddress': value['contractAddress'],
|
|
97
|
+
'sourceMetadata': value['sourceMetadata'],
|
|
96
98
|
'sourceExchange': value['sourceExchange'],
|
|
97
99
|
'yes': MarketOutcomeToJSON(value['yes']),
|
|
98
100
|
'no': MarketOutcomeToJSON(value['no']),
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PMXT Sidecar API
|
|
3
|
+
* A unified local sidecar API for prediction markets (Polymarket, Kalshi, Limitless). This API acts as a JSON-RPC-style gateway. Each endpoint corresponds to a specific method on the generic exchange implementation.
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: 0.4.4
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
import type { UnifiedEvent } from './UnifiedEvent.js';
|
|
13
|
+
/**
|
|
14
|
+
* A recurring grouping of events on a venue — the fourth tier above Event -> Market -> Outcome. Examples: Kalshi `KXATPMATCH` (every ATP tennis match), Polymarket `wta` (every WTA match), Opinion's daily `collection`. Series only exists where the venue exposes a recurring-event concept; venues without one return an empty array from `fetchSeries`.
|
|
15
|
+
* @export
|
|
16
|
+
* @interface UnifiedSeries
|
|
17
|
+
*/
|
|
18
|
+
export interface UnifiedSeries {
|
|
19
|
+
/**
|
|
20
|
+
* Stable venue-native series identifier (e.g. "KXATPMATCH" on Kalshi, "atp" on Polymarket Gamma, numeric Gamma id).
|
|
21
|
+
* @type {string}
|
|
22
|
+
* @memberof UnifiedSeries
|
|
23
|
+
*/
|
|
24
|
+
id: string;
|
|
25
|
+
/**
|
|
26
|
+
* Venue-native ticker, when distinct from `id`.
|
|
27
|
+
* @type {string}
|
|
28
|
+
* @memberof UnifiedSeries
|
|
29
|
+
*/
|
|
30
|
+
ticker?: string;
|
|
31
|
+
/**
|
|
32
|
+
* Venue-native slug.
|
|
33
|
+
* @type {string}
|
|
34
|
+
* @memberof UnifiedSeries
|
|
35
|
+
*/
|
|
36
|
+
slug?: string;
|
|
37
|
+
/**
|
|
38
|
+
* Human-readable series title (e.g. "ATP Match Winner", "WTA").
|
|
39
|
+
* @type {string}
|
|
40
|
+
* @memberof UnifiedSeries
|
|
41
|
+
*/
|
|
42
|
+
title: string;
|
|
43
|
+
/**
|
|
44
|
+
*
|
|
45
|
+
* @type {string}
|
|
46
|
+
* @memberof UnifiedSeries
|
|
47
|
+
*/
|
|
48
|
+
description?: string | null;
|
|
49
|
+
/**
|
|
50
|
+
*
|
|
51
|
+
* @type {string}
|
|
52
|
+
* @memberof UnifiedSeries
|
|
53
|
+
*/
|
|
54
|
+
recurrence?: string | null;
|
|
55
|
+
/**
|
|
56
|
+
* Child events. Populated when fetched by id; the list form usually omits this to keep payloads small.
|
|
57
|
+
* @type {Array<UnifiedEvent>}
|
|
58
|
+
* @memberof UnifiedSeries
|
|
59
|
+
*/
|
|
60
|
+
events?: Array<UnifiedEvent>;
|
|
61
|
+
/**
|
|
62
|
+
*
|
|
63
|
+
* @type {string}
|
|
64
|
+
* @memberof UnifiedSeries
|
|
65
|
+
*/
|
|
66
|
+
url?: string | null;
|
|
67
|
+
/**
|
|
68
|
+
*
|
|
69
|
+
* @type {string}
|
|
70
|
+
* @memberof UnifiedSeries
|
|
71
|
+
*/
|
|
72
|
+
image?: string | null;
|
|
73
|
+
/**
|
|
74
|
+
* The exchange this series originates from. Populated by the Router.
|
|
75
|
+
* @type {string}
|
|
76
|
+
* @memberof UnifiedSeries
|
|
77
|
+
*/
|
|
78
|
+
sourceExchange?: string;
|
|
79
|
+
/**
|
|
80
|
+
* Raw venue-specific fields not promoted to first-class columns.
|
|
81
|
+
* @type {{ [key: string]: any; }}
|
|
82
|
+
* @memberof UnifiedSeries
|
|
83
|
+
*/
|
|
84
|
+
sourceMetadata?: {
|
|
85
|
+
[key: string]: any;
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Check if a given object implements the UnifiedSeries interface.
|
|
90
|
+
*/
|
|
91
|
+
export declare function instanceOfUnifiedSeries(value: object): value is UnifiedSeries;
|
|
92
|
+
export declare function UnifiedSeriesFromJSON(json: any): UnifiedSeries;
|
|
93
|
+
export declare function UnifiedSeriesFromJSONTyped(json: any, ignoreDiscriminator: boolean): UnifiedSeries;
|
|
94
|
+
export declare function UnifiedSeriesToJSON(json: any): UnifiedSeries;
|
|
95
|
+
export declare function UnifiedSeriesToJSONTyped(value?: UnifiedSeries | null, ignoreDiscriminator?: boolean): any;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* PMXT Sidecar API
|
|
5
|
+
* A unified local sidecar API for prediction markets (Polymarket, Kalshi, Limitless). This API acts as a JSON-RPC-style gateway. Each endpoint corresponds to a specific method on the generic exchange implementation.
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 0.4.4
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
import { UnifiedEventFromJSON, UnifiedEventToJSON, } from './UnifiedEvent.js';
|
|
15
|
+
/**
|
|
16
|
+
* Check if a given object implements the UnifiedSeries interface.
|
|
17
|
+
*/
|
|
18
|
+
export function instanceOfUnifiedSeries(value) {
|
|
19
|
+
if (!('id' in value) || value['id'] === undefined)
|
|
20
|
+
return false;
|
|
21
|
+
if (!('title' in value) || value['title'] === undefined)
|
|
22
|
+
return false;
|
|
23
|
+
return true;
|
|
24
|
+
}
|
|
25
|
+
export function UnifiedSeriesFromJSON(json) {
|
|
26
|
+
return UnifiedSeriesFromJSONTyped(json, false);
|
|
27
|
+
}
|
|
28
|
+
export function UnifiedSeriesFromJSONTyped(json, ignoreDiscriminator) {
|
|
29
|
+
if (json == null) {
|
|
30
|
+
return json;
|
|
31
|
+
}
|
|
32
|
+
return {
|
|
33
|
+
'id': json['id'],
|
|
34
|
+
'ticker': json['ticker'] == null ? undefined : json['ticker'],
|
|
35
|
+
'slug': json['slug'] == null ? undefined : json['slug'],
|
|
36
|
+
'title': json['title'],
|
|
37
|
+
'description': json['description'] == null ? undefined : json['description'],
|
|
38
|
+
'recurrence': json['recurrence'] == null ? undefined : json['recurrence'],
|
|
39
|
+
'events': json['events'] == null ? undefined : (json['events'].map(UnifiedEventFromJSON)),
|
|
40
|
+
'url': json['url'] == null ? undefined : json['url'],
|
|
41
|
+
'image': json['image'] == null ? undefined : json['image'],
|
|
42
|
+
'sourceExchange': json['sourceExchange'] == null ? undefined : json['sourceExchange'],
|
|
43
|
+
'sourceMetadata': json['sourceMetadata'] == null ? undefined : json['sourceMetadata'],
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
export function UnifiedSeriesToJSON(json) {
|
|
47
|
+
return UnifiedSeriesToJSONTyped(json, false);
|
|
48
|
+
}
|
|
49
|
+
export function UnifiedSeriesToJSONTyped(value, ignoreDiscriminator = false) {
|
|
50
|
+
if (value == null) {
|
|
51
|
+
return value;
|
|
52
|
+
}
|
|
53
|
+
return {
|
|
54
|
+
'id': value['id'],
|
|
55
|
+
'ticker': value['ticker'],
|
|
56
|
+
'slug': value['slug'],
|
|
57
|
+
'title': value['title'],
|
|
58
|
+
'description': value['description'],
|
|
59
|
+
'recurrence': value['recurrence'],
|
|
60
|
+
'events': value['events'] == null ? undefined : (value['events'].map(UnifiedEventToJSON)),
|
|
61
|
+
'url': value['url'],
|
|
62
|
+
'image': value['image'],
|
|
63
|
+
'sourceExchange': value['sourceExchange'],
|
|
64
|
+
'sourceMetadata': value['sourceMetadata'],
|
|
65
|
+
};
|
|
66
|
+
}
|
|
@@ -58,6 +58,7 @@ export * from './FetchOrderBookParams.js';
|
|
|
58
58
|
export * from './FetchOrderBooks200Response.js';
|
|
59
59
|
export * from './FetchOrderBooksRequest.js';
|
|
60
60
|
export * from './FetchPositions200Response.js';
|
|
61
|
+
export * from './FetchSeries200Response.js';
|
|
61
62
|
export * from './FetchTrades200Response.js';
|
|
62
63
|
export * from './FilterEventsRequest.js';
|
|
63
64
|
export * from './FilterEventsRequestArgsInner.js';
|
|
@@ -99,4 +100,5 @@ export * from './Trade.js';
|
|
|
99
100
|
export * from './TradesParams.js';
|
|
100
101
|
export * from './UnifiedEvent.js';
|
|
101
102
|
export * from './UnifiedMarket.js';
|
|
103
|
+
export * from './UnifiedSeries.js';
|
|
102
104
|
export * from './UserTrade.js';
|
|
@@ -60,6 +60,7 @@ export * from './FetchOrderBookParams.js';
|
|
|
60
60
|
export * from './FetchOrderBooks200Response.js';
|
|
61
61
|
export * from './FetchOrderBooksRequest.js';
|
|
62
62
|
export * from './FetchPositions200Response.js';
|
|
63
|
+
export * from './FetchSeries200Response.js';
|
|
63
64
|
export * from './FetchTrades200Response.js';
|
|
64
65
|
export * from './FilterEventsRequest.js';
|
|
65
66
|
export * from './FilterEventsRequestArgsInner.js';
|
|
@@ -101,4 +102,5 @@ export * from './Trade.js';
|
|
|
101
102
|
export * from './TradesParams.js';
|
|
102
103
|
export * from './UnifiedEvent.js';
|
|
103
104
|
export * from './UnifiedMarket.js';
|
|
105
|
+
export * from './UnifiedSeries.js';
|
|
104
106
|
export * from './UserTrade.js';
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -27,6 +27,7 @@ export { Router } from "./pmxt/router.js";
|
|
|
27
27
|
export { ServerManager } from "./pmxt/server-manager.js";
|
|
28
28
|
export { HOSTED_URL, LOCAL_URL, ENV, resolvePmxtBaseUrl } from "./pmxt/constants.js";
|
|
29
29
|
export { MarketList } from "./pmxt/models.js";
|
|
30
|
+
export type { UnifiedSeries } from "./pmxt/models.js";
|
|
30
31
|
export type * from "./pmxt/models.js";
|
|
31
32
|
export * from "./pmxt/errors.js";
|
|
32
33
|
declare function stopServer(): Promise<void>;
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* OpenAPI client, matching the Python API exactly.
|
|
6
6
|
*/
|
|
7
7
|
import { Configuration, DefaultApi, ExchangeCredentials } from "../generated/src/index.js";
|
|
8
|
-
import { Balance, BuiltOrder, CreateOrderParams, EventFetchParams, EventFilterCriteria, EventFilterFunction, ExecutionPriceResult, FetchOrderBookParams, MarketFetchParams, MarketFilterCriteria, MarketFilterFunction, MarketOutcome, MyTradesParams, Order, OrderBook, OrderHistoryParams, PaginatedMarketsResult, Position, PriceCandle, SubscribedAddressSnapshot, SubscriptionOption, Trade, UnifiedEvent, UnifiedMarket, UserTrade, FirehoseEvent } from "./models.js";
|
|
8
|
+
import { Balance, BuiltOrder, CreateOrderParams, EventFetchParams, EventFilterCriteria, EventFilterFunction, ExecutionPriceResult, FetchOrderBookParams, MarketFetchParams, MarketFilterCriteria, MarketFilterFunction, MarketOutcome, MyTradesParams, Order, OrderBook, OrderHistoryParams, PaginatedMarketsResult, Position, SeriesFetchParams, PriceCandle, SubscribedAddressSnapshot, SubscriptionOption, Trade, UnifiedEvent, UnifiedMarket, UnifiedSeries, UserTrade, FirehoseEvent } from "./models.js";
|
|
9
9
|
import { ServerManager } from "./server-manager.js";
|
|
10
10
|
/**
|
|
11
11
|
* Base exchange client options.
|
|
@@ -178,6 +178,7 @@ export declare abstract class Exchange {
|
|
|
178
178
|
fetchMarkets(params?: MarketFetchParams): Promise<UnifiedMarket[]>;
|
|
179
179
|
fetchMarketsPaginated(params?: any): Promise<PaginatedMarketsResult>;
|
|
180
180
|
fetchEvents(params?: EventFetchParams): Promise<UnifiedEvent[]>;
|
|
181
|
+
fetchSeries(params?: SeriesFetchParams): Promise<UnifiedSeries[]>;
|
|
181
182
|
fetchMarket(params?: MarketFetchParams): Promise<UnifiedMarket>;
|
|
182
183
|
fetchEvent(params?: EventFetchParams): Promise<UnifiedEvent>;
|
|
183
184
|
fetchOrderBook(outcomeId: string | MarketOutcome, limit?: number, params?: FetchOrderBookParams): Promise<OrderBook | OrderBook[]>;
|