{"_id":"@aws-amplify/backend-notifications","_rev":"13-a67f2cac4bfeac65abb31868ea16a897","name":"@aws-amplify/backend-notifications","dist-tags":{"unstable":"0.0.0-test-20260708085627","test":"0.0.0-test-20260715203250","backend-notifications":"0.0.0-backend-notifications-20260728122350","latest":"2.0.1"},"versions":{"0.0.0-test-20260708085627":{"name":"@aws-amplify/backend-notifications","version":"0.0.0-test-20260708085627","license":"Apache-2.0","_id":"@aws-amplify/backend-notifications@0.0.0-test-20260708085627","maintainers":[{"name":"amzn-oss","email":"osa-3p@amazon.com"},{"name":"aws-amplify-ops","email":"aws-amplify@amazon.com"},{"name":"amplify-studio-uibuilder","email":"aws-amplify-uibuilder@amazon.com"},{"name":"amplify-codegen","email":"amplify-codegen+npm@amazon.com"},{"name":"amplify-data-dev-npm","email":"amplify-data-dev+npm@amazon.com"},{"name":"aws-amplify-data-runtime","email":"amplify-data-dev@amazon.com"}],"homepage":"https://github.com/aws-amplify/amplify-backend#readme","bugs":{"url":"https://github.com/aws-amplify/amplify-backend/issues"},"dist":{"shasum":"5a6218b3e46aad50ea53c1f2e03f0e8835f91c5e","tarball":"https://registry.npmjs.org/@aws-amplify/backend-notifications/-/backend-notifications-0.0.0-test-20260708085627.tgz","fileCount":59,"integrity":"sha512-zhLdnYGT02n2nE/4d4JqEuGqMv6Qsg/krGQneaCEynv9uiw8A8wX3bicDieTbeh3ZQUZp8TT96+Gz5BbQ7a1eQ==","signatures":[{"sig":"MEQCIA6x+eLbHV/L4iwEgV+u1HjkdgJf69hEwoeYIGWFVD9bAiAfnBoSCbR6X3HltNTLqWHboFs2dFoX8J5JPQqKUkdtfQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aws-amplify%2fbackend-notifications@0.0.0-test-20260708085627","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4977900},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","import":"./lib/index.js","require":"./lib/index.js"}},"gitHead":"0a899dfcb8392d29dd869a1079627e8605e75c38","scripts":{"update:api":"api-extractor run --local","post:compile":"npm run bundle:identify-user-handler && npm run bundle:push-handler && npm run bundle:campaign-association-handler","bundle:push-handler":"esbuild src/lambda/push/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/push-handler-asset/index.js","bundle:identify-user-handler":"esbuild src/lambda/identify/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/handler-asset/index.js --external:@aws-sdk/*","bundle:campaign-association-handler":"esbuild src/lambda/campaign-association/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/campaign-association-asset/index.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1f66289f-b8ec-4a18-ab2a-828722c9f096"}},"repository":{"url":"git+https://github.com/aws-amplify/amplify-backend.git","type":"git"},"_npmVersion":"11.16.0","description":"> **Preview:** this package is in preview / prerelease. Its API and generated > resources may change in a future release.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@aws-amplify/plugin-types":"^1.12.1","@aws-amplify/platform-core":"^1.11.1","@aws-amplify/backend-output-schemas":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/aws-lambda":"^8.10.137","@aws-sdk/client-iam":"^3.936.0","@aws-sdk/client-connect":"^3.1079.0","@aws-sdk/client-pinpoint":"^3.936.0","@aws-sdk/client-qconnect":"^3.1079.0","@aws-sdk/client-customer-profiles":"^3.936.0","@aws-sdk/client-connectcampaignsv2":"^3.1079.0","@aws-amplify/backend-output-storage":"^1.3.5","@aws-amplify/backend-platform-test-stubs":"^0.3.10"},"peerDependencies":{"constructs":"^10.0.0","aws-cdk-lib":"^2.234.1"},"_npmOperationalInternal":{"tmp":"tmp/backend-notifications_0.0.0-test-20260708085627_1783500995764_0.4757696895340926","host":"s3://npm-registry-packages-npm-production"}},"0.0.0-test-20260713133831":{"name":"@aws-amplify/backend-notifications","version":"0.0.0-test-20260713133831","license":"Apache-2.0","_id":"@aws-amplify/backend-notifications@0.0.0-test-20260713133831","maintainers":[{"name":"amzn-oss","email":"osa-3p@amazon.com"},{"name":"aws-amplify-ops","email":"aws-amplify@amazon.com"},{"name":"amplify-studio-uibuilder","email":"aws-amplify-uibuilder@amazon.com"},{"name":"amplify-codegen","email":"amplify-codegen+npm@amazon.com"},{"name":"amplify-data-dev-npm","email":"amplify-data-dev+npm@amazon.com"},{"name":"aws-amplify-data-runtime","email":"amplify-data-dev@amazon.com"}],"homepage":"https://github.com/aws-amplify/amplify-backend#readme","bugs":{"url":"https://github.com/aws-amplify/amplify-backend/issues"},"dist":{"shasum":"9b84214d1cdac30305c16a8e855443d7f33b9f5c","tarball":"https://registry.npmjs.org/@aws-amplify/backend-notifications/-/backend-notifications-0.0.0-test-20260713133831.tgz","fileCount":59,"integrity":"sha512-Yi26Ry/0ma9d2fw7/8S48iTQsSFn3TqQJzooKwXH2LMhTyewpJRu0byzUhei1ZmJJj7hs+Y57sg0qBfsLKUG7w==","signatures":[{"sig":"MEUCIDjKN7KdMcDMkE0w64DR4lDrEbfUSS1jTO2jgUP98gXKAiEAzswCTOKjYdFclih0cpVs4OrjfO8WU2luBnqV3UAMRoA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aws-amplify%2fbackend-notifications@0.0.0-test-20260713133831","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4984027},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","import":"./lib/index.js","require":"./lib/index.js"}},"gitHead":"63e8cfa99e9b47ce2aca7d4a678606a48499ac6d","scripts":{"update:api":"api-extractor run --local","post:compile":"npm run bundle:identify-user-handler && npm run bundle:push-handler && npm run bundle:campaign-association-handler","bundle:push-handler":"esbuild src/lambda/push/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/push-handler-asset/index.js","bundle:identify-user-handler":"esbuild src/lambda/identify/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/handler-asset/index.js --external:@aws-sdk/*","bundle:campaign-association-handler":"esbuild src/lambda/campaign-association/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/campaign-association-asset/index.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1f66289f-b8ec-4a18-ab2a-828722c9f096"}},"repository":{"url":"git+https://github.com/aws-amplify/amplify-backend.git","type":"git"},"_npmVersion":"11.16.0","description":"> **Preview:** this package is in preview / prerelease. Its API and generated > resources may change in a future release.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@aws-amplify/plugin-types":"^1.12.1","@aws-amplify/platform-core":"^1.11.1","@aws-amplify/backend-output-schemas":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@types/aws-lambda":"^8.10.137","@aws-sdk/client-iam":"^3.936.0","@aws-sdk/client-connect":"^3.1079.0","@aws-sdk/client-pinpoint":"^3.936.0","@aws-sdk/client-qconnect":"^3.1079.0","@aws-sdk/client-customer-profiles":"^3.936.0","@aws-sdk/client-connectcampaignsv2":"^3.1079.0","@aws-amplify/backend-output-storage":"^1.3.5","@aws-amplify/backend-platform-test-stubs":"^0.3.10"},"peerDependencies":{"constructs":"^10.0.0","aws-cdk-lib":"^2.234.1"},"_npmOperationalInternal":{"tmp":"tmp/backend-notifications_0.0.0-test-20260713133831_1783949919658_0.4192854750699786","host":"s3://npm-registry-packages-npm-production"}},"0.0.0-test-20260714113330":{"name":"@aws-amplify/backend-notifications","version":"0.0.0-test-20260714113330","license":"Apache-2.0","_id":"@aws-amplify/backend-notifications@0.0.0-test-20260714113330","maintainers":[{"name":"amzn-oss","email":"osa-3p@amazon.com"},{"name":"aws-amplify-ops","email":"aws-amplify@amazon.com"},{"name":"amplify-studio-uibuilder","email":"aws-amplify-uibuilder@amazon.com"},{"name":"amplify-codegen","email":"amplify-codegen+npm@amazon.com"},{"name":"amplify-data-dev-npm","email":"amplify-data-dev+npm@amazon.com"},{"name":"aws-amplify-data-runtime","email":"amplify-data-dev@amazon.com"}],"homepage":"https://github.com/aws-amplify/amplify-backend#readme","bugs":{"url":"https://github.com/aws-amplify/amplify-backend/issues"},"dist":{"shasum":"a8dd7cf83a1b78658e673ecf6090a49e915475e6","tarball":"https://registry.npmjs.org/@aws-amplify/backend-notifications/-/backend-notifications-0.0.0-test-20260714113330.tgz","fileCount":59,"integrity":"sha512-cIbufCupOM6kIwhKObM+SZeC0IsQotDcrKl2yJ+ts/x8m6wZV5tsAv3u+Y+yc6fN9dNmaZmOmUeXxwx+o8G/ZQ==","signatures":[{"sig":"MEYCIQCy9p7HMH4qdTOzgXdQqhcPJj037tg/fZbUgH8zeF+hOwIhAJni18uLj0I8cnBzFGNawCT81TMBlgiJ9upGHWGaz6S7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aws-amplify%2fbackend-notifications@0.0.0-test-20260714113330","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4987475},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","import":"./lib/index.js","require":"./lib/index.js"}},"gitHead":"0d6a5f2f5707a88a4d99ee331faa8d90e5c5a3ec","scripts":{"update:api":"api-extractor run --local","post:compile":"npm run bundle:identify-user-handler && npm run bundle:push-handler && npm run bundle:campaign-association-handler","bundle:push-handler":"esbuild src/lambda/push/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/push-handler-asset/index.js","bundle:identify-user-handler":"esbuild src/lambda/identify/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/handler-asset/index.js --external:@aws-sdk/*","bundle:campaign-association-handler":"esbuild src/lambda/campaign-association/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/campaign-association-asset/index.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1f66289f-b8ec-4a18-ab2a-828722c9f096"}},"repository":{"url":"git+https://github.com/aws-amplify/amplify-backend.git","type":"git"},"_npmVersion":"11.16.0","description":"> **Preview:** this package is in preview / prerelease. Its API and generated > resources may change in a future release.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@aws-amplify/plugin-types":"^1.12.1","@aws-amplify/platform-core":"^1.11.1","@aws-amplify/backend-output-schemas":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@types/aws-lambda":"^8.10.137","@aws-sdk/client-iam":"^3.936.0","@aws-sdk/client-connect":"^3.1079.0","@aws-sdk/client-pinpoint":"^3.936.0","@aws-sdk/client-qconnect":"^3.1079.0","@aws-sdk/client-customer-profiles":"^3.936.0","@aws-sdk/client-connectcampaignsv2":"^3.1079.0","@aws-amplify/backend-output-storage":"^1.3.5","@aws-amplify/backend-platform-test-stubs":"^0.3.10"},"peerDependencies":{"constructs":"^10.0.0","aws-cdk-lib":"^2.234.1"},"_npmOperationalInternal":{"tmp":"tmp/backend-notifications_0.0.0-test-20260714113330_1784028818441_0.6249942602195078","host":"s3://npm-registry-packages-npm-production"}},"0.0.0-test-20260715203250":{"name":"@aws-amplify/backend-notifications","version":"0.0.0-test-20260715203250","license":"Apache-2.0","_id":"@aws-amplify/backend-notifications@0.0.0-test-20260715203250","maintainers":[{"name":"amzn-oss","email":"osa-3p@amazon.com"},{"name":"aws-amplify-ops","email":"aws-amplify@amazon.com"},{"name":"amplify-studio-uibuilder","email":"aws-amplify-uibuilder@amazon.com"},{"name":"amplify-codegen","email":"amplify-codegen+npm@amazon.com"},{"name":"amplify-data-dev-npm","email":"amplify-data-dev+npm@amazon.com"},{"name":"aws-amplify-data-runtime","email":"amplify-data-dev@amazon.com"}],"homepage":"https://github.com/aws-amplify/amplify-backend#readme","bugs":{"url":"https://github.com/aws-amplify/amplify-backend/issues"},"dist":{"shasum":"d0803d6e972f79e95b160f35f199e4bb1157aa25","tarball":"https://registry.npmjs.org/@aws-amplify/backend-notifications/-/backend-notifications-0.0.0-test-20260715203250.tgz","fileCount":59,"integrity":"sha512-rtUr+CTaB1Y1GXDBglQcnvCm1+xlSNaNt84c+Z9lf1afMyj4DmVy51aAX8LXZBnW3ViWx8yyxFkCsztpCN/UJw==","signatures":[{"sig":"MEMCHz7DUsWUemNpoxI6nOMhM5vfh/dp2MtSQsTmC46uT7wCIBUoqaena1bFsg+6OuTJ5pJUZ4I4ZE14Xo55sh/xpGLL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aws-amplify%2fbackend-notifications@0.0.0-test-20260715203250","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5004296},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","import":"./lib/index.js","require":"./lib/index.js"}},"gitHead":"44424b5d4112b9a7e479cfefc175a240f9b9b4e3","scripts":{"update:api":"api-extractor run --local","post:compile":"npm run bundle:identify-user-handler && npm run bundle:push-handler && npm run bundle:campaign-association-handler","bundle:push-handler":"esbuild src/lambda/push/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/push-handler-asset/index.js","bundle:identify-user-handler":"esbuild src/lambda/identify/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/handler-asset/index.js --external:@aws-sdk/*","bundle:campaign-association-handler":"esbuild src/lambda/campaign-association/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/campaign-association-asset/index.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1f66289f-b8ec-4a18-ab2a-828722c9f096"}},"repository":{"url":"git+https://github.com/aws-amplify/amplify-backend.git","type":"git"},"_npmVersion":"11.16.0","description":"> **Preview:** this package is in preview / prerelease. Its API and generated > resources may change in a future release.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@aws-amplify/plugin-types":"^1.12.1","@aws-amplify/platform-core":"^1.11.1","@aws-amplify/backend-output-schemas":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@types/aws-lambda":"^8.10.137","@aws-sdk/client-iam":"^3.936.0","@aws-sdk/client-connect":"^3.1079.0","@aws-sdk/client-pinpoint":"^3.936.0","@aws-sdk/client-qconnect":"^3.1079.0","@aws-sdk/client-customer-profiles":"^3.936.0","@aws-sdk/client-connectcampaignsv2":"^3.1079.0","@aws-amplify/backend-output-storage":"^1.3.5","@aws-amplify/backend-platform-test-stubs":"^0.3.10"},"peerDependencies":{"constructs":"^10.0.0","aws-cdk-lib":"^2.234.1"},"_npmOperationalInternal":{"tmp":"tmp/backend-notifications_0.0.0-test-20260715203250_1784147578069_0.374165501092278","host":"s3://npm-registry-packages-npm-production"}},"0.0.0-backend-notifications-20260721155548":{"name":"@aws-amplify/backend-notifications","version":"0.0.0-backend-notifications-20260721155548","license":"Apache-2.0","_id":"@aws-amplify/backend-notifications@0.0.0-backend-notifications-20260721155548","maintainers":[{"name":"amzn-oss","email":"osa-3p@amazon.com"},{"name":"aws-amplify-ops","email":"aws-amplify@amazon.com"},{"name":"amplify-studio-uibuilder","email":"aws-amplify-uibuilder@amazon.com"},{"name":"amplify-codegen","email":"amplify-codegen+npm@amazon.com"},{"name":"amplify-data-dev-npm","email":"amplify-data-dev+npm@amazon.com"},{"name":"aws-amplify-data-runtime","email":"amplify-data-dev@amazon.com"}],"homepage":"https://github.com/aws-amplify/amplify-backend#readme","bugs":{"url":"https://github.com/aws-amplify/amplify-backend/issues"},"dist":{"shasum":"953d21338e822fa280d5efd65be0f0fe238b9702","tarball":"https://registry.npmjs.org/@aws-amplify/backend-notifications/-/backend-notifications-0.0.0-backend-notifications-20260721155548.tgz","fileCount":55,"integrity":"sha512-bgPhWl/OhVHoHK9h2AzhUUKkEyGJL8DLCjbWKKv4C3VObCxiVXLbqVwcd4M0TyCDOaNJInNUBy0I7lSlUw9/tA==","signatures":[{"sig":"MEUCIC4uTxAS/YGncwI44/qdd2CmMFGYZ/rnATwo0dgzNmNsAiEAjejmDEtm1Shq/YV1a1bqyHYdTUXUUrmbIiyZRbiVgnk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aws-amplify%2fbackend-notifications@0.0.0-backend-notifications-20260721155548","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":641204},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","import":"./lib/index.js","require":"./lib/index.js"}},"gitHead":"aeffa206d468244dce26ab4d672d93cda26a96d7","scripts":{"update:api":"api-extractor run --local","post:compile":"npm run bundle:write-handler && npm run bundle:push-handler && npm run bundle:campaign-association-handler","bundle:push-handler":"esbuild src/lambda/push/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/push-handler-asset/index.js --external:@aws-sdk/*","bundle:write-handler":"esbuild src/lambda/write/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/handler-asset/index.js --external:@aws-sdk/*","bundle:campaign-association-handler":"esbuild src/lambda/campaign-association/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/campaign-association-asset/index.js --external:@aws-sdk/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1f66289f-b8ec-4a18-ab2a-828722c9f096"}},"repository":{"url":"git+https://github.com/aws-amplify/amplify-backend.git","type":"git"},"_npmVersion":"11.16.0","description":"> **Preview:** this package is in preview / prerelease. Its API and generated > resources may change in a future release.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@aws-amplify/plugin-types":"0.0.0-backend-notifications-20260721155548","@aws-amplify/platform-core":"^1.11.1","@aws-amplify/backend-output-schemas":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@types/aws-lambda":"^8.10.137","@aws-sdk/client-iam":"^3.936.0","@aws-sdk/client-connect":"^3.1079.0","@aws-sdk/client-dynamodb":"^3.936.0","@aws-sdk/client-pinpoint":"^3.936.0","@aws-sdk/client-qconnect":"^3.1079.0","@aws-sdk/client-customer-profiles":"^3.936.0","@aws-sdk/client-connectcampaignsv2":"^3.1079.0","@aws-amplify/backend-output-storage":"^1.3.5","@aws-amplify/backend-platform-test-stubs":"^0.3.10"},"peerDependencies":{"constructs":"^10.0.0","aws-cdk-lib":"^2.234.1"},"_npmOperationalInternal":{"tmp":"tmp/backend-notifications_0.0.0-backend-notifications-20260721155548_1784649358303_0.24873884223494214","host":"s3://npm-registry-packages-npm-production"}},"0.0.0-backend-notifications-20260727191136":{"name":"@aws-amplify/backend-notifications","version":"0.0.0-backend-notifications-20260727191136","license":"Apache-2.0","_id":"@aws-amplify/backend-notifications@0.0.0-backend-notifications-20260727191136","maintainers":[{"name":"amzn-oss","email":"osa-3p@amazon.com"},{"name":"aws-amplify-ops","email":"aws-amplify@amazon.com"},{"name":"amplify-studio-uibuilder","email":"aws-amplify-uibuilder@amazon.com"},{"name":"amplify-codegen","email":"amplify-codegen+npm@amazon.com"},{"name":"amplify-data-dev-npm","email":"amplify-data-dev+npm@amazon.com"},{"name":"aws-amplify-data-runtime","email":"amplify-data-dev@amazon.com"}],"homepage":"https://github.com/aws-amplify/amplify-backend#readme","bugs":{"url":"https://github.com/aws-amplify/amplify-backend/issues"},"dist":{"shasum":"824846f49e5819f6575683144ede62ede9d42155","tarball":"https://registry.npmjs.org/@aws-amplify/backend-notifications/-/backend-notifications-0.0.0-backend-notifications-20260727191136.tgz","fileCount":55,"integrity":"sha512-VT+DHivDH1xnbwG+LB80Y7INBv5mHvIaGM63wnU5h1WXdVRs4s5MioqE+2fdjlq+YnCy/3eaJS4uZ7ku6iNX1g==","signatures":[{"sig":"MEUCIQDGZetJ1b+61Sc46qVQP19KP8h3T54B/sLRLacr5ovIpAIgPLhvxbjT7MRkmqxApIM6FuZ4soQ+sT8Eu+BzNvOf3NE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aws-amplify%2fbackend-notifications@0.0.0-backend-notifications-20260727191136","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":687139},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","import":"./lib/index.js","require":"./lib/index.js"}},"gitHead":"8a9fafd3a482d465e70598801c830d9510ddf9ea","scripts":{"update:api":"api-extractor run --local","post:compile":"npm run bundle:api-handler && npm run bundle:push-handler && npm run bundle:campaign-association-handler","bundle:api-handler":"esbuild src/lambda/api/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/handler-asset/index.js --external:@aws-sdk/*","bundle:push-handler":"esbuild src/lambda/push/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/push-handler-asset/index.js --external:@aws-sdk/*","bundle:campaign-association-handler":"esbuild src/lambda/campaign-association/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/campaign-association-asset/index.js --external:@aws-sdk/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1f66289f-b8ec-4a18-ab2a-828722c9f096"}},"repository":{"url":"git+https://github.com/aws-amplify/amplify-backend.git","type":"git"},"_npmVersion":"11.16.0","description":"> **Preview:** this package is in preview / prerelease. Its API and generated > resources may change in a future release.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@aws-amplify/plugin-types":"0.0.0-backend-notifications-20260727191136","@aws-amplify/platform-core":"^1.11.1","@aws-amplify/backend-output-schemas":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@types/aws-lambda":"^8.10.137","@aws-sdk/client-iam":"^3.936.0","@aws-sdk/client-connect":"^3.1079.0","@aws-sdk/client-dynamodb":"^3.936.0","@aws-sdk/client-pinpoint":"^3.936.0","@aws-sdk/client-qconnect":"^3.1079.0","@aws-sdk/client-customer-profiles":"^3.936.0","@aws-sdk/client-connectcampaignsv2":"^3.1079.0","@aws-amplify/backend-output-storage":"^1.3.5","@aws-amplify/backend-platform-test-stubs":"^0.3.10"},"peerDependencies":{"constructs":"^10.0.0","aws-cdk-lib":"^2.234.1"},"_npmOperationalInternal":{"tmp":"tmp/backend-notifications_0.0.0-backend-notifications-20260727191136_1785179506101_0.7681178447202468","host":"s3://npm-registry-packages-npm-production"}},"0.0.0-backend-notifications-20260728122350":{"name":"@aws-amplify/backend-notifications","version":"0.0.0-backend-notifications-20260728122350","license":"Apache-2.0","_id":"@aws-amplify/backend-notifications@0.0.0-backend-notifications-20260728122350","maintainers":[{"name":"amzn-oss","email":"osa-3p@amazon.com"},{"name":"aws-amplify-ops","email":"aws-amplify@amazon.com"},{"name":"amplify-studio-uibuilder","email":"aws-amplify-uibuilder@amazon.com"},{"name":"amplify-codegen","email":"amplify-codegen+npm@amazon.com"},{"name":"amplify-data-dev-npm","email":"amplify-data-dev+npm@amazon.com"},{"name":"aws-amplify-data-runtime","email":"amplify-data-dev@amazon.com"}],"homepage":"https://github.com/aws-amplify/amplify-backend#readme","bugs":{"url":"https://github.com/aws-amplify/amplify-backend/issues"},"dist":{"shasum":"2f319c1485b73d284060330830cc6bc5f11f9ea2","tarball":"https://registry.npmjs.org/@aws-amplify/backend-notifications/-/backend-notifications-0.0.0-backend-notifications-20260728122350.tgz","fileCount":59,"integrity":"sha512-6nxpxF32yLJ6JHgvRx+vOMsHLvEocB96ra+jDd+83RWoYugfmg7KGgIKm+eoAKzub9a1LxYl4cRChK/hOlRB7g==","signatures":[{"sig":"MEUCIAd1UdkiFtGzoJCdH/ewwOyWKTUNDLkLtMzNX+F9GpCtAiEAu3NU3VwJZQqB+w1kI117xfV+1OhNj2l9Wz4wGBJwthE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aws-amplify%2fbackend-notifications@0.0.0-backend-notifications-20260728122350","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":728390},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","import":"./lib/index.js","require":"./lib/index.js"}},"gitHead":"3f331c5ba27a9b8764ecfe57e9cd0efe1a4ff537","scripts":{"update:api":"api-extractor run --local","post:compile":"npm run bundle:api-handler && npm run bundle:push-handler && npm run bundle:campaign-association-handler","bundle:api-handler":"esbuild src/lambda/api/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/handler-asset/index.js --external:@aws-sdk/*","bundle:push-handler":"esbuild src/lambda/push/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/push-handler-asset/index.js --external:@aws-sdk/*","bundle:campaign-association-handler":"esbuild src/lambda/campaign-association/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/campaign-association-asset/index.js --external:@aws-sdk/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1f66289f-b8ec-4a18-ab2a-828722c9f096"}},"repository":{"url":"git+https://github.com/aws-amplify/amplify-backend.git","type":"git"},"_npmVersion":"11.16.0","description":"> **Preview:** this package is in preview / prerelease. Its API and generated > resources may change in a future release.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@aws-amplify/plugin-types":"0.0.0-backend-notifications-20260728122350","@aws-amplify/platform-core":"^1.11.1","@aws-amplify/backend-output-schemas":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@types/aws-lambda":"^8.10.137","@aws-sdk/client-iam":"^3.936.0","@aws-sdk/client-connect":"^3.1079.0","@aws-sdk/client-dynamodb":"^3.936.0","@aws-sdk/client-pinpoint":"^3.936.0","@aws-sdk/client-qconnect":"^3.1079.0","@aws-sdk/client-customer-profiles":"^3.936.0","@aws-sdk/client-connectcampaignsv2":"^3.1079.0","@aws-amplify/backend-output-storage":"^1.3.5","@aws-amplify/backend-platform-test-stubs":"^0.3.10"},"peerDependencies":{"constructs":"^10.0.0","aws-cdk-lib":"^2.234.1"},"_npmOperationalInternal":{"tmp":"tmp/backend-notifications_0.0.0-backend-notifications-20260728122350_1785241441648_0.035154607979544616","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@aws-amplify/backend-notifications","version":"1.0.0","license":"Apache-2.0","_id":"@aws-amplify/backend-notifications@1.0.0","maintainers":[{"name":"amzn-oss","email":"osa-3p@amazon.com"},{"name":"aws-amplify-ops","email":"aws-amplify@amazon.com"},{"name":"amplify-studio-uibuilder","email":"aws-amplify-uibuilder@amazon.com"},{"name":"amplify-codegen","email":"amplify-codegen+npm@amazon.com"},{"name":"amplify-data-dev-npm","email":"amplify-data-dev+npm@amazon.com"},{"name":"aws-amplify-data-runtime","email":"amplify-data-dev@amazon.com"}],"homepage":"https://github.com/aws-amplify/amplify-backend#readme","bugs":{"url":"https://github.com/aws-amplify/amplify-backend/issues"},"dist":{"shasum":"d1ca7f810ea314efc3df0c5097d936924f8e0a4e","tarball":"https://registry.npmjs.org/@aws-amplify/backend-notifications/-/backend-notifications-1.0.0.tgz","fileCount":59,"integrity":"sha512-JQkO3NsnJRsniwJVYVvREO7JbGtl4S3isb/ExtrJt9/JZTqblJSSU9TYYF9zXlSjnuRQpclFafBX0OAYutWOQw==","signatures":[{"sig":"MEYCIQDB+hUhIaJPjQwcMyAMfqArC9v9j2hHgF6TjrDcrnpQ9AIhAItLwCpm9O4eg6shOP7fiJckSnoV606dpDZZwDBrROvL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aws-amplify%2fbackend-notifications@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":729041},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","import":"./lib/index.js","require":"./lib/index.js"}},"gitHead":"8a0c91809329d4982517b45073145078b637b6ae","scripts":{"update:api":"api-extractor run --local","post:compile":"npm run bundle:api-handler && npm run bundle:push-handler && npm run bundle:campaign-association-handler","bundle:api-handler":"esbuild src/lambda/api/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/handler-asset/index.js --external:@aws-sdk/*","bundle:push-handler":"esbuild src/lambda/push/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/push-handler-asset/index.js --external:@aws-sdk/*","bundle:campaign-association-handler":"esbuild src/lambda/campaign-association/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/campaign-association-asset/index.js --external:@aws-sdk/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1f66289f-b8ec-4a18-ab2a-828722c9f096"}},"repository":{"url":"git+https://github.com/aws-amplify/amplify-backend.git","type":"git"},"_npmVersion":"11.16.0","description":"`defineNotifications` is an Amplify Gen2 backend factory that gives your app an Amazon Connect Customer Profiles–backed write API for user identification and mobile-device registration, plus a push-delivery Lambda that Amazon Connect journeys invoke to se","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@aws-amplify/plugin-types":"^1.12.2","@aws-amplify/platform-core":"^1.11.1","@aws-amplify/backend-output-schemas":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/aws-lambda":"^8.10.137","@aws-sdk/client-iam":"^3.936.0","@aws-sdk/client-connect":"^3.1079.0","@aws-sdk/client-dynamodb":"^3.936.0","@aws-sdk/client-pinpoint":"^3.936.0","@aws-sdk/client-qconnect":"^3.1079.0","@aws-sdk/client-customer-profiles":"^3.936.0","@aws-sdk/client-connectcampaignsv2":"^3.1079.0","@aws-amplify/backend-output-storage":"^1.3.5","@aws-amplify/backend-platform-test-stubs":"^0.3.10"},"peerDependencies":{"constructs":"^10.0.0","aws-cdk-lib":"^2.234.1"},"_npmOperationalInternal":{"tmp":"tmp/backend-notifications_1.0.0_1785336044965_0.038455519054432674","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@aws-amplify/backend-notifications","version":"2.0.0","license":"Apache-2.0","_id":"@aws-amplify/backend-notifications@2.0.0","maintainers":[{"name":"amzn-oss","email":"osa-3p@amazon.com"},{"name":"aws-amplify-ops","email":"aws-amplify@amazon.com"},{"name":"amplify-studio-uibuilder","email":"aws-amplify-uibuilder@amazon.com"},{"name":"amplify-codegen","email":"amplify-codegen+npm@amazon.com"},{"name":"amplify-data-dev-npm","email":"amplify-data-dev+npm@amazon.com"},{"name":"aws-amplify-data-runtime","email":"amplify-data-dev@amazon.com"}],"homepage":"https://github.com/aws-amplify/amplify-backend#readme","bugs":{"url":"https://github.com/aws-amplify/amplify-backend/issues"},"dist":{"shasum":"560396cfe5526ef20ed80ff313888e4f1c3f5f75","tarball":"https://registry.npmjs.org/@aws-amplify/backend-notifications/-/backend-notifications-2.0.0.tgz","fileCount":66,"integrity":"sha512-Hv6fGK2BVf6w4YpQypcfcHzcQp5T5Om9gxUWaN6KoVw1OnrGFBM0mb7nwNJ7vfIbjJjsDhDUvV9+Mi0T7FwxGg==","signatures":[{"sig":"MEUCIFmluA6DsKwVQ30Vf/AgPBGF7tURiDxUoMANHJcwwjiEAiEAtd+hvdodP3vQQpT3C3kMyFksjTTT+VykMNmwP/zVZcY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aws-amplify%2fbackend-notifications@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":848156},"main":"lib/index.js","type":"module","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","import":"./lib/index.js","require":"./lib/index.js"}},"gitHead":"33718dc2a2a44e619e92f6a5de2380fc7eaf2758","scripts":{"update:api":"api-extractor run --local","post:compile":"npm run bundle:api-handler && npm run bundle:push-handler && npm run bundle:campaign-association-handler && npm run bundle:identity-resolution-handler","bundle:api-handler":"esbuild src/lambda/api/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/handler-asset/index.js --external:@aws-sdk/*","bundle:push-handler":"esbuild src/lambda/push/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/push-handler-asset/index.js --external:@aws-sdk/*","bundle:identity-resolution-handler":"esbuild src/lambda/identity-resolution/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/identity-resolution-asset/index.js --external:@aws-sdk/*","bundle:campaign-association-handler":"esbuild src/lambda/campaign-association/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/campaign-association-asset/index.js --external:@aws-sdk/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1f66289f-b8ec-4a18-ab2a-828722c9f096"}},"repository":{"url":"git+https://github.com/aws-amplify/amplify-backend.git","type":"git"},"_npmVersion":"11.19.0","description":"`defineNotifications` is an Amplify Gen2 backend factory that gives your app an Amazon Connect Customer Profiles–backed write API for user identification and mobile-device registration, plus a push-delivery Lambda that Amazon Connect journeys invoke to se","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@aws-amplify/plugin-types":"^1.12.3","@aws-amplify/platform-core":"^1.11.2","@aws-amplify/backend-output-schemas":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/aws-lambda":"^8.10.137","@aws-sdk/client-iam":"^3.936.0","@aws-sdk/client-connect":"^3.1079.0","@aws-sdk/client-dynamodb":"^3.936.0","@aws-sdk/client-pinpoint":"^3.936.0","@aws-sdk/client-qconnect":"^3.1079.0","@aws-sdk/client-customer-profiles":"^3.936.0","@aws-sdk/client-connectcampaignsv2":"^3.1079.0","@aws-amplify/backend-output-storage":"^1.3.6","@aws-amplify/backend-platform-test-stubs":"^0.3.10"},"peerDependencies":{"constructs":"^10.0.0","aws-cdk-lib":"^2.254.0"},"_npmOperationalInternal":{"tmp":"tmp/backend-notifications_2.0.0_1788787667132_0.45641619837663394","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@aws-amplify/backend-notifications","version":"2.0.1","type":"module","publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/aws-amplify/amplify-backend.git"},"exports":{".":{"types":"./lib/index.d.ts","import":"./lib/index.js","require":"./lib/index.js"}},"main":"lib/index.js","types":"lib/index.d.ts","scripts":{"post:compile":"npm run bundle:api-handler && npm run bundle:push-handler && npm run bundle:campaign-association-handler && npm run bundle:identity-resolution-handler","bundle:api-handler":"esbuild src/lambda/api/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/handler-asset/index.js --external:@aws-sdk/*","bundle:push-handler":"esbuild src/lambda/push/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/push-handler-asset/index.js --external:@aws-sdk/*","bundle:campaign-association-handler":"esbuild src/lambda/campaign-association/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/campaign-association-asset/index.js --external:@aws-sdk/*","bundle:identity-resolution-handler":"esbuild src/lambda/identity-resolution/handler.ts --bundle --platform=node --target=node20 --format=cjs --outfile=lib/identity-resolution-asset/index.js --external:@aws-sdk/*","update:api":"api-extractor run --local"},"license":"Apache-2.0","dependencies":{"@aws-amplify/backend-output-schemas":"^1.8.0","@aws-amplify/platform-core":"^1.12.0","@aws-amplify/plugin-types":"^1.13.0"},"devDependencies":{"@aws-amplify/backend-output-storage":"^1.4.0","@aws-amplify/backend-platform-test-stubs":"^0.3.10","@aws-sdk/client-connect":"^3.1079.0","@aws-sdk/client-connectcampaignsv2":"^3.1079.0","@aws-sdk/client-customer-profiles":"^3.936.0","@aws-sdk/client-dynamodb":"^3.936.0","@aws-sdk/client-iam":"^3.936.0","@aws-sdk/client-pinpoint":"^3.936.0","@aws-sdk/client-qconnect":"^3.1079.0","@types/aws-lambda":"^8.10.137"},"peerDependencies":{"aws-cdk-lib":"^2.257.0","constructs":"^10.0.0"},"gitHead":"f60180aaff47a704b997270ab8f97def7a1ce953","_id":"@aws-amplify/backend-notifications@2.0.1","description":"`defineNotifications` is an Amplify Gen2 backend factory that gives your app an Amazon Connect Customer Profiles–backed write API for user identification and mobile-device registration, plus a push-delivery Lambda that Amazon Connect journeys invoke to se","bugs":{"url":"https://github.com/aws-amplify/amplify-backend/issues"},"homepage":"https://github.com/aws-amplify/amplify-backend#readme","_nodeVersion":"24.20.0","_npmVersion":"11.19.0","dist":{"integrity":"sha512-G+edyRtVK1jV+5m46aGbPyPpQTYxNhQ+tV3q06dCWcCGyMejLbdtZ6R3uxM0WC5O7izS9rIEVt1vDDpRhbR2cg==","shasum":"985e5d9f1054fc3269c9c99349a860f2ec836f32","tarball":"https://registry.npmjs.org/@aws-amplify/backend-notifications/-/backend-notifications-2.0.1.tgz","fileCount":66,"unpackedSize":848403,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aws-amplify%2fbackend-notifications@2.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDRlxArr8wOZfilS7EYeLMRJ8vFN4kGY23qzLR7jZjB/QIhANAkoJJdGLYLLRP5Is3gXQfdbjb9X8KMAzITkDgKVAu1"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1f66289f-b8ec-4a18-ab2a-828722c9f096"}},"directories":{},"maintainers":[{"name":"amzn-oss","email":"osa-3p@amazon.com"},{"name":"aws-amplify-ops","email":"aws-amplify@amazon.com"},{"name":"amplify-studio-uibuilder","email":"aws-amplify-uibuilder@amazon.com"},{"name":"amplify-codegen","email":"amplify-codegen+npm@amazon.com"},{"name":"amplify-data-dev-npm","email":"amplify-data-dev+npm@amazon.com"},{"name":"aws-amplify-data-runtime","email":"amplify-data-dev@amazon.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/backend-notifications_2.0.1_1789028636353_0.47055869039345133"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-08T08:48:44.703Z","modified":"2026-09-10T08:23:56.895Z","0.1.0":"2026-07-08T08:48:45.062Z","0.0.0-test-20260708085627":"2026-07-08T08:56:35.928Z","0.0.0-test-20260713133831":"2026-07-13T13:38:39.810Z","0.0.0-test-20260714113330":"2026-07-14T11:33:38.610Z","0.0.0-test-20260715203250":"2026-07-15T20:32:58.282Z","0.0.0-backend-notifications-20260721155548":"2026-07-21T15:55:58.515Z","0.0.0-backend-notifications-20260727191136":"2026-07-27T19:11:46.263Z","0.0.0-backend-notifications-20260728122350":"2026-07-28T12:24:01.864Z","1.0.0":"2026-07-29T14:40:45.150Z","2.0.0":"2026-09-07T13:27:47.292Z","2.0.1":"2026-09-10T08:23:56.529Z"},"bugs":{"url":"https://github.com/aws-amplify/amplify-backend/issues"},"license":"Apache-2.0","homepage":"https://github.com/aws-amplify/amplify-backend#readme","repository":{"type":"git","url":"git+https://github.com/aws-amplify/amplify-backend.git"},"description":"`defineNotifications` is an Amplify Gen2 backend factory that gives your app an Amazon Connect Customer Profiles–backed write API for user identification and mobile-device registration, plus a push-delivery Lambda that Amazon Connect journeys invoke to se","maintainers":[{"name":"amzn-oss","email":"osa-3p@amazon.com"},{"name":"aws-amplify-ops","email":"aws-amplify@amazon.com"},{"name":"amplify-studio-uibuilder","email":"aws-amplify-uibuilder@amazon.com"},{"name":"amplify-codegen","email":"amplify-codegen+npm@amazon.com"},{"name":"amplify-data-dev-npm","email":"amplify-data-dev+npm@amazon.com"},{"name":"aws-amplify-data-runtime","email":"amplify-data-dev@amazon.com"}],"readme":"# @aws-amplify/backend-notifications\n\n`defineNotifications` is an Amplify Gen2 backend factory that gives your app an\nAmazon Connect Customer Profiles–backed write API for user identification and\nmobile-device registration, plus a push-delivery Lambda that Amazon Connect\njourneys invoke to send mobile push notifications.\n\n## Installation\n\n```bash\nnpm i @aws-amplify/backend-notifications\n```\n\nIt has peer dependencies on `aws-cdk-lib` (`^2.234.1`) and `constructs`\n(`^10.0.0`), which an Amplify Gen2 project already provides via\n`@aws-amplify/backend`.\n\n## Prerequisites\n\n- An Amplify Gen2 backend defined with `defineBackend`.\n- An **`auth` resource** (`defineAuth`) in that backend, so a Cognito Identity\n  Pool is available: the write routes are authorized with IAM/SigV4 and callers\n  sign requests with their Identity Pool credentials. `defineNotifications`\n  throws a `NotificationsMissingAuthError` when the backend has no auth\n  resource.\n- To identify **guest** callers, enable unauthenticated (guest) access on the\n  auth resource's Identity Pool.\n- To enable push channels, store the platform credentials as Amplify secrets\n  (`npx ampx sandbox secret set ...`) and reference them with `secret()` — an\n  APNs `.p8` token signing key for Apple, an FCM service-account JSON for\n  Android.\n\n## What it provisions\n\n- An `AmplifyProfile` Customer Profiles object type, keyed on the\n  server-derived `principalId` — the Cognito Identity Pool `identityId`, which\n  is populated for both authenticated and guest callers.\n- A **DynamoDB devices table** as the device store: partition key `deviceId`, a\n  global secondary index on `principalId`, and native TTL expiry.\n- An HTTP API and write Lambda exposing three routes, all authorized with\n  **IAM/SigV4** and callable with authenticated or guest Identity Pool\n  credentials:\n  - `POST /identify-user` — find-or-create the caller's profile.\n  - `POST /register-device` — register a device to the caller.\n  - `POST /remove-device` — remove a device the caller owns.\n- A **push-delivery Lambda** that serves as the target of an Amazon Connect\n  journey custom action, together with an AWS End User Messaging (Pinpoint)\n  application through which push messages are delivered.\n- Optional APNs and GCM/FCM channel configuration on that application, when\n  `apns` / `fcm` are supplied.\n\nThe factory grants `execute-api:Invoke` on the three routes to the Identity\nPool's authenticated and unauthenticated roles, so identify, register and\nremove work for signed-in and guest callers with no extra IAM wiring. The\nconstruct also exposes those route ARNs as `routeInvokeArns`.\n\n## Modes\n\n`defineNotifications` accepts a discriminated union of props, selected by\nwhether you pass `domainName`.\n\n### Create mode (`domainName` omitted)\n\n`defineNotifications()` is the zero-config default. It provisions, with\ngenerated stable names:\n\n- a new Amazon Connect instance (`CONNECT_MANAGED`) and a new Customer Profiles\n  domain, with the object type registered into it;\n- an Outbound Campaigns v2 association between the new domain and the new\n  instance (via a Lambda-backed CDK custom resource at deploy time), so Connect\n  journeys can target these profiles;\n- a message-templates knowledge base associated with the instance, so push\n  templates are authorable in the Amazon Connect console.\n\nCreate mode accepts two extra props:\n\n- `instanceAlias?: string` — override the generated Connect instance alias.\n- `expirationDays?: number` — object-type record expiration in days\n  (default `366`).\n\nCreate-mode resources use the default `RemovalPolicy.DESTROY`, so deleting the\nstack deletes the Connect instance, the Customer Profiles domain, and the\nprofile data stored in it.\n\n### Attach mode (`domainName` provided)\n\nPassing `domainName` attaches to that existing Customer Profiles domain — for\nexample the `amazon-connect-<instance>` domain Amazon Connect creates when\nCustomer Profiles is enabled on your instance. The object type is registered\ninto the domain additively; the domain's own integrations (CTR, Outbound\nCampaigns) and Identity Resolution setting are left as they are, and\nassociating a pre-existing domain with Outbound Campaigns stays under your\ncontrol. `instanceAlias` and `expirationDays` apply to create mode, so they are\nnot part of attach-mode props.\n\n## Usage\n\n### Zero-config\n\n```ts\nimport { defineBackend } from '@aws-amplify/backend';\nimport { defineNotifications } from '@aws-amplify/backend-notifications';\nimport { auth } from './auth/resource';\n\ndefineBackend({\n  auth,\n  notifications: defineNotifications(),\n});\n```\n\n### Create mode with push channels\n\n```ts\nimport { defineBackend, secret } from '@aws-amplify/backend';\nimport { defineNotifications } from '@aws-amplify/backend-notifications';\nimport { auth } from './auth/resource';\n\ndefineBackend({\n  auth,\n  notifications: defineNotifications({\n    instanceAlias: 'my-app-connect',\n    expirationDays: 366,\n    apns: {\n      tokenKey: secret('APNS_SIGNING_KEY'), // contents of AuthKey_XXXX.p8\n      tokenKeyId: 'ABC123DEFG',\n      teamId: 'DEF456GHIJ',\n      bundleId: 'com.example.app',\n      sandbox: false,\n    },\n    fcm: {\n      serviceJson: secret('FCM_SERVICE_ACCOUNT_JSON'),\n    },\n  }),\n});\n```\n\n### Attach to an existing Customer Profiles domain\n\n```ts\nimport { defineBackend } from '@aws-amplify/backend';\nimport { defineNotifications } from '@aws-amplify/backend-notifications';\nimport { auth } from './auth/resource';\n\ndefineBackend({\n  auth,\n  notifications: defineNotifications({\n    domainName: 'amazon-connect-amplify',\n  }),\n});\n```\n\n## Client configuration output\n\nThe API endpoint and region are surfaced under the `notifications` section of\n`amplify_outputs.json` at the `amazon_connect` key (client-config schema\nv1.5), which amplify-js reads:\n\n```json\n{\n  \"notifications\": {\n    \"amazon_connect\": {\n      \"endpoint\": \"https://<api-id>.execute-api.<region>.amazonaws.com\",\n      \"aws_region\": \"<region>\"\n    }\n  }\n}\n```\n\nClients reach the routes by convention — `POST {endpoint}/identify-user`,\n`POST {endpoint}/register-device` and `POST {endpoint}/remove-device` — signing\neach request with SigV4 using authenticated or guest Identity Pool credentials.\n\n## Push channels\n\nAPNs uses token authentication: supply the `.p8` signing key through\n`secret()` as `apns.tokenKey`, along with the plain `tokenKeyId`, `teamId` and\n`bundleId` identifiers. Set `apns.sandbox: true` to configure the APNs sandbox\nchannel for development builds; flipping this value on a deployed stack\nreplaces the channel resource, since production and sandbox APNs channels are\ndistinct CloudFormation resource types.\n\nFCM uses HTTP v1 authentication: supply the Google service-account JSON through\n`secret()` as `fcm.serviceJson`, and the GCM channel is configured with\n`DefaultAuthenticationMethod = TOKEN`.\n\nSecret values are resolved at deploy time and are not written into the\nCloudFormation template as plain text. When `apns` or `fcm` is omitted, that\nchannel is left unset and the End User Messaging application is still created,\nso you can enable the channel yourself afterwards with your own credentials:\n\n- **Console:** AWS End User Messaging → your application → **Push\n  notifications** → enable APNs and/or FCM and upload your credentials.\n- **CLI:**\n\n  ```bash\n  aws pinpoint update-gcm-channel \\\n    --application-id <APP_ID> \\\n    --gcm-channel-request 'Enabled=true,DefaultAuthenticationMethod=TOKEN,ServiceJson=<FCM_SERVICE_ACCOUNT_JSON>'\n\n  aws pinpoint update-apns-channel \\\n    --application-id <APP_ID> \\\n    --apns-channel-request 'Enabled=true,TokenKey=<KEY>,TokenKeyId=<KEY_ID>,TeamId=<TEAM_ID>,BundleId=<BUNDLE_ID>'\n  ```\n\nPush delivery reaches a device once a channel is enabled with credentials valid\nfor a real Apple or Google project.\n\n## Creating message templates\n\nPush copy is authored as **Amazon Q in Connect message templates** with\n`channelSubtype = PUSH`. In create mode the resource provisions an empty\n`MESSAGE_TEMPLATES` knowledge base and associates it with the Connect instance\n(`Q_MESSAGE_TEMPLATES` integration), and the templates inside it are authored by\nyou.\n\nAt send time the push-delivery Lambda resolves the template for a journey run:\n\n1. `connectcampaignsv2:DescribeCampaign` on the campaign id from the event gives\n   the Connect instance id.\n2. `connect:ListIntegrationAssociations` filtered to `Q_MESSAGE_TEMPLATES` gives\n   the knowledge base id.\n3. `wisdom:ListMessageTemplates` on that knowledge base selects the template\n   whose `channelSubtype` is `PUSH` **and** whose **name equals the journey\n   custom-action block name** (`ActionId`) that invoked the Lambda.\n4. `wisdom:RenderMessageTemplate` renders `<templateId>:$ACTIVE_VERSION` per\n   profile, so only the published version is delivered.\n\nSo the template name is the wiring: name the template exactly as the journey's\ncustom-action block. Authoring is a manual step performed with the `qconnect`\nAPI/CLI against the knowledge base:\n\n```bash\naws qconnect create-message-template \\\n  --knowledge-base-id <KB_ID> \\\n  --name 'Push Notification' \\\n  --channel-subtype PUSH \\\n  --content '{\"push\":{\"apns\":{\"title\":\"Hello {{Attributes.firstName}}\",\"body\":{\"content\":\"Your order shipped.\"}},\"fcm\":{\"title\":\"Hello {{Attributes.firstName}}\",\"body\":{\"content\":\"Your order shipped.\"}}}}'\n\naws qconnect create-message-template-version \\\n  --knowledge-base-id <KB_ID> \\\n  --message-template-id <TEMPLATE_ID>\n```\n\nNotes on authoring:\n\n- Publishing a version is required: rendering targets `$ACTIVE_VERSION`, so a\n  saved draft alone is not delivered and a new version is published for each\n  copy change.\n- Per-platform content maps to channels as `push.apns` → `APNS` (and\n  `APNS_SANDBOX`) and `push.fcm` → `GCM`; a platform entry needs both a title\n  and a body to be used.\n- Personalization uses `{{Attributes.<key>}}` variables, resolved from the\n  profile's data: the profile's top-level fields (such as `firstName`) and each\n  entry of its `attributes` map are passed as flat custom attributes.\n- A variable with no matching profile value stays literal in the rendered copy,\n  and the Lambda delivers its default copy for that profile rather than the\n  unresolved text. The same default-copy path applies when no campaign metadata,\n  knowledge base association, or matching template is found.\n- Find the knowledge base id with\n  `aws connect list-integration-associations --instance-id <INSTANCE_ID> --integration-type Q_MESSAGE_TEMPLATES`\n  (the `IntegrationArn` ends in `knowledge-base/<KB_ID>`). In attach mode,\n  associate a `MESSAGE_TEMPLATES` knowledge base with your Connect instance so\n  this lookup resolves.\n\nSee the [Amazon Q in Connect message template API reference](https://docs.aws.amazon.com/amazon-q-connect/latest/APIReference/API_CreateMessageTemplate.html).\n\n## Construct resources\n\n`AmplifyNotifications` exposes the underlying CDK resources through\n`resources` — `apiFunction`, `httpApi`, `profileObjectType`, `devicesTable`,\n`pushFunction`, `pushApplication`, plus `apnsChannel` / `gcmChannel` when a\nchannel is configured and `connectInstance` / `profilesDomain` in create mode.\nIt also exposes `apiEndpoint`, `domainName`, `pushFunctionArn`,\n`routeInvokeArns`, `createsResources`, the three route paths, and\n`connectInstanceId` / `connectInstanceArn` in create mode.\n\n## Known limitations\n\n- **At-least-once push delivery.** The push-delivery Lambda reports a\n  per-profile `retryable` flag so Amazon Connect can retry a transient failure.\n  The per-item `IdempotencyToken` Connect sends on each batch entry is captured\n  for logging, and de-duplication of retried sends is a planned follow-up, so a\n  retried profile may receive the same push notification more than once.\n","readmeFilename":"README.md"}