{"_id":"@apirelio/fastify","_rev":"2-ea719b49c98396706d624479009f09df","name":"@apirelio/fastify","dist-tags":{"latest":"0.2.0"},"versions":{"0.1.0":{"name":"@apirelio/fastify","version":"0.1.0","keywords":["apirelio","fastify","api","analytics","observability"],"license":"MIT","_id":"@apirelio/fastify@0.1.0","maintainers":[{"name":"pryznar","email":"pryznar@gmail.com"}],"homepage":"https://apirelio.com/docs","bugs":{"url":"https://github.com/pryznar/apirelio-fastify/issues"},"dist":{"shasum":"ec47e94416409e74cbdca62e8e2b889fe0170fbe","tarball":"https://registry.npmjs.org/@apirelio/fastify/-/fastify-0.1.0.tgz","fileCount":8,"integrity":"sha512-uvvL1WOKBC6q1ZqapJoK1t82VUr4CTCDryMSMXZo+yBDZgFiEnghnJco2nLgcS91gqxofbJmBjksl/ODDOHwqA==","signatures":[{"sig":"MEQCIGfkwyFwuMl0jUTc/agRrWguycFuTMAh3IGZTV3LQmCyAiBr7U9tPEsaKYG4JpT2OdBaxktz/uvtsrMdo6zsK0sa6g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13277},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"4c872b639aff68f4f8775df11b6129b6a84fa751","scripts":{"test":"vitest run","build":"tsup src/index.ts --format esm,cjs --dts --clean","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm test && npm run build"},"_npmUser":{"name":"pryznar","email":"pryznar@gmail.com"},"overrides":{"tsup":{"esbuild":"^0.28.1"}},"repository":{"url":"git+https://github.com/pryznar/apirelio-fastify.git","type":"git"},"_npmVersion":"11.9.0","description":"Fail-safe customer-aware API analytics plugin for Fastify.","directories":{},"sideEffects":false,"_nodeVersion":"25.6.1","dependencies":{"fastify-plugin":"^5.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","vitest":"^4.0.0","esbuild":"^0.28.1","fastify":"^5.6.0","typescript":"^5.9.0","@types/node":"^24.0.0","@apirelio/core":"file:../node-core"},"peerDependencies":{"fastify":">=4.29 <6","@apirelio/core":"^0.1.0"},"_npmOperationalInternal":{"tmp":"tmp/fastify_0.1.0_1785508210711_0.43468504837613486","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@apirelio/fastify","version":"0.2.0","description":"Fail-safe customer-aware API analytics plugin for Fastify.","keywords":["apirelio","fastify","api","analytics","observability"],"license":"MIT","repository":{"type":"git","url":"git+https://github.com/pryznar/apirelio-fastify.git"},"homepage":"https://apirelio.com/docs","bugs":{"url":"https://github.com/pryznar/apirelio-fastify/issues"},"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"}},"engines":{"node":">=20"},"scripts":{"build":"tsup src/index.ts --format esm,cjs --dts --clean","typecheck":"tsc --noEmit","test":"vitest run","prepublishOnly":"npm run typecheck && npm test && npm run build"},"dependencies":{"fastify-plugin":"^5.0.0"},"peerDependencies":{"@apirelio/core":"^0.2.0","fastify":">=4.29 <6"},"devDependencies":{"@apirelio/core":"file:../node-core","@types/node":"^24.0.0","esbuild":"^0.28.1","fastify":"^5.6.0","tsup":"^8.5.0","typescript":"^5.9.0","vitest":"^4.0.0"},"publishConfig":{"access":"public"},"overrides":{"tsup":{"esbuild":"^0.28.1"}},"gitHead":"9b109fb2217eba8229f832b49c816b815631b5f7","_id":"@apirelio/fastify@0.2.0","_nodeVersion":"25.6.1","_npmVersion":"11.9.0","dist":{"integrity":"sha512-3Gh98CFRE5MeNIljX6INJSRE3aWmNb+8qJi05u0qNLwRrsCA71DeqH3LMAokK02eJXzs/MSlI+fyLSyBQXoBYA==","shasum":"467bf87acd73b6f69dbbb4508c67b6a4a08aad54","tarball":"https://registry.npmjs.org/@apirelio/fastify/-/fastify-0.2.0.tgz","fileCount":8,"unpackedSize":13977,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIFZKfvSk3LL8cEA6yaRS1EeGKxi6n4sfgR81HzBRWh9uAiEAuN7UmFiq8oiIIrXo9JSONNwaPT0SvvNXzlMA4y9eDI0="}]},"_npmUser":{"name":"pryznar","email":"pryznar@gmail.com"},"directories":{},"maintainers":[{"name":"pryznar","email":"pryznar@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/fastify_0.2.0_1785512554237_0.6673793179286227"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-31T14:30:10.559Z","modified":"2026-07-31T15:42:34.769Z","0.1.0":"2026-07-31T14:30:10.849Z","0.2.0":"2026-07-31T15:42:34.603Z"},"bugs":{"url":"https://github.com/pryznar/apirelio-fastify/issues"},"license":"MIT","homepage":"https://apirelio.com/docs","keywords":["apirelio","fastify","api","analytics","observability"],"repository":{"type":"git","url":"git+https://github.com/pryznar/apirelio-fastify.git"},"description":"Fail-safe customer-aware API analytics plugin for Fastify.","maintainers":[{"name":"pryznar","email":"pryznar@gmail.com"}],"readme":"# Apirelio Fastify SDK\n\nFastify 4–5 plugin for privacy-safe, customer-aware API analytics. Capture happens in Fastify's\n`onResponse` lifecycle hook and only enqueues into a bounded background batch transport.\n\n```bash\nnpm install @apirelio/fastify\n```\n\n```ts\nimport Fastify from 'fastify'\nimport apirelioFastify from '@apirelio/fastify'\n\nconst app = Fastify()\nawait app.register(apirelioFastify, {\n  apiKey: process.env.APIRELIO_API_KEY ?? '',\n  endpoint: process.env.APIRELIO_ENDPOINT ?? 'https://apirelio.com',\n  service: 'billing-api',\n  environment: 'production',\n  includeRoutes: ['/api/**'],\n  excludeRoutes: ['/api/health', '/api/internal/**'],\n  resolveCustomer: request => request.user ? { id: String(request.user.companyId) } : null,\n})\n```\n\nThe plugin flushes during Fastify shutdown. Bodies, query strings, cookies, authorization values,\nemail addresses and IP addresses are never captured.\n\nRoute patterns are exact paths or prefixes ending in `/**`. If `includeRoutes` is omitted, all\nincoming Fastify routes are eligible; `excludeRoutes` always takes precedence.\n","readmeFilename":"README.md"}