Skip to main content

Charges

VMArea is prepaid. Charges come out of your wallet.
  • Create charges the first billing period, plus any add-ons, at once. If the balance is too low the API returns 402.
  • Renewal is charged on the due date. A late payment does not move the next due date.
  • Upgrade (POST /vms/{id}/upgrade) charges the prorated difference for the rest of the current period at once. Downgrades are rejected.
  • Prices are locked when you buy. A later catalog change does not alter an existing server or add-on.
Unused time is not refunded when you delete a server, cancel it or let it lapse. To stop paying, cancel at the end of the period. The server runs until then. See the Refund Policy for the limited exceptions. Read your balance and history with GET /wallet and GET /wallet/transactions, and invoices with GET /invoices. Top-ups are made in the dashboard.

Daily backups

Daily backups are an add-on, priced per server.
  • A backup runs every night.
  • We keep 7 daily and 4 weekly restore points.
  • With the add-on on, you can also take up to 5 manual backups per server with POST /vms/{vmId}/backups.
  • POST /vms/{vmId}/backups/enable turns the add-on on. A new enablement charges the prorated rest of the current period.
  • POST /vms/{vmId}/backups/disable cancels it at renewal. Backups stay active until then.
  • POST /vms/{vmId}/backups/{id}/restore overwrites the server’s disks with that backup.
A server without the add-on has no backups, and nothing can be restored after a deletion.

Snapshots

A snapshot is a point-in-time copy kept next to the server. It is not a backup. You can keep up to 5 per server. Snapshots are charged by the space they use. Each snapshot accrues its own cost at the per-GB price locked when it was created. The accrued amounts are added up and charged as one line on the server’s next renewal. There are no separate daily charges to your wallet. Roll a server back with POST /vms/{vmId}/snapshots/{id}/rollback.

Missed payments

If the wallet cannot cover a renewal, days count from the due date. Servers with deletion protection are powered off but not deleted automatically. These timings can change, and the lifecycle object on GET /services always shows the dates that apply to a service.

Deleting and restoring

DELETE /vms/{id} removes a server.
  • With the Daily backup add-on, the server moves to Recently deleted for 14 days. Its newest nightly backup is kept. Changes made after that backup are lost.
  • Without the add-on, the deletion is final.
  • Pass permanent=true to delete with no restore either way.
  • A protected server returns 409. Remove protection first with PATCH /vms/{id}.
To restore:
  1. GET /vms/recently-deleted lists servers that can still be restored, with restorableUntil and restorePrice.
  2. GET /vms/{id}/restore-quote breaks down the price: one billing period at the locked price, the add-on, and any unpaid invoices of the old server.
  3. POST /vms/{id}/restore creates a replacement server from the final backup and charges the wallet. Pass expectedTotal from the quote. If the price changed you get 409 with QUOTE_CHANGED. A low balance returns 402 with the shortfall.
The replacement has a new id and a new IP address. It keeps the name and hostname. The restore price is a new charge, not a reversal of the earlier one.

Services

GET /services and GET /services/{id} return every service on the account with its status, billing and a lifecycle object. lifecycle.state is one of ACTIVE, ENDING, SUSPENDED, RECENTLY_DELETED or GONE. nextStep and nextStepAt tell you what happens next and when.