{"_id":"@deserialize/ultra-agg-sdk","name":"@deserialize/ultra-agg-sdk","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@deserialize/ultra-agg-sdk","version":"0.1.0","description":"TypeScript client for the Deserialize Ultra Aggregator: one API for DeFi data and actions across swaps, memecoins, perps, prediction markets and RWAs on Solana and EVM. Includes an executor for the steps[] action contract.","license":"MIT","homepage":"https://ultra-api.deserialize.xyz","repository":{"type":"git","url":"git+https://github.com/Bravark/deserialize-ultra.git","directory":"packages/sdk"},"bugs":{"email":"mailto:sales@deserialize.xyz"},"keywords":["defi","solana","ethereum","swap","aggregator","perps","rwa","web3","non-custodial","deserialize"],"type":"module","sideEffects":false,"main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"publishConfig":{"access":"public"},"scripts":{"build":"tsup","typecheck":"tsc -p tsconfig.json --noEmit","test":"vitest run --passWithNoTests","prepublishOnly":"yarn build"},"devDependencies":{"@ultra-agg/core":"workspace:*","tsup":"^8.3.5","typescript":"^5.8.3","vitest":"^3.1.1"},"_id":"@deserialize/ultra-agg-sdk@0.1.0","gitHead":"bb735f01c2e0f7cc080658734730e9f9044984ff","_nodeVersion":"22.13.1","_npmVersion":"10.9.2","dist":{"integrity":"sha512-DdxRJKvk617POVvcYJ8aEC89i50/qHzfeY82GAS/8CeAyCNU8uWy4EPVC7f0pnNplWYqiqgUz1ydXOafIY7GwQ==","shasum":"fb38d5c1d97e546061f0ad87d9522f945788f454","tarball":"https://registry.npmjs.org/@deserialize/ultra-agg-sdk/-/ultra-agg-sdk-0.1.0.tgz","fileCount":6,"unpackedSize":40957,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDMUPJNAe25qXmrANsI2JSp5/ze/IV/8DdI+uANseoS0AIhAMI1S0UsnkN1NlBCvlhsjHym3ohcHnXoYXh3pUTv21Ib"}]},"_npmUser":{"name":"0xazach","email":"sonexzach@gmail.com"},"directories":{},"maintainers":[{"name":"thaiwoydev","email":"abesintaiwo409@gmail.com"},{"name":"temitayo_","email":"olawanletemitayo@gmail.com"},{"name":"0xazach","email":"sonexzach@gmail.com"},{"name":"timmydev56","email":"timilehinolowu46@gmail.com"},{"name":"carniel","email":"carlnmugha1@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ultra-agg-sdk_0.1.0_1784678196087_0.03991655558864249"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-21T23:56:35.919Z","0.1.0":"2026-07-21T23:56:36.227Z","modified":"2026-07-21T23:56:36.557Z"},"maintainers":[{"name":"thaiwoydev","email":"abesintaiwo409@gmail.com"},{"name":"temitayo_","email":"olawanletemitayo@gmail.com"},{"name":"0xazach","email":"sonexzach@gmail.com"},{"name":"timmydev56","email":"timilehinolowu46@gmail.com"},{"name":"carniel","email":"carlnmugha1@gmail.com"}],"description":"TypeScript client for the Deserialize Ultra Aggregator: one API for DeFi data and actions across swaps, memecoins, perps, prediction markets and RWAs on Solana and EVM. Includes an executor for the steps[] action contract.","homepage":"https://ultra-api.deserialize.xyz","keywords":["defi","solana","ethereum","swap","aggregator","perps","rwa","web3","non-custodial","deserialize"],"repository":{"type":"git","url":"git+https://github.com/Bravark/deserialize-ultra.git","directory":"packages/sdk"},"bugs":{"email":"mailto:sales@deserialize.xyz"},"license":"MIT","readme":"# @deserialize/ultra-agg-sdk\n\nTypeScript client for the **[Deserialize Ultra Aggregator](https://ultra-api.deserialize.xyz)** — one API for DeFi **data** and **actions** across swaps, memecoins, perps, prediction markets and RWAs on Solana and EVM (Ethereum, Base, Arbitrum, BSC, Polygon).\n\nThe API is **read + build only**: it never holds funds, never signs, and never submits. Every action returns an ordered `steps[]` for the user's wallet to sign and send. This SDK wraps the REST API and includes an executor that walks `steps[]` against a wallet you provide.\n\nThe REST API is complete on its own and needs no key ([10 req/s free](https://ultra-api.deserialize.xyz/llms.txt)); this package is a convenience layer.\n\n## Install\n\n```sh\nnpm i @deserialize/ultra-agg-sdk\n```\n\n## Quote and read\n\n```ts\nimport { UltraAggClient } from \"@deserialize/ultra-agg-sdk\";\n\nconst ultra = new UltraAggClient();\n// or: new UltraAggClient({ baseUrl, apiKey })\n\nconst quote = await ultra.swapQuote({\n  chain: \"solana\",\n  inputToken: \"So11111111111111111111111111111111111111112\",\n  outputToken: \"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v\",\n  amountIn: \"1000000000\", // base units (1 SOL)\n});\nconsole.log(quote.best.provider, quote.best.output.amount);\n```\n\n## Build an action and execute it\n\n`swapBuild` returns an `ActionResponse` whose `steps[]` your wallet signs. You\nsupply a `StepWallet`; the SDK never sees a key.\n\n```ts\nimport { UltraAggClient, executeSteps, type StepWallet } from \"@deserialize/ultra-agg-sdk\";\n\nconst ultra = new UltraAggClient();\n\nconst action = await ultra.swapBuild({\n  chain: \"base\",\n  inputToken: WETH,\n  outputToken: USDC,\n  amountIn: \"1000000000000000000\",\n  taker: wallet.address,\n});\n\nawait executeSteps(action, wallet as StepWallet);\n```\n\nA `StepWallet` implements the signing/broadcasting your app already does:\n\n```ts\ninterface StepWallet {\n  address: string;\n  sendEvmTransaction?: (tx) => Promise<{ txHash: string }>;\n  sendSolanaTransaction?: (tx) => Promise<{ txHash: string }>;\n  waitForTransaction?: (chain, txHash) => Promise<void>;\n  signTypedData: (chain, payload) => Promise<string>;\n}\n```\n\n## Live streams\n\n```ts\nimport { UltraAggStream } from \"@deserialize/ultra-agg-sdk\";\n\nconst stream = new UltraAggStream(\"https://ultra-api.deserialize.xyz\", {\n  onEvent: (msg) => console.log(msg.stream, msg.data),\n});\nstream.connect();\nstream.subscribe(\"prices\", { chain: \"solana\" });\n```\n\n## The steps[] contract\n\nFull documentation of the action contract, the three step kinds, the template\nlanguage and worked examples: <https://ultra-api.deserialize.xyz/llms.txt>\n\n## License\n\nMIT\n","readmeFilename":"README.md","_rev":"1-4b05690ab5f38a1e27358eb5c9a07909"}