@apicity/polymarket 0.1.0-alpha.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/LICENSE +21 -0
- package/README.md +729 -0
- package/dist/src/_helpers.d.ts +10 -0
- package/dist/src/_helpers.d.ts.map +1 -0
- package/dist/src/_helpers.js +128 -0
- package/dist/src/_helpers.js.map +1 -0
- package/dist/src/clob.d.ts +11 -0
- package/dist/src/clob.d.ts.map +1 -0
- package/dist/src/clob.js +193 -0
- package/dist/src/clob.js.map +1 -0
- package/dist/src/data.d.ts +8 -0
- package/dist/src/data.d.ts.map +1 -0
- package/dist/src/data.js +179 -0
- package/dist/src/data.js.map +1 -0
- package/dist/src/example.d.ts +8 -0
- package/dist/src/example.d.ts.map +1 -0
- package/dist/src/example.js +150 -0
- package/dist/src/example.js.map +1 -0
- package/dist/src/gamma.d.ts +8 -0
- package/dist/src/gamma.d.ts.map +1 -0
- package/dist/src/gamma.js +343 -0
- package/dist/src/gamma.js.map +1 -0
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +3 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/polymarket.d.ts +3 -0
- package/dist/src/polymarket.d.ts.map +1 -0
- package/dist/src/polymarket.js +23 -0
- package/dist/src/polymarket.js.map +1 -0
- package/dist/src/types.d.ts +728 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/types.js +15 -0
- package/dist/src/types.js.map +1 -0
- package/dist/src/zod.d.ts +63 -0
- package/dist/src/zod.d.ts.map +1 -0
- package/dist/src/zod.js +52 -0
- package/dist/src/zod.js.map +1 -0
- package/package.json +62 -0
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare function attachAbortHandler(signal: AbortSignal, controller: AbortController): void;
|
|
2
|
+
export declare function formatErrorMessage(status: number, body: unknown): string;
|
|
3
|
+
export declare function readErrorBody(res: Response): Promise<unknown>;
|
|
4
|
+
export interface PolymarketRequestHelpers {
|
|
5
|
+
makeGetRequest<T>(url: string, signal?: AbortSignal): Promise<T>;
|
|
6
|
+
makeGetTextRequest(url: string, signal?: AbortSignal): Promise<string>;
|
|
7
|
+
makeJsonRequest<T>(url: string, body: unknown, signal?: AbortSignal): Promise<T>;
|
|
8
|
+
}
|
|
9
|
+
export declare function createRequestHelpers(doFetch: typeof fetch, timeout: number): PolymarketRequestHelpers;
|
|
10
|
+
//# sourceMappingURL=_helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_helpers.d.ts","sourceRoot":"","sources":["../../src/_helpers.ts"],"names":[],"mappings":"AAWA,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,WAAW,EACnB,UAAU,EAAE,eAAe,GAC1B,IAAI,CAMN;AAMD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,CAcxE;AAED,wBAAsB,aAAa,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAUnE;AAED,MAAM,WAAW,wBAAwB;IACvC,cAAc,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACjE,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvE,eAAe,CAAC,CAAC,EACf,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,OAAO,EACb,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,CAAC,CAAC,CAAC;CACf;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,KAAK,EACrB,OAAO,EAAE,MAAM,GACd,wBAAwB,CAkG1B"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
// ---------------------------------------------------------------------------
|
|
2
|
+
// Internal request helpers shared between per-host sub-factories.
|
|
3
|
+
// Each per-host factory (clob.ts, gamma.ts, ...) declares its own `baseURL`
|
|
4
|
+
// and constructs full URLs locally; the helpers here only handle the
|
|
5
|
+
// timeout / abort / error / parse pipeline so they don't need to know the
|
|
6
|
+
// host. Keeping helpers pure also lets the endpoint-walker correctly resolve
|
|
7
|
+
// each sub-factory's baseURL via its own factory body.
|
|
8
|
+
// ---------------------------------------------------------------------------
|
|
9
|
+
import { PolymarketError } from "./types.js";
|
|
10
|
+
export function attachAbortHandler(signal, controller) {
|
|
11
|
+
if (signal.aborted) {
|
|
12
|
+
controller.abort();
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
signal.addEventListener("abort", () => controller.abort(), { once: true });
|
|
16
|
+
}
|
|
17
|
+
// Polymarket's APIs return errors with several shapes — Gamma typically
|
|
18
|
+
// returns `{ error }` or `{ message }`, CLOB returns `{ error }` or a plain
|
|
19
|
+
// string, Data API returns `{ message }`. Surface whatever string the
|
|
20
|
+
// server provided rather than a generic "Polymarket API error: 500".
|
|
21
|
+
export function formatErrorMessage(status, body) {
|
|
22
|
+
if (typeof body === "string" && body.length > 0) {
|
|
23
|
+
return `Polymarket API error ${status}: ${body}`;
|
|
24
|
+
}
|
|
25
|
+
if (typeof body === "object" && body !== null) {
|
|
26
|
+
const b = body;
|
|
27
|
+
if (typeof b.error === "string" && b.error.length > 0) {
|
|
28
|
+
return `Polymarket API error ${status}: ${b.error}`;
|
|
29
|
+
}
|
|
30
|
+
if (typeof b.message === "string" && b.message.length > 0) {
|
|
31
|
+
return `Polymarket API error ${status}: ${b.message}`;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return `Polymarket API error: ${status}`;
|
|
35
|
+
}
|
|
36
|
+
export async function readErrorBody(res) {
|
|
37
|
+
const ct = res.headers.get("content-type") ?? "";
|
|
38
|
+
try {
|
|
39
|
+
if (ct.includes("application/json")) {
|
|
40
|
+
return await res.json();
|
|
41
|
+
}
|
|
42
|
+
return await res.text();
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
return null;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
export function createRequestHelpers(doFetch, timeout) {
|
|
49
|
+
async function makeGetRequest(url, signal) {
|
|
50
|
+
const controller = new AbortController();
|
|
51
|
+
const timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
52
|
+
if (signal)
|
|
53
|
+
attachAbortHandler(signal, controller);
|
|
54
|
+
try {
|
|
55
|
+
const res = await doFetch(url, {
|
|
56
|
+
method: "GET",
|
|
57
|
+
signal: controller.signal,
|
|
58
|
+
});
|
|
59
|
+
clearTimeout(timeoutId);
|
|
60
|
+
if (!res.ok) {
|
|
61
|
+
const resBody = await readErrorBody(res);
|
|
62
|
+
throw new PolymarketError(formatErrorMessage(res.status, resBody), res.status, resBody);
|
|
63
|
+
}
|
|
64
|
+
return (await res.json());
|
|
65
|
+
}
|
|
66
|
+
catch (error) {
|
|
67
|
+
clearTimeout(timeoutId);
|
|
68
|
+
if (error instanceof PolymarketError)
|
|
69
|
+
throw error;
|
|
70
|
+
throw new PolymarketError(`Polymarket request failed: ${error}`, 500);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
async function makeGetTextRequest(url, signal) {
|
|
74
|
+
const controller = new AbortController();
|
|
75
|
+
const timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
76
|
+
if (signal)
|
|
77
|
+
attachAbortHandler(signal, controller);
|
|
78
|
+
try {
|
|
79
|
+
const res = await doFetch(url, {
|
|
80
|
+
method: "GET",
|
|
81
|
+
signal: controller.signal,
|
|
82
|
+
});
|
|
83
|
+
clearTimeout(timeoutId);
|
|
84
|
+
if (!res.ok) {
|
|
85
|
+
const resBody = await readErrorBody(res);
|
|
86
|
+
throw new PolymarketError(formatErrorMessage(res.status, resBody), res.status, resBody);
|
|
87
|
+
}
|
|
88
|
+
return await res.text();
|
|
89
|
+
}
|
|
90
|
+
catch (error) {
|
|
91
|
+
clearTimeout(timeoutId);
|
|
92
|
+
if (error instanceof PolymarketError)
|
|
93
|
+
throw error;
|
|
94
|
+
throw new PolymarketError(`Polymarket request failed: ${error}`, 500);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
// Walker hint: this function is named `makeJsonRequest` so the
|
|
98
|
+
// endpoint-walker resolves it as POST (per the HELPER_METHOD_HINTS map in
|
|
99
|
+
// scripts/lib/endpoint-walk.mjs).
|
|
100
|
+
async function makeJsonRequest(url, body, signal) {
|
|
101
|
+
const controller = new AbortController();
|
|
102
|
+
const timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
103
|
+
if (signal)
|
|
104
|
+
attachAbortHandler(signal, controller);
|
|
105
|
+
try {
|
|
106
|
+
const res = await doFetch(url, {
|
|
107
|
+
method: "POST",
|
|
108
|
+
headers: { "Content-Type": "application/json" },
|
|
109
|
+
body: JSON.stringify(body),
|
|
110
|
+
signal: controller.signal,
|
|
111
|
+
});
|
|
112
|
+
clearTimeout(timeoutId);
|
|
113
|
+
if (!res.ok) {
|
|
114
|
+
const resBody = await readErrorBody(res);
|
|
115
|
+
throw new PolymarketError(formatErrorMessage(res.status, resBody), res.status, resBody);
|
|
116
|
+
}
|
|
117
|
+
return (await res.json());
|
|
118
|
+
}
|
|
119
|
+
catch (error) {
|
|
120
|
+
clearTimeout(timeoutId);
|
|
121
|
+
if (error instanceof PolymarketError)
|
|
122
|
+
throw error;
|
|
123
|
+
throw new PolymarketError(`Polymarket request failed: ${error}`, 500);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
return { makeGetRequest, makeGetTextRequest, makeJsonRequest };
|
|
127
|
+
}
|
|
128
|
+
//# sourceMappingURL=_helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_helpers.js","sourceRoot":"","sources":["../../src/_helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { PolymarketOptions, PolymarketClobGetNamespace, PolymarketClobPostNamespace } from "./types";
|
|
2
|
+
export interface PolymarketClobSubProvider {
|
|
3
|
+
get: {
|
|
4
|
+
clob: PolymarketClobGetNamespace;
|
|
5
|
+
};
|
|
6
|
+
post: {
|
|
7
|
+
clob: PolymarketClobPostNamespace;
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
export declare function createClobProvider(opts: PolymarketOptions): PolymarketClobSubProvider;
|
|
11
|
+
//# sourceMappingURL=clob.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clob.d.ts","sourceRoot":"","sources":["../../src/clob.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EA4BjB,0BAA0B,EAC1B,2BAA2B,EAE5B,MAAM,SAAS,CAAC;AAQjB,MAAM,WAAW,yBAAyB;IACxC,GAAG,EAAE;QAAE,IAAI,EAAE,0BAA0B,CAAA;KAAE,CAAC;IAC1C,IAAI,EAAE;QAAE,IAAI,EAAE,2BAA2B,CAAA;KAAE,CAAC;CAC7C;AAKD,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,iBAAiB,GACtB,yBAAyB,CA0W3B"}
|
package/dist/src/clob.js
ADDED
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import { PolymarketError, } from "./types.js";
|
|
2
|
+
import { PolymarketClobTokenBatchRequestSchema, PolymarketClobPricesBatchRequestSchema, PolymarketClobBatchPricesHistoryRequestSchema, } from "./zod.js";
|
|
3
|
+
import { createRequestHelpers } from "./_helpers.js";
|
|
4
|
+
// Internal sub-factory for the CLOB host. Owns its own `baseURL` const so the
|
|
5
|
+
// endpoint-walker can resolve `https://clob.polymarket.com/...` URLs without
|
|
6
|
+
// needing per-provider multi-base support.
|
|
7
|
+
export function createClobProvider(opts) {
|
|
8
|
+
const baseURL = opts.clobBaseURL ?? "https://clob.polymarket.com";
|
|
9
|
+
const doFetch = opts.fetch ?? fetch;
|
|
10
|
+
const timeout = opts.timeout ?? 30000;
|
|
11
|
+
const { makeGetRequest, makeGetTextRequest, makeJsonRequest } = createRequestHelpers(doFetch, timeout);
|
|
12
|
+
// GET https://clob.polymarket.com/time
|
|
13
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-server-time
|
|
14
|
+
async function clobTime(signal) {
|
|
15
|
+
const text = (await makeGetTextRequest(`${baseURL}/time`, signal)).trim();
|
|
16
|
+
const n = Number(text);
|
|
17
|
+
if (!Number.isFinite(n)) {
|
|
18
|
+
throw new PolymarketError(`Polymarket /time response was not a finite number: ${text}`, 200, text);
|
|
19
|
+
}
|
|
20
|
+
return n;
|
|
21
|
+
}
|
|
22
|
+
// GET https://clob.polymarket.com/book{query}
|
|
23
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-order-book
|
|
24
|
+
async function clobBook(params, signal) {
|
|
25
|
+
const query = `?token_id=${encodeURIComponent(params.token_id)}`;
|
|
26
|
+
return makeGetRequest(`${baseURL}/book${query}`, signal);
|
|
27
|
+
}
|
|
28
|
+
// GET https://clob.polymarket.com/price{query}
|
|
29
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-market-price
|
|
30
|
+
async function clobPrice(params, signal) {
|
|
31
|
+
const query = `?token_id=${encodeURIComponent(params.token_id)}` +
|
|
32
|
+
`&side=${encodeURIComponent(params.side)}`;
|
|
33
|
+
return makeGetRequest(`${baseURL}/price${query}`, signal);
|
|
34
|
+
}
|
|
35
|
+
// GET https://clob.polymarket.com/midpoint{query}
|
|
36
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-midpoint
|
|
37
|
+
async function clobMidpoint(params, signal) {
|
|
38
|
+
const query = `?token_id=${encodeURIComponent(params.token_id)}`;
|
|
39
|
+
return makeGetRequest(`${baseURL}/midpoint${query}`, signal);
|
|
40
|
+
}
|
|
41
|
+
// GET https://clob.polymarket.com/spread{query}
|
|
42
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-spread
|
|
43
|
+
async function clobSpread(params, signal) {
|
|
44
|
+
const query = `?token_id=${encodeURIComponent(params.token_id)}`;
|
|
45
|
+
return makeGetRequest(`${baseURL}/spread${query}`, signal);
|
|
46
|
+
}
|
|
47
|
+
// GET https://clob.polymarket.com/last-trade-price{query}
|
|
48
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-last-trade-price
|
|
49
|
+
async function clobLastTradePrice(params, signal) {
|
|
50
|
+
const query = `?token_id=${encodeURIComponent(params.token_id)}`;
|
|
51
|
+
return makeGetRequest(`${baseURL}/last-trade-price${query}`, signal);
|
|
52
|
+
}
|
|
53
|
+
// GET https://clob.polymarket.com/tick-size/{tokenId}
|
|
54
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-tick-size
|
|
55
|
+
async function clobTickSize(tokenId, signal) {
|
|
56
|
+
return makeGetRequest(`${baseURL}/tick-size/${encodeURIComponent(tokenId)}`, signal);
|
|
57
|
+
}
|
|
58
|
+
// GET https://clob.polymarket.com/fee-rate/{tokenId}
|
|
59
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-fee-rate
|
|
60
|
+
async function clobFeeRate(tokenId, signal) {
|
|
61
|
+
return makeGetRequest(`${baseURL}/fee-rate/${encodeURIComponent(tokenId)}`, signal);
|
|
62
|
+
}
|
|
63
|
+
function paginationQuery(params) {
|
|
64
|
+
if (!params?.next_cursor)
|
|
65
|
+
return "";
|
|
66
|
+
return `?next_cursor=${encodeURIComponent(params.next_cursor)}`;
|
|
67
|
+
}
|
|
68
|
+
// GET https://clob.polymarket.com/markets/{paramsOrConditionIdOrSignal}
|
|
69
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-markets
|
|
70
|
+
async function clobMarkets(paramsOrConditionIdOrSignal, signal) {
|
|
71
|
+
if (typeof paramsOrConditionIdOrSignal === "string") {
|
|
72
|
+
return makeGetRequest(`${baseURL}/markets/${encodeURIComponent(paramsOrConditionIdOrSignal)}`, signal);
|
|
73
|
+
}
|
|
74
|
+
const isPagination = paramsOrConditionIdOrSignal !== undefined &&
|
|
75
|
+
paramsOrConditionIdOrSignal !== null &&
|
|
76
|
+
typeof paramsOrConditionIdOrSignal === "object" &&
|
|
77
|
+
!(paramsOrConditionIdOrSignal instanceof AbortSignal);
|
|
78
|
+
const params = isPagination
|
|
79
|
+
? paramsOrConditionIdOrSignal
|
|
80
|
+
: undefined;
|
|
81
|
+
const effectiveSignal = isPagination
|
|
82
|
+
? signal
|
|
83
|
+
: paramsOrConditionIdOrSignal;
|
|
84
|
+
const query = paginationQuery(params);
|
|
85
|
+
return makeGetRequest(`${baseURL}/markets${query}`, effectiveSignal);
|
|
86
|
+
}
|
|
87
|
+
// GET https://clob.polymarket.com/sampling-markets{query}
|
|
88
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-sampling-markets
|
|
89
|
+
async function clobSamplingMarkets(params, signal) {
|
|
90
|
+
const query = paginationQuery(params);
|
|
91
|
+
return makeGetRequest(`${baseURL}/sampling-markets${query}`, signal);
|
|
92
|
+
}
|
|
93
|
+
// GET https://clob.polymarket.com/simplified-markets{query}
|
|
94
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-simplified-markets
|
|
95
|
+
async function clobSimplifiedMarkets(params, signal) {
|
|
96
|
+
const query = paginationQuery(params);
|
|
97
|
+
return makeGetRequest(`${baseURL}/simplified-markets${query}`, signal);
|
|
98
|
+
}
|
|
99
|
+
// GET https://clob.polymarket.com/sampling-simplified-markets{query}
|
|
100
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-sampling-simplified-markets
|
|
101
|
+
async function clobSamplingSimplifiedMarkets(params, signal) {
|
|
102
|
+
const query = paginationQuery(params);
|
|
103
|
+
return makeGetRequest(`${baseURL}/sampling-simplified-markets${query}`, signal);
|
|
104
|
+
}
|
|
105
|
+
// GET https://clob.polymarket.com/markets-by-token/{tokenId}
|
|
106
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-market-by-token
|
|
107
|
+
async function clobMarketsByToken(tokenId, signal) {
|
|
108
|
+
return makeGetRequest(`${baseURL}/markets-by-token/${encodeURIComponent(tokenId)}`, signal);
|
|
109
|
+
}
|
|
110
|
+
// GET https://clob.polymarket.com/clob-markets/{conditionId}
|
|
111
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-clob-market-info
|
|
112
|
+
async function clobMarketsCompact(conditionId, signal) {
|
|
113
|
+
return makeGetRequest(`${baseURL}/clob-markets/${encodeURIComponent(conditionId)}`, signal);
|
|
114
|
+
}
|
|
115
|
+
// GET https://clob.polymarket.com/prices-history{query}
|
|
116
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-prices-history
|
|
117
|
+
async function clobPricesHistory(params, signal) {
|
|
118
|
+
const usp = new URLSearchParams();
|
|
119
|
+
usp.set("market", params.market);
|
|
120
|
+
if (params.interval !== undefined)
|
|
121
|
+
usp.set("interval", params.interval);
|
|
122
|
+
if (params.startTs !== undefined)
|
|
123
|
+
usp.set("startTs", String(params.startTs));
|
|
124
|
+
if (params.endTs !== undefined)
|
|
125
|
+
usp.set("endTs", String(params.endTs));
|
|
126
|
+
if (params.fidelity !== undefined)
|
|
127
|
+
usp.set("fidelity", String(params.fidelity));
|
|
128
|
+
const query = `?${usp.toString()}`;
|
|
129
|
+
return makeGetRequest(`${baseURL}/prices-history${query}`, signal);
|
|
130
|
+
}
|
|
131
|
+
// POST https://clob.polymarket.com/books
|
|
132
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-order-books
|
|
133
|
+
const clobBooksBatch = Object.assign(async (req, signal) => {
|
|
134
|
+
return makeJsonRequest(`${baseURL}/books`, req, signal);
|
|
135
|
+
}, { schema: PolymarketClobTokenBatchRequestSchema });
|
|
136
|
+
// POST https://clob.polymarket.com/prices
|
|
137
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-market-prices
|
|
138
|
+
const clobPricesBatch = Object.assign(async (req, signal) => {
|
|
139
|
+
return makeJsonRequest(`${baseURL}/prices`, req, signal);
|
|
140
|
+
}, { schema: PolymarketClobPricesBatchRequestSchema });
|
|
141
|
+
// POST https://clob.polymarket.com/midpoints
|
|
142
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-midpoints
|
|
143
|
+
const clobMidpointsBatch = Object.assign(async (req, signal) => {
|
|
144
|
+
return makeJsonRequest(`${baseURL}/midpoints`, req, signal);
|
|
145
|
+
}, { schema: PolymarketClobTokenBatchRequestSchema });
|
|
146
|
+
// POST https://clob.polymarket.com/spreads
|
|
147
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-spreads
|
|
148
|
+
const clobSpreadsBatch = Object.assign(async (req, signal) => {
|
|
149
|
+
return makeJsonRequest(`${baseURL}/spreads`, req, signal);
|
|
150
|
+
}, { schema: PolymarketClobTokenBatchRequestSchema });
|
|
151
|
+
// POST https://clob.polymarket.com/last-trades-prices
|
|
152
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-last-trades-prices
|
|
153
|
+
const clobLastTradesPricesBatch = Object.assign(async (req, signal) => {
|
|
154
|
+
return makeJsonRequest(`${baseURL}/last-trades-prices`, req, signal);
|
|
155
|
+
}, { schema: PolymarketClobTokenBatchRequestSchema });
|
|
156
|
+
// POST https://clob.polymarket.com/batch-prices-history
|
|
157
|
+
// Docs: https://docs.polymarket.com/api-reference/clob/get-batch-prices-history
|
|
158
|
+
const clobBatchPricesHistory = Object.assign(async (req, signal) => {
|
|
159
|
+
return makeJsonRequest(`${baseURL}/batch-prices-history`, req, signal);
|
|
160
|
+
}, { schema: PolymarketClobBatchPricesHistoryRequestSchema });
|
|
161
|
+
return {
|
|
162
|
+
get: {
|
|
163
|
+
clob: {
|
|
164
|
+
time: clobTime,
|
|
165
|
+
book: clobBook,
|
|
166
|
+
price: clobPrice,
|
|
167
|
+
midpoint: clobMidpoint,
|
|
168
|
+
spread: clobSpread,
|
|
169
|
+
lastTradePrice: clobLastTradePrice,
|
|
170
|
+
tickSize: clobTickSize,
|
|
171
|
+
feeRate: clobFeeRate,
|
|
172
|
+
pricesHistory: clobPricesHistory,
|
|
173
|
+
markets: clobMarkets,
|
|
174
|
+
samplingMarkets: clobSamplingMarkets,
|
|
175
|
+
simplifiedMarkets: clobSimplifiedMarkets,
|
|
176
|
+
samplingSimplifiedMarkets: clobSamplingSimplifiedMarkets,
|
|
177
|
+
marketsByToken: clobMarketsByToken,
|
|
178
|
+
clobMarkets: clobMarketsCompact,
|
|
179
|
+
},
|
|
180
|
+
},
|
|
181
|
+
post: {
|
|
182
|
+
clob: {
|
|
183
|
+
books: clobBooksBatch,
|
|
184
|
+
prices: clobPricesBatch,
|
|
185
|
+
midpoints: clobMidpointsBatch,
|
|
186
|
+
spreads: clobSpreadsBatch,
|
|
187
|
+
lastTradesPrices: clobLastTradesPricesBatch,
|
|
188
|
+
batchPricesHistory: clobBatchPricesHistory,
|
|
189
|
+
},
|
|
190
|
+
},
|
|
191
|
+
};
|
|
192
|
+
}
|
|
193
|
+
//# sourceMappingURL=clob.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clob.js","sourceRoot":"","sources":["../../src/clob.ts"],"names":[],"mappings":"AAAA,OAAO,EA+BL,eAAe,GAChB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,qCAAqC,EACrC,sCAAsC,EACtC,6CAA6C,GAC9C,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAOlD,8EAA8E;AAC9E,6EAA6E;AAC7E,2CAA2C;AAC3C,MAAM,UAAU,kBAAkB,CAChC,IAAuB;IAEvB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,IAAI,6BAA6B,CAAC;IAClE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC;IACpC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC;IACtC,MAAM,EAAE,cAAc,EAAE,kBAAkB,EAAE,eAAe,EAAE,GAC3D,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAEzC,uCAAuC;IACvC,uEAAuE;IACvE,KAAK,UAAU,QAAQ,CAAC,MAAoB;QAC1C,MAAM,IAAI,GAAG,CAAC,MAAM,kBAAkB,CAAC,GAAG,OAAO,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC1E,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,eAAe,CACvB,sDAAsD,IAAI,EAAE,EAC5D,GAAG,EACH,IAAI,CACL,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,8CAA8C;IAC9C,sEAAsE;IACtE,KAAK,UAAU,QAAQ,CACrB,MAAgC,EAChC,MAAoB;QAEpB,MAAM,KAAK,GAAG,aAAa,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjE,OAAO,cAAc,CACnB,GAAG,OAAO,QAAQ,KAAK,EAAE,EACzB,MAAM,CACP,CAAC;IACJ,CAAC;IAED,+CAA+C;IAC/C,wEAAwE;IACxE,KAAK,UAAU,SAAS,CACtB,MAAgC,EAChC,MAAoB;QAEpB,MAAM,KAAK,GACT,aAAa,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;YAClD,SAAS,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7C,OAAO,cAAc,CACnB,GAAG,OAAO,SAAS,KAAK,EAAE,EAC1B,MAAM,CACP,CAAC;IACJ,CAAC;IAED,kDAAkD;IAClD,oEAAoE;IACpE,KAAK,UAAU,YAAY,CACzB,MAAgC,EAChC,MAAoB;QAEpB,MAAM,KAAK,GAAG,aAAa,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjE,OAAO,cAAc,CACnB,GAAG,OAAO,YAAY,KAAK,EAAE,EAC7B,MAAM,CACP,CAAC;IACJ,CAAC;IAED,gDAAgD;IAChD,kEAAkE;IAClE,KAAK,UAAU,UAAU,CACvB,MAAgC,EAChC,MAAoB;QAEpB,MAAM,KAAK,GAAG,aAAa,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjE,OAAO,cAAc,CACnB,GAAG,OAAO,UAAU,KAAK,EAAE,EAC3B,MAAM,CACP,CAAC;IACJ,CAAC;IAED,0DAA0D;IAC1D,4EAA4E;IAC5E,KAAK,UAAU,kBAAkB,CAC/B,MAAgC,EAChC,MAAoB;QAEpB,MAAM,KAAK,GAAG,aAAa,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjE,OAAO,cAAc,CACnB,GAAG,OAAO,oBAAoB,KAAK,EAAE,EACrC,MAAM,CACP,CAAC;IACJ,CAAC;IAED,sDAAsD;IACtD,qEAAqE;IACrE,KAAK,UAAU,YAAY,CACzB,OAAe,EACf,MAAoB;QAEpB,OAAO,cAAc,CACnB,GAAG,OAAO,cAAc,kBAAkB,CAAC,OAAO,CAAC,EAAE,EACrD,MAAM,CACP,CAAC;IACJ,CAAC;IAED,qDAAqD;IACrD,oEAAoE;IACpE,KAAK,UAAU,WAAW,CACxB,OAAe,EACf,MAAoB;QAEpB,OAAO,cAAc,CACnB,GAAG,OAAO,aAAa,kBAAkB,CAAC,OAAO,CAAC,EAAE,EACpD,MAAM,CACP,CAAC;IACJ,CAAC;IAED,SAAS,eAAe,CAAC,MAAsC;QAC7D,IAAI,CAAC,MAAM,EAAE,WAAW;YAAE,OAAO,EAAE,CAAC;QACpC,OAAO,gBAAgB,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;IAClE,CAAC;IAED,wEAAwE;IACxE,mEAAmE;IACnE,KAAK,UAAU,WAAW,CACxB,2BAGe,EACf,MAAoB;QAEpB,IAAI,OAAO,2BAA2B,KAAK,QAAQ,EAAE,CAAC;YACpD,OAAO,cAAc,CACnB,GAAG,OAAO,YAAY,kBAAkB,CAAC,2BAA2B,CAAC,EAAE,EACvE,MAAM,CACP,CAAC;QACJ,CAAC;QACD,MAAM,YAAY,GAChB,2BAA2B,KAAK,SAAS;YACzC,2BAA2B,KAAK,IAAI;YACpC,OAAO,2BAA2B,KAAK,QAAQ;YAC/C,CAAC,CAAC,2BAA2B,YAAY,WAAW,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,YAAY;YACzB,CAAC,CAAE,2BAA6D;YAChE,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,eAAe,GAAG,YAAY;YAClC,CAAC,CAAC,MAAM;YACR,CAAC,CAAE,2BAAuD,CAAC;QAC7D,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QACtC,OAAO,cAAc,CACnB,GAAG,OAAO,WAAW,KAAK,EAAE,EAC5B,eAAe,CAChB,CAAC;IACJ,CAAC;IAED,0DAA0D;IAC1D,4EAA4E;IAC5E,KAAK,UAAU,mBAAmB,CAChC,MAAsC,EACtC,MAAoB;QAEpB,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QACtC,OAAO,cAAc,CACnB,GAAG,OAAO,oBAAoB,KAAK,EAAE,EACrC,MAAM,CACP,CAAC;IACJ,CAAC;IAED,4DAA4D;IAC5D,8EAA8E;IAC9E,KAAK,UAAU,qBAAqB,CAClC,MAAsC,EACtC,MAAoB;QAEpB,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QACtC,OAAO,cAAc,CACnB,GAAG,OAAO,sBAAsB,KAAK,EAAE,EACvC,MAAM,CACP,CAAC;IACJ,CAAC;IAED,qEAAqE;IACrE,uFAAuF;IACvF,KAAK,UAAU,6BAA6B,CAC1C,MAAsC,EACtC,MAAoB;QAEpB,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QACtC,OAAO,cAAc,CACnB,GAAG,OAAO,+BAA+B,KAAK,EAAE,EAChD,MAAM,CACP,CAAC;IACJ,CAAC;IAED,6DAA6D;IAC7D,2EAA2E;IAC3E,KAAK,UAAU,kBAAkB,CAC/B,OAAe,EACf,MAAoB;QAEpB,OAAO,cAAc,CACnB,GAAG,OAAO,qBAAqB,kBAAkB,CAAC,OAAO,CAAC,EAAE,EAC5D,MAAM,CACP,CAAC;IACJ,CAAC;IAED,6DAA6D;IAC7D,4EAA4E;IAC5E,KAAK,UAAU,kBAAkB,CAC/B,WAAmB,EACnB,MAAoB;QAEpB,OAAO,cAAc,CACnB,GAAG,OAAO,iBAAiB,kBAAkB,CAAC,WAAW,CAAC,EAAE,EAC5D,MAAM,CACP,CAAC;IACJ,CAAC;IAED,wDAAwD;IACxD,0EAA0E;IAC1E,KAAK,UAAU,iBAAiB,CAC9B,MAAuC,EACvC,MAAoB;QAEpB,MAAM,GAAG,GAAG,IAAI,eAAe,EAAE,CAAC;QAClC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;YAAE,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QACxE,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS;YAC9B,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7C,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;YAAE,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACvE,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;YAC/B,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;QACnC,OAAO,cAAc,CACnB,GAAG,OAAO,kBAAkB,KAAK,EAAE,EACnC,MAAM,CACP,CAAC;IACJ,CAAC;IAED,yCAAyC;IACzC,uEAAuE;IACvE,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAClC,KAAK,EACH,GAAoC,EACpC,MAAoB,EACuB,EAAE;QAC7C,OAAO,eAAe,CACpB,GAAG,OAAO,QAAQ,EAClB,GAAG,EACH,MAAM,CACP,CAAC;IACJ,CAAC,EACD,EAAE,MAAM,EAAE,qCAAqC,EAAE,CAClD,CAAC;IAEF,0CAA0C;IAC1C,yEAAyE;IACzE,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CACnC,KAAK,EACH,GAAqC,EACrC,MAAoB,EACwB,EAAE;QAC9C,OAAO,eAAe,CACpB,GAAG,OAAO,SAAS,EACnB,GAAG,EACH,MAAM,CACP,CAAC;IACJ,CAAC,EACD,EAAE,MAAM,EAAE,sCAAsC,EAAE,CACnD,CAAC;IAEF,6CAA6C;IAC7C,qEAAqE;IACrE,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CACtC,KAAK,EACH,GAAoC,EACpC,MAAoB,EAC2B,EAAE;QACjD,OAAO,eAAe,CACpB,GAAG,OAAO,YAAY,EACtB,GAAG,EACH,MAAM,CACP,CAAC;IACJ,CAAC,EACD,EAAE,MAAM,EAAE,qCAAqC,EAAE,CAClD,CAAC;IAEF,2CAA2C;IAC3C,mEAAmE;IACnE,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CACpC,KAAK,EACH,GAAoC,EACpC,MAAoB,EACyB,EAAE;QAC/C,OAAO,eAAe,CACpB,GAAG,OAAO,UAAU,EACpB,GAAG,EACH,MAAM,CACP,CAAC;IACJ,CAAC,EACD,EAAE,MAAM,EAAE,qCAAqC,EAAE,CAClD,CAAC;IAEF,sDAAsD;IACtD,8EAA8E;IAC9E,MAAM,yBAAyB,GAAG,MAAM,CAAC,MAAM,CAC7C,KAAK,EACH,GAAoC,EACpC,MAAoB,EACkC,EAAE;QACxD,OAAO,eAAe,CACpB,GAAG,OAAO,qBAAqB,EAC/B,GAAG,EACH,MAAM,CACP,CAAC;IACJ,CAAC,EACD,EAAE,MAAM,EAAE,qCAAqC,EAAE,CAClD,CAAC;IAEF,wDAAwD;IACxD,gFAAgF;IAChF,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,CAC1C,KAAK,EACH,GAA4C,EAC5C,MAAoB,EAC+B,EAAE;QACrD,OAAO,eAAe,CACpB,GAAG,OAAO,uBAAuB,EACjC,GAAG,EACH,MAAM,CACP,CAAC;IACJ,CAAC,EACD,EAAE,MAAM,EAAE,6CAA6C,EAAE,CAC1D,CAAC;IAEF,OAAO;QACL,GAAG,EAAE;YACH,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,SAAS;gBAChB,QAAQ,EAAE,YAAY;gBACtB,MAAM,EAAE,UAAU;gBAClB,cAAc,EAAE,kBAAkB;gBAClC,QAAQ,EAAE,YAAY;gBACtB,OAAO,EAAE,WAAW;gBACpB,aAAa,EAAE,iBAAiB;gBAChC,OAAO,EAAE,WAAoD;gBAC7D,eAAe,EAAE,mBAAmB;gBACpC,iBAAiB,EAAE,qBAAqB;gBACxC,yBAAyB,EAAE,6BAA6B;gBACxD,cAAc,EAAE,kBAAkB;gBAClC,WAAW,EAAE,kBAAkB;aAChC;SACF;QACD,IAAI,EAAE;YACJ,IAAI,EAAE;gBACJ,KAAK,EAAE,cAAc;gBACrB,MAAM,EAAE,eAAe;gBACvB,SAAS,EAAE,kBAAkB;gBAC7B,OAAO,EAAE,gBAAgB;gBACzB,gBAAgB,EAAE,yBAAyB;gBAC3C,kBAAkB,EAAE,sBAAsB;aAC3C;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { PolymarketOptions, PolymarketDataGetNamespace } from "./types";
|
|
2
|
+
export interface PolymarketDataSubProvider {
|
|
3
|
+
get: {
|
|
4
|
+
data: PolymarketDataGetNamespace;
|
|
5
|
+
};
|
|
6
|
+
}
|
|
7
|
+
export declare function createDataProvider(opts: PolymarketOptions): PolymarketDataSubProvider;
|
|
8
|
+
//# sourceMappingURL=data.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/data.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAejB,0BAA0B,EAC3B,MAAM,SAAS,CAAC;AAGjB,MAAM,WAAW,yBAAyB;IACxC,GAAG,EAAE;QAAE,IAAI,EAAE,0BAA0B,CAAA;KAAE,CAAC;CAC3C;AAKD,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,iBAAiB,GACtB,yBAAyB,CAqM3B"}
|
package/dist/src/data.js
ADDED
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
import { createRequestHelpers } from "./_helpers.js";
|
|
2
|
+
// Internal sub-factory for the Data API host. Owns its own `baseURL` const
|
|
3
|
+
// so the endpoint-walker can resolve `https://data-api.polymarket.com/...`
|
|
4
|
+
// URLs per-factory.
|
|
5
|
+
export function createDataProvider(opts) {
|
|
6
|
+
const baseURL = opts.dataBaseURL ?? "https://data-api.polymarket.com";
|
|
7
|
+
const doFetch = opts.fetch ?? fetch;
|
|
8
|
+
const timeout = opts.timeout ?? 30000;
|
|
9
|
+
const { makeGetRequest } = createRequestHelpers(doFetch, timeout);
|
|
10
|
+
function buildPositionsQuery(params) {
|
|
11
|
+
const usp = new URLSearchParams();
|
|
12
|
+
usp.set("user", params.user);
|
|
13
|
+
if (params.market !== undefined) {
|
|
14
|
+
if (Array.isArray(params.market)) {
|
|
15
|
+
for (const m of params.market)
|
|
16
|
+
usp.append("market", m);
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
usp.set("market", params.market);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
if (params.eventId !== undefined)
|
|
23
|
+
usp.set("eventId", params.eventId);
|
|
24
|
+
if (params.sizeThreshold !== undefined)
|
|
25
|
+
usp.set("sizeThreshold", String(params.sizeThreshold));
|
|
26
|
+
if (params.redeemable !== undefined)
|
|
27
|
+
usp.set("redeemable", String(params.redeemable));
|
|
28
|
+
if (params.mergeable !== undefined)
|
|
29
|
+
usp.set("mergeable", String(params.mergeable));
|
|
30
|
+
if (params.title !== undefined)
|
|
31
|
+
usp.set("title", params.title);
|
|
32
|
+
if (params.sortBy !== undefined)
|
|
33
|
+
usp.set("sortBy", params.sortBy);
|
|
34
|
+
if (params.sortDirection !== undefined)
|
|
35
|
+
usp.set("sortDirection", params.sortDirection);
|
|
36
|
+
if (params.limit !== undefined)
|
|
37
|
+
usp.set("limit", String(params.limit));
|
|
38
|
+
if (params.offset !== undefined)
|
|
39
|
+
usp.set("offset", String(params.offset));
|
|
40
|
+
return `?${usp.toString()}`;
|
|
41
|
+
}
|
|
42
|
+
// sig-ok: hostname `data-api` shortened to `data` for caller ergonomics
|
|
43
|
+
// GET https://data-api.polymarket.com/positions{query}
|
|
44
|
+
// Docs: https://docs.polymarket.com/api-reference/data/get-positions
|
|
45
|
+
async function dataPositions(params, signal) {
|
|
46
|
+
const query = buildPositionsQuery(params);
|
|
47
|
+
return makeGetRequest(`${baseURL}/positions${query}`, signal);
|
|
48
|
+
}
|
|
49
|
+
// sig-ok: hostname `data-api` shortened to `data` for caller ergonomics
|
|
50
|
+
// GET https://data-api.polymarket.com/value{query}
|
|
51
|
+
// Docs: https://docs.polymarket.com/api-reference/data/get-positions-value
|
|
52
|
+
async function dataValue(params, signal) {
|
|
53
|
+
const query = `?user=${encodeURIComponent(params.user)}`;
|
|
54
|
+
return makeGetRequest(`${baseURL}/value${query}`, signal);
|
|
55
|
+
}
|
|
56
|
+
// sig-ok: hostname `data-api` shortened to `data` for caller ergonomics
|
|
57
|
+
// GET https://data-api.polymarket.com/holders{query}
|
|
58
|
+
// Docs: https://docs.polymarket.com/api-reference/data/get-holders
|
|
59
|
+
async function dataHolders(params, signal) {
|
|
60
|
+
const usp = new URLSearchParams();
|
|
61
|
+
if (Array.isArray(params.market)) {
|
|
62
|
+
for (const m of params.market)
|
|
63
|
+
usp.append("market", m);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
usp.set("market", params.market);
|
|
67
|
+
}
|
|
68
|
+
if (params.limit !== undefined)
|
|
69
|
+
usp.set("limit", String(params.limit));
|
|
70
|
+
const query = `?${usp.toString()}`;
|
|
71
|
+
return makeGetRequest(`${baseURL}/holders${query}`, signal);
|
|
72
|
+
}
|
|
73
|
+
// sig-ok: hostname `data-api` shortened to `data` for caller ergonomics
|
|
74
|
+
// GET https://data-api.polymarket.com/activity{query}
|
|
75
|
+
// Docs: https://docs.polymarket.com/api-reference/data/get-activity
|
|
76
|
+
async function dataActivity(params, signal) {
|
|
77
|
+
const usp = new URLSearchParams();
|
|
78
|
+
usp.set("user", params.user);
|
|
79
|
+
if (params.limit !== undefined)
|
|
80
|
+
usp.set("limit", String(params.limit));
|
|
81
|
+
if (params.offset !== undefined)
|
|
82
|
+
usp.set("offset", String(params.offset));
|
|
83
|
+
if (params.market !== undefined) {
|
|
84
|
+
if (Array.isArray(params.market)) {
|
|
85
|
+
for (const m of params.market)
|
|
86
|
+
usp.append("market", m);
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
usp.set("market", params.market);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
if (params.type !== undefined) {
|
|
93
|
+
if (Array.isArray(params.type)) {
|
|
94
|
+
for (const t of params.type)
|
|
95
|
+
usp.append("type", t);
|
|
96
|
+
}
|
|
97
|
+
else {
|
|
98
|
+
usp.set("type", params.type);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
if (params.start !== undefined)
|
|
102
|
+
usp.set("start", String(params.start));
|
|
103
|
+
if (params.end !== undefined)
|
|
104
|
+
usp.set("end", String(params.end));
|
|
105
|
+
if (params.side !== undefined)
|
|
106
|
+
usp.set("side", params.side);
|
|
107
|
+
if (params.sortBy !== undefined)
|
|
108
|
+
usp.set("sortBy", params.sortBy);
|
|
109
|
+
if (params.sortDirection !== undefined)
|
|
110
|
+
usp.set("sortDirection", params.sortDirection);
|
|
111
|
+
const query = `?${usp.toString()}`;
|
|
112
|
+
return makeGetRequest(`${baseURL}/activity${query}`, signal);
|
|
113
|
+
}
|
|
114
|
+
// sig-ok: hostname `data-api` shortened to `data` for caller ergonomics
|
|
115
|
+
// GET https://data-api.polymarket.com/trades{query}
|
|
116
|
+
// Docs: https://docs.polymarket.com/api-reference/data/get-trades
|
|
117
|
+
async function dataTrades(params, signal) {
|
|
118
|
+
const usp = new URLSearchParams();
|
|
119
|
+
if (params.user !== undefined)
|
|
120
|
+
usp.set("user", params.user);
|
|
121
|
+
if (params.market !== undefined) {
|
|
122
|
+
if (Array.isArray(params.market)) {
|
|
123
|
+
for (const m of params.market)
|
|
124
|
+
usp.append("market", m);
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
usp.set("market", params.market);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
if (params.limit !== undefined)
|
|
131
|
+
usp.set("limit", String(params.limit));
|
|
132
|
+
if (params.offset !== undefined)
|
|
133
|
+
usp.set("offset", String(params.offset));
|
|
134
|
+
if (params.takerOnly !== undefined)
|
|
135
|
+
usp.set("takerOnly", String(params.takerOnly));
|
|
136
|
+
if (params.filterType !== undefined)
|
|
137
|
+
usp.set("filterType", params.filterType);
|
|
138
|
+
const query = usp.toString().length > 0 ? `?${usp.toString()}` : "";
|
|
139
|
+
return makeGetRequest(`${baseURL}/trades${query}`, signal);
|
|
140
|
+
}
|
|
141
|
+
// sig-ok: hostname `data-api` shortened to `data` for caller ergonomics
|
|
142
|
+
// GET https://data-api.polymarket.com/oi{query}
|
|
143
|
+
// Docs: https://docs.polymarket.com/api-reference/data/get-open-interest
|
|
144
|
+
async function dataOi(params, signal) {
|
|
145
|
+
const usp = new URLSearchParams();
|
|
146
|
+
if (params?.market !== undefined) {
|
|
147
|
+
if (Array.isArray(params.market)) {
|
|
148
|
+
for (const m of params.market)
|
|
149
|
+
usp.append("market", m);
|
|
150
|
+
}
|
|
151
|
+
else {
|
|
152
|
+
usp.set("market", params.market);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
const query = usp.toString().length > 0 ? `?${usp.toString()}` : "";
|
|
156
|
+
return makeGetRequest(`${baseURL}/oi${query}`, signal);
|
|
157
|
+
}
|
|
158
|
+
// sig-ok: hostname `data-api` shortened to `data` for caller ergonomics
|
|
159
|
+
// GET https://data-api.polymarket.com/live-volume{query}
|
|
160
|
+
// Docs: https://docs.polymarket.com/api-reference/data/get-live-volume
|
|
161
|
+
async function dataLiveVolume(params, signal) {
|
|
162
|
+
const query = `?id=${encodeURIComponent(String(params.id))}`;
|
|
163
|
+
return makeGetRequest(`${baseURL}/live-volume${query}`, signal);
|
|
164
|
+
}
|
|
165
|
+
return {
|
|
166
|
+
get: {
|
|
167
|
+
data: {
|
|
168
|
+
positions: dataPositions,
|
|
169
|
+
value: dataValue,
|
|
170
|
+
holders: dataHolders,
|
|
171
|
+
activity: dataActivity,
|
|
172
|
+
trades: dataTrades,
|
|
173
|
+
oi: dataOi,
|
|
174
|
+
liveVolume: dataLiveVolume,
|
|
175
|
+
},
|
|
176
|
+
},
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
//# sourceMappingURL=data.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../src/data.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../../src/example.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,QAAA,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAiE7C,CAAC;AAEF,eAAe,QAAQ,CAAC;AAOxB,wBAAgB,cAAc,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,CA6ChD"}
|