{"_id":"@botoi/sdk","_rev":"10-2b3ec39a2dd8ae986e144dbfec34c3aa","name":"@botoi/sdk","dist-tags":{"latest":"0.6.0"},"versions":{"0.1.0":{"name":"@botoi/sdk","version":"0.1.0","keywords":["botoi","api","sdk","developer-tools","email-validation","ip-lookup","dns","json","hash","uuid","qr-code","og-image","typescript"],"author":{"name":"Gokul Saravanan"},"license":"MIT","_id":"@botoi/sdk@0.1.0","maintainers":[{"name":"xogz3","email":"saravanangokult@gmail.com"}],"homepage":"https://botoi.com/api","bugs":{"url":"https://github.com/gokulsaravanan/botoi/issues"},"dist":{"shasum":"741e79ed4c156a40656dd56a877510f8f103d793","tarball":"https://registry.npmjs.org/@botoi/sdk/-/sdk-0.1.0.tgz","fileCount":9,"integrity":"sha512-S2VMcM8dllKw3WZgJci/A7dEXvgOnm73vmd2/PD3JFLyRnbIzhbcn7bnX7PCNy6HUK+sFK8qtu9mqJHQ0tbnxQ==","signatures":[{"sig":"MEYCIQCwzAtQ4ltIYa42NcfZAMXUBm7yLFt68Z+Im7np1xPAdgIhAIennAoR9gs2AVaMFLJWO05+aW+mmA23OO5zfoF0cjz3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":420552},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"gitHead":"140f7a6ef46ee962c448d5fe5a2386b0a934ece9","scripts":{"attw":"attw --pack .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"xogz3","email":"saravanangokult@gmail.com"},"repository":{"url":"git+https://github.com/gokulsaravanan/botoi.git","type":"git","directory":"packages/sdk-typescript"},"_npmVersion":"11.4.2","description":"TypeScript SDK for the Botoi developer tools API. 150+ endpoints for lookup, text processing, developer utilities, image generation, security, and storage.","directories":{},"sideEffects":false,"_nodeVersion":"24.4.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","vitest":"^2.1.0","typescript":"^5.7.0","@arethetypeswrong/cli":"^0.17.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0_1774545663315_0.53557600064543","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@botoi/sdk","version":"0.1.1","keywords":["botoi","api","sdk","developer-tools","email-validation","ip-lookup","dns","json","hash","uuid","qr-code","og-image","typescript"],"author":{"name":"Gokul Saravanan"},"license":"MIT","_id":"@botoi/sdk@0.1.1","maintainers":[{"name":"xogz3","email":"saravanangokult@gmail.com"}],"homepage":"https://botoi.com/api","bugs":{"url":"https://github.com/gokulsaravanan/botoi/issues"},"dist":{"shasum":"e88fbe6fada3db469f4d7c9e00c383f682c265ef","tarball":"https://registry.npmjs.org/@botoi/sdk/-/sdk-0.1.1.tgz","fileCount":9,"integrity":"sha512-ENIqKRb2UqsgDZeYc/ITAGLyDMXoBensXWTCFRTbq09Dis3mjJGEzhW6R1Sun3I5wr7D6ouW2cto/aN5sZrEnQ==","signatures":[{"sig":"MEYCIQC5xZ9RQbB7FsPi4AHdfLoC48tdsu0AZSc00jtL1s5oQwIhALHMy7ux06an+TyplnozGK7QA52I2LjmYB4Gan2WchFY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":420582},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"gitHead":"60b876273b14527727463837050a17dff60f11fc","scripts":{"attw":"attw --pack .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"xogz3","email":"saravanangokult@gmail.com"},"repository":{"url":"git+https://github.com/gokulsaravanan/botoi.git","type":"git","directory":"packages/sdk-typescript"},"_npmVersion":"11.4.2","description":"TypeScript SDK for the Botoi developer tools API. 150+ endpoints for lookup, text processing, developer utilities, image generation, security, and storage.","directories":{},"sideEffects":false,"_nodeVersion":"24.4.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","vitest":"^2.1.0","typescript":"^5.7.0","@arethetypeswrong/cli":"^0.17.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.1_1774546598172_0.6460570608594993","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@botoi/sdk","version":"0.1.2","keywords":["botoi","api","sdk","developer-tools","email-validation","ip-lookup","dns","json","hash","uuid","qr-code","og-image","typescript"],"author":{"name":"Gokul Saravanan"},"license":"MIT","_id":"@botoi/sdk@0.1.2","maintainers":[{"name":"xogz3","email":"saravanangokult@gmail.com"}],"homepage":"https://botoi.com/api","dist":{"shasum":"14c023c3076bf2d665de917bab043badd6dec56e","tarball":"https://registry.npmjs.org/@botoi/sdk/-/sdk-0.1.2.tgz","fileCount":9,"integrity":"sha512-AEUwJumHIAiOPDgZJ57tOL2jGYI5Wy3U8o3BVQsWyYXY/jhx06GJ+Og374GfEqbbOpEVYPUqWGZ1CUtTJ/bpLg==","signatures":[{"sig":"MEQCIF3BQB/uomnS3TcXM8OMVaUpbxxZ30RdEvXMxkjM17LTAiBAN4uj7tSsyb5+d3OZEqoPj6yQIAHWZ/ejKZ+ommdXRg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":420388},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"gitHead":"d98db6d239f2f652aa333ebf18def638b802d7b5","scripts":{"attw":"attw --pack .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"xogz3","email":"saravanangokult@gmail.com"},"_npmVersion":"11.4.2","description":"TypeScript SDK for the Botoi developer tools API. 150+ endpoints for lookup, text processing, developer utilities, image generation, security, and storage.","directories":{},"sideEffects":false,"_nodeVersion":"24.4.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","vitest":"^2.1.0","typescript":"^5.7.0","@types/node":"^25.5.0","@arethetypeswrong/cli":"^0.17.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.2_1774547317808_0.21366285220950298","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@botoi/sdk","version":"0.1.3","keywords":["botoi","api","sdk","api-client","rest-api","typescript-sdk","developer-tools","utility-api","mcp","cloudflare-workers","email-validation","ip-lookup","ip-geolocation","dns","dns-lookup","currency-conversion","qr-code","json","hash","uuid","og-image","typescript"],"author":{"name":"Gokul Saravanan"},"license":"MIT","_id":"@botoi/sdk@0.1.3","maintainers":[{"name":"xogz3","email":"saravanangokult@gmail.com"}],"homepage":"https://botoi.com/api","dist":{"shasum":"7aa4e43e51c6e4371b2270f01b085857148f937b","tarball":"https://registry.npmjs.org/@botoi/sdk/-/sdk-0.1.3.tgz","fileCount":9,"integrity":"sha512-LFTuPlA/s+IR3xGny2xsQn8UYyCramt5kE6lG/dbbUUFt63LAy+vadWW/QWNFWWJuwcTt7AvxTTjcL36FZZt3g==","signatures":[{"sig":"MEYCIQCHX6bjWz1uJIoQbtQxYeo2jDlgO4WLcE+2JXUA7sOftgIhAIOo6w5pJTKLVmN7tRBWLiMAZvnovbzsNKYW8YubCkbP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":421112},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"gitHead":"5168dc2b50fd2354bb61058970db4a5b4534e841","scripts":{"attw":"attw --pack .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"xogz3","email":"saravanangokult@gmail.com"},"_npmVersion":"11.4.2","description":"TypeScript SDK for the Botoi developer tools API. 150+ endpoints for lookup, text processing, developer utilities, image generation, security, and storage.","directories":{},"sideEffects":false,"_nodeVersion":"24.4.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","vitest":"^2.1.0","typescript":"^5.7.0","@types/node":"^25.5.0","@arethetypeswrong/cli":"^0.17.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.3_1774849652672_0.011219487757013091","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@botoi/sdk","version":"0.1.4","keywords":["botoi","api","sdk","api-client","rest-api","typescript-sdk","developer-tools","utility-api","mcp","cloudflare-workers","email-validation","ip-lookup","ip-geolocation","dns","dns-lookup","currency-conversion","qr-code","json","hash","uuid","og-image","typescript"],"author":{"name":"Gokul Saravanan"},"license":"MIT","_id":"@botoi/sdk@0.1.4","maintainers":[{"name":"xogz3","email":"saravanangokult@gmail.com"}],"homepage":"https://botoi.com/api","bugs":{"url":"https://github.com/XogZ3/botoi/issues"},"dist":{"shasum":"fe5c6729edc81fa94f9c60f3da9a626280b270e6","tarball":"https://registry.npmjs.org/@botoi/sdk/-/sdk-0.1.4.tgz","fileCount":10,"integrity":"sha512-KXEQevdxnt4v0L/0Xflzf2BYl2Q1oO+gDsYbkkRz9LdGDSgN5xO1PPXikdu9XDcHg4MHTM71USZ4rSdQjBlYbQ==","signatures":[{"sig":"MEUCIQDKDW+qYy9AGKyayXKYZHGhEI2+Ah3WhbEyp0tK/i7W/wIgZFN+GtlrEUAbnHkmEKaMHiHxpD70JzyepLYzsQ+6Gq0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":423154},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"gitHead":"f5830db076e0e317161d946aaad19c4710988870","scripts":{"attw":"attw --pack .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"xogz3","email":"saravanangokult@gmail.com"},"repository":{"url":"git+https://github.com/XogZ3/botoi.git","type":"git","directory":"packages/sdk-typescript"},"_npmVersion":"11.4.2","description":"TypeScript SDK for the Botoi developer tools API. 150+ endpoints for lookup, text processing, developer utilities, image generation, security, and storage.","directories":{},"sideEffects":false,"_nodeVersion":"24.4.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","vitest":"^2.1.0","typescript":"^5.7.0","@types/node":"^25.5.0","@arethetypeswrong/cli":"^0.17.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.4_1775462252180_0.7422989542862644","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@botoi/sdk","version":"0.2.0","keywords":["botoi","api","sdk","api-client","rest-api","typescript-sdk","developer-tools","utility-api","mcp","cloudflare-workers","email-validation","ip-lookup","ip-geolocation","dns","dns-lookup","currency-conversion","qr-code","json","hash","uuid","og-image","typescript"],"author":{"name":"Gokul Saravanan"},"license":"SEE LICENSE IN LICENSE","_id":"@botoi/sdk@0.2.0","maintainers":[{"name":"xogz3","email":"saravanangokult@gmail.com"}],"homepage":"https://botoi.com/api","bugs":{"url":"https://github.com/XogZ3/botoi/issues"},"dist":{"shasum":"1bd27d66eaa034ee46b6a65b9c0f7d3b4b1ef8f3","tarball":"https://registry.npmjs.org/@botoi/sdk/-/sdk-0.2.0.tgz","fileCount":10,"integrity":"sha512-UfNhx+calHSKb9nlq0MTJtkOz8pH7//+srs/by1PJA54IJ7YLao0zEzY7n4FfTzmJn4p7xvmJnSn3IUJS9ZDtg==","signatures":[{"sig":"MEYCIQD07MB4Qth94iDwuQJWgInB8rOc4iodTWqSBHbwU5lC2gIhAIliEG7wFPH/3b6Hv7sFahDK6Pax39sp9GHuJOp1WxuU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":431201},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"gitHead":"831b084d6b120183af9bfd281a1387f8ef82b543","scripts":{"attw":"attw --pack .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"xogz3","email":"saravanangokult@gmail.com"},"repository":{"url":"git+https://github.com/XogZ3/botoi.git","type":"git","directory":"packages/sdk-typescript"},"_npmVersion":"11.4.2","description":"TypeScript SDK for the Botoi developer tools API. 150+ endpoints for lookup, text processing, developer utilities, image generation, security, and storage.","directories":{},"sideEffects":false,"_nodeVersion":"24.4.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","vitest":"^2.1.0","typescript":"^5.7.0","@types/node":"^25.5.0","@arethetypeswrong/cli":"^0.17.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.2.0_1776225190225_0.04866545764175778","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@botoi/sdk","version":"0.3.0","keywords":["botoi","api","sdk","api-client","rest-api","typescript-sdk","developer-tools","utility-api","mcp","cloudflare-workers","email-validation","ip-lookup","ip-geolocation","dns","dns-lookup","currency-conversion","qr-code","json","hash","uuid","og-image","typescript"],"author":{"name":"Gokul Saravanan"},"license":"SEE LICENSE IN LICENSE","_id":"@botoi/sdk@0.3.0","maintainers":[{"name":"xogz3","email":"saravanangokult@gmail.com"}],"homepage":"https://botoi.com/api","bugs":{"url":"https://github.com/XogZ3/botoi/issues"},"dist":{"shasum":"6b0f6c23829a912194c84c79890c7fd724de756c","tarball":"https://registry.npmjs.org/@botoi/sdk/-/sdk-0.3.0.tgz","fileCount":10,"integrity":"sha512-juiwEjmJFKpj3eC1QONHGskO87Pw0GcetrT4bxKRH66U2UN0mBju9jflfE+rc444r5JR+3wG13EB5zD7eMh69A==","signatures":[{"sig":"MEQCIDFVfeTUHz+d3rCFKHUHDyAh94DnXO3+MKCHzmf8hjAqAiAdW/f6VET0FMH4lUV4zdpVr83zDjUh4m06wQ3GvqwKUw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":450804},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"gitHead":"3a990f83c5730846fb313436c0771620adee5b61","scripts":{"attw":"attw --pack .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"xogz3","email":"saravanangokult@gmail.com"},"repository":{"url":"git+https://github.com/XogZ3/botoi.git","type":"git","directory":"packages/sdk-typescript"},"_npmVersion":"10.9.7","description":"TypeScript SDK for the Botoi developer tools API. 150+ endpoints for lookup, text processing, developer utilities, image generation, security, and storage.","directories":{},"sideEffects":false,"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","vitest":"^2.1.0","typescript":"^5.7.0","@types/node":"^25.5.0","@arethetypeswrong/cli":"^0.17.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.3.0_1776231503446_0.025847958555046624","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@botoi/sdk","version":"0.4.0","keywords":["botoi","api","sdk","api-client","rest-api","typescript-sdk","developer-tools","utility-api","mcp","cloudflare-workers","email-validation","ip-lookup","ip-geolocation","dns","dns-lookup","currency-conversion","qr-code","json","hash","uuid","og-image","typescript"],"author":{"name":"Gokul Saravanan"},"license":"SEE LICENSE IN LICENSE","_id":"@botoi/sdk@0.4.0","maintainers":[{"name":"xogz3","email":"saravanangokult@gmail.com"}],"homepage":"https://botoi.com/api","bugs":{"url":"https://github.com/XogZ3/botoi/issues"},"dist":{"shasum":"0638720c3bcc310f4c295c7037a6838c94765915","tarball":"https://registry.npmjs.org/@botoi/sdk/-/sdk-0.4.0.tgz","fileCount":10,"integrity":"sha512-aqbgjhIBGR3BQ7R2tvwA5PT8K/K/o+sr7Lt9dnnlKF5/HoX1W3zfz6bO+XdRWsYe1nI+xxd932RhdOrwl8garQ==","signatures":[{"sig":"MEQCIEIdi7GiHp/Vrnhy5iTpLxYqi0IWINS/Tss8XPeqxBEsAiA/H8fydt/eccgAVId7iT9XlahvNHOGY4ob674rUjVpWg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":603000},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"gitHead":"d307a492d023cd0d1013c2d1bddbca8974d3ad82","scripts":{"attw":"attw --pack .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"xogz3","email":"saravanangokult@gmail.com"},"repository":{"url":"git+https://github.com/XogZ3/botoi.git","type":"git","directory":"packages/sdk-typescript"},"_npmVersion":"10.9.7","description":"TypeScript SDK for the Botoi developer tools API. 150+ endpoints for lookup, text processing, developer utilities, image generation, security, and storage.","directories":{},"sideEffects":false,"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","vitest":"^2.1.0","typescript":"^5.7.0","@types/node":"^25.5.0","@arethetypeswrong/cli":"^0.17.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.4.0_1776236587696_0.8044318084154831","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@botoi/sdk","version":"0.5.0","keywords":["botoi","api","sdk","api-client","rest-api","typescript-sdk","developer-tools","utility-api","mcp","cloudflare-workers","email-validation","ip-lookup","ip-geolocation","dns","dns-lookup","currency-conversion","qr-code","json","hash","uuid","og-image","typescript"],"author":{"name":"Gokul Saravanan"},"license":"SEE LICENSE IN LICENSE","_id":"@botoi/sdk@0.5.0","maintainers":[{"name":"xogz3","email":"saravanangokult@gmail.com"}],"homepage":"https://botoi.com/api","bugs":{"url":"https://github.com/XogZ3/botoi/issues"},"dist":{"shasum":"4f3661e40c8eda0e65210727ea83ed5d3fa2ec9c","tarball":"https://registry.npmjs.org/@botoi/sdk/-/sdk-0.5.0.tgz","fileCount":10,"integrity":"sha512-G9b/Dc47jDIAuokNHCEnO+QtrasYlYjBCYDByZFT2kKneD+knDPZti6ctQEBiRza1/wtgum0be9g+y5jGTg5RA==","signatures":[{"sig":"MEUCIQCjVKOpLYZXvLbiAFfY07uY7QxQPJJ9TylXbmdyN5QZuwIgK+1xlh/ZYt2Yrwu7wRJOR8p4M/RD6IPLh7zarsqFzpk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":618173},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"gitHead":"ff684ca6feb9787b741677fee52c7c5b652db93c","scripts":{"attw":"attw --pack .","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"xogz3","email":"saravanangokult@gmail.com"},"repository":{"url":"git+https://github.com/XogZ3/botoi.git","type":"git","directory":"packages/sdk-typescript"},"_npmVersion":"10.9.7","description":"TypeScript SDK for the Botoi developer tools API. 150+ endpoints for lookup, text processing, developer utilities, image generation, security, and storage.","directories":{},"sideEffects":false,"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","vitest":"^2.1.0","typescript":"^5.7.0","@types/node":"^25.5.0","@arethetypeswrong/cli":"^0.17.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.5.0_1776239852920_0.22251299688487536","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@botoi/sdk","version":"0.6.0","description":"TypeScript SDK for the Botoi developer tools API. 196+ endpoints for lookup, text processing, developer utilities, image generation, security, and storage.","license":"SEE LICENSE IN LICENSE","author":{"name":"Gokul Saravanan"},"homepage":"https://botoi.com/api","repository":{"type":"git","url":"git+https://github.com/XogZ3/botoi.git","directory":"packages/sdk-typescript"},"bugs":{"url":"https://github.com/XogZ3/botoi/issues"},"keywords":["botoi","api","sdk","api-client","rest-api","typescript-sdk","developer-tools","utility-api","mcp","cloudflare-workers","email-validation","ip-lookup","ip-geolocation","dns","dns-lookup","currency-conversion","qr-code","json","hash","uuid","og-image","typescript"],"type":"module","main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"engines":{"node":">=20"},"sideEffects":false,"publishConfig":{"access":"public"},"scripts":{"build":"tsup","typecheck":"tsc --noEmit","test":"vitest run","test:watch":"vitest","prepublishOnly":"npm run build","attw":"attw --pack ."},"devDependencies":{"@arethetypeswrong/cli":"^0.17.0","@types/node":"^25.5.0","tsup":"^8.4.0","typescript":"^5.7.0","vitest":"^2.1.0"},"_id":"@botoi/sdk@0.6.0","gitHead":"dbcc25ab82480f2009d2e2bb27495f41d74c98b2","_nodeVersion":"22.22.2","_npmVersion":"10.9.7","dist":{"integrity":"sha512-fe53cx4ims2DxlV7pSLadStXXhcCXm9inkirFKXSx0+W5piitL82l57C/coBqOfNriP352K224n7HtZljqAIKA==","shasum":"0bf21106e156f60f3ec437aa7f04b6322494cbad","tarball":"https://registry.npmjs.org/@botoi/sdk/-/sdk-0.6.0.tgz","fileCount":10,"unpackedSize":654143,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCi9+Q5gW4nNFE/AgKjgk4HH9MIA8GEwqo/eV/ggoybRAIgekgeLnnLjlC9mGyWuo9cbx4AtW8tUNa1iy17ygxERu0="}]},"_npmUser":{"name":"xogz3","email":"saravanangokult@gmail.com"},"directories":{},"maintainers":[{"name":"xogz3","email":"saravanangokult@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk_0.6.0_1776255675286_0.5158833468789203"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-26T17:21:03.142Z","modified":"2026-04-15T12:21:15.918Z","0.1.0":"2026-03-26T17:21:03.471Z","0.1.1":"2026-03-26T17:36:38.313Z","0.1.2":"2026-03-26T17:48:37.959Z","0.1.3":"2026-03-30T05:47:32.823Z","0.1.4":"2026-04-06T07:57:32.340Z","0.2.0":"2026-04-15T03:53:10.370Z","0.3.0":"2026-04-15T05:38:23.591Z","0.4.0":"2026-04-15T07:03:07.865Z","0.5.0":"2026-04-15T07:57:33.095Z","0.6.0":"2026-04-15T12:21:15.488Z"},"bugs":{"url":"https://github.com/XogZ3/botoi/issues"},"author":{"name":"Gokul Saravanan"},"license":"SEE LICENSE IN LICENSE","homepage":"https://botoi.com/api","keywords":["botoi","api","sdk","api-client","rest-api","typescript-sdk","developer-tools","utility-api","mcp","cloudflare-workers","email-validation","ip-lookup","ip-geolocation","dns","dns-lookup","currency-conversion","qr-code","json","hash","uuid","og-image","typescript"],"repository":{"type":"git","url":"git+https://github.com/XogZ3/botoi.git","directory":"packages/sdk-typescript"},"description":"TypeScript SDK for the Botoi developer tools API. 196+ endpoints for lookup, text processing, developer utilities, image generation, security, and storage.","maintainers":[{"name":"xogz3","email":"saravanangokult@gmail.com"}],"readme":"# @botoi/sdk\n\n[![npm version](https://img.shields.io/npm/v/@botoi/sdk.svg)](https://www.npmjs.com/package/@botoi/sdk)\n[![npm downloads](https://img.shields.io/npm/dm/@botoi/sdk.svg)](https://www.npmjs.com/package/@botoi/sdk)\n[![CI](https://github.com/XogZ3/botoi/actions/workflows/sdk-ci.yml/badge.svg)](https://github.com/XogZ3/botoi/actions/workflows/sdk-ci.yml)\n[![TypeScript](https://img.shields.io/badge/TypeScript-5.7+-blue.svg)](https://www.typescriptlang.org/)\n[![zero dependencies](https://img.shields.io/badge/dependencies-0-brightgreen.svg)](https://www.npmjs.com/package/@botoi/sdk?activeTab=dependencies)\n[![License](https://img.shields.io/badge/License-Proprietary-blue.svg)](https://github.com/XogZ3/botoi/blob/main/packages/sdk-typescript/LICENSE)\n\nZero-dependency TypeScript SDK for the [Botoi API](https://botoi.com/api): 196+ endpoints for IP geolocation, DNS lookups, email validation, currency conversion, QR code generation, and more. Ships with full IntelliSense, auto-retry with exponential backoff, and typed error classes.\n\n```bash\nnpm install @botoi/sdk\n```\n\n```typescript\nimport Botoi from '@botoi/sdk';\nconst botoi = new Botoi({ apiKey: 'your-api-key' });\nconst ip = await botoi.ip.lookup();\nconsole.log(ip.country, ip.city); // \"US\" \"San Francisco\"\n```\n\n[Full API docs](https://botoi.com/api) | [Interactive playground](https://api.botoi.com/docs) | [Get a free API key](https://botoi.com/api#pricing)\n\n## Quick start\n\n```typescript\nimport Botoi from '@botoi/sdk';\n\nconst botoi = new Botoi({ apiKey: 'your-api-key' });\n\n// Validate an email\nconst email = await botoi.email.validate({ email: 'user@gmail.com' });\nconsole.log(email.is_valid); // true\n\n// Look up an IP\nconst ip = await botoi.ip.lookup();\nconsole.log(ip.country, ip.city); // \"US\" \"San Francisco\"\n\n// Generate a hash\nconst hash = await botoi.hash.create({ text: 'hello', algorithm: 'sha256' });\nconsole.log(hash.hash);\n```\n\n## Authentication\n\nPass your API key directly or set the `BOTOI_API_KEY` environment variable:\n\n```typescript\n// Option 1: Pass directly\nconst botoi = new Botoi({ apiKey: 'bot_xxx' });\n\n// Option 2: Environment variable\n// Set BOTOI_API_KEY=bot_xxx in your environment\nconst botoi = new Botoi();\n```\n\nAnonymous usage (5 req/min, no API key) also works:\n\n```typescript\nconst botoi = new Botoi();\nconst ip = await botoi.ip.lookup();\n```\n\nGet a free API key at [botoi.com/api](https://botoi.com/api).\n\n## Configuration\n\n```typescript\nconst botoi = new Botoi({\n  apiKey: 'bot_xxx',           // API key (or set BOTOI_API_KEY env var)\n  baseUrl: 'https://api.botoi.com', // Custom base URL\n  maxRetries: 3,               // Retry attempts for 429/5xx (default: 3, set 0 to disable)\n  timeout: 30_000,             // Request timeout in ms (default: 30s)\n});\n```\n\n## Error handling\n\n```typescript\nimport Botoi, { BotoiError, BotoiRateLimitError, BotoiAuthError } from '@botoi/sdk';\n\ntry {\n  const result = await botoi.email.validate({ email: 'test@example.com' });\n} catch (error) {\n  if (error instanceof BotoiRateLimitError) {\n    console.log(`Rate limited. Retry after ${error.retryAfter}s`);\n  } else if (error instanceof BotoiAuthError) {\n    console.log('Invalid API key');\n  } else if (error instanceof BotoiError) {\n    console.log(`API error: ${error.code} - ${error.message}`);\n    console.log(`Request ID: ${error.requestId}`);\n  }\n}\n```\n\n## Auto-retry\n\nThe SDK retries on rate limits (429) and server errors (5xx) with exponential backoff:\n\n- 429 responses: respects the `Retry-After` header\n- 5xx responses: exponential backoff with jitter (500ms, 1s, 2s)\n- 4xx responses (except 429): fail immediately (bad input is bad input)\n- Max 3 retries by default\n\nDisable retries:\n\n```typescript\nconst botoi = new Botoi({ maxRetries: 0 });\n```\n\n## Available namespaces\n\nEvery method maps 1:1 to an API endpoint. Type `botoi.` and autocomplete shows all namespaces.\n\n### Lookup\n\n| Namespace | Methods | Description |\n|-----------|---------|-------------|\n| `ip` | `lookup`, `inRange`, `reverse`, `bulk` | IP geolocation and range checks |\n| `ipWhois` | `lookup` | IP WHOIS ownership details |\n| `ipBlocklist` | `check` | Check IP against threat blocklists |\n| `vpnDetect` | `detect` | Detect VPN, proxy, and Tor exits |\n| `email` | `validate` | Email syntax and deliverability |\n| `emailMx` | `verify` | SMTP MX record verification |\n| `emailSecurity` | `report` | Combined SPF, DKIM, DMARC report |\n| `disposableEmail` | `check`, `list` | Flag disposable email domains |\n| `abuseEmail` | `check` | Abuse contact lookup for a domain |\n| `breach` | `check` | Check an email against known breaches |\n| `phone` | `validate` | Phone number validation and formatting |\n| `useragent` | `parse` | Parse user-agent strings |\n| `timezone` | `get`, `convert` | Timezone lookup and conversion |\n| `dns` | `lookup`, `batch`, `propagation`, `compare` | DNS record lookup and propagation |\n| `dnsSecurity` | `spfCheck`, `dmarcCheck`, `dkimCheck` | SPF, DMARC, DKIM validation |\n| `dnsMonitor` | `check` | Snapshot DNS for change tracking |\n| `whois` | `lookup` | Domain WHOIS lookup |\n| `domain` | `availability` | Domain availability check |\n| `domainSearch` | `search` | Find domains by keyword or TLD |\n| `ssl` | `check` | SSL/TLS certificate health check |\n| `sslCert` | `certificate` | Full certificate chain details |\n| `tlsFingerprint` | `fingerprint` | JA3/JA4 TLS client fingerprint |\n| `headers` | `inspect` | Inspect outgoing request headers |\n| `company` | `lookup` | Company info from domain |\n| `urlMetadata` | `extract` | Page title, description, OG tags |\n| `link` | `expand`, `check` | Expand short links, check safety |\n| `redirectTrace` | `trace` | Trace full HTTP redirect chain |\n| `mx` | `check` | MX record check for a domain |\n| `techDetect` | `detect` | Detect tech stack on a site |\n| `robots` | `parse` | Parse robots.txt rules |\n| `sitemap` | `parse` | Parse XML sitemaps |\n| `rss` | `parse` | Parse RSS and Atom feeds |\n| `socialPreview` | `extract` | Open Graph and Twitter card preview |\n| `site` | `check` | Uptime, TTFB, and response stats |\n| `uptime` | `check` | Single-shot uptime probe |\n| `accessibility` | `check` | WCAG accessibility audit |\n| `pageRank` | `check` | Open PageRank score for a domain |\n| `currency` | `convert`, `rates` | Currency conversion and FX rates |\n| `currencyList` | `list` | Supported currency list |\n| `crypto` | `price`, `search` | Crypto prices and coin search |\n| `country` | `lookup` | Country metadata by ISO code |\n| `address` | `validate`, `autocomplete` | Address validation and autocomplete |\n| `geo` | `distance`, `geocode`, `reverse` | Distance, geocoding, reverse geocoding |\n| `elevation` | `lookup` | Elevation for a coordinate |\n| `onWater` | `check` | Check if a coordinate is on water |\n| `weather` | `current` | Current weather for a location |\n| `airQuality` | `check` | Air quality index by location |\n| `carbon` | `estimate` | CO2 emissions for a web page |\n| `holidays` | `list` | Public holidays by country and year |\n| `asn` | `lookup` | ASN lookup and prefix info |\n| `bin` | `lookup` | BIN lookup for card issuer details |\n| `age` | `estimate` | Estimate age from a first name |\n| `gender` | `estimate` | Estimate gender from a first name |\n| `nationality` | `estimate` | Estimate nationality from a first name |\n\n### Text & data\n\n| Namespace | Methods | Description |\n|-----------|---------|-------------|\n| `base64` | `encode`, `decode` | Base64 encoding and decoding |\n| `json` | `format`, `minify`, `validate`, `diff` | Format, minify, validate, diff JSON |\n| `jsonExtra` | `flatten`, `unflatten` | Flatten and unflatten nested JSON |\n| `markdown` | `toHtml`, `toText` | Markdown to HTML and plain text |\n| `htmlToText` | `convert` | Strip HTML to readable text |\n| `htmlToMarkdown` | `convert` | Convert HTML to Markdown |\n| `htmlSanitize` | `sanitize` | Sanitize untrusted HTML |\n| `lorem` | `generate` | Lorem ipsum filler text |\n| `regex` | `test`, `replace` | Test and replace with regex |\n| `text` | `case`, `extractEmails`, `extractUrls`, `language`, `slugify`, `stats`, `truncate` | Case, slugify, stats, extraction |\n| `csv` | `toCsv`, `toJson` | Convert between CSV and JSON |\n| `xml` | `toJson` | Convert XML to JSON |\n| `emoji` | `search` | Search emojis by keyword |\n| `ical` | `parse`, `generate` | Parse and build iCalendar events |\n| `metatag` | `generate` | Generate HTML meta tags |\n| `number` | `format`, `spell` | Format and spell out numbers |\n| `date` | `parse` | Parse flexible date strings |\n\n### Developer utilities\n\n| Namespace | Methods | Description |\n|-----------|---------|-------------|\n| `hash` | `create`, `batch`, `hmac` | Cryptographic hashing (MD5, SHA, HMAC) |\n| `uuid` | `v4`, `v7`, `ulid`, `batch`, `validate` | UUID/ULID generation and validation |\n| `url` | `encode`, `decode`, `parse` | URL encoding and parsing |\n| `password` | `generate`, `strength` | Password generation and strength |\n| `cron` | `parse`, `next` | Parse cron and compute next runs |\n| `color` | `convert`, `palette` | Color conversion and palettes |\n| `jwt` | `generate`, `decode` | JWT generation and decoding |\n| `diff` | `text`, `json` | Text and JSON diffs |\n| `totp` | `generate`, `validate` | TOTP secrets and code validation |\n| `timestamp` | `convert` | Unix to ISO and back |\n| `semver` | `compare`, `validate` | Semver comparison and validation |\n| `yaml` | `toJson`, `toYaml` | YAML to JSON and back |\n| `math` | `evaluate` | Evaluate math expressions |\n| `units` | `convert` | Unit conversion |\n| `token` | `count`, `truncate` | LLM token counting and truncation |\n| `code` | `format`, `detect`, `highlight` | Format, detect, highlight source code |\n| `sql` | `format`, `parse` | SQL formatting and parsing |\n| `minify` | `js`, `css`, `html` | Minify JS, CSS, HTML |\n| `schema` | `validate`, `openapiValidate`, `jsonToTypescript`, `jsonToZod`, `jsonToJsonSchema` | Schema validation and conversion |\n| `mock` | `generate` | Generate mock data from a schema |\n| `random` | `data` | Random strings, numbers, and bytes |\n| `license` | `lookup` | SPDX open-source license lookup |\n| `npm` | `info` | npm package info and metadata |\n| `otp` | `generate` | Generate one-time passwords |\n\n### Image & media\n\n| Namespace | Methods | Description |\n|-----------|---------|-------------|\n| `og` | `generate` | Open Graph social images |\n| `qr` | `generate` | QR code generation |\n| `placeholder` | `generate` | Placeholder images |\n| `avatar` | `generate` | Generate initials avatars |\n| `favicon` | `get` | Fetch a site's favicon |\n| `barcode` | `generate` | Linear and 2D barcodes |\n| `pdf` | `fromHtml`, `fromMarkdown` | PDF from HTML or Markdown |\n| `screenshot` | `capture` | Website screenshot capture |\n| `image` | `metadata`, `resize`, `convert` | Image metadata, resize, format convert |\n| `svg` | `optimize` | SVG optimization |\n\n### Security & validation\n\n| Namespace | Methods | Description |\n|-----------|---------|-------------|\n| `validate` | `creditCard`, `iban`, `vat` | Credit card, IBAN, VAT validation |\n| `encrypt` | `encrypt`, `decrypt` | AES encryption and decryption |\n| `phishing` | `check` | Phishing URL detection |\n| `pii` | `detect` | Detect PII in text |\n| `security` | `grade` | Overall site security grade |\n\n### Storage & services\n\n| Namespace | Methods | Description |\n|-----------|---------|-------------|\n| `webhook` | `create`, `get`, `payloads`, `receive` | Webhook inbox for request capture |\n| `shortUrl` | `create`, `stats` | Short URL creation and analytics |\n| `paste` | `create`, `get` | Ephemeral code and text pastes |\n\nSee the [interactive playground](https://api.botoi.com/docs) for live request builders, and the [full endpoint catalog](https://botoi.com/api) for setup guides and examples.\n\n## Binary responses\n\nSome endpoints return binary data (images, PDFs). These return a raw `Response` object:\n\n```typescript\n// Generate a QR code\nconst response = await botoi.qr.generate({ text: 'https://botoi.com' });\nconst svg = await response.text();\n\n// Generate a PDF\nconst pdf = await botoi.pdf.fromHtml({ html: '<h1>Hello</h1>' });\nconst buffer = await pdf.arrayBuffer();\n```\n\n## Requirements\n\n- Node.js 20+\n- TypeScript 5.0+ (for type inference)\n\n## License\n\nProprietary - Copyright (c) 2026 Savi Business Management LLC. See [LICENSE](./LICENSE) for details.\n","readmeFilename":"README.md"}