Change an instance's plan or cancel it
Move an instance to another billing period, see what the switch costs first, get a different size, or cancel the instance.
In the dashboard
An instance's Billing tab shows its plan and what it costs. On this tab you move an instance that has a plan price to another billing period, such as from monthly to quarterly, or cancel it.
An instance you order on your own account is billed by what it uses, so it has no plan price and no billing period to change (How Cloud Compute is billed). Its tab opens with a Cost card, and the tab does not offer Change plan…. The API answers a plan change with This service is billed by what it uses, so it has no plan price to change. Cancelling works for every instance. An instance that keeps a plan price shows a Billing by use card with Switch to usage billing….
The size you ordered sets the instance's vCPU, memory, disk and monthly traffic allowance, and it stays with the instance. Get a different size explains how to move to another one.
Change a service's plan and Cancel a service explain how plan changes and cancellations are billed for every product. This page covers what they do to an instance.
Before you begin
Section titled Before you begin- The service must be active. You cannot change the plan of a suspended instance until you pay the open invoice.
- A plan change shuts the instance down and starts it again, even though its size stays the same. Choose a time when a short outage does no harm.
See what an instance costs
Section titled See what an instance costsOn an instance billed by use, the Cost card is the first card of the Billing tab. It shows:
- This month so far
- What the instance has cost this month, from its use of memory, CPU, disk and data out after the amounts Server access includes.
- A typical month, Most a month, Idle, memory and disk and Stopped, disk only
- What a month costs for the instance's size with the CPU at 10% of its vCPUs, with every vCPU busy all month, with no CPU in use and with the instance stopped all month. A stopped instance pays for its disk only.
- Server access
Activewhen your account has Server access, orNeeded. A card under it says what Server access includes, which is data out each month, and See plans opens the plan page when you need it.
Under the figures, each rate says what it is a price for, and a line for each meter lists what the instance used this month, how much of it was included and what it cost. A line is missing until the instance has used that meter. When the instance is stopped, the card says it costs its disk only.
Check your cost and estimate a month
Section titled Check your cost and estimate a monthUnder the Cost card, an instance billed by use has a Check your cost card. It shows This month so far for the instance and Whole account by month end, says when the instance is stopped and costs its disk only, and has two buttons:
- Estimate a month
- Opens the estimator for the instance's size. Change Hours a day it runs, CPU use and Data out a month to see what a month costs. Hide the estimate closes it. The same estimator is in the plan section of the Cloud Compute order, so you can try a size before you buy.
- Query a charge…
- Asks us about one hour of this instance's usage. It opens a support conversation that names the row (See your usage, budgets and credit activity).
POST /api/v1/billing/estimate prices the same scenario from the API, over the price book the order quote uses. It writes nothing:
curl -X POST https://api.coritan.com/api/v1/billing/estimate \
-H "Authorization: Bearer $CORITAN_TOKEN" -H "Content-Type: application/json" \
-d '{"components": [{"product": "cloud_compute", "size": "rx-2", "hours_per_day": 24, "cpu_share": 0.1}]}'
The answer has each priced lines entry, the subtotal, the plan_cost of Server access when your account lacks it, the total and the notes that say what the estimate assumes. An unknown product, account, cycle or size answers 422 with the words it takes.
Move to usage billing
Section titled Move to usage billingAn instance that keeps a plan price shows a Billing by use card with Switch to usage billing…. Select it to open the Switch to usage billing page and read what the last 30 days would have cost both ways. The page shows the flat price now, the cost on usage billing and the difference. When we have not measured the instance for a month yet, it says We have not measured this instance for a month yet, so this assumes it ran all month. An instance billed by the month or longer moves when its paid period ends or Now, with the unused days credited. Choose it under When it moves, then select Switch and the instance's name to move it. The move is one way (Switch a service to usage billing explains the rules). The preview is POST /api/v1/billing/services/{id}/switch?preview=1.
See your plan
Section titled See your plan- In the dashboard, go to Cloud Compute, open the instance and select the Billing tab.
- Read the Current plan card.
- Product
- The product you ordered.
- Plan
- The size and billing period the instance is on now, such as
RX-2 (Monthly). - Price
- What the plan costs for each billing period.
- Status
- The state of the service, such as
ActiveorSuspended. - Next renewal
- The date of the next invoice. An hourly instance shows Used this month instead: what it has cost so far this month.
- Set up
- When we created the instance.
- Service ID
- The number to quote when you contact support.
The Activity table under the card lists setup, renewals and plan changes, with who made each one.
Once account plans open on your account, the Console tab also shows the plan, its price and the add-ons on the instance, on the Plan and add-ons card. Add an add-on there, or open the order page of a floating IP or a DDoS Shield profile for the instance (Read the rest of the tab).
Change the billing period
Section titled Change the billing periodThese steps are for an instance that keeps a plan price: one you ordered before usage billing.
- On the Billing tab, select Change plan… on the Current plan card. A Change plan page opens.
- In New plan, choose the plan you want. The cards are the other billing periods of the instance's size, such as
RX-2 (Quarterly), each with its price. - Read What it costs today. It fills in as soon as you choose a plan, with no button to press. It shows how many days are left in this billing period and what the switch costs today:
- Credit for unused time is the value of the days left on your current plan.
- Charge for the new plan is the price of the new plan for the same days.
- Due now is the difference.
- When you move to a cheaper plan, Credit you receive is the credit we give you.
- Select Apply change, or "Pay $X and change plan" when your credit does not cover Due today. You land back on the Billing tab.
If the switch needs a payment, we take it from your credit balance first. When your balance does not cover all of it, the dashboard shows Pay the upgrade invoice to apply the plan change. Pay the invoice, and the new plan applies once it is paid.
When the new plan applies, we shut the instance down and start it again. An instance that was stopped starts too.
Get a different size
Section titled Get a different sizeYou cannot change the size of an existing instance. The New plan list offers only the billing periods of the size you ordered. To move to more or fewer vCPUs, more memory, a larger disk or a larger traffic allowance:
Create an instance of the size you want.
Copy your data to it, for example with
rsyncover SSH:Shellrsync -a /srv/ alex@203.0.113.20:/srv/Point your DNS records at the new instance's addresses:
Arecords at its IPv4 address, andAAAArecords at its IPv6 address if it has one. Floating IPs that you ordered on their own can move to the new instance instead, as Attach and detach a floating IP describes.Cancel the old instance, as below.
Important
The IPv4 address and the IPv6 /64 that came with the old instance cannot move with you. We release the IPv4 address when the old instance ends, even if you have attached it to the new one. The /64 cannot leave its instance at all. The new instance gets a /64 of its own where its location has IPv6.
Contact support if you need help with the move.
Cancel the instance
Section titled Cancel the instanceOn the Billing tab, select Cancel service… on the Cancel service card.
Under When, choose when the instance ends:
- At the end of the current term keeps it running until the paid period ends. The dialog shows the date.
- Immediately stops and deletes it now. We do not refund the unused time.
An hourly instance has no choice. It ends at once, and billing stops at the hour.
Type
canceland select Cancel service.
An instance that ends at the end of its term keeps running until then. Its card on the Cloud Compute list says "This instance ends on" and the date, with Open Billing, which opens this tab. The note does not count under Needs attention (Notes are not problems).
Warning
The dialog also offers Take a snapshot first. It keeps nothing for an instance. The instance's snapshots are stored on its disk, and we delete its backups with it. Copy anything you need off the instance before you cancel.
When the instance ends, we delete:
- the instance and its disk, with every snapshot on it
- every backup of the instance
- the IPv4 address that came with the instance, wherever it is attached, which goes back to our pool
- the instance's IPv6 /64, which goes back to our pool, and every reverse DNS name in it
- the instance's tags
Other floating IPs you attached to the instance are detached and stay on your account. We keep billing them until you cancel them. DNS records and web proxies that point at the instance also stay, so delete them once the instance has gone.
Result
Section titled ResultAfter a plan change, the Current plan card shows the new plan and the Activity table lists the change. The instance runs again once it has restarted.
After you cancel at the end of the term, the tab shows Cancellation scheduled with the date the instance ends. The instance keeps running until then. After an immediate cancellation, we stop and delete the instance.
Troubleshooting
Section titled TroubleshootingNo other plan to switch toin place of Change plan…- The instance's size has no other billing period on offer. Keep the plan, or move to another size as Get a different size describes.
Could not check that the host can take the new plan. Try again in a moment.- The check the dashboard runs before a plan change did not get an answer. Select Apply change again. If the message stays, contact support.
Service is not active- The instance is suspended, or its service has ended. Pay the open invoice to lift a suspension, then change the plan.
This service is billed by what it uses, so it has no plan price to change.- The instance is billed by use. It has no billing period to change, so keep it as it is, or move to another size as Get a different size describes.
Pay the upgrade invoice to apply the plan change- Your credit balance did not cover the switch. Pay the invoice. The plan applies when it is paid.
- The instance is stopped after a plan change
- The restart did not finish. Select Start in the instance header. If it does not start, contact support.
Cancellation scheduled- You asked for the instance to end at the end of its term. To keep it, contact support before the date shown.
Suspended- We suspended the instance, usually for an unpaid invoice. The alert gives the reason. Pay the open invoice to restore it.
Related
Section titled Related- How Cloud Compute is billed
- Change a service's plan
- Cancel a service
- How hourly billing works
- Create an instance
- How instance traffic is counted
- Cancel a floating IP
With the API
Section titled With the APIA plan change goes through the services API, which accepts the instance's UUID as the service reference. An instance billed by use answers upgrade-preview and change-plan with 409 and the code usage_billed. Read the service to find its product_id and pricing_id, then read the product. Its pricing list holds one row for each billing period, and each row's id is a plan you can move to.
curl -s https://api.coritan.com/api/v1/services/$INSTANCE_UUID \
-H "Authorization: Bearer $CORITAN_TOKEN"
curl -s https://api.coritan.com/api/v1/products/$PRODUCT_ID \
-H "Authorization: Bearer $CORITAN_TOKEN"
Preview the cost, then change the plan:
curl -s "https://api.coritan.com/api/v1/services/$INSTANCE_UUID/upgrade-preview?new_pricing_id=42" \
-H "Authorization: Bearer $CORITAN_TOKEN"
curl -s -X POST https://api.coritan.com/api/v1/services/$INSTANCE_UUID/change-plan \
-H "Authorization: Bearer $CORITAN_TOKEN" \
-H "Content-Type: application/json" \
-d '{"new_pricing_id": 42}'
The response's status is applied when the new plan applies now. It is payment_required when the switch waits for its invoice, whose number is in invoice_id. A plan from another product answers 400 with New pricing must belong to the same product or Plan changes must stay within the same hardware tier. The change also answers 400 with Service is not active or Already on this plan, and 404 with Pricing tier not found.
Before it changes the plan, the dashboard sends the new plan's vCPU, memory and disk to resize-preview. A field you leave out keeps its current value.
curl -s -X POST https://api.coritan.com/api/v1/client/vps/$INSTANCE_UUID/resize-preview \
-H "Authorization: Bearer $CORITAN_TOKEN" \
-H "Content-Type: application/json" \
-d '{"cpu_cores": 2, "memory_mb": 2048, "disk_gb": 40}'
{
"current": {"cpu_cores": 2, "memory_mb": 2048, "disk_gb": 40},
"requested": {"cpu_cores": 2, "memory_mb": 2048, "disk_gb": 40},
"hotplug_eligible": true,
"requires_stop": false
}
hotplug_eligible is true when the disk stays the same, vCPU and memory do not shrink, and the instance is running. requires_stop is its opposite. A plan change restarts the instance whatever they say. A disk_gb smaller than the instance's disk answers 400 with Disk can only grow.
To cancel, send immediate as true to end the instance now, or false (the default) to end it at the end of its term. reason is optional. keep_snapshot keeps nothing for an instance, and the response's snapshot_taken is always false.
curl -s -X POST https://api.coritan.com/api/v1/services/$INSTANCE_UUID/cancel \
-H "Authorization: Bearer $CORITAN_TOKEN" \
-H "Content-Type: application/json" \
-d '{"immediate": false, "reason": "Moved to a larger instance"}'
The response gives the new status and the termination_date. A second request answers 400 with Service already scheduled for end-of-term termination or Service already cancelled/terminated.
The Cloud Compute API reference and the services API reference list every field.
API operations on this page
| Method | Path | What it does |
|---|---|---|
POST | /api/v1/client/vps/{uuid}/resize-preview | Capacity/mode preview for a plan change resize (billing via /services change-plan) |
POST | /api/v1/billing/estimate | What a mix of products would cost a month |