{"_id":"@bluefin-ai/nfin","_rev":"2-1f4e4d66d0cb365574432cfe324be14f","name":"@bluefin-ai/nfin","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@bluefin-ai/nfin","version":"0.1.0","keywords":["finance","stocks","market-data","nasdaq","quotes","options","ipos","typescript","sdk"],"author":{"name":"nfin","email":"sam@bluedoor.sh"},"license":"MIT","_id":"@bluefin-ai/nfin@0.1.0","maintainers":[{"name":"bluedoor","email":"sam@bluedoor.sh"}],"homepage":"https://docs.nfin.dev/typescript-sdk","bugs":{"url":"https://github.com/bluefin-ai/fin-services/issues"},"dist":{"shasum":"0b9bd66d97fa56fc577157389a0a5884887ab2c6","tarball":"https://registry.npmjs.org/@bluefin-ai/nfin/-/nfin-0.1.0.tgz","fileCount":10,"integrity":"sha512-g458PUtHo0L5oODAsh9+TETWBh60DGIjca22IVvupD2VBUmNqtgtzX/odJBqmnRx8UU648hUsuNbH7Ma0CDJwg==","signatures":[{"sig":"MEYCIQCK6h6uD5f6QiURy6i4iN2EtBz8Wal7rX9H7TB7vx+7hgIhAJQ0WTU8hL/CrF1Dhl4edUWcs/T/IyfT1gui2Kp12Xpx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":146477},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.cjs"},"./package.json":"./package.json"},"gitHead":"90f25fa876b59d740d9bd7cbdf2ac9631b7eca72","scripts":{"test":"vitest run","build":"tsup","check":"npm run typecheck && npm test && npm run build && npm pack --dry-run","prepack":"npm run build","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bluedoor","email":"sam@bluedoor.sh"},"repository":{"url":"git+https://github.com/bluefin-ai/fin-services.git","type":"git","directory":"nfin/typescript"},"_npmVersion":"11.5.2","description":"Lightweight TypeScript SDK for nfin: hosted Nasdaq quotes, prices, options, IPOs, calendars, markets, news, and Nordic data.","directories":{},"sideEffects":false,"_nodeVersion":"23.2.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","vitest":"^3.1.2","typescript":"^5.8.3","@types/node":"^22.15.3"},"_npmOperationalInternal":{"tmp":"tmp/nfin_0.1.0_1779998289264_0.8927054424118852","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@bluefin-ai/nfin","version":"0.1.1","description":"Lightweight TypeScript SDK for nfin: hosted Nasdaq quotes, prices, options, IPOs, calendars, market movers, news, and Nordic data.","license":"MIT","author":{"name":"nfin","email":"sam@bluedoor.sh"},"homepage":"https://docs.nfin.dev/typescript-sdk","repository":{"type":"git","url":"git+https://github.com/bluefin-ai/fin-services.git","directory":"nfin/typescript"},"bugs":{"url":"https://github.com/bluefin-ai/fin-services/issues"},"keywords":["finance","stocks","market-data","nasdaq","quotes","options","ipos","typescript","sdk"],"type":"module","sideEffects":false,"main":"./dist/index.cjs","module":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs","default":"./dist/index.mjs"},"./package.json":"./package.json"},"publishConfig":{"access":"public"},"scripts":{"build":"tsup","check":"npm run typecheck && npm test && npm run build && npm pack --dry-run","prepack":"npm run build","test":"vitest run","typecheck":"tsc --noEmit"},"devDependencies":{"@types/node":"^22.15.3","tsup":"^8.4.0","typescript":"^5.8.3","vitest":"^3.1.2"},"_id":"@bluefin-ai/nfin@0.1.1","gitHead":"31fe82a73d08fb5e61f4177481570edda65a805c","_nodeVersion":"23.2.0","_npmVersion":"11.5.2","dist":{"integrity":"sha512-51yoWQPXaDALrqcmBUYkDNqUDJ3TP4cSB57LYb8HEWKYKqFaKlUGR24DPY/MVJzDlWqG/P04/lq7a2qPdBRkgw==","shasum":"ff85803f85d40eb74b05c1e571427ea84e21fa18","tarball":"https://registry.npmjs.org/@bluefin-ai/nfin/-/nfin-0.1.1.tgz","fileCount":10,"unpackedSize":155755,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDsgi7vtmDg0gw/UL5XHMmI/ma/AXxCUoeGZPKCuETkNQIhAKdAU+OrpzcbTMgGQmyDv/IfH1+vLhVVPe4EKQmRfv0X"}]},"_npmUser":{"name":"bluedoor","email":"sam@bluedoor.sh"},"directories":{},"maintainers":[{"name":"bluedoor","email":"sam@bluedoor.sh"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/nfin_0.1.1_1780004761407_0.3193360892385635"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-28T19:58:09.155Z","modified":"2026-05-28T21:46:01.691Z","0.1.0":"2026-05-28T19:58:09.402Z","0.1.1":"2026-05-28T21:46:01.564Z"},"bugs":{"url":"https://github.com/bluefin-ai/fin-services/issues"},"author":{"name":"nfin","email":"sam@bluedoor.sh"},"license":"MIT","homepage":"https://docs.nfin.dev/typescript-sdk","keywords":["finance","stocks","market-data","nasdaq","quotes","options","ipos","typescript","sdk"],"repository":{"type":"git","url":"git+https://github.com/bluefin-ai/fin-services.git","directory":"nfin/typescript"},"description":"Lightweight TypeScript SDK for nfin: hosted Nasdaq quotes, prices, options, IPOs, calendars, market movers, news, and Nordic data.","maintainers":[{"name":"bluedoor","email":"sam@bluedoor.sh"}],"readme":"# @bluefin-ai/nfin\n\nLightweight TypeScript SDK for nfin, a hosted Nasdaq data API for builders.\n\nnfin gives you access to Nasdaq market data without maintaining your own\nexchange-site integration: symbol search, quotes, historical prices, options,\nIPO calendars, market movers, event calendars, ownership, funds, news,\nscreeners, sentiment, and Nasdaq Nordic data through product-native namespaces.\nUse it for dashboards, agents, notebooks, research tools, watchlists,\nprototyping, and app backends.\n\nThis SDK is intentionally portable: no runtime dependencies, standard `fetch`,\nESM + CommonJS builds, bundled TypeScript declarations, typed errors, and\nautomatic retries.\n\nDocs: https://docs.nfin.dev/typescript-sdk\n\n```bash\nnpm install @bluefin-ai/nfin\n```\n\n## Quick Use\n\n```ts\nimport { Client } from \"@bluefin-ai/nfin\";\n\nconst client = new Client();\nconst apple = client.ticker(\"AAPL\");\n\nconst quote = await apple.quote({ asset_class: \"stocks\" });\nconst history = await apple.history({ from_date: \"2026-01-01\", to_date: \"2026-05-01\" });\nconst ipos = await client.ipos.calendar();\n\nconsole.log(quote.data, history.data, ipos.data);\n```\n\n## Common Calls\n\n```ts\nawait client.symbols.search(\"apple\");\nawait client.quotes.get(\"AAPL\", { asset_class: \"stocks\" });\nawait client.quotes.batch([\"AAPL\", \"MSFT\"]);\nawait client.prices.history(\"AAPL\", { from_date: \"2026-01-01\", to_date: \"2026-05-01\" });\nawait client.options.chain(\"AAPL\");\nawait client.events.earnings();\nawait client.ipos.calendar();\nawait client.market.movers();\nawait client.news.pressCenter();\nawait client.screeners.run(\"stocks\");\nawait client.nordic.search(\"ericsson\");\n```\n\nThe client is organized around nfin product areas: `symbols`, `quotes`,\n`prices`, `options`, `events`, `ipos`, `market`, `ownership`, `funds`, `news`,\n`screeners`, `sentiment`, `nordic`, and `management`. Use\n`client.ticker(\"AAPL\")` for symbol-scoped quote, history, chart, options,\ndividend, EPS, extended-trading, realtime-trade, and short-interest calls.\n\n## Runtime Support\n\nThe package uses the standard Fetch API. In Node, use Node 18+ or pass a custom\nfetch implementation:\n\n```ts\nconst client = new Client({ fetch: myFetch });\n```\n\nConfiguration can come from constructor options or environment variables in\nNode-like runtimes:\n\n| Option | Environment | Purpose |\n| --- | --- | --- |\n| `baseUrl` | `NFIN_BASE_URL` | Override `https://api.nfin.dev`; must be `http` or `https` |\n| `contact` | `NFIN_CONTACT` | Send optional support metadata |\n| `apiKey` | `NFIN_API_KEY` | Send email-verified API credentials |\n| `managementToken` | `NFIN_MANAGEMENT_TOKEN` | Manage API keys after email verification |\n\n`apiKey` is sent as `Authorization: Bearer <key>` by default. Pass\n`apiKeyHeader: \"x-nfin-key\"` to use `X-Nfin-Key` instead.\n\nThe SDK retries transient `429`, `502`, `503`, and `504` responses by default.\nUse `maxRetries`, `retryStatuses`, `backoffFactorMs`, `maxBackoffMs`, and\n`backoffJitter` when you need tighter control, or set `maxRetries: 0`.\n\nKeep API keys on a server when you do not control the runtime.\n\n## Errors\n\nHTTP errors throw `NfinError`. HTTP 429 throws `NfinRateLimitError`; HTTP 503\nthrows `NfinServiceBusyError` after retry exhaustion. Error objects include\n`retryAfterSeconds`, `status`, `code`, response payloads, and response headers.\n","readmeFilename":"README.md"}