{"_id":"@cleanvoice/n8n-nodes-cleanvoice","_rev":"6-6a9e51c9b102e526b3d0040606fd5c42","name":"@cleanvoice/n8n-nodes-cleanvoice","dist-tags":{"latest":"1.0.3"},"versions":{"1.0.1":{"name":"@cleanvoice/n8n-nodes-cleanvoice","version":"1.0.1","keywords":["n8n-community-node-package","cleanvoice","audio","video","ai","processing"],"author":{"name":"Cleanvoice","email":"support@cleanvoice.ai"},"license":"MIT","_id":"@cleanvoice/n8n-nodes-cleanvoice@1.0.1","maintainers":[{"name":"cleanvoice_main","email":"contact@cleanvoice.ai"},{"name":"icebyte","email":"dev@icebyte.io"}],"homepage":"https://cleanvoice.ai","bugs":{"url":"https://github.com/cleanvoice/n8n-nodes-cleanvoice/issues"},"n8n":{"nodes":["dist/nodes/Cleanvoice/Cleanvoice.node.js","dist/nodes/Cleanvoice/CleanvoiceTrigger.node.js"],"credentials":["dist/credentials/CleanvoiceApi.credentials.js"],"n8nNodesApiVersion":1},"dist":{"shasum":"e774f60c4d6569697d9f49050dd0f2e0eb7d4522","tarball":"https://registry.npmjs.org/@cleanvoice/n8n-nodes-cleanvoice/-/n8n-nodes-cleanvoice-1.0.1.tgz","fileCount":24,"integrity":"sha512-/v8/tsz4hwztYeyV1844bSzjFN80318Vfz7UE8hEmMRDRmUF0N3+30NlBccOi4tsErlYJJkhqLota+pbL3C7VA==","signatures":[{"sig":"MEUCIQCKn+BPFIVmXzIZ66IlY/x+8MFvzP5vZ9vjx3JtQmj7kgIgJvko1GPMiqpo5fR/Tn9k1q+P28QZQ7ZL+nGUuVFJxrc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75532},"main":"index.js","engines":{"node":">=20.15"},"gitHead":"8736414f46afaaa85561a3da2a52655e51f49999","scripts":{"dev":"tsc --watch","lint":"eslint nodes credentials package.json","build":"npx rimraf dist && tsc && gulp build:icons","format":"prettier nodes credentials --write","lintfix":"eslint nodes credentials package.json --fix","prepublishOnly":"npm run build && npm run lint -c .eslintrc.prepublish.js nodes credentials package.json"},"_npmUser":{"name":"icebyte","email":"dev@icebyte.io"},"repository":{"url":"git+https://github.com/cleanvoice/n8n-nodes-cleanvoice.git","type":"git"},"_npmVersion":"10.9.2","description":"n8n node for Cleanvoice AI audio and video processing","directories":{},"_nodeVersion":"22.16.0","_hasShrinkwrap":false,"devDependencies":{"gulp":"^5.0.0","eslint":"^8.57.0","prettier":"^3.5.3","typescript":"^5.8.2","@typescript-eslint/parser":"~8.32.0","eslint-plugin-n8n-nodes-base":"^1.16.3"},"peerDependencies":{"n8n-workflow":"*"},"_npmOperationalInternal":{"tmp":"tmp/n8n-nodes-cleanvoice_1.0.1_1753673842661_0.7033198800408127","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@cleanvoice/n8n-nodes-cleanvoice","version":"1.0.2","keywords":["n8n-community-node-package","cleanvoice","audio","video","ai","processing"],"author":{"name":"Cleanvoice","email":"support@cleanvoice.ai"},"license":"MIT","_id":"@cleanvoice/n8n-nodes-cleanvoice@1.0.2","maintainers":[{"name":"cleanvoice_main","email":"contact@cleanvoice.ai"},{"name":"icebyte","email":"dev@icebyte.io"}],"homepage":"https://cleanvoice.ai","bugs":{"url":"https://github.com/cleanvoice/n8n-nodes-cleanvoice/issues"},"n8n":{"nodes":["dist/nodes/Cleanvoice/Cleanvoice.node.js","dist/nodes/Cleanvoice/CleanvoiceTrigger.node.js"],"credentials":["dist/credentials/CleanvoiceApi.credentials.js"],"n8nNodesApiVersion":1},"dist":{"shasum":"6a2d8316f6e7566407e05da33afde6d66e517c2c","tarball":"https://registry.npmjs.org/@cleanvoice/n8n-nodes-cleanvoice/-/n8n-nodes-cleanvoice-1.0.2.tgz","fileCount":24,"integrity":"sha512-6O9l5S/UE1qx3LH9jw2OBLGOs3eDI0M/lKOLmXflEqs3YfIQG93DzQLmjGj9K/3vPWc7D3OWD3hRyxeAcoGvww==","signatures":[{"sig":"MEUCIQDy3Eakt3Te6KXusoioCHmYqORjnEni7F197S6xKFjFlAIgD5fHImquCRuSBBMUiX+HLnanyCShb0JemxY6TSFkPgE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75596},"main":"index.js","engines":{"node":">=20.15"},"gitHead":"e6de83ba26d7af492030d9dc4b41192434887eb8","scripts":{"dev":"tsc --watch","lint":"eslint nodes credentials package.json","build":"npx rimraf dist && tsc && gulp build:icons","format":"prettier nodes credentials --write","lintfix":"eslint nodes credentials package.json --fix","prepublishOnly":"npm run build && npm run lint -c .eslintrc.prepublish.js nodes credentials package.json"},"_npmUser":{"name":"icebyte","email":"dev@icebyte.io"},"repository":{"url":"git+https://github.com/cleanvoice/n8n-nodes-cleanvoice.git","type":"git"},"_npmVersion":"10.9.2","description":"n8n node for Cleanvoice AI audio and video processing","directories":{},"_nodeVersion":"22.16.0","_hasShrinkwrap":false,"devDependencies":{"gulp":"^5.0.0","eslint":"^8.57.0","prettier":"^3.5.3","typescript":"^5.8.2","@typescript-eslint/parser":"~8.32.0","eslint-plugin-n8n-nodes-base":"^1.16.3"},"peerDependencies":{"n8n-workflow":"*"},"_npmOperationalInternal":{"tmp":"tmp/n8n-nodes-cleanvoice_1.0.2_1753718156210_0.5984723683271995","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@cleanvoice/n8n-nodes-cleanvoice","version":"1.0.3","description":"n8n node for Cleanvoice AI audio and video processing","keywords":["n8n-community-node-package","cleanvoice","audio","video","ai","processing"],"license":"MIT","homepage":"https://cleanvoice.ai","author":{"name":"Cleanvoice","email":"support@cleanvoice.ai"},"repository":{"type":"git","url":"git+https://github.com/cleanvoice/n8n-nodes-cleanvoice.git"},"engines":{"node":">=20.15"},"main":"index.js","scripts":{"build":"npx rimraf dist && tsc && gulp build:icons","dev":"tsc --watch","format":"prettier nodes credentials --write","lint":"eslint nodes credentials package.json","lintfix":"eslint nodes credentials package.json --fix","prepublishOnly":"npm run build && npm run lint -c .eslintrc.prepublish.js nodes credentials package.json"},"n8n":{"n8nNodesApiVersion":1,"credentials":["dist/credentials/CleanvoiceApi.credentials.js"],"nodes":["dist/nodes/Cleanvoice/Cleanvoice.node.js","dist/nodes/Cleanvoice/CleanvoiceTrigger.node.js"]},"devDependencies":{"@typescript-eslint/parser":"~8.32.0","eslint":"^8.57.0","eslint-plugin-n8n-nodes-base":"^1.16.3","gulp":"^5.0.0","prettier":"^3.5.3","typescript":"^5.8.2"},"peerDependencies":{"n8n-workflow":"*"},"_id":"@cleanvoice/n8n-nodes-cleanvoice@1.0.3","gitHead":"6728548b5f7a51fad3dc70a76b620a106f3d4ed8","bugs":{"url":"https://github.com/cleanvoice/n8n-nodes-cleanvoice/issues"},"_nodeVersion":"22.18.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-7BDTYV5qabZNuoGV23+4SDX2FZiebWdC/4T3VRwllhhoBXTBxHFyR37RHDYyEeQpwP5uo0ywD3w+DEDr1vAD2w==","shasum":"2d6df79b2acf3a35d7a169b74051a4284a14a5f4","tarball":"https://registry.npmjs.org/@cleanvoice/n8n-nodes-cleanvoice/-/n8n-nodes-cleanvoice-1.0.3.tgz","fileCount":24,"unpackedSize":75653,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIHRcGCOt9lOnEXNcuCNEjLQU9TeVQi8nZB0Z1Xz1RaFbAiEAlfp/0PkSE7jOI0vxNr0RySiLWz1AP+nV0JH2c8GQxY0="}]},"_npmUser":{"name":"cleanvoice_main","email":"contact@cleanvoice.ai"},"directories":{},"maintainers":[{"name":"cleanvoice_main","email":"contact@cleanvoice.ai"},{"name":"icebyte","email":"dev@icebyte.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/n8n-nodes-cleanvoice_1.0.3_1773489647685_0.4694782053987978"},"_hasShrinkwrap":false}},"time":{"created":"2025-07-28T03:37:22.588Z","modified":"2026-03-14T12:00:48.005Z","1.0.0":"2025-07-24T06:23:22.557Z","1.0.1":"2025-07-28T03:37:22.852Z","1.0.2":"2025-07-28T15:55:56.384Z","1.0.3":"2026-03-14T12:00:47.827Z"},"bugs":{"url":"https://github.com/cleanvoice/n8n-nodes-cleanvoice/issues"},"author":{"name":"Cleanvoice","email":"support@cleanvoice.ai"},"license":"MIT","homepage":"https://cleanvoice.ai","keywords":["n8n-community-node-package","cleanvoice","audio","video","ai","processing"],"repository":{"type":"git","url":"git+https://github.com/cleanvoice/n8n-nodes-cleanvoice.git"},"description":"n8n node for Cleanvoice AI audio and video processing","maintainers":[{"name":"cleanvoice_main","email":"contact@cleanvoice.ai"},{"name":"icebyte","email":"dev@icebyte.io"}],"readme":"# n8n-nodes-cleanvoice\n\nThis is an n8n community node. It lets you use [Cleanvoice AI](https://cleanvoice.ai) in your n8n workflows.\n\nCleanvoice AI is an advanced audio and video processing service that removes filler words, mouth sounds, background noise, and other unwanted audio artifacts from recordings using artificial intelligence. It helps content creators, podcasters, and video producers automatically clean their audio to create more professional-sounding content.\n\n[n8n](https://n8n.io/) is a [fair-code licensed](https://docs.n8n.io/reference/license/) workflow automation platform.\n\n[Installation](#installation)  \n[Operations](#operations)  \n[Credentials](#credentials)  \n[Compatibility](#compatibility)  \n[Usage](#usage)  \n[Resources](#resources)  \n\n## Installation\n\nFollow the [installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) in the n8n community nodes documentation.\n\n1. Go to **Settings** > **Community Nodes**\n2. Select **Install**\n3. Enter `n8n-nodes-cleanvoice`\n4. Agree to the risks of using community nodes (if prompted)\n5. Select **Install**\n\nAfter installation restart n8n to register the new nodes.\n\n## Operations\n\nThis package contains two nodes:\n\n### Cleanvoice AI Node\n- **Create Edit**: Submit audio or video files for AI processing to remove filler words, mouth sounds, and background noise\n\n### Cleanvoice AI Trigger Node  \n- **Watch Completions**: Monitors for completed edit tasks and triggers when processing is finished\n\n## Credentials\n\nTo use these nodes, you need a Cleanvoice AI account and API key.\n\n### Prerequisites\n1. Sign up for a [Cleanvoice AI account](https://cleanvoice.ai)\n2. Generate an API key from your Cleanvoice dashboard\n\n### Setting up credentials in n8n\n1. Go to **Credentials** in your n8n instance\n2. Click **+ Create New**\n3. Search for \"Cleanvoice AI API\" and select it\n4. Enter your API key from Cleanvoice\n5. Click **Save**\n\nThe credential includes a built-in test to verify your API key is working correctly.\n\n## Compatibility\n\n- Minimum n8n version: 1.0.0\n- Tested with n8n versions: 1.0.0+\n- Node API version: 1\n\n## Usage\n\n### Basic Audio Processing Workflow\n\n1. **Add the Cleanvoice AI node** to your workflow\n2. **Configure the node**:\n   - Select your Cleanvoice AI credentials\n   - Set Resource to \"Edit\"\n   - Set Operation to \"Create\"\n   - Enter the file URL of your audio/video file\n   - Choose upload type (Audio or Video)\n   - Select a processing template\n\n3. **File URL**: Can be any publicly accessible URL or use n8n's file handling capabilities\n4. **Templates**: The node dynamically loads available processing templates from your Cleanvoice account based on upload type\n\n### Example: Process Podcast Episode\n\n```json\n{\n  \"nodes\": [\n    {\n      \"name\": \"Manual Trigger\",\n      \"type\": \"n8n-nodes-base.manualTrigger\"\n    },\n    {\n      \"name\": \"Cleanvoice AI\",\n      \"type\": \"cleanvoice\",\n      \"parameters\": {\n        \"resource\": \"edit\",\n        \"operation\": \"create\",\n        \"fileUrl\": \"https://example.com/podcast-episode.mp3\",\n        \"uploadType\": \"single track\",\n        \"template\": \"your-template-id\"\n      },\n      \"credentials\": {\n        \"cleanvoiceApi\": \"your-cleanvoice-credentials\"\n      }\n    }\n  ]\n}\n```\n\n### Using the Trigger Node\n\nThe Cleanvoice AI Trigger node monitors for completed processing tasks and fires when new tasks are detected:\n\n1. **Add the trigger node** to start a new workflow\n2. **Configure monitoring**:\n   - Select your credentials\n   - Choose upload type to monitor\n   - Select template to filter completions\n3. **Important Behavior**: The trigger only fires for tasks that are completed **after** the trigger workflow is activated. It establishes a baseline on the first run and will not trigger for tasks that were already completed before activation.\n4. **Deduplication**: The trigger maintains a list of already-processed task IDs to prevent duplicate triggers\n5. **Time Window**: Only monitors tasks from the last 7 days to keep the processed task list manageable\n6. **Workflow continues** with the processed file data when new completions are detected\n\n**Note**: When you first activate a trigger workflow, it will scan existing completed tasks to establish a baseline but will not trigger on them. Only newly completed tasks after activation will trigger the workflow.\n\n### Processing Different File Types\n\n**Audio Files** (upload type: \"Audio\"):\n- MP3, WAV, M4A, FLAC\n- Podcasts, interviews, voice recordings\n- Background music removal, filler word detection\n\n**Video Files** (upload type: \"Video\"):  \n- MP4, MOV, AVI\n- Video podcasts, tutorials, presentations\n- Audio track cleaning while preserving video\n\n### Output Data\n\nThe node returns comprehensive information about the processing task:\n- Task ID and status\n- Download URLs for processed files\n- Processing statistics (e.g., filler words removed)\n- Timeline markers for various audio editing software\n- Transcription and summarization data (if enabled)\n\n### Error Handling\n\nThe node includes proper error handling:\n- API authentication errors\n- Invalid file URLs\n- Processing failures\n- Rate limiting\n\nEnable \"Continue on Fail\" to handle errors gracefully in production workflows.\n\n## Resources\n\n* [n8n community nodes documentation](https://docs.n8n.io/integrations/#community-nodes)\n* [Cleanvoice AI API Documentation](https://api.cleanvoice.ai/docs)\n* [Cleanvoice AI Website](https://cleanvoice.ai)\n* [Cleanvoice AI Support](mailto:support@cleanvoice.ai)\n\n## License\n\n[MIT](LICENSE.md)\n","readmeFilename":"README.md"}