@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 CHANGED
@@ -1,10 +1,10 @@
1
1
  # Limitless Exchange TypeScript SDK
2
2
 
3
- **v1.0.3** | Production-Ready | Type-Safe | Fully Documented
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.3 Release**: Adds market-pages navigation API support, redirect-aware path resolution, and expanded typing parity. See [Changelog](#changelog) for details.
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](./examples/project-integration/src/active-markets.ts) for more examples.
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](./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](./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](./docs/orders/README.md#negrisk-markets).
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](./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](./docs/api/README.md).
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](./docs) directory:
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](./docs/README.md)** - Full SDK documentation
376
- - **[Authentication Guide](./docs/api/README.md)** - API key authentication and HTTP client
377
- - **[Trading & Orders](./docs/orders/README.md)** - Order creation, management, and NegRisk markets
378
- - **[Market Data](./docs/markets/README.md)** - Market discovery and orderbook access
379
- - **[Portfolio & Positions](./docs/portfolio/README.md)** - Position tracking and user history
380
- - **[WebSocket Streaming](./docs/websocket/README.md)** - Real-time data updates
381
- - **[Error Handling & Retry](./docs/api/README.md)** - API error handling and retry mechanisms
382
- - **[Logging](./docs/logging/LOGGING.md)** - Logging configuration
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](./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.3
501
+ ### v1.0.4
486
502
 
487
503
  **Release Date**: March 2026
488
504
 
489
- Latest release with navigation-driven market discovery APIs and improved response/type parity.
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.3)
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](./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](./LICENSE) file for details
553
+ MIT - See [LICENSE](https://github.com/limitless-labs-group/limitless-exchange-ts-sdk/blob/main/limitless-exchange-sdk/LICENSE) file for details