Developer API

Your servers, from your own code.

A REST API with an OpenAPI document. Order, renew and upgrade servers, run them, and hear back through signed webhooks.

$ export EXY_API_TOKEN="exy_…"
$ curl "https://api.exy.sh/v1/servers?limit=10" \
-H "Authorization: Bearer $EXY_API_TOKEN"

Lists your servers, ten at a time. Create the token under Settings → API in your dashboard.

What your code can do

All of this is in the OpenAPI document today, with the scope each request needs.

Order servers

Price a server with a quote, then order it, paid from your balance. An idempotency key makes a retried order charge once.

Renew and upgrade

Renew a server for another term or move it to a larger plan, both paid from your balance. Or let it renew by itself.

Run them

Start, stop, restart and reinstall, set the login password, open a browser console and follow each action until it finishes.

Firewall

Switch a server's firewall on or off, apply a preset, and add, replace or remove inbound allow rules.

Snapshots and backups

Take, restore and delete snapshots and backups, and schedule tasks for a server.

Webhooks

Hear when a server is ready, suspended, unsuspended or terminated, or when an order is refunded. Every delivery is signed with HMAC-SHA256.

The ground rules

Base URL
https://api.exy.sh/v1
Authentication
A bearer token that starts with exy_, limited to the scopes you pick. It expires after at most 365 days.
Limits
60 requests per minute per account, across all of its tokens. Above that the answer is 429 with Retry-After.
Errors
Every error has the same shape: a stable code for your program and a message for people.
Compatibility
Within /v1 we only add endpoints, optional fields and response fields. Anything else comes as /v2.

Documentation

Selling servers to your own customers? See the reseller programme.

Your server is one payment away.

Windows or Linux, five locations, no subscription.

Ask a question
System
Plan
Location
 

Paid up front. Nothing renews by itself.