{"_id":"@customyai/payload-plugin-customy-connect","_rev":"2-dbe4e9662f0f70ac3c0ffebd3b766ba0","name":"@customyai/payload-plugin-customy-connect","dist-tags":{"latest":"1.1.0"},"versions":{"1.0.0":{"name":"@customyai/payload-plugin-customy-connect","version":"1.0.0","license":"MIT","_id":"@customyai/payload-plugin-customy-connect@1.0.0","maintainers":[{"name":"customyco","email":"admin@customy.ai"}],"dist":{"shasum":"b0cf1a660f7dca21eb69d69183ef27033cdf957f","tarball":"https://registry.npmjs.org/@customyai/payload-plugin-customy-connect/-/payload-plugin-customy-connect-1.0.0.tgz","fileCount":11,"integrity":"sha512-cUaBB4XmsqAtrvAOtsU5PrKxp3O0dotmEq+4HnZtqJIVvlv0gm04D87PMzXJvh9qJcvoU32SkxFLmWGGnqdibA==","signatures":[{"sig":"MEUCIDwed4cn3fj9nIqM3ukCILbQNnIm5LKLT91wrcxb/mb3AiEApfBpUszggXU/ZDFF/h6zEgG0m3bODT/hzOMbhn3HQH8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13372},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"0e0e44ed30a2c5cb8fe970f5801f364d20f362b7","scripts":{"build":"tsc -p tsconfig.json","clean":"rm -rf dist","prepublishOnly":"yarn clean && yarn build"},"_npmUser":{"name":"customyco","email":"admin@customy.ai"},"_npmVersion":"10.9.3","description":"Payload plugin for Customy integration with signing, retry, and observability hooks.","directories":{},"_nodeVersion":"22.19.0","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.2"},"peerDependencies":{"payload":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/payload-plugin-customy-connect_1.0.0_1771561217585_0.8338466073609947","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@customyai/payload-plugin-customy-connect","version":"1.1.0","description":"Payload plugin for Customy integration with signing, retry, and observability hooks.","license":"MIT","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"scripts":{"build":"tsc -p tsconfig.json","clean":"rm -rf dist","prepublishOnly":"yarn clean && yarn build"},"peerDependencies":{"payload":"^3.0.0"},"devDependencies":{"typescript":"^5.9.2"},"_id":"@customyai/payload-plugin-customy-connect@1.1.0","gitHead":"0e0e44ed30a2c5cb8fe970f5801f364d20f362b7","_nodeVersion":"22.19.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-OuwL9z/PanN96xlYtyeD2ET5JhZ5nFi/b8Ijdl+2osKWEYAMsy6fpWVSpGZ3DanRBw6Sm/C01/V7J19w2Xq+Zw==","shasum":"94e892e4d5a5393f5e6c9224ba41e466ceab57c1","tarball":"https://registry.npmjs.org/@customyai/payload-plugin-customy-connect/-/payload-plugin-customy-connect-1.1.0.tgz","fileCount":23,"unpackedSize":26815,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIEEsBgUlLC13FDPa/j8Y22OV5UPmwotLRLyZv1Q19FgDAiEAm5mquni2Jt3lZ51EDqe12BbUWQKKEERKb3KMHP0NSh8="}]},"_npmUser":{"name":"customyco","email":"admin@customy.ai"},"directories":{},"maintainers":[{"name":"customyco","email":"admin@customy.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/payload-plugin-customy-connect_1.1.0_1771597167071_0.012936575540747786"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-20T04:20:17.502Z","modified":"2026-02-20T14:19:27.337Z","1.0.0":"2026-02-20T04:20:17.730Z","1.1.0":"2026-02-20T14:19:27.222Z"},"license":"MIT","description":"Payload plugin for Customy integration with signing, retry, and observability hooks.","maintainers":[{"name":"customyco","email":"admin@customy.ai"}],"readme":"# @customyai/payload-plugin-customy-connect\n\nPayload plugin to connect customer Payload projects with Customy integration APIs.\n\n## Features\n- Signed webhook delivery (`x-customy-signature`)\n- Canonical ingest support (`/api/integrations/ingest/lead`)\n- Backward-compatible fallback to legacy webhook endpoint\n- Retry with configurable attempts/backoff/timeout\n- Optional delivery log writes to `webhook-deliveries` collection\n- Modular kernel lifecycle hooks (`beforeRender`, `afterRender`, `beforeSubmit`, `afterSubmit`, `onEvent`)\n- Built-in modules (`forms`, `design`, `behavior`) with extension support\n\n## Install\n\n```bash\nyarn add @customyai/payload-plugin-customy-connect\n```\n\n## Usage\n\n```ts\nimport { buildConfig } from \"payload\";\nimport { customyConnect } from \"@customyai/payload-plugin-customy-connect\";\n\nexport default buildConfig({\n  // ...\n  plugins: [\n    customyConnect({\n      apiUrl: process.env.CUSTOMY_API_URL || \"http://localhost:3005\",\n      apiKey: process.env.CUSTOMY_CMS_API_KEY || \"\",\n      webhookSecret: process.env.CUSTOMY_WEBHOOK_SECRET || \"\",\n      design: {\n        tokens: {\n          primaryColor: \"#4f46e5\",\n          borderRadius: 12,\n        },\n      },\n      behavior: {\n        rules: [\n          {\n            id: \"tag-new-lead\",\n            event: \"submission.created\",\n            then: { type: \"tag\", value: \"new-lead\" },\n          },\n        ],\n      },\n      retry: {\n        maxAttempts: Number(process.env.CUSTOMY_WEBHOOK_MAX_ATTEMPTS || 3),\n        baseDelayMs: Number(process.env.CUSTOMY_WEBHOOK_BASE_DELAY_MS || 350),\n        timeoutMs: Number(process.env.CUSTOMY_WEBHOOK_TIMEOUT_MS || 5000),\n      },\n    }),\n  ],\n});\n```\n\n## Required env vars\n\n```env\nCUSTOMY_API_URL=http://localhost:3005\nCUSTOMY_CMS_API_KEY=...\nCUSTOMY_WEBHOOK_SECRET=...\nCUSTOMY_WEBHOOK_MAX_ATTEMPTS=3\nCUSTOMY_WEBHOOK_BASE_DELAY_MS=350\nCUSTOMY_WEBHOOK_TIMEOUT_MS=5000\n```\n\n## Publishing\n\n```bash\n# from package directory\nyarn install\nyarn build\nnpm login\nnpm publish --access public\n```\n\n## Release notes\n\n### 1.1.0\n- Added modular kernel and lifecycle hook pipeline.\n- Added built-in forms/design/behavior modules.\n- Kept backward-compatible webhook fallback path.\n\n","readmeFilename":"README.md"}