n8n-evolviot
v1.0.0
Published
n8n community node to control EvolvIOT devices
Maintainers
Readme
n8n-nodes-evolviot
Community node for n8n that triggers EvolvIOT device control actions through the EvolvIOT REST API.
Installation
- Build the package:
npm install npm run build - In your n8n instance, install the generated
.tgzor point to the folder:npm install /path/to/n8n-nodes-evolviot - Restart n8n so the node and credential types are registered.
Credentials
Add an EvolvIOT API credential with:
- API Key: Key provided by EvolvIOT.
- Base URL (optional): Override if you use a regional or on-prem endpoint.
Node Usage
EvolvIOT (Action Node)
- Drag the EvolvIOT node into your workflow.
- Select your EvolvIOT API credential.
- Configure the properties:
- Base URL: Defaults to
https://api.evolviot.com. - Device ID: Target device identifier.
- Control Key: Loaded dynamically from
/api/n8nDeviceControl/{deviceId}/controlKeys. - Action Type: For binary keys, choose
OnorOff(mapped to the key'sonVal/offVal). - Value: For PWM keys, provide the numeric value to send.
- Base URL: Defaults to
- Execute the workflow. The node sends a control request with
{ "controlKey": "...", "value": ... }.
EvolvIOT Trigger (Polling Trigger)
Use this node when you want workflow start events based on status conditions.
- Drag the EvolvIOT Trigger node into your workflow.
- Select your EvolvIOT API credential.
- Configure:
- Trigger On = Device Status: choose Device, then choose Device State (
OnlineorOffline). - Trigger On = Device Key Status: choose Device, then Control Key, then Action Type (
OnorOff).
- Trigger On = Device Status: choose Device, then choose Device State (
- Activate the workflow. The trigger polls status endpoints and emits when the selected condition transitions to a matching state.
Development
- Build:
npm run build - Output artifacts land in
dist/and are referenced bypackage.jsonvia then8nblock.
Publishing to npm
To publish this node so others can install it with Settings → Community nodes → Install from npm in n8n:
Prerequisites
- npm account (create one at npmjs.com if needed).
- Repository URL in
package.jsonset to your real repo (e.g."url": "git+https://github.com/your-org/n8n-evolviot.git").
Build
npm install npm run buildTest the package locally (optional)
npm packThis creates
n8n-nodes-evolviot-0.1.0.tgz. In another folder with n8n (or a test app), run:npm install /path/to/n8n-evolviot/n8n-nodes-evolviot-0.1.0.tgzRestart n8n and confirm the EvolvIOT nodes appear and work.
Log in to npm (once per machine)
npm loginEnter your npm username, password, and email (or use a token).
Publish
npm publishFor scoped packages (e.g.
@your-org/n8n-nodes-evolviot), use:npm publish --access publicAfter publishing
- Users can install in n8n: Settings → Community nodes → Install from npm and enter
n8n-nodes-evolviot. - To list the node in the n8n integrations directory, follow the instructions on the n8n site for submitting community nodes.
- Users can install in n8n: Settings → Community nodes → Install from npm and enter
Version updates: Bump version in package.json, then run npm run build and npm publish again.
Notes
- The node uses bearer authentication with the supplied API key.
- Errors are surfaced with the item index so you can identify failing rows in a batch.
