@compass-labs/api-sdk 2.2.46 → 2.2.47-rc.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.
Files changed (70) hide show
  1. package/README.md +4 -2
  2. package/codeSamples_typescript.yaml +7 -1
  3. package/dist/commonjs/funcs/tokenizedAssetsTokenizedAssetsQuote.d.ts +35 -0
  4. package/dist/commonjs/funcs/tokenizedAssetsTokenizedAssetsQuote.d.ts.map +1 -0
  5. package/dist/commonjs/funcs/tokenizedAssetsTokenizedAssetsQuote.js +136 -0
  6. package/dist/commonjs/funcs/tokenizedAssetsTokenizedAssetsQuote.js.map +1 -0
  7. package/dist/commonjs/lib/config.d.ts +2 -2
  8. package/dist/commonjs/lib/config.js +2 -2
  9. package/dist/commonjs/lib/config.js.map +1 -1
  10. package/dist/commonjs/models/components/index.d.ts +2 -0
  11. package/dist/commonjs/models/components/index.d.ts.map +1 -1
  12. package/dist/commonjs/models/components/index.js +2 -0
  13. package/dist/commonjs/models/components/index.js.map +1 -1
  14. package/dist/commonjs/models/components/tokenizedassetsbuildorderrequest.d.ts +8 -2
  15. package/dist/commonjs/models/components/tokenizedassetsbuildorderrequest.d.ts.map +1 -1
  16. package/dist/commonjs/models/components/tokenizedassetsbuildorderrequest.js +2 -0
  17. package/dist/commonjs/models/components/tokenizedassetsbuildorderrequest.js.map +1 -1
  18. package/dist/commonjs/models/components/tokenizedassetsquoterequest.d.ts +47 -0
  19. package/dist/commonjs/models/components/tokenizedassetsquoterequest.d.ts.map +1 -0
  20. package/dist/commonjs/models/components/tokenizedassetsquoterequest.js +60 -0
  21. package/dist/commonjs/models/components/tokenizedassetsquoterequest.js.map +1 -0
  22. package/dist/commonjs/models/components/tokenizedassetsquoteresponse.d.ts +25 -0
  23. package/dist/commonjs/models/components/tokenizedassetsquoteresponse.d.ts.map +1 -0
  24. package/dist/commonjs/models/components/tokenizedassetsquoteresponse.js +59 -0
  25. package/dist/commonjs/models/components/tokenizedassetsquoteresponse.js.map +1 -0
  26. package/dist/commonjs/sdk/tokenizedassets.d.ts +24 -0
  27. package/dist/commonjs/sdk/tokenizedassets.d.ts.map +1 -1
  28. package/dist/commonjs/sdk/tokenizedassets.js +27 -0
  29. package/dist/commonjs/sdk/tokenizedassets.js.map +1 -1
  30. package/dist/esm/funcs/tokenizedAssetsTokenizedAssetsQuote.d.ts +35 -0
  31. package/dist/esm/funcs/tokenizedAssetsTokenizedAssetsQuote.d.ts.map +1 -0
  32. package/dist/esm/funcs/tokenizedAssetsTokenizedAssetsQuote.js +100 -0
  33. package/dist/esm/funcs/tokenizedAssetsTokenizedAssetsQuote.js.map +1 -0
  34. package/dist/esm/lib/config.d.ts +2 -2
  35. package/dist/esm/lib/config.js +2 -2
  36. package/dist/esm/lib/config.js.map +1 -1
  37. package/dist/esm/models/components/index.d.ts +2 -0
  38. package/dist/esm/models/components/index.d.ts.map +1 -1
  39. package/dist/esm/models/components/index.js +2 -0
  40. package/dist/esm/models/components/index.js.map +1 -1
  41. package/dist/esm/models/components/tokenizedassetsbuildorderrequest.d.ts +8 -2
  42. package/dist/esm/models/components/tokenizedassetsbuildorderrequest.d.ts.map +1 -1
  43. package/dist/esm/models/components/tokenizedassetsbuildorderrequest.js +2 -0
  44. package/dist/esm/models/components/tokenizedassetsbuildorderrequest.js.map +1 -1
  45. package/dist/esm/models/components/tokenizedassetsquoterequest.d.ts +47 -0
  46. package/dist/esm/models/components/tokenizedassetsquoterequest.d.ts.map +1 -0
  47. package/dist/esm/models/components/tokenizedassetsquoterequest.js +23 -0
  48. package/dist/esm/models/components/tokenizedassetsquoterequest.js.map +1 -0
  49. package/dist/esm/models/components/tokenizedassetsquoteresponse.d.ts +25 -0
  50. package/dist/esm/models/components/tokenizedassetsquoteresponse.d.ts.map +1 -0
  51. package/dist/esm/models/components/tokenizedassetsquoteresponse.js +22 -0
  52. package/dist/esm/models/components/tokenizedassetsquoteresponse.js.map +1 -0
  53. package/dist/esm/sdk/tokenizedassets.d.ts +24 -0
  54. package/dist/esm/sdk/tokenizedassets.d.ts.map +1 -1
  55. package/dist/esm/sdk/tokenizedassets.js +27 -0
  56. package/dist/esm/sdk/tokenizedassets.js.map +1 -1
  57. package/docs/models/components/quote.md +2 -2
  58. package/docs/models/components/tokenizedassetsbuildorderrequest.md +10 -8
  59. package/docs/models/components/tokenizedassetsbuildorderresponse.md +4 -4
  60. package/docs/models/components/tokenizedassetsquoterequest.md +33 -0
  61. package/docs/models/components/tokenizedassetsquoteresponse.md +36 -0
  62. package/docs/sdks/tokenizedassets/README.md +106 -2
  63. package/package.json +1 -1
  64. package/src/funcs/tokenizedAssetsTokenizedAssetsQuote.ts +197 -0
  65. package/src/lib/config.ts +2 -2
  66. package/src/models/components/index.ts +2 -0
  67. package/src/models/components/tokenizedassetsbuildorderrequest.ts +9 -2
  68. package/src/models/components/tokenizedassetsquoterequest.ts +78 -0
  69. package/src/models/components/tokenizedassetsquoteresponse.ts +54 -0
  70. package/src/sdk/tokenizedassets.ts +35 -0
@@ -4,13 +4,18 @@
4
4
 
5
5
  import * as z from "zod/v3";
6
6
  import { remap as remap$ } from "../../lib/primitives.js";
7
+ import { Chain, Chain$outboundSchema } from "./chain.js";
7
8
 
8
9
  /**
9
10
  * Build a buy or sell order for a tokenized equity.
10
11
  */
11
12
  export type TokenizedAssetsBuildOrderRequest = {
12
13
  /**
13
- * Token the sender is paying. Either an on-chain Ondo symbol (e.g. `TSLAon`), the literal `USDC`, or a 0x-prefixed Ethereum address.
14
+ * The chain to use.
15
+ */
16
+ chain: Chain;
17
+ /**
18
+ * Token the sender is paying. Either an on-chain symbol (e.g. `TSLAon`), the literal `USDC`, or a 0x-prefixed token address.
14
19
  */
15
20
  fromToken: string;
16
21
  /**
@@ -26,13 +31,14 @@ export type TokenizedAssetsBuildOrderRequest = {
26
31
  */
27
32
  owner: string;
28
33
  /**
29
- * Max acceptable slippage in basis points (1 bp = 0.01%). Range 1-1000 (0.01%-10%); defaults to 50 (0.5%).
34
+ * Max acceptable slippage in basis points (1 bp = 0.01%). Range 1-5000 (0.01%-50%); defaults to 50 (0.5%). The upper bound is intentionally wide so callers can clear the wide auction floors quoted for thinly-traded tokenized stocks.
30
35
  */
31
36
  slippageBps?: number | undefined;
32
37
  };
33
38
 
34
39
  /** @internal */
35
40
  export type TokenizedAssetsBuildOrderRequest$Outbound = {
41
+ chain: string;
36
42
  from_token: string;
37
43
  to_token: string;
38
44
  amount: string;
@@ -46,6 +52,7 @@ export const TokenizedAssetsBuildOrderRequest$outboundSchema: z.ZodType<
46
52
  z.ZodTypeDef,
47
53
  TokenizedAssetsBuildOrderRequest
48
54
  > = z.object({
55
+ chain: Chain$outboundSchema,
49
56
  fromToken: z.string(),
50
57
  toToken: z.string(),
51
58
  amount: z.string(),
@@ -0,0 +1,78 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { remap as remap$ } from "../../lib/primitives.js";
7
+ import { Chain, Chain$outboundSchema } from "./chain.js";
8
+
9
+ /**
10
+ * Preview a buy or sell quote for a tokenized equity.
11
+ *
12
+ * @remarks
13
+ *
14
+ * Read-only relative to Fusion: this hits ``/quote/receive`` only and does
15
+ * not consume a ``quote_id`` or commit an order. Use it to surface expected
16
+ * output, fees, and a thin-liquidity warning before the user confirms; pass
17
+ * the same body (plus ``slippage_bps``) to ``POST /tokenized_assets/order``
18
+ * when they do.
19
+ */
20
+ export type TokenizedAssetsQuoteRequest = {
21
+ /**
22
+ * The chain to use.
23
+ */
24
+ chain: Chain;
25
+ /**
26
+ * Token the sender is paying. Either an on-chain symbol (e.g. `TSLAon`), the literal `USDC`, or a 0x-prefixed token address.
27
+ */
28
+ fromToken: string;
29
+ /**
30
+ * Token the sender is receiving. Same accepted forms as `from_token`.
31
+ */
32
+ toToken: string;
33
+ /**
34
+ * Human-readable amount of `from_token` to swap (decimal string). Decimals are applied server-side.
35
+ */
36
+ amount: string;
37
+ /**
38
+ * Wallet that owns the Tokenized Assets Account. Used to verify the account is deployed before quoting; the account address is derived deterministically from this owner.
39
+ */
40
+ owner: string;
41
+ };
42
+
43
+ /** @internal */
44
+ export type TokenizedAssetsQuoteRequest$Outbound = {
45
+ chain: string;
46
+ from_token: string;
47
+ to_token: string;
48
+ amount: string;
49
+ owner: string;
50
+ };
51
+
52
+ /** @internal */
53
+ export const TokenizedAssetsQuoteRequest$outboundSchema: z.ZodType<
54
+ TokenizedAssetsQuoteRequest$Outbound,
55
+ z.ZodTypeDef,
56
+ TokenizedAssetsQuoteRequest
57
+ > = z.object({
58
+ chain: Chain$outboundSchema,
59
+ fromToken: z.string(),
60
+ toToken: z.string(),
61
+ amount: z.string(),
62
+ owner: z.string(),
63
+ }).transform((v) => {
64
+ return remap$(v, {
65
+ fromToken: "from_token",
66
+ toToken: "to_token",
67
+ });
68
+ });
69
+
70
+ export function tokenizedAssetsQuoteRequestToJSON(
71
+ tokenizedAssetsQuoteRequest: TokenizedAssetsQuoteRequest,
72
+ ): string {
73
+ return JSON.stringify(
74
+ TokenizedAssetsQuoteRequest$outboundSchema.parse(
75
+ tokenizedAssetsQuoteRequest,
76
+ ),
77
+ );
78
+ }
@@ -0,0 +1,54 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { remap as remap$ } from "../../lib/primitives.js";
7
+ import { safeParse } from "../../lib/schemas.js";
8
+ import { Result as SafeParseResult } from "../../types/fp.js";
9
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
10
+ import { Quote, Quote$inboundSchema } from "./quote.js";
11
+
12
+ /**
13
+ * Preview of input/output amounts plus auction-derived risk hints.
14
+ */
15
+ export type TokenizedAssetsQuoteResponse = {
16
+ /**
17
+ * Quote preview returned alongside an order.
18
+ */
19
+ quote: Quote;
20
+ /**
21
+ * Slippage tolerance in basis points (1 bp = 0.01%) the UI should echo back as `slippage_bps` on `POST /tokenized_assets/order`. Derived from Fusion's Dutch auction range (`auctionEndAmount` vs `toTokenAmount`) plus a small buffer; capped at 5000 bps.
22
+ */
23
+ recommendedSlippageBps: number;
24
+ /**
25
+ * Worst-case basis-points gap between the auction's end amount and the reference quote amount. Surfaces as a thin-liquidity warning before the user signs.
26
+ */
27
+ auctionRangeBps: number;
28
+ };
29
+
30
+ /** @internal */
31
+ export const TokenizedAssetsQuoteResponse$inboundSchema: z.ZodType<
32
+ TokenizedAssetsQuoteResponse,
33
+ z.ZodTypeDef,
34
+ unknown
35
+ > = z.object({
36
+ quote: Quote$inboundSchema,
37
+ recommended_slippage_bps: z.number().int(),
38
+ auction_range_bps: z.number().int(),
39
+ }).transform((v) => {
40
+ return remap$(v, {
41
+ "recommended_slippage_bps": "recommendedSlippageBps",
42
+ "auction_range_bps": "auctionRangeBps",
43
+ });
44
+ });
45
+
46
+ export function tokenizedAssetsQuoteResponseFromJSON(
47
+ jsonString: string,
48
+ ): SafeParseResult<TokenizedAssetsQuoteResponse, SDKValidationError> {
49
+ return safeParse(
50
+ jsonString,
51
+ (x) => TokenizedAssetsQuoteResponse$inboundSchema.parse(JSON.parse(x)),
52
+ `Failed to parse 'TokenizedAssetsQuoteResponse' from JSON`,
53
+ );
54
+ }
@@ -10,6 +10,7 @@ import { tokenizedAssetsTokenizedAssetsOrderOrderHash } from "../funcs/tokenized
10
10
  import { tokenizedAssetsTokenizedAssetsOrderOrderHashCancel } from "../funcs/tokenizedAssetsTokenizedAssetsOrderOrderHashCancel.js";
11
11
  import { tokenizedAssetsTokenizedAssetsOrderSubmit } from "../funcs/tokenizedAssetsTokenizedAssetsOrderSubmit.js";
12
12
  import { tokenizedAssetsTokenizedAssetsPositions } from "../funcs/tokenizedAssetsTokenizedAssetsPositions.js";
13
+ import { tokenizedAssetsTokenizedAssetsQuote } from "../funcs/tokenizedAssetsTokenizedAssetsQuote.js";
13
14
  import { ClientSDK, RequestOptions } from "../lib/sdks.js";
14
15
  import * as components from "../models/components/index.js";
15
16
  import * as operations from "../models/operations/index.js";
@@ -156,6 +157,40 @@ export class TokenizedAssets extends ClientSDK {
156
157
  ));
157
158
  }
158
159
 
160
+ /**
161
+ * Preview a buy/sell quote
162
+ *
163
+ * @remarks
164
+ * Preview the input/output amounts, fees, and slippage tolerance for an order.
165
+ *
166
+ * Read-only relative to Fusion: hits ``/quote/receive`` only and does not
167
+ * consume a ``quote_id`` or commit an order. Pair with `POST /order`:
168
+ * surface this preview to the user, and on confirm pass the body plus
169
+ * ``recommended_slippage_bps`` to `/order`.
170
+ *
171
+ * The response carries:
172
+ *
173
+ * - **`quote`** — input/output token amounts, fees, and an
174
+ * ``est_fill_seconds`` upper bound.
175
+ * - **`recommended_slippage_bps`** — system-derived slippage tolerance
176
+ * that clears Fusion's current auction floor; pass back as
177
+ * ``slippage_bps`` on `/order` so the build call validates against the
178
+ * same floor the user was shown.
179
+ * - **`auction_range_bps`** — worst-case bps gap between the auction
180
+ * end amount and the reference quote amount. Use to surface a
181
+ * thin-liquidity warning to the user.
182
+ */
183
+ async tokenizedAssetsQuote(
184
+ request: components.TokenizedAssetsQuoteRequest,
185
+ options?: RequestOptions,
186
+ ): Promise<components.TokenizedAssetsQuoteResponse> {
187
+ return unwrapAsync(tokenizedAssetsTokenizedAssetsQuote(
188
+ this,
189
+ request,
190
+ options,
191
+ ));
192
+ }
193
+
159
194
  /**
160
195
  * Build a buy/sell order
161
196
  *