n8n node
Provision and manage Krova Cloud Cubes from your n8n workflows with the n8n-nodes-krova community node — no glue code, no HTTP Request nodes, no custom scripts.
n8n-nodes-krova is the official n8n community node for Krova Cloud. It wraps the Krova Cloud REST API so you can create, power off, start, restart, list, and delete Cubes, manage domains, snapshots, backups, TCP mappings, and webhook endpoints, and query the catalog (regions, images, pricing) from a workflow — no glue code and no HTTP Request nodes.
Install
Install from within n8n — no CLI, no server restart:
- Open Settings → Community Nodes and select Install.
- Enter the package name
n8n-nodes-krova. - Acknowledge the community-node risk prompt and select Install.
The Krova Cloud node appears in the node panel immediately. For self-hosted or manual setups, see the official community-nodes installation guide.
Add your credential
Every operation authenticates with a Krova Cloud API credential.
- Create an API key per space from Settings → API keys in the dashboard (see API keys) — it looks like
kro_…. - In n8n, add a new Krova Cloud API credential and paste the key into API Key. It's sent as the
X-API-KEYheader and stored encrypted by n8n. - Leave Base URL at
https://krova.cloud/api/v1(override only for self-hosted or test endpoints). - Click Test — n8n calls
GET /space(an authenticated endpoint) to confirm the key is valid and the endpoint is reachable.
Operations
Cube
Cubes are scoped to a space, so every Cube operation takes a Space ID.
- List — all Cubes in a space.
- Get — a single Cube by ID.
- Create — Space ID, Name, Image, SSH Public Key, vCPU, RAM (GB), Disk (GB); optional Region and User Data.
- Power off — power off a running Cube (preserves data, stops compute billing).
- Start — start a stopped Cube.
- Restart — cold-restart a Cube.
- Set Termination Protection — turn termination protection on or off. While it is on, Delete fails with a 409 until you turn it off.
- Delete — delete a Cube (asynchronous).
Create field notes: Image is a slug or ID from Catalog → Get Images; SSH Public Key is written to the login user's ~/.ssh/authorized_keys at boot (must start with ssh-ed25519, ssh-rsa, ecdsa-sha2-*, …); vCPU / RAM / Disk are sent as nested resources; Region is optional (leave empty to auto-select); User Data is an optional cloud-init script (max 16 KB).
Domain
Custom domains for a Cube (space-scoped).
- Create — attach a custom domain to a Cube.
- Update — change a domain's origin scheme, or its PROXY protocol under Additional Fields. Choose Leave Unchanged for the origin scheme to change only the PROXY protocol.
- List — the custom domains attached to a Cube.
- Delete — remove a domain.
Snapshot
Point-in-time Cube snapshots (space-scoped).
- Create — take a manual snapshot of a Cube (counts against your tier's manual-snapshot cap).
- List — snapshots for a Cube.
- Restore — roll a Cube back to a snapshot.
- Delete — remove a manual snapshot.
Backup
A Cube's disk and configuration, kept after the Cube is gone (space-scoped).
- List — the space's backups, newest first.
- Get — one backup by ID.
- Get Download Link — a link to the backup's
.cubearchive, valid for 15 minutes. Anyone holding it can download the disk, so keep it out of logs and messages. - Share — offer another space its own copy, with an optional Idempotency Key. It has 48 hours to accept and pays for its copy from then.
Backup Share
Answer or withdraw a backup offered between spaces. Accept and Decline need the destination space's owner, or a member there with Manage Backups.
- List — pending shares into and out of a space.
- Accept — create this space's own copy, billed for storage from now.
- Decline — turn down a share offered to this space.
- Cancel — withdraw a share this space offered.
TCP Mapping
Expose a TCP port on a Cube through the edge (space-scoped).
- Create — map a public port to a Cube port.
- List — mappings in a space.
- Delete — remove a mapping.
Webhook
Webhook endpoints for a space.
- Create — URL, Events (comma-separated, such as
cube.running, cube.stopped), optional Description. The output carries the signing secret, and this is the only time it is returned: store it in the same workflow. - Get — one endpoint by ID (without its secret).
- List — the endpoints in a space.
- List Deliveries — recent delivery attempts for an endpoint.
- Delete — remove an endpoint.
Catalog
Public read endpoints — the API key is sent but not required.
- Get Regions — regions with available capacity.
- Get Images — available OS images.
- Get Pricing — per-resource hourly rates and volume tiers.
Each operation returns the raw Krova Cloud API response, ready to reference downstream with n8n expressions.
Example: provision by day, power off by night
Pay only for the hours you use, driven entirely from n8n:
- Schedule Trigger (
0 8 * * *) → Krova Cloud (Catalog → Get Images) to resolve the image slug. - Krova Cloud (Cube → Create) with the Space ID, a Name, the image slug, your SSH Public Key, and vCPU / RAM / Disk. The response contains the new Cube's ID.
- A second Schedule Trigger (
0 20 * * *) → Krova Cloud (Cube → List) → Filter → Krova Cloud (Cube → Power off) on each idle Cube ID.
Because a stopped Cube keeps its disk but stops compute billing, this pattern gives you an ephemeral-by-day, zero-compute-by-night box. Swap Power off for Delete to tear it down instead.
Compatibility
Requires an n8n instance with the community-nodes feature enabled and Node.js 22 or newer. Built and tested against n8n-workflow 2.x.
Next steps
- API keys — create the key the credential uses.
- Cubes — sizing, power off/start, and billing.
- TypeScript SDK — the same operations in code, for logic beyond what a workflow expresses.
