@limitless-exchange/sdk 1.0.3 → 1.0.4
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/README.md +42 -24
- package/dist/index.d.mts +433 -50
- package/dist/index.d.ts +433 -50
- package/dist/index.js +544 -33
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +533 -33
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# Limitless Exchange TypeScript SDK
|
|
2
2
|
|
|
3
|
-
**v1.0.
|
|
3
|
+
**v1.0.4** | Production-Ready | Type-Safe | Fully Documented
|
|
4
4
|
|
|
5
5
|
A TypeScript SDK for interacting with the Limitless Exchange platform, providing type-safe access to CLOB and NegRisk prediction markets.
|
|
6
6
|
|
|
7
|
-
> 🎉 **v1.0.
|
|
7
|
+
> 🎉 **v1.0.4 Release**: Adds IEEE-aware numeric parsing improvements for `createOrder()` response payload fields (`makerAmount`, `takerAmount`, `price`, `salt`) when API returns numeric strings. See [Changelog](#changelog) for details.
|
|
8
8
|
|
|
9
9
|
## ⚠️ Disclaimer
|
|
10
10
|
|
|
@@ -41,6 +41,7 @@ For production use, we strongly recommend:
|
|
|
41
41
|
- ✅ **NegRisk Markets**: Full support for group markets with multiple outcomes
|
|
42
42
|
- ✅ **Error Handling & Retry**: Automatic retry logic for rate limits and transient failures
|
|
43
43
|
- ✅ **Type Safety**: Full TypeScript support with comprehensive type definitions
|
|
44
|
+
- ✅ **IEEE-Safe Order Payload Parsing**: `createOrder()` handles `makerAmount`, `takerAmount`, `price`, and `salt` returned as JSON strings
|
|
44
45
|
- ✅ **TSDoc Documentation**: Complete API documentation with examples
|
|
45
46
|
- ✅ **WebSocket**: Real-time price and position updates with API key auth
|
|
46
47
|
|
|
@@ -89,7 +90,7 @@ const page2 = await marketFetcher.getActiveMarkets({
|
|
|
89
90
|
});
|
|
90
91
|
```
|
|
91
92
|
|
|
92
|
-
See [examples/project-integration/src/active-markets.ts](
|
|
93
|
+
See [examples/project-integration/src/active-markets.ts](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/examples/project-integration/src/active-markets.ts) for more examples.
|
|
93
94
|
|
|
94
95
|
### Market Pages & Navigation (No Authentication Required)
|
|
95
96
|
|
|
@@ -120,7 +121,7 @@ if ('pagination' in markets) {
|
|
|
120
121
|
}
|
|
121
122
|
```
|
|
122
123
|
|
|
123
|
-
Detailed guide: [docs/market-pages/README.md](
|
|
124
|
+
Detailed guide: [docs/market-pages/README.md](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/limitless-exchange-sdk/docs/market-pages/README.md)
|
|
124
125
|
|
|
125
126
|
### Authentication
|
|
126
127
|
|
|
@@ -157,6 +158,21 @@ LIMITLESS_API_KEY=sk_live_your_api_key_here
|
|
|
157
158
|
PRIVATE_KEY=0x...
|
|
158
159
|
```
|
|
159
160
|
|
|
161
|
+
### Partner API Token v3 / HMAC Usage
|
|
162
|
+
|
|
163
|
+
The SDK also supports partner-scoped HMAC credentials for api-token v3 workflows such as token self-service, partner-account creation, and delegated trading.
|
|
164
|
+
|
|
165
|
+
Use HMAC credentials only in a backend or BFF service. Do not expose partner HMAC secrets in browser bundles, frontend environment variables, or client-side storage.
|
|
166
|
+
|
|
167
|
+
Recommended setup:
|
|
168
|
+
|
|
169
|
+
- Keep public market and market-page reads in the browser.
|
|
170
|
+
- Store the real HMAC `tokenId` / `secret` on your backend.
|
|
171
|
+
- Use this SDK server-side to sign partner-authenticated requests.
|
|
172
|
+
- Expose only your own app-specific endpoints to the frontend.
|
|
173
|
+
|
|
174
|
+
See [`docs/code-samples/api-key-v3/`](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/tree/main/limitless-exchange-sdk/docs/code-samples/api-key-v3) for the partner HMAC examples.
|
|
175
|
+
|
|
160
176
|
### Token Approvals
|
|
161
177
|
|
|
162
178
|
**Important**: Before placing orders, you must approve tokens for the exchange contracts. This is a **one-time setup** per wallet.
|
|
@@ -220,7 +236,7 @@ if (market.negRiskRequestId) {
|
|
|
220
236
|
}
|
|
221
237
|
```
|
|
222
238
|
|
|
223
|
-
For complete examples, see [docs/code-samples/setup-approvals.ts](
|
|
239
|
+
For complete examples, see [docs/code-samples/setup-approvals.ts](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/limitless-exchange-sdk/docs/code-samples/setup-approvals.ts).
|
|
224
240
|
|
|
225
241
|
### Trading on NegRisk Markets
|
|
226
242
|
|
|
@@ -256,7 +272,7 @@ const order = await orderClient.createOrder({
|
|
|
256
272
|
|
|
257
273
|
**Important**: Always use the **submarket slug** for NegRisk orders, not the group market slug!
|
|
258
274
|
|
|
259
|
-
For more details, see the [NegRisk Trading Guide](
|
|
275
|
+
For more details, see the [NegRisk Trading Guide](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/limitless-exchange-sdk/docs/orders/README.md#negrisk-markets).
|
|
260
276
|
|
|
261
277
|
### FOK Orders (Fill-or-Kill Market Orders)
|
|
262
278
|
|
|
@@ -303,7 +319,7 @@ if (buyOrder.makerMatches && buyOrder.makerMatches.length > 0) {
|
|
|
303
319
|
- All-or-nothing execution (no partial fills)
|
|
304
320
|
- Best for immediate execution at market price
|
|
305
321
|
|
|
306
|
-
For complete examples, see [docs/code-samples/clob-fok-order.ts](
|
|
322
|
+
For complete examples, see [docs/code-samples/clob-fok-order.ts](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/limitless-exchange-sdk/docs/code-samples/clob-fok-order.ts).
|
|
307
323
|
|
|
308
324
|
### Error Handling & Retry
|
|
309
325
|
|
|
@@ -343,7 +359,7 @@ class TradingService {
|
|
|
343
359
|
- Callback hooks for monitoring retry attempts
|
|
344
360
|
- Three approaches: decorator, wrapper function, or global client wrapper
|
|
345
361
|
|
|
346
|
-
For detailed documentation, see the [Error Handling & Retry Guide](
|
|
362
|
+
For detailed documentation, see the [Error Handling & Retry Guide](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/limitless-exchange-sdk/docs/api/README.md).
|
|
347
363
|
|
|
348
364
|
## API Documentation
|
|
349
365
|
|
|
@@ -370,20 +386,20 @@ await httpClient.post('/endpoint', { data });
|
|
|
370
386
|
|
|
371
387
|
## Documentation
|
|
372
388
|
|
|
373
|
-
For detailed documentation, see the [docs](
|
|
389
|
+
For detailed documentation, see the [docs](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/tree/main/limitless-exchange-sdk/docs) directory:
|
|
374
390
|
|
|
375
|
-
- **[Complete Documentation](
|
|
376
|
-
- **[Authentication Guide](
|
|
377
|
-
- **[Trading & Orders](
|
|
378
|
-
- **[Market Data](
|
|
379
|
-
- **[Portfolio & Positions](
|
|
380
|
-
- **[WebSocket Streaming](
|
|
381
|
-
- **[Error Handling & Retry](
|
|
382
|
-
- **[Logging](
|
|
391
|
+
- **[Complete Documentation](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/limitless-exchange-sdk/docs/README.md)** - Full SDK documentation
|
|
392
|
+
- **[Authentication Guide](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/limitless-exchange-sdk/docs/api/README.md)** - API key authentication and HTTP client
|
|
393
|
+
- **[Trading & Orders](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/limitless-exchange-sdk/docs/orders/README.md)** - Order creation, management, and NegRisk markets
|
|
394
|
+
- **[Market Data](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/limitless-exchange-sdk/docs/markets/README.md)** - Market discovery and orderbook access
|
|
395
|
+
- **[Portfolio & Positions](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/limitless-exchange-sdk/docs/portfolio/README.md)** - Position tracking and user history
|
|
396
|
+
- **[WebSocket Streaming](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/limitless-exchange-sdk/docs/websocket/README.md)** - Real-time data updates
|
|
397
|
+
- **[Error Handling & Retry](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/limitless-exchange-sdk/docs/api/README.md)** - API error handling and retry mechanisms
|
|
398
|
+
- **[Logging](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/limitless-exchange-sdk/docs/logging/LOGGING.md)** - Logging configuration
|
|
383
399
|
|
|
384
400
|
## Code Examples
|
|
385
401
|
|
|
386
|
-
Production-ready code samples are available in [docs/code-samples](
|
|
402
|
+
Production-ready code samples are available in [docs/code-samples](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/tree/main/limitless-exchange-sdk/docs/code-samples):
|
|
387
403
|
|
|
388
404
|
### Authentication Examples
|
|
389
405
|
|
|
@@ -482,11 +498,11 @@ docs/
|
|
|
482
498
|
|
|
483
499
|
## Changelog
|
|
484
500
|
|
|
485
|
-
### v1.0.
|
|
501
|
+
### v1.0.4
|
|
486
502
|
|
|
487
503
|
**Release Date**: March 2026
|
|
488
504
|
|
|
489
|
-
Latest release with
|
|
505
|
+
Latest release with IEEE-safe numeric parsing improvements focused on `createOrder()` response payload fields.
|
|
490
506
|
|
|
491
507
|
#### Highlights
|
|
492
508
|
|
|
@@ -498,27 +514,29 @@ Latest release with navigation-driven market discovery APIs and improved respons
|
|
|
498
514
|
- 🌐 **Real-Time Updates**: WebSocket support for orderbook and position streaming
|
|
499
515
|
- 🎯 **NegRisk Support**: Full support for group markets with multiple outcomes
|
|
500
516
|
- 🧭 **Market Pages API**: Navigation tree, by-path resolver with 301 handling, page-scoped markets, property keys
|
|
517
|
+
- 🔢 **IEEE-Aware CreateOrder Parsing**: Normalizes `makerAmount`, `takerAmount`, `price`, and `salt` when returned as JSON strings
|
|
501
518
|
|
|
502
519
|
#### Core Features
|
|
503
520
|
|
|
504
521
|
- **Authentication**: API key authentication, EIP-712 signing, EOA support
|
|
505
522
|
- **Market Data**: Active markets with sorting, orderbook access, venue caching
|
|
506
523
|
- **Market Pages & Navigation**: `/navigation`, `/market-pages/by-path`, `/market-pages/:id/markets`, `/property-keys`
|
|
507
|
-
- **Order Management**: GTC and FOK orders, tick alignment, automatic signing
|
|
524
|
+
- **Order Management**: GTC and FOK orders, tick alignment, automatic signing, IEEE-safe create-order payload parsing
|
|
508
525
|
- **Portfolio**: Position tracking, user history
|
|
509
526
|
- **WebSocket**: Real-time orderbook, price updates, event streaming
|
|
510
527
|
- **Error Handling**: Decorator and wrapper retry patterns, configurable strategies
|
|
511
528
|
- **Token Approvals**: Complete setup script, CLOB and NegRisk workflows
|
|
512
529
|
|
|
513
|
-
#### Documentation Enhancements (v1.0.
|
|
530
|
+
#### Documentation Enhancements (v1.0.4)
|
|
514
531
|
|
|
532
|
+
- Added release notes for IEEE-safe numeric parsing adjustments
|
|
515
533
|
- Added FOK order examples to README with clear `makerAmount` semantics
|
|
516
534
|
- Created comprehensive CHANGELOG.md following Keep a Changelog format
|
|
517
535
|
- All 17 code samples include step-by-step comments and error handling
|
|
518
536
|
- Detailed guides for authentication, trading, markets, portfolio, and WebSocket
|
|
519
537
|
- Added market-pages guide and README quick-start for navigation-driven discovery
|
|
520
538
|
|
|
521
|
-
For complete release notes, see [CHANGELOG.md](
|
|
539
|
+
For complete release notes, see [CHANGELOG.md](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/limitless-exchange-sdk/CHANGELOG.md).
|
|
522
540
|
|
|
523
541
|
---
|
|
524
542
|
|
|
@@ -532,4 +550,4 @@ For complete release notes, see [CHANGELOG.md](./CHANGELOG.md).
|
|
|
532
550
|
|
|
533
551
|
## License
|
|
534
552
|
|
|
535
|
-
MIT - See [LICENSE](
|
|
553
|
+
MIT - See [LICENSE](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/limitless-exchange-sdk/LICENSE) file for details
|