Docs/Integrations/n8n

n8n

Installing the community node, and the three resources it exposes — endpoints, JSON bins and usage analytics.

n8n is the one platform here you can self-host, which means the workflow, the data passing through it and the credentials all stay on infrastructure you control. The community node is also the most capable of the four connectors: it reaches your JSON bins and your usage figures, not only the endpoints.

@apiverve/n8n-nodes-apiverve on npm

Installing

n8n Cloud or Desktop. Settings → Community Nodes → Install a community node, enter @apiverve/n8n-nodes-apiverve, accept the risk prompt and install. Desktop needs a restart afterwards.

Self-hosted, npm. Install into your n8n instance and restart it:

bash
npm install @apiverve/n8n-nodes-apiverve
pm2 restart n8n        # or: systemctl restart n8n

Docker. Either declare it on the service:

yaml
# docker-compose.yml
services:
  n8n:
    image: n8nio/n8n
    environment:
      - N8N_CUSTOM_EXTENSIONS=@apiverve/n8n-nodes-apiverve

or install into a running container:

bash
docker exec -it n8n npm install @apiverve/n8n-nodes-apiverve
docker restart n8n
Community nodes are disabled on some instances

Self-hosted n8n will refuse to install community nodes unless N8N_COMMUNITY_PACKAGES_ENABLED is true, and some managed hosts turn it off. If the install option is missing from Settings rather than failing, that is the cause.

Credentials

Add an APIVerve credential and paste your API key. It is testable from the credential screen before you build anything, and is reusable across every workflow on the instance.

Unlike the Zapier and Make connectors, which run an account-connection step that refuses them, the n8n node authenticates with the key directly — so a sub-key works here. On a self-hosted instance several people can reach, that is the better credential: scope it to the endpoints your workflows actually call, and you can revoke it without touching anything else on the account.

If you rotate the key, update the credential once and every workflow recovers.

Three resources

The node does more than call endpoints, which is what distinguishes it from the other three connectors.

API

Execute any endpoint in the catalog. Selecting one loads its parameters, generated from the same schema the API validates against, so required fields are marked required and fixed-value parameters render as dropdowns.

File-upload endpoints are not listed

9 of the 367 endpoints take a file upload and are filtered out of the dropdown, because the node sends JSON rather than multipart. Use n8n's HTTP Request node for those.

JSON Bin

Read and write JSON bins from a workflow. Three operations:

OperationWhat it does
ListEvery bin on the account
GetOne bin's contents by id
UpdateReplace one bin's contents by id

Creating and deleting bins are not exposed on the node — create the bin in the dashboard, then let the workflow read and write it. In practice that is the right shape anyway: a bin used as workflow state should be created deliberately and updated automatically, not created by a workflow that might run twice.

This is the piece worth building around. A bin gives a workflow somewhere to keep state between runs — a high-water mark, a set of ids already processed, a cached lookup table — without standing up a database next to n8n.

Analytics

Returns the account's usage: plan, calls used, calls remaining, and the renewal date. Every plan gets that summary. On Pro and Mega the response also carries the daily trend and the per-endpoint breakdown; on other plans those fields are absent and the response says so. See the analytics endpoint for the exact shape.

Analytics calls are never billed, on any plan. A workflow that checks the balance before doing expensive work costs nothing to run, which makes this the natural first node in any scheduled job:

Analytics → IF tokensRemaining is below your floor → Slack alert and stop; otherwise carry on.

What it costs

Only the API resource costs anything, one call per execution at the endpoint's rate. Loading the endpoint list and its parameters is free, and so is the analytics resource. JSON bin operations follow the bin rules on that page.

Self-hosting removes n8n's own execution pricing from the equation but not ours — a loop over 1,000 items on your own hardware is still 1,000 calls. n8n's Loop Over Items node with a batch size and a Wait node between batches is the standard way to stay under the rate limit on a big run.

When it fails

401 on the credential test. The key was rotated, mistyped, or truncated on paste. A sub-key is not a cause here — the node accepts one. The credential screen tests before you build, so this surfaces immediately rather than mid-run.

400 — a parameter is wrong and the message names it. n8n shows the exact JSON sent on the node's input tab; compare it against the endpoint's reference page.

429 — the rate limit, or the account is out of calls. On n8n this is nearly always a loop running flat out. Add a Wait node inside it. To tell the two causes apart, run the Analytics resource — if tokensRemaining is healthy, it is the rate limit.

A node times out. Connector calls are cut off at 25 seconds. Rendering endpoints can exceed that; use the HTTP Request node with your own timeout.

The node is not in the palette after installing. Restart the instance. On Docker, a container install is lost when the container is recreated — use the N8N_CUSTOM_EXTENSIONS form above if your container gets rebuilt.

Next

Power Automate covers the Microsoft side, Pipedream is the hosted equivalent for code-first steps, and JSON bins covers the storage the node reads and writes. Integrations compares all of them side by side.

Was this page helpful?

Last updated