{"_id":"@anyq/sns","_rev":"7-4ef4deff3fbd7b4a26855da65da02001","name":"@anyq/sns","dist-tags":{"latest":"0.5.0"},"versions":{"0.1.0":{"name":"@anyq/sns","version":"0.1.0","keywords":["anyq","queue","sns","aws","pub-sub","fan-out"],"author":{"name":"Shantanu Sharma"},"license":"MIT","_id":"@anyq/sns@0.1.0","maintainers":[{"name":"sns45","email":"notifyshantanu@gmail.com"}],"homepage":"https://github.com/sns45/anyq#readme","bugs":{"url":"https://github.com/sns45/anyq/issues"},"dist":{"shasum":"f6cbd1db0e4012ea7506fc5ffa709abbac7be05f","tarball":"https://registry.npmjs.org/@anyq/sns/-/sns-0.1.0.tgz","fileCount":8,"integrity":"sha512-LzmNAuLYPzkIPyfYp3gyNVoGPbWK60LAuPh2LNZcdsTo5OR1FPVd6yA1VnzLX1IePMQyFStmhuB9vM0IU9EAKA==","signatures":[{"sig":"MEQCIF4mWmqIa+oJrjc9UpFSusMFBxMZF9S3tcmFmq/ocsMgAiAbTrNN+9Mk6+156i313Ew3e69y4ZRVzCkUAiYCzSpobQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1061553},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"1210b51fe4a55144ebf5bc798db0732b4c89ddba","scripts":{"build":"bun build ./src/index.ts --outdir ./dist --target bun && bun run build:types","clean":"rm -rf dist","typecheck":"tsc --noEmit","build:types":"tsc --emitDeclarationOnly --outDir dist"},"_npmUser":{"name":"sns45","email":"notifyshantanu@gmail.com"},"repository":{"url":"git+https://github.com/sns45/anyq.git","type":"git","directory":"packages/sns"},"_npmVersion":"10.9.2","description":"AWS SNS adapter for anyq","directories":{},"_nodeVersion":"22.17.0","dependencies":{"@anyq/core":"workspace:*","@aws-sdk/client-sns":"^3.650.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5.4.5"},"peerDependencies":{"@anyq/core":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/sns_0.1.0_1765990940119_0.3468094234255319","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@anyq/sns","version":"0.1.1","keywords":["anyq","queue","sns","aws","pub-sub","fan-out"],"author":{"name":"Shantanu Sharma"},"license":"MIT","_id":"@anyq/sns@0.1.1","maintainers":[{"name":"sns45","email":"notifyshantanu@gmail.com"}],"homepage":"https://github.com/sns45/anyq#readme","bugs":{"url":"https://github.com/sns45/anyq/issues"},"dist":{"shasum":"d32b04c8c8401ef92f8685dfc1c7010be293f240","tarball":"https://registry.npmjs.org/@anyq/sns/-/sns-0.1.1.tgz","fileCount":9,"integrity":"sha512-iK2UhUfmtPivy/W/5WRn9MIeqA+bKMCPnbvOh4HmQkVW7RYuY4hIZ6/j/2eyA766S26g7g4WyI5FfxN5hH1nuw==","signatures":[{"sig":"MEQCIFuN+inCMwKCGril/3PMeAFNCCgivZIkKyQPgVqWXnXvAiAEbH+33ECuuU8ri88pjAtCyuJ57wikytqav0HiwEei+A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1060622},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"30128d564178a5a1d25b736b605bf69644178a0f","scripts":{"build":"bun build ./src/index.ts --outdir ./dist --target bun && bun run build:types","clean":"rm -rf dist","typecheck":"tsc --noEmit","build:types":"tsc --emitDeclarationOnly --outDir dist"},"_npmUser":{"name":"sns45","email":"notifyshantanu@gmail.com"},"repository":{"url":"git+https://github.com/sns45/anyq.git","type":"git","directory":"packages/sns"},"_npmVersion":"10.9.2","description":"AWS SNS adapter for anyq","directories":{},"_nodeVersion":"22.17.0","dependencies":{"@anyq/core":"workspace:*","@aws-sdk/client-sns":"^3.650.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5.4.5"},"peerDependencies":{"@anyq/core":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/sns_0.1.1_1765991350607_0.1414728072366549","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@anyq/sns","version":"0.3.0","keywords":["anyq","queue","sns","aws","pub-sub","fan-out"],"author":"Shantanu Sharma","license":"MIT","_id":"@anyq/sns@0.3.0","maintainers":[{"name":"sns45","email":"notifyshantanu@gmail.com"}],"homepage":"https://github.com/sns45/anyq#readme","bugs":{"url":"https://github.com/sns45/anyq/issues"},"dist":{"shasum":"eb6093471ab5c4e3637165f8270621bff99b2bd7","tarball":"https://registry.npmjs.org/@anyq/sns/-/sns-0.3.0.tgz","fileCount":9,"integrity":"sha512-VyiFLbGLi3eDxkip44z7K0Wo8k7Os1x4TD05S/8qoLafXcZEazcDBmJ/NBo5KmWyhXFNbbcfxpirl3hHvq/u8w==","signatures":[{"sig":"MEUCIAn3bSLyV7NKfPkirTWP01cZywPlvj1pKUH+cV2FzPB4AiEAk4/JjqRDhRDJU1uxGpHyRNN+f+jjtWG9EkmkOUT1Ddw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":898369},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"eb6093471ab5c4e3637165f8270621bff99b2bd7","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"bun build ./src/index.ts --outdir ./dist --target bun && bun run build:types","clean":"rm -rf dist","typecheck":"tsc --noEmit","build:types":"tsc --emitDeclarationOnly --outDir dist"},"_npmUser":{"name":"sns45","email":"notifyshantanu@gmail.com"},"_integrity":"sha512-VyiFLbGLi3eDxkip44z7K0Wo8k7Os1x4TD05S/8qoLafXcZEazcDBmJ/NBo5KmWyhXFNbbcfxpirl3hHvq/u8w==","repository":{"url":"https://github.com/sns45/anyq","type":"git","directory":"packages/sns"},"_npmVersion":"10.8.3","description":"AWS SNS adapter for anyq","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@anyq/core":"0.3.0","@aws-sdk/client-sns":"^3.650.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5.4.5"},"peerDependencies":{"@anyq/core":"0.3.0"},"_npmOperationalInternal":{"tmp":"tmp/sns_0.3.0_1781961975316_0.5135013235392754","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@anyq/sns","version":"0.3.1","keywords":["anyq","queue","sns","aws","pub-sub","fan-out"],"author":"Shantanu Sharma","license":"MIT","_id":"@anyq/sns@0.3.1","maintainers":[{"name":"sns45","email":"notifyshantanu@gmail.com"}],"homepage":"https://github.com/sns45/anyq#readme","bugs":{"url":"https://github.com/sns45/anyq/issues"},"dist":{"shasum":"769a07ff4a14036bd434ccb253c08c99a8e67f9f","tarball":"https://registry.npmjs.org/@anyq/sns/-/sns-0.3.1.tgz","fileCount":9,"integrity":"sha512-OtD8VCOZZa9So/08QMKlRD7rdnXCermQzQPRIYxLA20be9feg+FoMQhDCChu84TmGoQwtuhtkSfI8CjJhcUKxg==","signatures":[{"sig":"MEYCIQDmEtaJsuTo1DGCMGzVOhptQtneJF8wHObUB5iuOvJDIgIhAKIFbHWOyodEL9xVjxfZ0kPCBGXBwxs24cDbMsnwaZpN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":901080},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"769a07ff4a14036bd434ccb253c08c99a8e67f9f","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"bun build ./src/index.ts --outdir ./dist --target bun && bun run build:types","clean":"rm -rf dist","typecheck":"tsc --noEmit","build:types":"tsc --emitDeclarationOnly --outDir dist"},"_npmUser":{"name":"sns45","email":"notifyshantanu@gmail.com"},"_integrity":"sha512-OtD8VCOZZa9So/08QMKlRD7rdnXCermQzQPRIYxLA20be9feg+FoMQhDCChu84TmGoQwtuhtkSfI8CjJhcUKxg==","repository":{"url":"https://github.com/sns45/anyq","type":"git","directory":"packages/sns"},"_npmVersion":"10.8.3","description":"AWS SNS adapter for anyq","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@anyq/core":"0.3.0","@aws-sdk/client-sns":"^3.650.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5.4.5"},"peerDependencies":{"@anyq/core":"0.3.0"},"_npmOperationalInternal":{"tmp":"tmp/sns_0.3.1_1782054599585_0.7607904993820527","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@anyq/sns","version":"0.3.2","keywords":["anyq","queue","sns","aws","pub-sub","fan-out"],"author":"Shantanu Sharma","license":"MIT","_id":"@anyq/sns@0.3.2","maintainers":[{"name":"sns45","email":"notifyshantanu@gmail.com"}],"homepage":"https://github.com/sns45/anyq#readme","bugs":{"url":"https://github.com/sns45/anyq/issues"},"dist":{"shasum":"88ebbac6be39ec01ca698eddccff054ebe5d7aba","tarball":"https://registry.npmjs.org/@anyq/sns/-/sns-0.3.2.tgz","fileCount":9,"integrity":"sha512-iJkR+3HBtb2VI66AOh09NkP32bQhbHgBDA4jD29cUlwZmQ6KJGeidwolAjZl2lAozxERtXHFezyuElUqIAmTKA==","signatures":[{"sig":"MEYCIQDFvvZPRpcMB1u72d9lMq0kToLIXeW+GV3MebHVNJICnAIhALb97JQqfWM06LrfqlRs5Xout2SBAIBuFhm5LgrLbx6l","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":901080},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"88ebbac6be39ec01ca698eddccff054ebe5d7aba","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"bun build ./src/index.ts --outdir ./dist --target bun && bun run build:types","clean":"rm -rf dist","typecheck":"tsc --noEmit","build:types":"tsc --emitDeclarationOnly --outDir dist"},"_npmUser":{"name":"sns45","email":"notifyshantanu@gmail.com"},"_integrity":"sha512-iJkR+3HBtb2VI66AOh09NkP32bQhbHgBDA4jD29cUlwZmQ6KJGeidwolAjZl2lAozxERtXHFezyuElUqIAmTKA==","repository":{"url":"https://github.com/sns45/anyq","type":"git","directory":"packages/sns"},"_npmVersion":"10.8.3","description":"AWS SNS adapter for anyq","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@anyq/core":"0.3.2","@aws-sdk/client-sns":"^3.650.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5.4.5"},"peerDependencies":{"@anyq/core":"0.3.2"},"_npmOperationalInternal":{"tmp":"tmp/sns_0.3.2_1784910266687_0.0890701594284562","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@anyq/sns","version":"0.4.0","keywords":["anyq","queue","sns","aws","pub-sub","fan-out"],"author":"Shantanu Sharma","license":"Apache-2.0","_id":"@anyq/sns@0.4.0","maintainers":[{"name":"sns45","email":"notifyshantanu@gmail.com"}],"homepage":"https://github.com/sns45/anyq#readme","bugs":{"url":"https://github.com/sns45/anyq/issues"},"dist":{"shasum":"e4cf1238055fa1f28a1ab4d22dc2dcb8a8d036b7","tarball":"https://registry.npmjs.org/@anyq/sns/-/sns-0.4.0.tgz","fileCount":11,"integrity":"sha512-tofJ6DxucoOkW/J+z6zFcDQs2ni2uAam+QdUm/JdjQ+rdWlaUv1leL5ama8i6uc5t5BuvYEIBqn059Tba/xM1A==","signatures":[{"sig":"MEUCIAYZj39XjJzZBTUhWn+Zp/bEiUAamZKe4V/3yxs5uUMSAiEA+YXf63VB4h0Nku1lDC5G6X+p9pe/7+5T50ybdU4Pzhs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":903883},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"e4cf1238055fa1f28a1ab4d22dc2dcb8a8d036b7","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"bun build ./src/index.ts --outdir ./dist --target bun && bun run build:types","clean":"rm -rf dist","typecheck":"tsc --noEmit","build:types":"tsc --emitDeclarationOnly --outDir dist"},"_npmUser":{"name":"sns45","email":"notifyshantanu@gmail.com"},"_integrity":"sha512-tofJ6DxucoOkW/J+z6zFcDQs2ni2uAam+QdUm/JdjQ+rdWlaUv1leL5ama8i6uc5t5BuvYEIBqn059Tba/xM1A==","repository":{"url":"https://github.com/sns45/anyq","type":"git","directory":"packages/sns"},"_npmVersion":"10.8.3","description":"AWS SNS adapter for anyq","directories":{},"_nodeVersion":"26.3.0","dependencies":{"@anyq/core":"0.4.0","@aws-sdk/client-sns":"^3.650.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5.4.5"},"peerDependencies":{"@anyq/core":"0.4.0"},"_npmOperationalInternal":{"tmp":"tmp/sns_0.4.0_1787860570037_0.689528143570115","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@anyq/sns","version":"0.5.0","description":"AWS SNS adapter for anyq","type":"module","main":"./dist/index.js","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"}},"scripts":{"build":"bun build ./src/index.ts --outdir ./dist --target bun && bun run build:types","build:types":"tsc --emitDeclarationOnly --outDir dist","typecheck":"tsc --noEmit","clean":"rm -rf dist"},"dependencies":{"@anyq/core":"0.5.0","@aws-sdk/client-sns":"^3.650.0"},"devDependencies":{"@types/bun":"latest","typescript":"^5.4.5"},"peerDependencies":{"@anyq/core":"0.5.0"},"keywords":["anyq","queue","sns","aws","pub-sub","fan-out"],"license":"Apache-2.0","author":"Shantanu Sharma","repository":{"type":"git","url":"https://github.com/sns45/anyq","directory":"packages/sns"},"homepage":"https://github.com/sns45/anyq#readme","bugs":{"url":"https://github.com/sns45/anyq/issues"},"publishConfig":{"access":"public"},"_id":"@anyq/sns@0.5.0","_integrity":"sha512-ElCZvW2Z3ormoHhp6X3tw8NMsCOt0BX7Cn+nWB1gd2ucpGI9Pyr9aXuzQUa8pOvI1QEQVvoJJHOBez1WENByTw==","_nodeVersion":"26.3.0","_npmVersion":"10.8.3","shasum":"45898edce82ed4ea4b9fcc688c535f5d8b8f3978","dist":{"integrity":"sha512-ElCZvW2Z3ormoHhp6X3tw8NMsCOt0BX7Cn+nWB1gd2ucpGI9Pyr9aXuzQUa8pOvI1QEQVvoJJHOBez1WENByTw==","shasum":"45898edce82ed4ea4b9fcc688c535f5d8b8f3978","tarball":"https://registry.npmjs.org/@anyq/sns/-/sns-0.5.0.tgz","fileCount":11,"unpackedSize":897156,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIBXSLpBxE8WsGY2/eSu2Klxw6j7Wq99u4oQj9C8Fiw8EAiBZQ0iOLHtVfE62vlOdS4BYruZcT+lm6pe7MAJhT9lxIg=="}]},"_npmUser":{"name":"sns45","email":"notifyshantanu@gmail.com"},"directories":{},"maintainers":[{"name":"sns45","email":"notifyshantanu@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sns_0.5.0_1788808994793_0.6424723933789198"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-17T17:02:19.992Z","modified":"2026-09-07T19:23:15.237Z","0.1.0":"2025-12-17T17:02:20.306Z","0.1.1":"2025-12-17T17:09:10.805Z","0.3.0":"2026-06-20T13:26:15.468Z","0.3.1":"2026-06-21T15:09:59.777Z","0.3.2":"2026-07-24T16:24:26.876Z","0.4.0":"2026-08-27T19:56:10.182Z","0.5.0":"2026-09-07T19:23:14.969Z"},"bugs":{"url":"https://github.com/sns45/anyq/issues"},"author":"Shantanu Sharma","license":"Apache-2.0","homepage":"https://github.com/sns45/anyq#readme","keywords":["anyq","queue","sns","aws","pub-sub","fan-out"],"repository":{"type":"git","url":"https://github.com/sns45/anyq","directory":"packages/sns"},"description":"AWS SNS adapter for anyq","maintainers":[{"name":"sns45","email":"notifyshantanu@gmail.com"}],"readme":"# @anyq/sns\n\nAWS SNS adapter for **anyq** - pub/sub fan-out messaging.\n\n## Installation\n\n```bash\nnpm install @anyq/sns @anyq/core @aws-sdk/client-sns\n```\n\n## Usage\n\n```typescript\nimport { SNSProducer } from '@anyq/sns';\n\n// Create producer\nconst producer = new SNSProducer({\n  region: 'us-east-1',\n  topicArn: 'arn:aws:sns:us-east-1:123456789:my-topic'\n});\n\nawait producer.connect();\n\n// Publish messages\nawait producer.publish({\n  event: 'user.signup',\n  userId: 'user-123'\n});\n\n// Publish with attributes\nawait producer.publish(\n  { event: 'order.created' },\n  {\n    attributes: {\n      eventType: 'order',\n      priority: 'high'\n    }\n  }\n);\n\n// Batch publish\nawait producer.publishBatch([\n  { notification: 'first' },\n  { notification: 'second' }\n]);\n\nawait producer.disconnect();\n```\n\n## Configuration\n\n```typescript\ninterface SNSConfig {\n  region: string;            // AWS region\n  topicArn: string;          // SNS topic ARN\n  credentials?: {\n    accessKeyId: string;\n    secretAccessKey: string;\n  };\n  // FIFO topic options\n  messageGroupId?: string;\n  deduplicationId?: string;\n}\n```\n\n## Features\n\n- Fan-out to multiple subscribers\n- Message filtering by attributes\n- Standard and FIFO topics\n- Batch publishing\n- Cross-region publishing\n\n## Note\n\nSNS is a producer-only service. Messages are delivered to subscribers (SQS, Lambda, HTTP, etc.) configured in the AWS Console.\n\n## Retry strategies (0.3.0)\n\nPluggable retry strategies from `@anyq/core` are a **consumer-side** feature. SNS has no consumer, so the `strategy` config field has no effect here. If you need per-error handling for SNS-delivered messages, apply a strategy on the downstream `@anyq/sqs` consumer or other subscribing service.\n\n## License\n\nApache License 2.0. See [LICENSE](https://github.com/sns45/anyq/blob/main/LICENSE).\n","readmeFilename":"README.md"}