Your API keys
loadingCreate a server
The response carries the server id and its hourlyCents and monthlyCents, already at your discounted price. The first hour or month is charged to your balance on creation.
curl -X POST https://api.noderush.io/v1/nodes \
-H "Authorization: Bearer $NODERUSH_KEY" \
-H "Content-Type: application/json" \
-d '{
"hostname": "customer-42-web",
"regionCode": "fra",
"imageId": "<image id>",
"skuId": "<plan id>",
"cpu": 2, "ramGB": 4, "diskGB": 80,
"billingMode": "MONTHLY"
}'01
Authenticate
Create a key in the dashboard; it acts for your whole workspace. Send it as a bearer token on every request.
curl https://api.noderush.io/v1/me -H "Authorization: Bearer $NODERUSH_KEY"
02
Pick a region, image and plan
Regions, images and plans are public. A plan gives you the skuId the deploy call needs; any cpu, ram and disk that fits the plan works, and the price follows the spec.
curl https://api.noderush.io/v1/regions curl https://api.noderush.io/v1/images curl "https://api.noderush.io/v1/plans?regionCode=fra"
03
Wait for it, then read the credentials once
Poll the server until status is ONLINE (usually one to three minutes). The initial root password can be read exactly once; store it or hand it to your customer immediately.
curl https://api.noderush.io/v1/nodes/<id> -H "Authorization: Bearer $NODERUSH_KEY" curl https://api.noderush.io/v1/nodes/<id>/credentials -H "Authorization: Bearer $NODERUSH_KEY"
Endpoints at a glance
Base URL https://api.noderush.io. JSON in and out, prices in cents (USD), 500 requests a minute per key.
GET
/v1/me
Who the key acts as
GET
/v1/regions
Regions and whether they can take a server right now
GET
/v1/images
Linux and Windows images
GET
/v1/plans?regionCode=
Plans in a region, with list prices
GET
/v1/nodes
Your servers
POST
/v1/nodes
Create a server (202, then poll)
GET
/v1/nodes/:id
One server, with status and IPs
GET
/v1/nodes/:id/credentials
Initial root password, readable once
POST
/v1/nodes/:id/reboot | stop | start
Power actions
POST
/v1/nodes/:id/rebuild
Reinstall from an image
POST
/v1/nodes/:id/rescale
Resize to another plan (disk cannot shrink)
POST
/v1/nodes/:id/snapshots
Take a snapshot
POST
/v1/nodes/:id/firewall
Replace the firewall rule set
DELETE
/v1/nodes/:id
Destroy a server (billing stops at the hour)
GET
/v1/billing/balance
Your prepaid balance
GET
/v1/webhooks
Subscribe to node.online, node.failed, invoice.paid and more
Webhooks are configured in the dashboard and signed with a per-endpoint secret. Set one up to get node.online and node.failed instead of polling.