# List account activity Source: https://docs.advinservers.com/api-reference/account-activity/list-account-activity https://console.advinservers.com/docs/openapi.json get /audit-logs ### Overview Lists activity in the current team, newest first. API keys cannot read personal account events such as sign-ins, sessions, billing details or API key creation. Support activity is omitted. Filter by `filter[action]`, `filter[ip_address]` or `filter[*]` for text search. Search a server's short ID with `filter[*]`; `filter[server_id]` requires an internal numeric ID. Sort with `sort=created_at` or `sort=-created_at`. `per_page` defaults to 25 and is limited to 1 to 100. `server` is null for events without a server, and `actor` is null for automatic events. ### Permissions Requires the account permission `audit.read` (View account audit log). # Accept the terms of service Source: https://docs.advinservers.com/api-reference/account/accept-the-terms-of-service https://console.advinservers.com/docs/openapi.json post /account/setup/terms ### Overview Records acceptance of the current policies. Send `accepted` as true; other values return 422. The policy revision is selected by the panel. Returns setup progress with `terms_accepted` set to true. Repeating the request makes no further change. ### Permissions Requires the account permission `account.update` (Change the account). # Check account setup progress Source: https://docs.advinservers.com/api-reference/account/check-account-setup-progress https://console.advinservers.com/docs/openapi.json get /account/setup ### Overview Returns account setup progress. `complete` is true when email verification and terms acceptance are finished. `outstanding` counts unfinished steps. If `required` is false, no setup is needed. `details_complete` reports whether billing details are complete, but does not count as a setup step. ### Permissions Requires the account permission `account.read` (View the account). # Get account details Source: https://docs.advinservers.com/api-reference/account/get-account-details https://console.advinservers.com/docs/openapi.json get /account ### Overview Returns billing contact details, account email, balance, currency and the account portal URL. Missing profile values are null. `email_verified` is null when verification status is unknown. Balance amounts are formatted for display and include partial payments; do not parse them as numbers. Returns 400 if billing is unavailable or disabled. ### Permissions Requires the account permission `account.read` (View the account). # Update account details Source: https://docs.advinservers.com/api-reference/account/update-account-details https://console.advinservers.com/docs/openapi.json patch /account ### Overview Updates billing contact details and returns the full account response. Send every profile field. `first_name`, `last_name`, `address1`, `city`, `postcode`, `country` and `phone_number` need values. Send empty strings to clear `company_name`, `address2`, `state` or `tax_id`. Use a two-letter country code and a phone number starting with `+` and the country code. Other fields are ignored. Contact support to change the account email. Returns 400 with an explanation if billing rejects the change. ### Permissions Requires the account permission `account.update` (Change the account). # Delete a backup Source: https://docs.advinservers.com/api-reference/backups/delete-a-backup https://console.advinservers.com/docs/openapi.json delete /servers/{server}/backups/{backup} ### Overview Permanently deletes the backup and its stored files. Backups created before the current owner acquired the server return 404. ### Permissions Requires the `backup.delete` (Delete backups) permission for the selected team. Resources outside that team return 404. # Delete multiple backups Source: https://docs.advinservers.com/api-reference/backups/delete-multiple-backups https://console.advinservers.com/docs/openapi.json post /servers/{server}/backups/bulk/delete ### Overview Permanently deletes up to 100 backups. Send 1 to 100 IDs as `uuids`. Stored backup files are deleted and cannot be recovered. Missing or inaccessible IDs are skipped. Locked backups are kept. The response counts deleted, locked and failed deletions. ### Permissions Requires the `backup.delete` (Delete backups) permission for the selected team. Resources outside that team return 404. # Enable or disable nightly backups Source: https://docs.advinservers.com/api-reference/backups/enable-or-disable-nightly-backups https://console.advinservers.com/docs/openapi.json post /servers/{server}/backups/schedule ### Overview Enables or disables nightly backups. Send `enabled` as true or false. The saved setting is returned immediately and the backup schedule is updated shortly afterwards. Enabling backups schedules the next nightly run; it does not start a backup now. ### Permissions Requires the `backup.create` (Manage the backup schedule) permission for the selected team. Resources outside that team return 404. # Get the nightly backup setting Source: https://docs.advinservers.com/api-reference/backups/get-the-nightly-backup-setting https://console.advinservers.com/docs/openapi.json get /servers/{server}/backups/schedule ### Overview Returns whether nightly backups are enabled, using the server's saved settings. ### Permissions Requires the `backup.read` (View backups) permission for the selected team. Resources outside that team return 404. # List a server's backups Source: https://docs.advinservers.com/api-reference/backups/list-a-servers-backups https://console.advinservers.com/docs/openapi.json get /servers/{server}/backups ### Overview Lists the server's backups, newest first, without filters or pagination. Backups created before the current owner acquired the server are omitted. ### Permissions Requires the `backup.read` (View backups) permission for the selected team. Resources outside that team return 404. # Restore a backup Source: https://docs.advinservers.com/api-reference/backups/restore-a-backup https://console.advinservers.com/docs/openapi.json post /servers/{server}/backups/{backup}/restore ### Overview Restores a backup over the server's current disk, replacing changes made since the backup was taken. A running server is force-stopped first; a locked one is refused. Restoration runs in the background. Poll the server until its restoring status clears. ### Permissions Requires the `backup.restore` (Restore backups) permission for the selected team. Resources outside that team return 404. # Assign a bandwidth block to a location pool Source: https://docs.advinservers.com/api-reference/bandwidth/assign-a-bandwidth-block-to-a-location-pool https://console.advinservers.com/docs/openapi.json post /bandwidth-blocks/{bandwidthBlock}/bind ### Overview Assigns a bandwidth block to its team's pool in a location. Send `location_id`. The block covers the team's servers in that location and is detached from all individually assigned servers. A `notice` reports how many were detached. The team must have pooling enabled at that location before binding a block, and a block with no transfer left on it cannot be bound. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Assign a bandwidth block to a server Source: https://docs.advinservers.com/api-reference/bandwidth/assign-a-bandwidth-block-to-a-server https://console.advinservers.com/docs/openapi.json post /bandwidth-blocks/{bandwidthBlock}/attach ### Overview Assigns a bandwidth block to a server. Send `server` using a short ID from the eligibility endpoint. The extra bandwidth applies immediately and removes bandwidth throttling. A block can cover individual servers or a location pool. If it was assigned to a pool, it is removed from that pool and the response includes a `notice`. A block with no transfer left on it cannot be assigned. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Buy a bandwidth block Source: https://docs.advinservers.com/api-reference/bandwidth/buy-a-bandwidth-block https://console.advinservers.com/docs/openapi.json post /bandwidth-blocks ### Overview Buys extra bandwidth. **Payment is taken from account credit.** Send `region`, `terabytes` and the `quote_token` to use the quoted price. The block is returned awaiting payment. The purchase is placed and paid in the background, and the block becomes `active` when the payment clears. If account credit is insufficient, `status_label` reads `Needs funds` and `progress_message` says how much is missing. Add funds before the deadline or the purchase expires. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Cancel an unpaid bandwidth block Source: https://docs.advinservers.com/api-reference/bandwidth/cancel-an-unpaid-bandwidth-block https://console.advinservers.com/docs/openapi.json post /bandwidth-blocks/{bandwidthBlock}/cancel ### Overview Withdraws an unpaid bandwidth purchase and closes its invoice without charging the account. Paid bandwidth cannot be returned here. Returns 202 with the withdrawn block. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Enable or disable bandwidth pooling for a location Source: https://docs.advinservers.com/api-reference/bandwidth/enable-or-disable-bandwidth-pooling-for-a-location https://console.advinservers.com/docs/openapi.json patch /bandwidth-blocks/pooling ### Overview Enables or disables bandwidth pooling for a location in the current team. Send `location_id` and `enabled`. With pooling enabled, the team's servers there share one bandwidth allowance. Each team has its own pools, so servers in the account's other teams are not affected. Otherwise, each server is metered separately. Disabling pooling detaches blocks bound to that location, distributes recorded usage back to individual servers and may immediately throttle servers over their limits. Request a preview first. Returns the team's updated figures for every location. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Get a quote for a bandwidth block Source: https://docs.advinservers.com/api-reference/bandwidth/get-a-quote-for-a-bandwidth-block https://console.advinservers.com/docs/openapi.json post /bandwidth-blocks/quote ### Overview Returns a bandwidth price and signed `quote_token`. Send `region` and `terabytes`. The purchase requires this short-lived token. Amounts are decimal strings. No purchase or charge is made. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # Get bandwidth prices Source: https://docs.advinservers.com/api-reference/bandwidth/get-bandwidth-prices https://console.advinservers.com/docs/openapi.json get /bandwidth-blocks/catalog ### Overview Returns prices per terabyte, available regions and the maximum purchase size. `enabled` is false when extra bandwidth is not available to buy. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List bandwidth block usage Source: https://docs.advinservers.com/api-reference/bandwidth/list-bandwidth-block-usage https://console.advinservers.com/docs/openapi.json get /bandwidth-blocks/{bandwidthBlock}/draws ### Overview Lists bandwidth used from the block by server or location pool, newest billing cycle first. Previous cycles are included. `server` is null for a deleted server. `remaining` is the block's unused bandwidth in bytes. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List bandwidth blocks Source: https://docs.advinservers.com/api-reference/bandwidth/list-bandwidth-blocks https://console.advinservers.com/docs/openapi.json get /bandwidth-blocks ### Overview Lists bandwidth blocks in the current team, newest first. Includes active blocks and pending purchases with `status_label` and `progress_message`. Blocks under billing review or with no remaining bandwidth are omitted. `totals` summarizes the listed blocks. `pooled_locations` lists the locations where the current team's servers share an allowance. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List bandwidth usage by location Source: https://docs.advinservers.com/api-reference/bandwidth/list-bandwidth-usage-by-location https://console.advinservers.com/docs/openapi.json get /bandwidth-blocks/pools ### Overview Returns the current team's bandwidth usage for every available location, including zero values where the team has no servers. Each entry includes plan allowances, extra bandwidth, usage and the number of throttled servers. Servers in the account's other teams are not counted. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List locations for bandwidth pools Source: https://docs.advinservers.com/api-reference/bandwidth/list-locations-for-bandwidth-pools https://console.advinservers.com/docs/openapi.json get /bandwidth-blocks/locations ### Overview Lists locations where the current team has servers and can assign bandwidth blocks. A location offered under two product lines appears twice because each has a separate pool. `pooling` indicates whether the team pools there. A block can only be bound to a location where its team has pooling enabled. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List servers a bandwidth block can be assigned to Source: https://docs.advinservers.com/api-reference/bandwidth/list-servers-a-bandwidth-block-can-be-assigned-to https://console.advinservers.com/docs/openapi.json get /bandwidth-blocks/{bandwidthBlock}/servers ### Overview Lists servers eligible to use the block, including their plan allowances, current usage and bandwidth throttling status. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # Preview a bandwidth pooling change Source: https://docs.advinservers.com/api-reference/bandwidth/preview-a-bandwidth-pooling-change https://console.advinservers.com/docs/openapi.json get /bandwidth-blocks/pooling/preview ### Overview Previews a bandwidth pooling change without applying it. Send `location_id`. If pooling is enabled, `cities` shows the usage assigned to each server after disabling it. If pooling is disabled, `stranded_blocks` lists the team's blocks assigned to servers in more than one location or team, which would no longer provide bandwidth after enabling it. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # Remove a bandwidth block from a location pool Source: https://docs.advinservers.com/api-reference/bandwidth/remove-a-bandwidth-block-from-a-location-pool https://console.advinservers.com/docs/openapi.json post /bandwidth-blocks/{bandwidthBlock}/unbind ### Overview Removes a bandwidth block from its location pool. It provides no bandwidth until assigned to a server or another pool. Affected servers return to their plan allowances. The response includes a `notice` explaining the change. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Remove a bandwidth block from a server Source: https://docs.advinservers.com/api-reference/bandwidth/remove-a-bandwidth-block-from-a-server https://console.advinservers.com/docs/openapi.json post /bandwidth-blocks/{bandwidthBlock}/detach ### Overview Detaches a bandwidth block from a server. Send `server`. Coverage ends immediately, and servers over their plan allowance are throttled again. Previous usage remains recorded so reattaching the block does not count the same traffic twice. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Add funds to the account Source: https://docs.advinservers.com/api-reference/billing/add-funds-to-the-account https://console.advinservers.com/docs/openapi.json post /billing/deposits ### Overview Creates an invoice and checkout for an account credit top-up. **Payment is required.** Send a decimal `amount` within the published `minimum`, `maximum` and remaining balance limit. Credit is added only after the invoice is paid and the payment is processed. Use `billing.checkout_uuid` to pay in the panel, or `billing.invoice_url` as a fallback. Adding credit does not purchase a service. Only one top-up waits for payment at a time. Starting another cancels the one still waiting, unless a payment for it is already being processed, in which case the request is rejected. A top-up that is not paid within the payment window is cancelled automatically. ### Permissions Requires the account permission `billing.manage` (Manage billing). # Cancel a service Source: https://docs.advinservers.com/api-reference/billing/cancel-a-service https://console.advinservers.com/docs/openapi.json post /billing/managed-services/{service}/cancel ### Overview Requests cancellation of the service and stops its automatic payments. **Cancelling a server permanently deletes the server and its data.** Cancellation can take effect immediately or at the end of the paid period. Send `type` using a value from `cancellation_types`. For a server, optionally send `delete_floating_ip_uuids` containing attached secondary floating IPs to cancel too. An empty or omitted list preserves the IPs and their billing. Selected rentals use the chosen cancellation timing and their own billing periods; granted IPs are released when the server is deleted. Cancelling rentals requires `billing.purchase`; deleting granted IPs requires `network.delete`. Primary addresses cannot be selected. A server that is busy with another operation, such as an upgrade, cannot be cancelled until that operation finishes. The same applies to a floating IP attached to such a server. A suspended server can still be cancelled. This call records the request; server deletion happens later. If billing fails partway through, completed IP cancellations remain in effect. Returns the service with its pending cancellation. ### Permissions Requires the `billing.manage` (Manage service billing) permission for the selected team. Resources outside that team return 404. # Cancel a top-up Source: https://docs.advinservers.com/api-reference/billing/cancel-a-top-up https://console.advinservers.com/docs/openapi.json post /billing/deposits/{fundDeposit}/cancel ### Overview Cancels an unpaid top-up. Cancellation is rejected while a payment is being processed. The response normally has a `cancelled` status. If billing is unavailable or a payment arrives during cancellation, the top-up remains awaiting payment with an earlier deadline. Processing continues in the background; check again until the status is final. Top-ups belonging to another account return 404. ### Permissions Requires the account permission `billing.manage` (Manage billing). # Cancel an automatic payment Source: https://docs.advinservers.com/api-reference/billing/cancel-an-automatic-payment https://console.advinservers.com/docs/openapi.json post /billing/subscriptions/{subscription}/cancel ### Overview Stops a subscription at the end of its paid period. The service continues to run, and future invoices must be paid manually. To stop the service, use the service cancellation endpoint. `can_cancel` indicates whether cancellation is allowed. Subscriptions belonging to another account return 404. ### Permissions Requires the account permission `billing.manage` (Manage billing). # Change a service's billing cycle Source: https://docs.advinservers.com/api-reference/billing/change-a-services-billing-cycle https://console.advinservers.com/docs/openapi.json patch /billing/managed-services/{service}/billing-cycle ### Overview Changes a service's billing cycle. Send an available `billing_cycle`. The new cycle and price apply to the next invoice. The request is rejected if the account has an outstanding invoice or the service cannot change cycles. The error message explains the reason. Returns the updated service. ### Permissions Requires the `billing.manage` (Manage service billing) permission for the selected team. Resources outside that team return 404. # Delete a saved payment method Source: https://docs.advinservers.com/api-reference/billing/delete-a-saved-payment-method https://console.advinservers.com/docs/openapi.json delete /billing/payment-methods/{payMethod} ### Overview Permanently removes a saved card or bank account. Removal may be disabled, and the account must retain a default payment method. Rejected requests include an explanation. Successful requests return no body. ### Permissions Requires the account permission `billing.manage` (Manage billing). # Enable or disable account credit for a service Source: https://docs.advinservers.com/api-reference/billing/enable-or-disable-account-credit-for-a-service https://console.advinservers.com/docs/openapi.json patch /billing/managed-services/{service}/account-credit ### Overview Controls whether this service's renewal invoices can use account credit. Send `pays_from_credit` as true or false. Credit is shared across the account and used for renewals in due-date order. Disabling it for this service leaves the balance available for other services. This service will still receive invoices on its usual schedule, which the customer must pay separately. The setting applies to future invoices. It does not move money or change invoices already paid with credit. This option is available only when `account_credit_switchable` is true in the service list. Otherwise, the request is rejected with an explanation. Returns the updated service. ### Permissions Requires the `billing.manage` (Manage service billing) permission for the selected team. Resources outside that team return 404. # Get a service Source: https://docs.advinservers.com/api-reference/billing/get-a-service https://console.advinservers.com/docs/openapi.json get /billing/managed-services/{service} ### Overview Returns current billing details for one service, using the same fields as the service list. Use the account's numeric service ID, not a UUID. ### Permissions Requires the `billing.read` (View billing) permission for the selected team. Resources outside that team return 404. # Get account credit Source: https://docs.advinservers.com/api-reference/billing/get-account-credit https://console.advinservers.com/docs/openapi.json get /billing/credit ### Overview Returns account credit and top-up limits. `balance`, `limit` and `headroom` are decimal strings, with `currency` provided separately. `limit` and `headroom` are null if the balance has no upper limit. `minimum` and `maximum` set the range for a single top-up. `enabled` is false if top-ups are unavailable. The balance may be up to 30 seconds old. It is refreshed when a top-up is credited. If the balance cannot be retrieved, this endpoint returns zero. Do not rely on this response alone to authorize spending. ### Permissions Requires the `billing.read` (View billing) permission for the selected team. Resources outside that team return 404. # Get the display currency Source: https://docs.advinservers.com/api-reference/billing/get-the-display-currency https://console.advinservers.com/docs/openapi.json get /billing/currency ### Overview Returns the currency used to display catalogue prices. `currency` is the account's billing currency. `base_currency` is the currency plan prices are published in, and `exchange_rate` converts an amount from the base currency into the account currency. It does not include the account balance, so every team member can use it. ### Permissions Requires the account permission `billing.read` (View billing). # List automatic payments Source: https://docs.advinservers.com/api-reference/billing/list-automatic-payments https://console.advinservers.com/docs/openapi.json get /billing/subscriptions ### Overview Lists automatic payment subscriptions across the account's teams. Subscription details are refreshed from the payment provider when requested. If the provider is unavailable, the last known details are returned. Amounts are decimal strings excluding tax. Tax is calculated using the customer's location at the time of payment. `is_ending` identifies a subscription that has been stopped but has not reached its end date. Display it separately from active and cancelled subscriptions. `sells_subscriptions` indicates whether automatic payments are available, even when the list is empty. ### Permissions Requires the account permission `billing.read` (View billing). # List billing cycle prices Source: https://docs.advinservers.com/api-reference/billing/list-billing-cycle-prices https://console.advinservers.com/docs/openapi.json get /billing/managed-services/{service}/billing-cycle ### Overview Lists available billing cycles and the price for each. Prices use the configured product pricing, including any discount for longer cycles. `is_current` identifies the current cycle. If `prices_known` is false, pricing could not be retrieved and every `price` is null. Cycles are still listed and the change endpoint remains available. If `prices_known` is true, a null `price` means that cycle is not offered. ### Permissions Requires the `billing.read` (View billing) permission for the selected team. Resources outside that team return 404. # List saved payment methods Source: https://docs.advinservers.com/api-reference/billing/list-saved-payment-methods https://console.advinservers.com/docs/openapi.json get /billing/payment-methods ### Overview Lists saved cards and bank accounts. Each entry includes the payment type, last four digits, expiry date and customer label. Full account numbers and payment tokens are never returned. `knows_default` indicates whether the default method is known. If false, no method is marked as default. New payment methods are collected during checkout. ### Permissions Requires the account permission `billing.read` (View billing). # List service billing details Source: https://docs.advinservers.com/api-reference/billing/list-service-billing-details https://console.advinservers.com/docs/openapi.json get /billing/services ### Overview Lists billing details for every service on the account, across all teams. Each service includes its billing cycle, recurring amount, next due date and current paid period. Use `server_id` to match a service to its server. `period` is null for services that do not renew, such as free services or one-time purchases. Amounts are formatted strings ready to display. ### Permissions Requires the `billing.read` (View billing) permission for the selected team. Resources outside that team return 404. # List services with payment settings Source: https://docs.advinservers.com/api-reference/billing/list-services-with-payment-settings https://console.advinservers.com/docs/openapi.json get /billing/managed-services ### Overview Lists account services with automatic payment details and available actions. A false `can_*` flag means the corresponding action will be rejected. A true `can_change_cycle` flag does not guarantee that a change will succeed: an unpaid invoice can still prevent it. `sells_subscriptions` indicates whether automatic payments are available. `cancellations_withdrawable` indicates whether pending cancellations can be withdrawn here. `account_credit_switchable` indicates whether credit payments can be enabled or disabled per service. `cancellation_types` lists accepted cancellation values and their labels. ### Permissions Requires the `billing.read` (View billing) permission for the selected team. Resources outside that team return 404. # List top-ups Source: https://docs.advinservers.com/api-reference/billing/list-top-ups https://console.advinservers.com/docs/openapi.json get /billing/deposits ### Overview Lists the account's 50 most recent top-ups, newest first, across all teams. Older top-ups are not included. `credit` contains the same information as the balance endpoint. `enabled` indicates whether top-ups are available. ### Permissions Requires the account permission `billing.read` (View billing). # Set up automatic payment for a service Source: https://docs.advinservers.com/api-reference/billing/set-up-automatic-payment-for-a-service https://console.advinservers.com/docs/openapi.json post /billing/managed-services/{service}/subscription ### Overview Starts automatic payment setup for a service that has no subscription. The customer must finish setup with the payment provider before the subscription appears. The response includes `checkoutUrl`, `transactionId`, `clientToken` and `environment` for that step. Use `chargesNow` to tell the customer whether setup will charge them immediately. A paid service is not charged until its next due date. An overdue service is charged immediately. `firstChargeAt` gives the first payment date. ### Permissions Requires the account permission `billing.manage` (Manage billing). # Stop a service's automatic payment Source: https://docs.advinservers.com/api-reference/billing/stop-a-services-automatic-payment https://console.advinservers.com/docs/openapi.json delete /billing/managed-services/{service}/subscription ### Overview Disables automatic payments for this service. The service continues to run and generate invoices, which the customer must pay manually. Returns the updated service. ### Permissions Requires the `billing.manage` (Manage service billing) permission for the selected team. Resources outside that team return 404. # Withdraw a service cancellation Source: https://docs.advinservers.com/api-reference/billing/withdraw-a-service-cancellation https://console.advinservers.com/docs/openapi.json delete /billing/managed-services/{service}/cancel ### Overview Withdraws a pending cancellation so the service continues to run and generate invoices. Available only when `cancellations_withdrawable` is true in the service list. Otherwise, contact support. Withdrawing a server cancellation also clears pending deletion of its attached granted IPs. Withdraw rented IP cancellations separately. Automatic payments stopped by the cancellation remain disabled. The customer must set them up again if needed. ### Permissions Requires the `billing.manage` (Manage service billing) permission for the selected team. Resources outside that team return 404. # Cancel a checkout Source: https://docs.advinservers.com/api-reference/checkout/cancel-a-checkout https://console.advinservers.com/docs/openapi.json post /checkout/{uuid}/cancel ### Overview Cancels a checkout before payment begins. Cancellation is rejected if a payment has been recorded, is being processed, or the customer has already been directed to the payment provider. Once directed there, the customer can abandon the payment and let the checkout expire. The underlying order, plan change or top-up remains unpaid and must be cancelled through its own endpoint. Returns the updated checkout. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Get a checkout Source: https://docs.advinservers.com/api-reference/checkout/get-a-checkout https://console.advinservers.com/docs/openapi.json get /checkout/{uuid} ### Overview Returns a checkout's purchase details, itemised total, payment options and next payment step. `enabled` is false if payments are unavailable. Checkouts belonging to another account return 404. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # List payment options Source: https://docs.advinservers.com/api-reference/checkout/list-payment-options https://console.advinservers.com/docs/openapi.json get /checkout/options ### Overview Lists payment options available at checkout. Call this before creating a purchase so the customer can choose how to pay. Send `renews=true` when the first invoice amount is also the recurring renewal amount. This includes automatic renewal options, which are otherwise omitted. ### Permissions Requires the account permission `billing.purchase` (Make purchases). # Start a checkout payment Source: https://docs.advinservers.com/api-reference/checkout/start-a-checkout-payment https://console.advinservers.com/docs/openapi.json post /checkout/{uuid}/start ### Overview Selects a payment option and returns the next payment step. Send `option` from the checkout's options. The amount charged is read from the invoice again, and a payment whose amount changed since the checkout opened is refused. `notes` and `promo_code` are optional. This request does not take payment. The response includes either a `redirect_url` for the browser or details for opening an embedded payment widget. Rate limits apply per account, not per IP address. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Add a DDoS filtering rule to an IP address Source: https://docs.advinservers.com/api-reference/ddos-protection/add-a-ddos-filtering-rule-to-an-ip-address https://console.advinservers.com/docs/openapi.json post /servers/{server}/ddos-protection/ip/{ip}/profiles ### Overview Creates a filtering rule that applies immediately. Send `presetId` and `protocol` (`TCP`, `UDP`, `ICMP`, `IPIP`, `GRE`, `ESP` or `AH`). TCP and UDP require `minDstPort`; add `maxDstPort` for a range. `notes` is optional. Returns 422 if the protection service rejects the rule. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Delete a DDoS filtering rule from an IP address Source: https://docs.advinservers.com/api-reference/ddos-protection/delete-a-ddos-filtering-rule-from-an-ip-address https://console.advinservers.com/docs/openapi.json delete /servers/{server}/ddos-protection/ip/{ip}/profiles/{profileId} ### Overview Permanently removes a rule using its `id` from this address's rule list. Returns 404 if the rule does not belong to this address. Live traffic immediately uses the remaining rules and default action. ### Permissions Requires the `network.delete` (Delete networking resources) permission for the selected team. Resources outside that team return 404. # Get a server's DDoS protection Source: https://docs.advinservers.com/api-reference/ddos-protection/get-a-servers-ddos-protection https://console.advinservers.com/docs/openapi.json get /servers/{server}/ddos-protection ### Overview Lists the server's protected addresses and protection details. `addresses` maps address IDs to IP addresses. Other endpoints in this section use the IP address itself. Send `?address_id=` to select an address; otherwise, the first is used. If protection details are unavailable, the address list is still returned, `error` explains the problem, and other details are empty. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # Get DDoS filtering settings for an IP address Source: https://docs.advinservers.com/api-reference/ddos-protection/get-ddos-filtering-settings-for-an-ip-address https://console.advinservers.com/docs/openapi.json get /servers/{server}/ddos-protection/ip/{ip}/settings ### Overview Returns filtering settings and the default action for unmatched traffic. `{ip}` must be assigned to this server. Unsupported settings are false. Returns 404 if the address has no protection and 503 if protection settings cannot be read. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List DDoS attacks on an IP address Source: https://docs.advinservers.com/api-reference/ddos-protection/list-ddos-attacks-on-an-ip-address https://console.advinservers.com/docs/openapi.json get /servers/{server}/ddos-protection/ip/{ip}/attacks ### Overview Lists attacks against this address, including start times, traffic details and sample sizes. An attack with no `endedAt` is ongoing. Attacks before the address was assigned to this account are omitted. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List DDoS filtering presets Source: https://docs.advinservers.com/api-reference/ddos-protection/list-ddos-filtering-presets https://console.advinservers.com/docs/openapi.json get /servers/{server}/ddos-protection/presets ### Overview Lists the filtering presets any protected address can use. Pass a preset's `id` when creating a rule. Use the address-specific endpoint to list every preset one address supports. Retrieval failures return an empty list. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List DDoS filtering presets for an IP address Source: https://docs.advinservers.com/api-reference/ddos-protection/list-ddos-filtering-presets-for-an-ip-address https://console.advinservers.com/docs/openapi.json get /servers/{server}/ddos-protection/ip/{ip}/presets ### Overview Lists filtering presets supported by this address. `{ip}` must be an IP address assigned to this server. Retrieval failures return an empty list. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List DDoS filtering rules for an IP address Source: https://docs.advinservers.com/api-reference/ddos-protection/list-ddos-filtering-rules-for-an-ip-address https://console.advinservers.com/docs/openapi.json get /servers/{server}/ddos-protection/ip/{ip}/profiles ### Overview Lists filtering rules for an address, including their presets, protocols and any port ranges. `createdAt` and `updatedAt` use the protection service's date format, which may differ from other API timestamps. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # Reset DDoS filtering for an IP address Source: https://docs.advinservers.com/api-reference/ddos-protection/reset-ddos-filtering-for-an-ip-address https://console.advinservers.com/docs/openapi.json post /servers/{server}/ddos-protection/ip/{ip}/reset ### Overview Deletes custom filtering rules and restores default settings for this address. Changes affect live traffic immediately. Returns the applied settings. ### Permissions Requires the `network.delete` (Delete networking resources) permission for the selected team. Resources outside that team return 404. # Update DDoS filtering settings for an IP address Source: https://docs.advinservers.com/api-reference/ddos-protection/update-ddos-filtering-settings-for-an-ip-address https://console.advinservers.com/docs/openapi.json post /servers/{server}/ddos-protection/ip/{ip}/settings ### Overview Updates filtering settings and returns their applied values. Send any of `symmetrical`, `symmetricalBasic`, `allowEgress`, `discovery`, `attackDuration` and `defaultAction` (`FILTER`, `DROP` or `ACCEPT`). Unsupported settings are ignored. Changes affect live traffic immediately and may interrupt connections. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Add a firewall rule Source: https://docs.advinservers.com/api-reference/firewall-groups/add-a-firewall-rule https://console.advinservers.com/docs/openapi.json post /firewall-groups/{firewallGroup}/rules ### Overview Adds a rule to the end of the group. Rules are evaluated from top to bottom. Use either `source` or `source_ip_group`, not both. A `macro` defines its own protocol and ports, so `proto`, `sport` and `dport` are ignored when a macro is selected. Without a macro or protocol, a source or destination is required. Returns the updated group. Assigned servers remain pending until the rules are applied in the background. ### Permissions Requires the `firewall.update` (Change the firewall) permission for the selected team. Resources outside that team return 404. # Apply a firewall group to a server Source: https://docs.advinservers.com/api-reference/firewall-groups/apply-a-firewall-group-to-a-server https://console.advinservers.com/docs/openapi.json post /servers/{server}/firewall-groups/{firewallGroup}/attach ### Overview Applies the group after the server's other groups in evaluation order. Reapplying an assigned group makes no change. Rules are applied in the background, and the assignment remains pending until complete. Returns all available groups with updated `applied` values. ### Permissions Requires the `firewall.update` (Change the firewall) permission for the selected team. Resources outside that team return 404. # Create a firewall group Source: https://docs.advinservers.com/api-reference/firewall-groups/create-a-firewall-group https://console.advinservers.com/docs/openapi.json post /firewall-groups ### Overview Creates an empty firewall group in the current team. Send a name unique across the account, up to 100 characters, using letters, numbers, spaces, dots, dashes or underscores. Add rules and assign the group to servers to apply it. ### Permissions Requires the `firewall.update` (Change the firewall) permission for the selected team. Resources outside that team return 404. # Create a firewall group for a server Source: https://docs.advinservers.com/api-reference/firewall-groups/create-a-firewall-group-for-a-server https://console.advinservers.com/docs/openapi.json post /servers/{server}/firewall-groups ### Overview Creates an empty firewall group in the server's team and assigns it to this server. The same naming rules as group creation apply. Add rules to change traffic filtering. The group can also be assigned to other servers in the team. ### Permissions Requires the `firewall.update` (Change the firewall) permission for the selected team. Resources outside that team return 404. # Delete a firewall group Source: https://docs.advinservers.com/api-reference/firewall-groups/delete-a-firewall-group https://console.advinservers.com/docs/openapi.json delete /firewall-groups/{firewallGroup} ### Overview Permanently deletes the group and removes its rules from assigned servers. Removal runs in the background, so rules may remain active briefly after the response. ### Permissions Requires the `firewall.delete` (Delete firewall settings) permission for the selected team. Resources outside that team return 404. # Delete a firewall rule Source: https://docs.advinservers.com/api-reference/firewall-groups/delete-a-firewall-rule https://console.advinservers.com/docs/openapi.json delete /firewall-groups/{firewallGroup}/rules/{rule} ### Overview Permanently deletes a rule. Remaining rules are renumbered from zero without gaps. Returns the updated group. Changes are applied to assigned servers in the background. ### Permissions Requires the `firewall.delete` (Delete firewall settings) permission for the selected team. Resources outside that team return 404. # Get a firewall group Source: https://docs.advinservers.com/api-reference/firewall-groups/get-a-firewall-group https://console.advinservers.com/docs/openapi.json get /firewall-groups/{firewallGroup} ### Overview Returns a firewall group with its rules in evaluation order and assigned servers. Each assignment remains pending until its rules are applied. ### Permissions Requires the `firewall.read` (View the firewall) permission for the selected team. Resources outside that team return 404. # List firewall groups Source: https://docs.advinservers.com/api-reference/firewall-groups/list-firewall-groups https://console.advinservers.com/docs/openapi.json get /firewall-groups ### Overview Lists firewall groups in the current team, ordered by name. A group can be applied to multiple servers in that team. Each entry includes its rules in evaluation order, assigned servers and assignment status. `applied` is always false in this list because no specific server is selected. ### Permissions Requires the `firewall.read` (View the firewall) permission for the selected team. Resources outside that team return 404. # List firewall groups for a server Source: https://docs.advinservers.com/api-reference/firewall-groups/list-firewall-groups-for-a-server https://console.advinservers.com/docs/openapi.json get /servers/{server}/firewall-groups ### Overview Lists groups available to this server, ordered by name. `applied` indicates whether each group is assigned. Already assigned groups are always included, even if they belong to another team on the account. ### Permissions Requires the `firewall.read` (View the firewall) permission for the selected team. Resources outside that team return 404. # Remove a firewall group from a server Source: https://docs.advinservers.com/api-reference/firewall-groups/remove-a-firewall-group-from-a-server https://console.advinservers.com/docs/openapi.json post /servers/{server}/firewall-groups/{firewallGroup}/detach ### Overview Removes the group from this server while keeping it available for other servers. Removing an unassigned group makes no change. Rules are removed in the background and may remain active briefly. Returns all available groups with updated `applied` values. ### Permissions Requires the `firewall.update` (Change the firewall) permission for the selected team. Resources outside that team return 404. # Rename a firewall group Source: https://docs.advinservers.com/api-reference/firewall-groups/rename-a-firewall-group https://console.advinservers.com/docs/openapi.json patch /firewall-groups/{firewallGroup} ### Overview Renames the group without changing its rules. Names must be unique across the account. The updated name is applied to assigned servers in the background, so their assignment status returns to pending until updated. ### Permissions Requires the `firewall.update` (Change the firewall) permission for the selected team. Resources outside that team return 404. # Reorder a server's firewall groups Source: https://docs.advinservers.com/api-reference/firewall-groups/reorder-a-servers-firewall-groups https://console.advinservers.com/docs/openapi.json put /servers/{server}/firewall-groups/reorder ### Overview Changes the order in which the server's firewall groups are evaluated. Send `groups` with every assigned group ID exactly once, from first to last. Invalid lists return 422 without changing the order. The new order is applied in the background. ### Permissions Requires the `firewall.update` (Change the firewall) permission for the selected team. Resources outside that team return 404. # Reorder firewall rules Source: https://docs.advinservers.com/api-reference/firewall-groups/reorder-firewall-rules https://console.advinservers.com/docs/openapi.json put /firewall-groups/{firewallGroup}/rules/reorder ### Overview Changes rule evaluation order. Send `rules` containing every rule ID exactly once, from first to last. Missing or duplicate IDs return 422 and leave the order unchanged. Returns the updated group. Changes are applied to assigned servers in the background. ### Permissions Requires the `firewall.update` (Change the firewall) permission for the selected team. Resources outside that team return 404. # Set a firewall group's servers Source: https://docs.advinservers.com/api-reference/firewall-groups/set-a-firewall-groups-servers https://console.advinservers.com/docs/openapi.json put /firewall-groups/{firewallGroup}/servers ### Overview Replaces the group's assigned servers. Send the complete `servers` list; omitted servers are detached and an empty list detaches all servers. Every ID must identify an accessible server in the group's team. If any ID is invalid, the request returns 404 and nothing changes. Returns the group with affected assignments marked pending while rules are applied in the background. ### Permissions Requires the `firewall.update` (Change the firewall) permission for the selected team. Resources outside that team return 404. # Update a firewall rule Source: https://docs.advinservers.com/api-reference/firewall-groups/update-a-firewall-rule https://console.advinservers.com/docs/openapi.json patch /firewall-groups/{firewallGroup}/rules/{rule} ### Overview Replaces a firewall rule. Send every field you want to keep; omitted fields are cleared. The same validation as rule creation applies, and the rule keeps its position. Returns the updated group. Changes are applied to assigned servers in the background. ### Permissions Requires the `firewall.update` (Change the firewall) permission for the selected team. Resources outside that team return 404. # API Introduction Source: https://docs.advinservers.com/api-reference/introduction How to authenticate with the Ascienth console API and make your first request. The API is in beta. You may run into unexpected behavior, and endpoints, fields, or responses may change without notice. ## Overview The Ascienth console API lets you manage your servers, networking, backups, billing, and team from your own scripts and tools. It covers the same actions that are available at [https://console.advinservers.com](https://console.advinservers.com). All endpoints use this base URL: ``` https://console.advinservers.com/api/v1/client ``` Every endpoint is listed in the sidebar, grouped by resource. You can also send test requests from each endpoint page with your own API key. ## Authentication Log into [https://console.advinservers.com](https://console.advinservers.com) and open the "API Keys" page. Create a key, select the team it can access, and choose the permissions it needs. Copy the key as soon as it is created. It cannot be shown again. If you lose it, revoke it and create a new one. Send the key as a bearer token, and ask for JSON responses: ``` Authorization: Bearer Accept: application/json ``` Treat an API key like a password. Anyone who has it can act on your team's resources with the permissions you gave it. Revoking a key takes effect immediately. ## Your First Request This request lists the servers in the key's team. It needs the `server.read` permission. ```bash theme={null} curl https://console.advinservers.com/api/v1/client/servers \ -H "Authorization: Bearer " \ -H "Accept: application/json" ``` ## Permissions Give each key only the permissions it needs. Each endpoint page lists the permission it requires. A request made without the required permission is rejected. ## Team Scope Each key can only access resources in the team selected when the key was created. This includes servers, snapshots, backups, firewall groups, images, SSH keys, scripts, networks, and addresses. Resources in other teams return `404 Not Found`, so create a separate key for each team. ## Restricted Actions API keys cannot do the following, even with every permission. Log into [https://console.advinservers.com](https://console.advinservers.com) in your browser to do them: * Create, edit, or revoke API keys * Edit the IP groups that restrict API keys * End signed-in sessions * Change two-factor authentication * Change your account's email address * Accept or decline team invitations * Switch or leave a team This keeps a leaked key from widening its own access or locking you out of your account. ## IP Restrictions You can restrict a key to one or more IP groups. Requests from any other address are rejected. We recommend this for keys used from servers with a fixed IP address. ## Requests and Responses * Single records are returned as JSON objects. Collections are returned as JSON arrays unless the endpoint supports pagination. * Timestamps use ISO 8601 format in UTC. * Error responses include a `message` field. Validation errors also include an `errors` object with the problem for each field. * Examples in this reference use fictional data. ## Audit Log Every API request, including reads, is recorded in your account's audit log along with the key that made it. Like the rest of our services, the API is unmanaged. We cannot write or debug your integration for you. If an endpoint behaves differently from this reference, please open a ticket at [https://clients.advinservers.com/contact.php](https://clients.advinservers.com/contact.php). # Create a checkout for an invoice Source: https://docs.advinservers.com/api-reference/invoices/create-a-checkout-for-an-invoice https://console.advinservers.com/docs/openapi.json post /invoices/{invoice}/pay ### Overview Creates a checkout for an account invoice, including invoices for purchases made outside the panel. This request does not take payment. Use the returned `checkoutUuid` with the checkout endpoints. `renews` indicates whether the invoice items support automatic renewals. ### Permissions Requires the account permission `invoices.pay` (Pay invoices). # Create a checkout for several invoices Source: https://docs.advinservers.com/api-reference/invoices/create-a-checkout-for-several-invoices https://console.advinservers.com/docs/openapi.json post /invoices/bulk-payment ### Overview Creates one checkout that pays up to 20 invoices together. Send their numeric IDs as `invoices`. Each invoice must be one the list of invoices that can be paid together marks `payable`, and all must be in the same currency. This request does not take payment. Use the returned `checkoutUuid` with the checkout endpoints. The invoices are not merged. When the payment completes, each invoice is marked paid with its own share of it. If an invoice was paid, cancelled or changed before the payment starts, starting it is refused and a new checkout is needed. `renews` is always false: paying invoices together never sets up automatic payments. Automatic payments already set up stay on, with their next charge moved to the service's new due date. ### Permissions Requires the account permission `invoices.pay` (Pay invoices). # Get an invoice Source: https://docs.advinservers.com/api-reference/invoices/get-an-invoice https://console.advinservers.com/docs/openapi.json get /invoices/{invoice} ### Overview Returns an invoice with its line items, recorded payments and remaining balance. These details are omitted from the invoice list. Use the account's numeric invoice ID, not a UUID. Invoices belonging to another account return 404. ### Permissions Requires the account permission `invoices.read` (View invoices). # List invoices Source: https://docs.advinservers.com/api-reference/invoices/list-invoices https://console.advinservers.com/docs/openapi.json get /invoices ### Overview Lists account invoices, newest first, without filters or pagination. The list is the same for every team on the account. Each invoice includes totals. Line items, payments and the remaining balance are omitted; fetch an individual invoice for those details. `statuses` lists possible statuses. `scan_limit` indicates how far back the lookup checked. `truncated` is true if more invoices exist than the lookup returned. ### Permissions Requires the account permission `invoices.read` (View invoices). # List invoices that can be paid together Source: https://docs.advinservers.com/api-reference/invoices/list-invoices-that-can-be-paid-together https://console.advinservers.com/docs/openapi.json get /invoices/bulk-payment ### Overview Lists the account's outstanding invoices, newest first, up to 50. Each says whether it can be paid together with others and, if not, why in `reason`. `balance` is what is still owed. `limit` is the most invoices one payment can cover. Invoices for services with automatic payments on can be included. Their automatic payments stay on, and the next automatic charge moves to the service's new due date once the invoice is paid. A charge too close to move still goes through, and the overpayment is added to account credit. Add funds invoices, invoices for orders placed in the panel and invoices already being paid are left out. `available` is false when paying invoices together is switched off. ### Permissions Requires the account permission `invoices.pay` (Pay invoices). # Attach a floating IP to a server Source: https://docs.advinservers.com/api-reference/ip-addresses/attach-a-floating-ip-to-a-server https://console.advinservers.com/docs/openapi.json post /floating-ips/{floatingIp}/attach ### Overview Attaches the floating IP to a server and removes its previous assignment. Send `server` using an ID from the eligible server list. The server must be in the address's location. Configure the IP inside the server's operating system after attaching it. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Buy a floating IP Source: https://docs.advinservers.com/api-reference/ip-addresses/buy-a-floating-ip https://console.advinservers.com/docs/openapi.json post /floating-ips ### Overview Orders a floating IP using account credit. Send `location_id`, `type` (`ipv4` or `ipv6`) and `quote_token`. Returns the address as `pending_payment`. Poll the address list until it becomes `active`. Optionally send `server` with the ID of one of your servers in the same location to attach the address once it is paid for. This also requires permission to change networking. `attaching_to` names the server until the address is attached. Insufficient credit rejects the request before reserving an address. If credit becomes insufficient during processing, `status_label` shows `Needs funds` and `progress_message` explains the shortfall. `limits` contains account address allowances. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Cancel a floating IP Source: https://docs.advinservers.com/api-reference/ip-addresses/cancel-a-floating-ip https://console.advinservers.com/docs/openapi.json post /floating-ips/{floatingIp}/cancel ### Overview Cancels a floating IP rental. Send `type` as `immediate` or `end_of_billing`. Immediate cancellation removes the address and disconnects services using it. End-of-period cancellation keeps it until the paid period ends. An address attached to a server that is busy with another operation, such as an upgrade, cannot be cancelled until that operation finishes. For unpaid orders, use the withdraw endpoint. The response includes account allowances under `limits`. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Cancel an unpaid floating IP order Source: https://docs.advinservers.com/api-reference/ip-addresses/cancel-an-unpaid-floating-ip-order https://console.advinservers.com/docs/openapi.json post /floating-ips/{floatingIp}/cancel-checkout ### Overview Withdraws an unpaid address order, releases the reserved address and closes its invoice without charging the account. Use the cancellation endpoint for an active address. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Check whether a server can leave a retired IP range Source: https://docs.advinservers.com/api-reference/ip-addresses/check-whether-a-server-can-leave-a-retired-ip-range https://console.advinservers.com/docs/openapi.json get /servers/{server}/addresses/renumber/status ### Overview Checks whether the server can migrate from a retired IP range. If eligible, `mapping` lists replacement addresses and whether they are still available. Servers already migrated, or without addresses in a retired range, are returned as ineligible with no mapping. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # Detach a floating IP from a server Source: https://docs.advinservers.com/api-reference/ip-addresses/detach-a-floating-ip-from-a-server https://console.advinservers.com/docs/openapi.json post /floating-ips/{floatingIp}/detach ### Overview Detaches the address from its server. The address remains reserved for you and billing continues. Attach it again to route traffic to a server. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Get a quote for a floating IP Source: https://docs.advinservers.com/api-reference/ip-addresses/get-a-quote-for-a-floating-ip https://console.advinservers.com/docs/openapi.json post /floating-ips/quote ### Overview Returns a price and a signed `quote_token` valid for five minutes. Send `location_id` and `type`. Use the token when buying the address. This request does not reserve an address or charge the account. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List floating IPs Source: https://docs.advinservers.com/api-reference/ip-addresses/list-floating-ips https://console.advinservers.com/docs/openapi.json get /floating-ips ### Overview Lists floating IP addresses in the current team across all locations, including unassigned addresses. `limits` reports usage and allowances for each IP family across the whole account. `sellable` indicates whether IPv4 and IPv6 addresses are available to purchase. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List locations for floating IPs Source: https://docs.advinservers.com/api-reference/ip-addresses/list-locations-for-floating-ips https://console.advinservers.com/docs/openapi.json get /floating-ips/locations ### Overview Lists locations where the current team has servers and can request a floating IP address. `prices` lists the price of each IP family, so you can show prices before requesting a quote. A `null` price means the price could not be loaded, and buying that family will be refused with a reason. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List servers a floating IP can attach to Source: https://docs.advinservers.com/api-reference/ip-addresses/list-servers-a-floating-ip-can-attach-to https://console.advinservers.com/docs/openapi.json get /floating-ips/{floatingIp}/servers ### Overview Lists eligible servers in the floating IP's team and location. `is_current` identifies the server currently assigned to the address. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # Move a server to a new IP range Source: https://docs.advinservers.com/api-reference/ip-addresses/move-a-server-to-a-new-ip-range https://console.advinservers.com/docs/openapi.json post /servers/{server}/addresses/renumber ### Overview Starts replacing addresses in a retired IP range. New addresses are added in the background; poll the renumber status endpoint. Old addresses remain assigned until you remove them, allowing time to update your configuration. Rejected if no addresses need replacing or replacement addresses are already assigned. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Release a floating IP Source: https://docs.advinservers.com/api-reference/ip-addresses/release-a-floating-ip https://console.advinservers.com/docs/openapi.json delete /floating-ips/{floatingIp} ### Overview Permanently releases an address that has no billing subscription, such as an address granted by an administrator. It returns to the available pool and may be assigned elsewhere. Rented addresses must be cancelled instead. The response includes account allowances under `limits`. ### Permissions Requires the `network.delete` (Delete networking resources) permission for the selected team. Resources outside that team return 404. # Remove a retired IP address Source: https://docs.advinservers.com/api-reference/ip-addresses/remove-a-retired-ip-address https://console.advinservers.com/docs/openapi.json delete /servers/{server}/addresses/{addressId}/remove-old ### Overview Permanently releases an old address after its replacement is assigned. The server must have an address in the replacement range. If the old address is primary, another address is promoted first. ### Permissions Requires the `network.delete` (Delete networking resources) permission for the selected team. Resources outside that team return 404. # Set a server's primary IP address Source: https://docs.advinservers.com/api-reference/ip-addresses/set-a-servers-primary-ip-address https://console.advinservers.com/docs/openapi.json post /servers/{server}/addresses/{addressId}/primary ### Overview Makes an attached IPv4 address the server's primary address. Network settings are updated in the background. Selecting the existing primary address succeeds and returns only a `message`. Otherwise, the response also includes the promoted `address`. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Withdraw a floating IP cancellation Source: https://docs.advinservers.com/api-reference/ip-addresses/withdraw-a-floating-ip-cancellation https://console.advinservers.com/docs/openapi.json post /floating-ips/{floatingIp}/withdraw-cancellation ### Overview Withdraws an end-of-period cancellation and continues billing for the address. Available only when `can_withdraw_cancellation` is true. Immediate cancellations cannot be reversed. Automatic payments remain disabled and must be set up again. `limits` contains account address allowances. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Add addresses to an IP group Source: https://docs.advinservers.com/api-reference/ip-groups/add-addresses-to-an-ip-group https://console.advinservers.com/docs/openapi.json post /ip-groups/{firewallIpGroup}/entries ### Overview Adds IPv4 or IPv6 addresses and CIDR ranges. Send `value` as one entry or several separated by commas, spaces or new lines. An optional `comment` is saved with every new entry. Express address spans such as `203.0.113.4-203.0.113.9` as CIDR ranges instead. Existing entries are skipped. A group can hold up to 2048 entries. Returns the updated group and applies changes to affected servers in the background. ### Permissions Requires the `firewall.update` (Change the firewall) permission for the selected team. Resources outside that team return 404. # Create an IP group Source: https://docs.advinservers.com/api-reference/ip-groups/create-an-ip-group https://console.advinservers.com/docs/openapi.json post /ip-groups ### Overview Creates an empty IP group in the current team. Send a name unique across the account, up to 100 characters, using letters, numbers, spaces, dots, dashes or underscores. Add addresses, then use the group as a firewall rule source. ### Permissions Requires the `firewall.update` (Change the firewall) permission for the selected team. Resources outside that team return 404. # Delete an IP group Source: https://docs.advinservers.com/api-reference/ip-groups/delete-an-ip-group https://console.advinservers.com/docs/openapi.json delete /ip-groups/{firewallIpGroup} ### Overview Permanently deletes the IP group and its address entries. Returns 422 if any firewall rule still references it. Change or remove those rules first. References are checked across all teams; the error identifies groups you are allowed to see. ### Permissions Requires the `firewall.delete` (Delete firewall settings) permission for the selected team. Resources outside that team return 404. # Get an IP group Source: https://docs.advinservers.com/api-reference/ip-groups/get-an-ip-group https://console.advinservers.com/docs/openapi.json get /ip-groups/{firewallIpGroup} ### Overview Returns an IP group with its addresses and `used_by`, which lists the firewall groups referencing it and their rule counts. Remove these references before deleting the IP group. ### Permissions Requires the `firewall.read` (View the firewall) permission for the selected team. Resources outside that team return 404. # List IP groups Source: https://docs.advinservers.com/api-reference/ip-groups/list-ip-groups https://console.advinservers.com/docs/openapi.json get /ip-groups ### Overview Lists firewall IP groups in the current team. Each group is a reusable source address list for firewall rules. Entries include addresses and `rules_count`. Fetch an individual group for `used_by`, which identifies the firewall groups using it. ### Permissions Requires the `firewall.read` (View the firewall) permission for the selected team. Resources outside that team return 404. # Remove an address from an IP group Source: https://docs.advinservers.com/api-reference/ip-groups/remove-an-address-from-an-ip-group https://console.advinservers.com/docs/openapi.json delete /ip-groups/{firewallIpGroup}/entries/{entry} ### Overview Permanently removes an address from the group. Rules referencing the group will no longer match that address through this entry. Changes are applied to servers in the background, so the previous rules may remain active briefly. Returns the updated group. ### Permissions Requires the `firewall.delete` (Delete firewall settings) permission for the selected team. Resources outside that team return 404. # Rename an IP group Source: https://docs.advinservers.com/api-reference/ip-groups/rename-an-ip-group https://console.advinservers.com/docs/openapi.json patch /ip-groups/{firewallIpGroup} ### Overview Renames an IP group. Names must be unique across the account. Addresses and rules using the group are unchanged. ### Permissions Requires the `firewall.update` (Change the firewall) permission for the selected team. Resources outside that team return 404. # Update an address in an IP group Source: https://docs.advinservers.com/api-reference/ip-groups/update-an-address-in-an-ip-group https://console.advinservers.com/docs/openapi.json patch /ip-groups/{firewallIpGroup}/entries/{entry} ### Overview Updates one address entry using `value` and an optional `comment`. An address already used by another entry returns 422. Returns the updated group and applies changes to affected servers in the background. ### Permissions Requires the `firewall.update` (Change the firewall) permission for the selected team. Resources outside that team return 404. # Check an ISO download link Source: https://docs.advinservers.com/api-reference/iso-images/check-an-iso-download-link https://console.advinservers.com/docs/openapi.json post /isos/query-link ### Overview Checks a URL's file name, type and size, and estimates its effect on the account's ISO storage usage. The file is not downloaded or saved. `quota.would_exceed` uses the same storage limit check as `POST /api/v1/client/isos`. ### Permissions Requires the `iso.read` (View ISO images) permission for the selected team. Resources outside that team return 404. # Delete an ISO Source: https://docs.advinservers.com/api-reference/iso-images/delete-an-iso https://console.advinservers.com/docs/openapi.json delete /isos/{iso} ### Overview Permanently deletes an ISO and frees its storage allowance immediately. Unmount it from every server first; `mounted_servers` in the ISO list identifies those servers. Deleting an ISO during download cancels the download. ### Permissions Requires the `iso.delete` (Delete ISO images) permission for the selected team. Resources outside that team return 404. # Download an ISO Source: https://docs.advinservers.com/api-reference/iso-images/download-an-iso https://console.advinservers.com/docs/openapi.json post /isos ### Overview Starts downloading an ISO from a public URL for use by servers in the same team. Returns immediately with `status` set to `downloading`, `completed_at` set to null and `download_progress` set to 0. Poll `GET /api/v1/client/isos` until the status is `ready` or `failed`. Downloads must be enabled (`quota.download_enabled`). Only one download per account can run at a time, and total storage cannot exceed 10 GiB. Rejected requests explain which condition failed. Send a `name` of up to 40 characters and the file URL as `link`. The file size is checked against the account's remaining storage before downloading. ### Permissions Requires the `iso.update` (Manage ISO images) permission for the selected team. Resources outside that team return 404. # List ISOs Source: https://docs.advinservers.com/api-reference/iso-images/list-isos https://console.advinservers.com/docs/openapi.json get /isos ### Overview Lists ISO images in the current team, newest first, without pagination or filters. The account can store up to 10 GiB. `quota.used` includes images across all teams, so it may exceed the total size of `items`. Poll this endpoint during downloads. `status` changes from `downloading` to `ready` or `failed`, and `download_progress` is a percentage. ### Permissions Requires the `iso.read` (View ISO images) permission for the selected team. Resources outside that team return 404. # List ISOs available to a server Source: https://docs.advinservers.com/api-reference/iso-images/list-isos-available-to-a-server https://console.advinservers.com/docs/openapi.json get /servers/{server}/isos ### Overview Lists installation images available to this server, with mount status and the owner's storage allowance. `mounted_on_this_server` and `mounted_on_other_servers_count` describe current use. `owned_by_server_owner` identifies images owned by the server's account. Use `/api/v1/client/isos` to download or delete images. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # Rename an ISO Source: https://docs.advinservers.com/api-reference/iso-images/rename-an-iso https://console.advinservers.com/docs/openapi.json patch /isos/{iso} ### Overview Changes the name of an ISO. Send a `name` of up to 40 characters. Names do not have to be unique. The stored file is not renamed and servers with the image mounted are not affected. ### Permissions Requires the `iso.update` (Manage ISO images) permission for the selected team. Resources outside that team return 404. # Attach a server to a private network Source: https://docs.advinservers.com/api-reference/private-networks/attach-a-server-to-a-private-network https://console.advinservers.com/docs/openapi.json post /servers/{server}/private-networks/{privateNetwork}/attach ### Overview Attaches a server to the private network. Optionally send `ip_address`; otherwise, the lowest available address is assigned. The member list includes the assigned address immediately. Network configuration runs in the background, with status `attaching` until complete. Poll the network to check progress. The server and network must share the same account and location. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Create a private network Source: https://docs.advinservers.com/api-reference/private-networks/create-a-private-network https://console.advinservers.com/docs/openapi.json post /private-networks ### Overview Creates an empty private network. Send `name` and `location_id`. Optionally send a private `subnet`; otherwise, one is assigned. Attach servers separately. They must be in the same location. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Create a private network in a server's location Source: https://docs.advinservers.com/api-reference/private-networks/create-a-private-network-in-a-servers-location https://console.advinservers.com/docs/openapi.json post /servers/{server}/private-networks ### Overview Creates a private network in this server's location. Send `name` and optionally a private `subnet`. Attach the server separately after creation. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Delete a private network Source: https://docs.advinservers.com/api-reference/private-networks/delete-a-private-network https://console.advinservers.com/docs/openapi.json delete /private-networks/{privateNetwork} ### Overview Permanently deletes the network and detaches every member. Servers lose their private addresses and connections over this network. Creating another network does not restore the deleted network or its addresses. ### Permissions Requires the `network.delete` (Delete networking resources) permission for the selected team. Resources outside that team return 404. # Delete a server's private network Source: https://docs.advinservers.com/api-reference/private-networks/delete-a-servers-private-network https://console.advinservers.com/docs/openapi.json delete /servers/{server}/private-networks/{privateNetwork} ### Overview Deletes the whole private network, not just this server's connection to it. Every member is detached, including other servers. All members lose their addresses and connections on this network. ### Permissions Requires the `network.delete` (Delete networking resources) permission for the selected team. Resources outside that team return 404. # Detach a server from a private network Source: https://docs.advinservers.com/api-reference/private-networks/detach-a-server-from-a-private-network https://console.advinservers.com/docs/openapi.json post /servers/{server}/private-networks/{privateNetwork}/detach ### Overview Removes the server from the network and releases its private address. Configuration runs in the background with status `detaching` until complete. Other members remain connected. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Get a private network Source: https://docs.advinservers.com/api-reference/private-networks/get-a-private-network https://console.advinservers.com/docs/openapi.json get /private-networks/{privateNetwork} ### Overview Returns a private network with its address range and members. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List a server's private networks Source: https://docs.advinservers.com/api-reference/private-networks/list-a-servers-private-networks https://console.advinservers.com/docs/openapi.json get /servers/{server}/private-networks ### Overview Lists the private networks in the server's location that this server can join, including those it has already joined. `attached` shows whether this server is a member of each network. `attachment_status` shows the progress of a pending attach or detach. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List locations for private networks Source: https://docs.advinservers.com/api-reference/private-networks/list-locations-for-private-networks https://console.advinservers.com/docs/openapi.json get /private-networks/locations ### Overview Lists locations where the current team has servers. Each city appears once, even when multiple product groups are available there. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List private networks Source: https://docs.advinservers.com/api-reference/private-networks/list-private-networks https://console.advinservers.com/docs/openapi.json get /private-networks ### Overview Lists private networks in the current team across all locations, with their address ranges and members. An accessible network belonging to another team has its name hidden. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List servers that can join a private network Source: https://docs.advinservers.com/api-reference/private-networks/list-servers-that-can-join-a-private-network https://console.advinservers.com/docs/openapi.json get /private-networks/{privateNetwork}/eligible-servers ### Overview Lists servers in the network's team and location that have not joined it. Other servers cannot be attached through this team. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # Rename a private network Source: https://docs.advinservers.com/api-reference/private-networks/rename-a-private-network https://console.advinservers.com/docs/openapi.json patch /private-networks/{privateNetwork} ### Overview Renames a private network. Send `name`. The subnet, location and identifier cannot be changed after creation. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Create a reverse DNS record Source: https://docs.advinservers.com/api-reference/reverse-dns/create-a-reverse-dns-record https://console.advinservers.com/docs/openapi.json post /servers/{server}/rdns/{ipId} ### Overview Creates a reverse DNS record. Send `ipAddress` covered by this entry and a valid `hostname`. Returns the record with a pending status while nameservers update. Poll the record list to check progress. Validation errors contain an `errors` object without a `message`. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Delete a reverse DNS record Source: https://docs.advinservers.com/api-reference/reverse-dns/delete-a-reverse-dns-record https://console.advinservers.com/docs/openapi.json delete /servers/{server}/rdns/{ipId}/{recordId} ### Overview Permanently deletes a reverse DNS record. Nameservers update afterwards, and cached answers may retain the old hostname until they expire. ### Permissions Requires the `network.delete` (Delete networking resources) permission for the selected team. Resources outside that team return 404. # List a server's reverse DNS addresses Source: https://docs.advinservers.com/api-reference/reverse-dns/list-a-servers-reverse-dns-addresses https://console.advinservers.com/docs/openapi.json get /servers/{server}/rdns ### Overview Lists reverse DNS entries for the server's addresses. Use each entry's `id` as `{ipId}` in subsequent requests. A routed IPv6 allocation has separate entries for its individual address and subnet. The individual address entry adds `-onlink` to its ID. Each entry has its own DNS records. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # List reverse DNS records for an address Source: https://docs.advinservers.com/api-reference/reverse-dns/list-reverse-dns-records-for-an-address https://console.advinservers.com/docs/openapi.json get /servers/{server}/rdns/{ipId} ### Overview Lists DNS records for one address entry. `status` reports progress applying the record to nameservers. Response fields use camelCase. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # Get a server's default firewall policy Source: https://docs.advinservers.com/api-reference/server-firewall/get-a-servers-default-firewall-policy https://console.advinservers.com/docs/openapi.json get /servers/{server}/firewall/policy ### Overview Returns whether the server firewall is enabled and its default action for unmatched incoming and outgoing traffic. `allow` permits traffic; `block` drops it. These settings are read-only. The firewall is enabled on all newly created servers, with provider-managed defaults. Use firewall group rules to control your traffic. This request queries the server directly and fails if it cannot be reached. ### Permissions Requires the `firewall.read` (View the firewall) permission for the selected team. Resources outside that team return 404. # List externally managed firewall rules Source: https://docs.advinservers.com/api-reference/server-firewall/list-externally-managed-firewall-rules https://console.advinservers.com/docs/openapi.json get /servers/{server}/firewall-groups/unmanaged-rules ### Overview Lists active rules that are not managed by your firewall groups, such as a provider's outbound mail restriction. These rules are read-only. Use firewall groups to manage your own rules. `importing` is true while older server rules are being moved into an editable firewall group. Check again in a minute or two. The response uses the last retrieved server rules and may be slightly out of date. An unreachable server returns an empty list rather than an error. ### Permissions Requires the `firewall.read` (View the firewall) permission for the selected team. Resources outside that team return 404. # Change a server's icon Source: https://docs.advinservers.com/api-reference/server-settings/change-a-servers-icon https://console.advinservers.com/docs/openapi.json put /servers/{server}/settings/icon ### Overview Sets the server icon. Send `icon_url` from the panel's bundled logos, or null to restore the operating system image's default icon. Other URLs are rejected. This changes only the panel display. ### Permissions Requires the `server.update` (Change server settings) permission for the selected team. Resources outside that team return 404. # Change a server's password or SSH keys Source: https://docs.advinservers.com/api-reference/server-settings/change-a-servers-password-or-ssh-keys https://console.advinservers.com/docs/openapi.json put /servers/{server}/settings/auth ### Overview Replaces the server password or SSH keys. Send `type=password` with `password`, or `type=ssh_keys` with a newline-separated `ssh_keys` string. A Windows password needs at least three of uppercase letters, lowercase letters, numbers and symbols, may not contain `Administrator`, and may be at most 127 characters. An empty key string removes all keys. Password changes apply immediately when guest tools are available and are saved for the next boot otherwise. SSH key changes take effect on the next boot. ### Permissions Requires the `server.credentials` (Change server passwords and SSH keys) permission for the selected team. Resources outside that team return 404. # Change the boot firmware Source: https://docs.advinservers.com/api-reference/server-settings/change-the-boot-firmware https://console.advinservers.com/docs/openapi.json put /servers/{server}/settings/hardware/bios ### Overview Changes the boot firmware using `type`. Power the server off and on for the change to take effect; restarting inside the operating system is insufficient. UEFI creates a small volume for boot settings if needed. New integrations should use the hardware options endpoint. ### Permissions Requires the `server.update` (Change server settings) permission for the selected team. Resources outside that team return 404. # Get a server's SSH keys Source: https://docs.advinservers.com/api-reference/server-settings/get-a-servers-ssh-keys https://console.advinservers.com/docs/openapi.json get /servers/{server}/settings/auth ### Overview Returns the server's configured SSH public keys as one newline-separated string. These may differ from keys saved in your account. The server password is never returned. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # Get DNS resolvers Source: https://docs.advinservers.com/api-reference/server-settings/get-dns-resolvers https://console.advinservers.com/docs/openapi.json get /servers/{server}/settings/network ### Overview Returns the DNS resolver addresses saved in the server's boot configuration. Changes made directly inside the operating system are not included. ### Permissions Requires the `network.read` (View networking) permission for the selected team. Resources outside that team return 404. # Get hardware settings Source: https://docs.advinservers.com/api-reference/server-settings/get-hardware-settings https://console.advinservers.com/docs/openapi.json get /servers/{server}/settings/hardware/options ### Overview Returns the server's hardware settings directly from its host. `bios_type` identifies the boot firmware. `sev_snp_enabled` and `sev_snp_supported` describe AMD memory encryption. `guest_agent_enabled` indicates whether the guest agent is enabled. `tpm_enabled` indicates whether a virtual TPM 2.0 device is present. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # Get the boot order Source: https://docs.advinservers.com/api-reference/server-settings/get-the-boot-order https://console.advinservers.com/docs/openapi.json get /servers/{server}/settings/hardware/boot-order ### Overview Returns the saved boot target and mounted installation image. The response uses the panel's records. A background check compares these with the server and corrects any differences. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # List templates for a reinstall Source: https://docs.advinservers.com/api-reference/server-settings/list-templates-for-a-reinstall https://console.advinservers.com/docs/openapi.json get /servers/{server}/settings/template-groups ### Overview Lists operating system families and versions available for this server's reinstall. Versions are under `templates`. Filter group names with `filter[name]`. Images incompatible with this server are omitted. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # Mount an ISO Source: https://docs.advinservers.com/api-reference/server-settings/mount-an-iso https://console.advinservers.com/docs/openapi.json post /servers/{server}/settings/hardware/isos/{iso}/mount ### Overview Mounts an installation image and replaces any image already mounted. The image must belong to the server's account and team; other images return 404. It is available on the next boot. Set the boot target to `iso` to boot from it. ### Permissions Requires the `server.reinstall` (Reinstall servers) permission for the selected team. Resources outside that team return 404. # Reinstall a server Source: https://docs.advinservers.com/api-reference/server-settings/reinstall-a-server https://console.advinservers.com/docs/openapi.json post /servers/{server}/settings/reinstall ### Overview Reinstalls the server and **permanently erases all existing disk data**. Take a backup or snapshot first if you need to keep it. Send `template_uuid` from the server's available operating systems. Provide `account_password`, up to 25 key IDs in `ssh_keys`, or both. A password is required when no keys are supplied and for all Windows installations. A Windows password needs at least three of uppercase letters, lowercase letters, numbers and symbols, may not contain `Administrator`, and may be at most 127 characters. Optionally select a setup script with `user_script`. `start_on_completion` defaults to true. Installation runs in the background. The server enters an installing state; use `installation_progress` to track it. The request is rejected while another server operation is running. ### Permissions Requires the `server.reinstall` (Reinstall servers) permission for the selected team. Resources outside that team return 404. # Rename a server Source: https://docs.advinservers.com/api-reference/server-settings/rename-a-server https://console.advinservers.com/docs/openapi.json post /servers/{server}/settings/rename ### Overview Updates the server's display name and hostname. Both `name` and `hostname` are required. `name` is shown only in the panel. `hostname` must be valid and is applied to the operating system on its next boot. Returns the two updated fields. ### Permissions Requires the `server.update` (Change server settings) permission for the selected team. Resources outside that team return 404. # Set DNS resolvers Source: https://docs.advinservers.com/api-reference/server-settings/set-dns-resolvers https://console.advinservers.com/docs/openapi.json put /servers/{server}/settings/network ### Overview Replaces the DNS resolver list and returns it. Send `nameservers` as an array of IP addresses; an empty array clears the list. Changes take effect on the next boot. ### Permissions Requires the `network.update` (Change networking) permission for the selected team. Resources outside that team return 404. # Set the boot order Source: https://docs.advinservers.com/api-reference/server-settings/set-the-boot-order https://console.advinservers.com/docs/openapi.json put /servers/{server}/settings/hardware/boot-order ### Overview Sets the next boot target to `disk` or `iso`. Mount an image before selecting `iso`. The choice is saved immediately and applied in the background for the next boot. ### Permissions Requires the `server.reinstall` (Reinstall servers) permission for the selected team. Resources outside that team return 404. # Unmount an ISO Source: https://docs.advinservers.com/api-reference/server-settings/unmount-an-iso https://console.advinservers.com/docs/openapi.json post /servers/{server}/settings/hardware/isos/{iso}/unmount ### Overview Unmounts the server's installation image, including one mounted by support. Set the boot target back to `disk` if it was `iso`, so the server can start on its next boot. ### Permissions Requires the `server.reinstall` (Reinstall servers) permission for the selected team. Resources outside that team return 404. # Update hardware settings Source: https://docs.advinservers.com/api-reference/server-settings/update-hardware-settings https://console.advinservers.com/docs/openapi.json put /servers/{server}/settings/hardware/options ### Overview Updates hardware settings and returns the complete settings. Send only changed fields: `bios_type`, `sev_snp_enabled`, `guest_agent_enabled` or `tpm_enabled`. Firmware and memory encryption require powering off and on. Memory encryption requires UEFI and `sev_snp_supported=true`. Disabling the TPM permanently deletes its state and can make TPM-protected data inaccessible. ### Permissions Requires the `server.update` (Change server settings) permission for the selected team. Resources outside that team return 404. # Buy a plan change Source: https://docs.advinservers.com/api-reference/server-upgrades/buy-a-plan-change https://console.advinservers.com/docs/openapi.json post /servers/{server}/upgrades ### Overview Reserves capacity and creates an invoice for a plan change. **Payment is required.** Send the `quote_token` with the same `plan_key` and `resize_disk` used for the quote. Include `acknowledge_ip_replacement` if the quote requires an IP address change. The server changes only after payment. Payment details are in `billing`. The reservation expires if payment is not received by `billing.payment_due_at`. Use the current-upgrade endpoint to track progress. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Cancel a plan change Source: https://docs.advinservers.com/api-reference/server-upgrades/cancel-a-plan-change https://console.advinservers.com/docs/openapi.json post /servers/{server}/upgrades/{upgrade}/cancel ### Overview Cancels a plan change awaiting payment and releases its reserved capacity. Paid changes cannot be cancelled through this endpoint. Contact support if a paid change needs attention. Invoice checks continue after the response; check the change again until its status is final. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Get a quote for a plan change Source: https://docs.advinservers.com/api-reference/server-upgrades/get-a-quote-for-a-plan-change https://console.advinservers.com/docs/openapi.json post /servers/{server}/upgrades/quote ### Overview Calculates the price of a plan change. Send `plan_key` from the catalogue and `resize_disk`. The response includes the price, any location change fee, currency, remaining and total days in the current billing period, destination, migration requirements, IP replacement requirements and a signed `quote_token`. Use this token to purchase the change at the quoted price. A quote does not charge the account or reserve capacity. If the plan has no available capacity, the response explains why a quote cannot be provided. A plan the catalogue listed as available in the last ten minutes is quoted even if that capacity has since been taken, and purchasing with the resulting `quote_token` honors it the same way. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # Get the current plan change Source: https://docs.advinservers.com/api-reference/server-upgrades/get-the-current-plan-change https://console.advinservers.com/docs/openapi.json get /servers/{server}/upgrades/current ### Overview Returns the current plan change, including its status, progress percentage, progress message and any failure reference. Returns **204 with no body** if there is no current change. Completed changes remain available for one day. Changes awaiting billing review remain available until the review is recorded. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # List upgrade plans for a server Source: https://docs.advinservers.com/api-reference/server-upgrades/list-upgrade-plans-for-a-server https://console.advinservers.com/docs/openapi.json get /servers/{server}/upgrades/catalog ### Overview Lists available upgrade plans, grouped by product and location. `current_group_id` and `current_location_id` identify the current plan's group and location. `current_disk` is the current disk size. `disk_resize_required` indicates whether the disk must grow, and `migration_allowed` indicates whether the server can move to another location. `has_attached_floating_ips` indicates that a floating IP is attached; plans in another location are still listed, but quoting one is refused until the floating IPs are detached. A plan listed as available can still be quoted for ten minutes after the catalogue was read, even if the capacity it was listed on is taken in the meantime. `location_change_fee` and `product_change_fee` are the fixed fees for changing location or product group. Use these to show fees before requesting a quote. When upgrades are unavailable, `enabled` is false and no plans are returned. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # Cancel a server order Source: https://docs.advinservers.com/api-reference/servers/cancel-a-server-order https://console.advinservers.com/docs/openapi.json post /servers/orders/{serverOrder}/cancel ### Overview Cancels an unpaid order. Orders that have already been paid cannot be cancelled here. The response shows the payment deadline brought forward. The order and invoice are closed in the background after a final check for incoming payments. Check the order again until its status is final. Orders belonging to another account or team return 404. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Dismiss an installation failure notice Source: https://docs.advinservers.com/api-reference/servers/dismiss-an-installation-failure-notice https://console.advinservers.com/docs/openapi.json delete /servers/{server}/install-failure ### Overview Dismisses the installation failure notice by clearing `install_failed_at`. This does not change the server or retry the installation. A failed installation can already be retried without dismissing the notice. ### Permissions Requires the `server.update` (Change server settings) permission for the selected team. Resources outside that team return 404. # Get a quote for a server order Source: https://docs.advinservers.com/api-reference/servers/get-a-quote-for-a-server-order https://console.advinservers.com/docs/openapi.json post /servers/quote ### Overview Calculates a server price and returns a signed `quote_token`. Send `plan_key` from the catalogue. Optionally send `billing_cycle` to use a cycle other than the default. The response includes the plan, product group, location, price, currency, billing cycle, cycle length in months and payment window. Use the token to place the order at the quoted price. Requesting a quote does not charge the account or reserve capacity. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # Get a server Source: https://docs.advinservers.com/api-reference/servers/get-a-server https://console.advinservers.com/docs/openapi.json get /servers/{server} ### Overview Returns a server's name, plan, usage, limits, location and last known power state. These saved details may be a few seconds old. Add `?include=user` to include the account that owns it. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # Get a server's billing service Source: https://docs.advinservers.com/api-reference/servers/get-a-servers-billing-service https://console.advinservers.com/docs/openapi.json get /servers/{server}/billing ### Overview Returns the billing service linked to this server, using the same fields as the managed-services listing. Returns null when no service is linked. Only the account holder can read billing; API keys need billing.read. Available while the server is suspended or another operation is in progress. ### Permissions Requires the `billing.read` (View billing) permission for the selected team. Resources outside that team return 404. # Get a server's live configuration Source: https://docs.advinservers.com/api-reference/servers/get-a-servers-live-configuration https://console.advinservers.com/docs/openapi.json get /servers/{server}/details ### Overview Returns the server's live disks, boot order, network adapter and operation lock. This request may be slower than reading saved server details. Returns 503 with a `message` if the configuration cannot be read; retry later. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # Get a server's live status Source: https://docs.advinservers.com/api-reference/servers/get-a-servers-live-status https://console.advinservers.com/docs/openapi.json get /servers/{server}/state ### Overview Returns the server's current power state, CPU usage, memory usage and uptime. This queries the server directly and may be slower than reading the cached server details. During a power operation, the state is `starting`, `stopping`, `shutting_down` or `restarting`. It returns to `running` or `stopped` when the operation completes or times out. Returns 503 with a `message` if the host cannot be reached. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # Get a server's unpaid invoice Source: https://docs.advinservers.com/api-reference/servers/get-a-servers-unpaid-invoice https://console.advinservers.com/docs/openapi.json get /servers/{server}/billing/overdue-invoice ### Overview Returns the oldest unpaid invoice covering this server, overdue or not, with its lines and payments, or null when there is none. Only the account holder can read it. Invoices belong to the account and are never shared with a team. Returns null instead of an error when billing information cannot be loaded. Available while the server is suspended. ### Permissions Requires the `billing.read` (View billing) permission for the selected team. Resources outside that team return 404. # Get all usage graphs Source: https://docs.advinservers.com/api-reference/servers/get-all-usage-graphs https://console.advinservers.com/docs/openapi.json get /servers/{server}/metrics ### Overview Returns CPU, memory, disk and network graphs. `period` accepts `hour`, `day`, `week`, `month` or `year` and defaults to `hour`. `aggregation` accepts `average` or `maximum` and defaults to `average`. Use `maximum` to see short usage spikes. Missing readings return 200 with an `unavailable` message and empty series. A stopped server may also have empty series. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # Get one usage graph Source: https://docs.advinservers.com/api-reference/servers/get-one-usage-graph https://console.advinservers.com/docs/openapi.json get /servers/{server}/metrics-data/{type}/{period} ### Overview Returns time-ordered samples for `cpu`, `mem`, `disk` or `net`. Use `hour`, `day`, `week`, `month` or `year` for `period`. Add `?aggregation=maximum` for peak values; the default is `average`. Each point includes a Unix timestamp in seconds and the requested measurements. An empty array means no samples are available for that period. Returns 503 if metrics cannot be read. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # Get power states for multiple servers Source: https://docs.advinservers.com/api-reference/servers/get-power-states-for-multiple-servers https://console.advinservers.com/docs/openapi.json get /servers/power-states ### Overview Returns power states for up to 100 servers. Pass `?servers[]=&servers[]=` using IDs from the server payload. Servers you do not own are omitted. If a server cannot be reached, its last known state is returned. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # List a server's audit log Source: https://docs.advinservers.com/api-reference/servers/list-a-servers-audit-log https://console.advinservers.com/docs/openapi.json get /servers/{server}/audit-log ### Overview Lists server activity, newest first. `per_page` defaults to 25 and accepts 1 to 100. Sort by `created_at` or `updated_at`, with `-` for descending order. Filter by `filter[action]`, `filter[user_id]` or `filter[user.email]`. By default, `user` contains only an email address. Add `?include=user` for full account details. The included `user` is null when you cannot view that account. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # List outstanding server orders Source: https://docs.advinservers.com/api-reference/servers/list-outstanding-server-orders https://console.advinservers.com/docs/openapi.json get /servers/orders ### Overview Lists outstanding server orders in the current team. Once an order is paid and the server is created, the order leaves this list and the server appears in the server list. The order's `server_id` identifies that server. `enabled` is false when server ordering is unavailable. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # List server plans Source: https://docs.advinservers.com/api-reference/servers/list-server-plans https://console.advinservers.com/docs/openapi.json get /servers/catalog ### Overview Lists available plans and prices. `groups` contains plans grouped by product and location. `billing_cycles` lists the available payment periods and their lengths in months. `default_billing_cycle` is used when an order does not specify a cycle. `currency` applies to all prices. `payment_window_minutes` is the time allowed to pay for an order. New servers are created in `default_team`. The request cannot change this destination. SSH keys and scripts are resolved in the requesting team, so ordering from another team can select resources outside the server's destination team. When ordering is unavailable, `enabled` is false, `message` explains why, and no plans are returned. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # List servers Source: https://docs.advinservers.com/api-reference/servers/list-servers https://console.advinservers.com/docs/openapi.json get /servers ### Overview Lists servers in the current team without pagination or filters. To list another team's servers, use an API key for that team. Add `?include=user` to include the account that owns each server. Otherwise, that field is omitted. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # List templates Source: https://docs.advinservers.com/api-reference/servers/list-templates https://console.advinservers.com/docs/openapi.json get /servers/templates ### Overview Lists operating system families and their available versions. This list is not filtered by server location. Any listed image can be selected for a new server. ### Permissions Requires the `server.read` (View servers) permission for the selected team. Resources outside that team return 404. # Open a console session Source: https://docs.advinservers.com/api-reference/servers/open-a-console-session https://console.advinservers.com/docs/openapi.json post /servers/{server}/create-console-session ### Overview Creates a connection through the integrated console proxy. Send `type` as `novnc` for a graphical console or `xtermjs` for a serial console. Connect to `websocket_url` immediately. The single-use connection token expires after 30 seconds. For a graphical console, use `password` as the VNC password. Serial authentication is handled by the proxy. Request a new session after every disconnect, including a server restart. The existing `is_tls_enabled`, `fqdn`, `port` and `token` fields describe the panel connection. A temporary failure returns `503`; retry after the delay in `Retry-After`. ### Permissions Requires the `server.console` (Use the console) permission for the selected team. Resources outside that team return 404. # Order servers Source: https://docs.advinservers.com/api-reference/servers/order-servers https://console.advinservers.com/docs/openapi.json post /servers ### Overview Orders servers using one quoted plan. Send `quote_token` and `quantity` from 1 to 10 with a matching `hostnames` list, or one `hostname` for a single server. Any hostname may be left blank, and the machine is then named after the IP address it is deployed onto. A matching `labels` list sets the panel display name of each server; any label left blank is randomly generated. Include the operating system, password and any SSH keys or setup script. A Windows password needs at least three of uppercase letters, lowercase letters, numbers and symbols, may not contain `Administrator`, and may be at most 127 characters. Returns the purchase with one order per server. Payment from account credit and installation run in the background. Poll the outstanding orders for their status and server ID. Insufficient credit sets `needs_funds` until funds arrive or the payment deadline expires. Failed paid installations are refunded to account credit. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Send a power command Source: https://docs.advinservers.com/api-reference/servers/send-a-power-command https://console.advinservers.com/docs/openapi.json patch /servers/{server}/state ### Overview Queues a power command. Send `state` as `start`, `shutdown`, `restart`, `reset`, `kill`, `suspend` or `resume`. Poll `GET /state` to check completion. `shutdown` requests an operating system shutdown, then forces power off after one minute if needed. `kill` and `reset` cut power immediately and can lose unsaved data. Requests are rejected while another operation, such as a reinstall, upgrade, snapshot or migration, is running. ### Permissions Requires the `server.power` (Control power) permission for the selected team. Resources outside that team return 404. # Add a setup script Source: https://docs.advinservers.com/api-reference/setup-scripts/add-a-setup-script https://console.advinservers.com/docs/openapi.json post /user-scripts ### Overview Adds a setup script for future server reinstalls. The script runs on the first boot after a reinstall that selects it. Existing servers are not changed. Send `type` as `cloud-config` to merge settings with the operating system image's configuration, or `bash` to run a shell script. Send a unique account-wide `name` of up to 64 characters and `content` of up to 1 MiB. ### Permissions Requires the `script.update` (Manage setup scripts) permission for the selected team. Resources outside that team return 404. # Delete a setup script Source: https://docs.advinservers.com/api-reference/setup-scripts/delete-a-setup-script https://console.advinservers.com/docs/openapi.json delete /user-scripts/{userScript} ### Overview Permanently deletes a saved setup script. Changes it previously made to servers are not reversed. ### Permissions Requires the `script.delete` (Delete setup scripts) permission for the selected team. Resources outside that team return 404. # List setup scripts Source: https://docs.advinservers.com/api-reference/setup-scripts/list-setup-scripts https://console.advinservers.com/docs/openapi.json get /user-scripts ### Overview Lists setup scripts in the current team, ordered by name. Each entry includes the full `content`, which may contain credentials. Handle the response as sensitive data. Scripts in other teams are not included. ### Permissions Requires the `script.read` (View setup scripts) permission for the selected team. Resources outside that team return 404. # List setup scripts for a reinstall Source: https://docs.advinservers.com/api-reference/setup-scripts/list-setup-scripts-for-a-reinstall https://console.advinservers.com/docs/openapi.json get /servers/{server}/settings/user-scripts ### Overview Lists setup scripts available for this server's reinstall. This includes the owner's scripts and your own when you manage someone else's server. `owner` identifies each script's account, and the owner's scripts appear first. Each entry includes the full `content`, which may contain sensitive data. ### Permissions Requires the `script.read` (View setup scripts) permission for the selected team. Resources outside that team return 404. # Update a setup script Source: https://docs.advinservers.com/api-reference/setup-scripts/update-a-setup-script https://console.advinservers.com/docs/openapi.json patch /user-scripts/{userScript} ### Overview Updates a setup script. Send `name`, `type` and the full `content`, even if only one changes. Servers previously configured with the script are not changed. ### Permissions Requires the `script.update` (Manage setup scripts) permission for the selected team. Resources outside that team return 404. # Buy a snapshot storage Source: https://docs.advinservers.com/api-reference/snapshots/buy-a-snapshot-storage https://console.advinservers.com/docs/openapi.json post /snapshots/storages ### Overview Orders a snapshot storage of `size_gb` GiB, between the catalogue's `min_gb` and `max_gb`, paid from account credit. An optional `name` of up to 64 characters labels it. Returns the storage awaiting payment; snapshots can be stored in it once its status is `active`. If more credit is needed, `status_label` shows `Needs funds` and `progress_message` gives the amount. Add funds before the payment deadline or the order expires. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Cancel a snapshot storage Source: https://docs.advinservers.com/api-reference/snapshots/cancel-a-snapshot-storage https://console.advinservers.com/docs/openapi.json post /snapshots/storages/{snapshotStorage}/cancel ### Overview Cancels the storage. Send `type` as `immediate` or `end_of_billing`. The storage must be empty: delete or move every snapshot in it first. The storage keeps working until the cancellation takes effect. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Delete a snapshot Source: https://docs.advinservers.com/api-reference/snapshots/delete-a-snapshot https://console.advinservers.com/docs/openapi.json delete /servers/{server}/snapshots/{snapshot} ### Overview Permanently deletes the snapshot, including every stored copy, and frees its space in the snapshot storage. The snapshot may have been taken of any server in the same account and team. The request is refused while the storage is suspended. ### Permissions Requires the `snapshot.delete` (Delete snapshots) permission for the selected team. Resources outside that team return 404. # Delete a snapshot by ID Source: https://docs.advinservers.com/api-reference/snapshots/delete-a-snapshot-by-id https://console.advinservers.com/docs/openapi.json delete /snapshots/{snapshot} ### Overview Permanently deletes a snapshot, including every stored copy, using only the snapshot ID. Use this for a snapshot whose server no longer exists. ### Permissions Requires the `snapshot.delete` (Delete snapshots) permission for the selected team. Resources outside that team return 404. # Get a quote for resizing a snapshot storage Source: https://docs.advinservers.com/api-reference/snapshots/get-a-quote-for-resizing-a-snapshot-storage https://console.advinservers.com/docs/openapi.json post /snapshots/storages/{snapshotStorage}/resize/quote ### Overview Returns the charge or refund for changing the storage to `size_gb` now. The amount is prorated over the time left in the current billing period. Nothing is changed. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Get a snapshot storage Source: https://docs.advinservers.com/api-reference/snapshots/get-a-snapshot-storage https://console.advinservers.com/docs/openapi.json get /snapshots/storages/{snapshotStorage} ### Overview Returns one snapshot storage in the current team, with its usage, billing and any resize still in progress. ### Permissions Requires the `snapshot.read` (View snapshots) permission for the selected team. Resources outside that team return 404. # List snapshot storages Source: https://docs.advinservers.com/api-reference/snapshots/list-snapshot-storages https://console.advinservers.com/docs/openapi.json get /snapshots/storages ### Overview Lists the snapshot storages in the current team that have not ended, oldest first, with the space used in each. The response also includes the price of a new storage. Each storage is billed as its own service and sized in GiB (1 GiB is 1,073,741,824 bytes). ### Permissions Requires the `snapshot.read` (View snapshots) permission for the selected team. Resources outside that team return 404. # List snapshots available to a server Source: https://docs.advinservers.com/api-reference/snapshots/list-snapshots-available-to-a-server https://console.advinservers.com/docs/openapi.json get /servers/{server}/snapshots ### Overview Lists every snapshot in the server's account and team, newest first, without pagination. This includes snapshots of other servers, and any of them can be restored onto this server. Each entry names the server the snapshot was taken of, while that server still exists. A snapshot being restored onto this server has the status `restoring` in this list only. The same snapshot can be restored onto other servers at the same time. The response also lists the team's snapshot storages that can hold a new snapshot. ### Permissions Requires the `snapshot.read` (View snapshots) permission for the selected team. Resources outside that team return 404. # List the team's snapshots Source: https://docs.advinservers.com/api-reference/snapshots/list-the-teams-snapshots https://console.advinservers.com/docs/openapi.json get /snapshots ### Overview Lists the snapshots in every snapshot storage the current team holds, newest first, without pagination. Each entry names its storage and, while it exists, the server it was taken of. A snapshot outlives its server. ### Permissions Requires the `snapshot.read` (View snapshots) permission for the selected team. Resources outside that team return 404. # Move a snapshot to another storage Source: https://docs.advinservers.com/api-reference/snapshots/move-a-snapshot-to-another-storage https://console.advinservers.com/docs/openapi.json post /snapshots/{snapshot}/move ### Overview Moves a finished snapshot into another snapshot storage in the same team. Send the target `snapshot_storage` UUID. The target must have room for the whole snapshot, and neither storage may be suspended. No data is copied. Only the storage that holds and pays for the snapshot changes. To give snapshots to another team, move them into one storage and transfer that storage. ### Permissions Requires the `snapshot.update` (Move snapshots and rename storage) permission for the selected team. Resources outside that team return 404. # Rename a snapshot storage Source: https://docs.advinservers.com/api-reference/snapshots/rename-a-snapshot-storage https://console.advinservers.com/docs/openapi.json patch /snapshots/storages/{snapshotStorage} ### Overview Renames the storage. Send a `name` of 1 to 64 characters. Nothing else changes. ### Permissions Requires the `snapshot.update` (Move snapshots and rename storage) permission for the selected team. Resources outside that team return 404. # Resize a snapshot storage Source: https://docs.advinservers.com/api-reference/snapshots/resize-a-snapshot-storage https://console.advinservers.com/docs/openapi.json post /snapshots/storages/{snapshotStorage}/resize ### Overview Changes the storage to `size_gb`. A larger size charges the prorated difference to account credit and applies once the payment clears. `pending_resize` shows the change until then. A smaller size applies immediately and credits the unused difference back. It must still fit every snapshot in the storage. In both cases, the recurring price changes to the price of the new size. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Restore a snapshot Source: https://docs.advinservers.com/api-reference/snapshots/restore-a-snapshot https://console.advinservers.com/docs/openapi.json post /servers/{server}/snapshots/{snapshot}/restore ### Overview Restores a completed snapshot over the server's current disk, replacing its existing contents. The snapshot must belong to the same account and team, but may come from another server or location. A running server is force-stopped first; a locked one is refused. Restoration runs in the background; poll the server until its restoring status clears. ### Permissions Requires the `snapshot.restore` (Restore snapshots) permission for the selected team. Resources outside that team return 404. # Take a snapshot Source: https://docs.advinservers.com/api-reference/snapshots/take-a-snapshot https://console.advinservers.com/docs/openapi.json post /servers/{server}/snapshots ### Overview Creates a snapshot in the background. Send a `name` of 1 to 40 characters and the UUID of the `snapshot_storage` to store it in. You can leave out the storage when the team has exactly one usable storage. The storage must not be full, suspended or ended. The request is refused while a backup or migration of the server is running. The initial response has `completed_at` set to null. The snapshot is ready when `completed_at` is set and `is_successful` is true, and its size then counts against the storage. ### Permissions Requires the `snapshot.create` (Take snapshots) permission for the selected team. Resources outside that team return 404. # Withdraw a snapshot storage cancellation Source: https://docs.advinservers.com/api-reference/snapshots/withdraw-a-snapshot-storage-cancellation https://console.advinservers.com/docs/openapi.json post /snapshots/storages/{snapshotStorage}/withdraw-cancellation ### Overview Withdraws an end-of-period cancellation and continues billing for the storage. Available only when `can_withdraw_cancellation` is true. Immediate cancellations cannot be reversed. Automatic payments remain disabled and must be set up again. ### Permissions Requires the `billing.purchase` (Make purchases) permission for the selected team. Resources outside that team return 404. # Add an SSH key Source: https://docs.advinservers.com/api-reference/ssh-keys/add-an-ssh-key https://console.advinservers.com/docs/openapi.json post /ssh-keys ### Overview Adds an SSH public key for future server reinstalls. Existing servers are not changed. Send a unique account-wide `name` of up to 64 characters and the complete one-line `public_key` of up to 4096 characters. Set `is_default` to preselect the key on the reinstall form. Multiple keys can be defaults. ### Permissions Requires the `sshkey.update` (Manage SSH keys) permission for the selected team. Resources outside that team return 404. # Delete an SSH key Source: https://docs.advinservers.com/api-reference/ssh-keys/delete-an-ssh-key https://console.advinservers.com/docs/openapi.json delete /ssh-keys/{sshKey} ### Overview Permanently deletes a saved SSH key. It does not remove the key from existing servers. To revoke access, remove the key from those servers or reinstall them. ### Permissions Requires the `sshkey.delete` (Delete SSH keys) permission for the selected team. Resources outside that team return 404. # List SSH keys Source: https://docs.advinservers.com/api-reference/ssh-keys/list-ssh-keys https://console.advinservers.com/docs/openapi.json get /ssh-keys ### Overview Lists SSH public keys in the current team. Default keys appear first, followed by other keys in name order. Keys in other teams are not included. ### Permissions Requires the `sshkey.read` (View SSH keys) permission for the selected team. Resources outside that team return 404. # List SSH keys for a reinstall Source: https://docs.advinservers.com/api-reference/ssh-keys/list-ssh-keys-for-a-reinstall https://console.advinservers.com/docs/openapi.json get /servers/{server}/settings/ssh-keys ### Overview Lists SSH keys available for this server's reinstall. This includes the owner's keys and your own keys when you manage someone else's server. `belongs_to_server_owner` and `owner` identify who owns each key. `is_default` identifies preselected keys. Owner keys appear first, with defaults first within each account, then by name. ### Permissions Requires the `sshkey.read` (View SSH keys) permission for the selected team. Resources outside that team return 404. # Update an SSH key Source: https://docs.advinservers.com/api-reference/ssh-keys/update-an-ssh-key https://console.advinservers.com/docs/openapi.json patch /ssh-keys/{sshKey} ### Overview Updates an SSH key's name and public key. Send both `name` and `public_key`, even if only one changes. Servers with the old key keep it until they are reinstalled or updated manually. ### Permissions Requires the `sshkey.update` (Manage SSH keys) permission for the selected team. Resources outside that team return 404. # Close a ticket Source: https://docs.advinservers.com/api-reference/support-tickets/close-a-ticket https://console.advinservers.com/docs/openapi.json post /tickets/{ticket}/close ### Overview Closes a ticket and returns its updated details. The conversation remains available and can still receive replies. Closing an already closed ticket makes no change and sends no duplicate notice. ### Permissions Requires the account permission `tickets.write` (Write to support). # Download a ticket attachment Source: https://docs.advinservers.com/api-reference/support-tickets/download-a-ticket-attachment https://console.advinservers.com/docs/openapi.json get /tickets/{ticket}/messages/{message}/attachments/{index} ### Overview Downloads a ticket attachment. Use the attachment's `url` from the ticket response. The path identifies the ticket, message and attachment position; `{message}` is `0` for the opening message. Files are returned as `application/octet-stream` downloads, with their names in `Content-Disposition`. Removed attachments return 404. ### Permissions Requires the account permission `tickets.read` (View support tickets). # Get a ticket Source: https://docs.advinservers.com/api-reference/support-tickets/get-a-ticket https://console.advinservers.com/docs/openapi.json get /tickets/{ticket} ### Overview Returns a ticket's full conversation, oldest message first. Use the numeric `id` from the ticket list as `{ticket}`, not the emailed reference such as `#ABC-123456`. That reference is returned as `number`. Each message includes its author, whether it is from support, and attachment download URLs. Tickets belonging to another account return 404. ### Permissions Requires the account permission `tickets.read` (View support tickets). # List support tickets Source: https://docs.advinservers.com/api-reference/support-tickets/list-support-tickets https://console.advinservers.com/docs/openapi.json get /tickets ### Overview Lists account support tickets, newest first, across all teams. There are no filters or pagination; filter the returned list locally. `statuses` and `priorities` list possible values. `search_truncated` is true if more tickets exist than were returned, and `search_scan_limit` is the number checked. Ticket messages are omitted; fetch an individual ticket to read its conversation. ### Permissions Requires the account permission `tickets.read` (View support tickets). # List ticket departments Source: https://docs.advinservers.com/api-reference/support-tickets/list-ticket-departments https://console.advinservers.com/docs/openapi.json get /tickets/departments ### Overview Lists support departments as a JSON array containing numeric `id` and `name` fields. Use `id` as `department_id` when opening a ticket. The list is shared across accounts and cached for a few minutes. ### Permissions Requires the account permission `tickets.read` (View support tickets). # Open a support ticket Source: https://docs.advinservers.com/api-reference/support-tickets/open-a-support-ticket https://console.advinservers.com/docs/openapi.json post /tickets ### Overview Opens a support ticket and returns it with its conversation. Send `department_id` from the department list, `subject`, `message` and `priority` (`Low`, `Medium` or `High`). Use `service_id` to identify the related service. You can include up to 5 files in `attachments[]`, limited to 4 MB each and 8 MB total. Ticket creation has a separate, stricter rate limit than ticket reads. ### Permissions Requires the account permission `tickets.write` (Write to support). # Reply to a ticket Source: https://docs.advinservers.com/api-reference/support-tickets/reply-to-a-ticket https://console.advinservers.com/docs/openapi.json post /tickets/{ticket}/reply ### Overview Adds a reply and returns the updated ticket with its conversation. Send `message` and optionally up to 5 files in `attachments[]`, limited to 4 MB each and 8 MB total. The department, subject and priority cannot be changed here. Replies have a stricter rate limit than ticket reads. ### Permissions Requires the account permission `tickets.write` (Write to support). # List a team's audit log Source: https://docs.advinservers.com/api-reference/team-activity/list-a-teams-audit-log https://console.advinservers.com/docs/openapi.json get /teams/{team}/audit-logs ### Overview Lists activity by the team's owner and members, newest first. Filter by `filter[action]`, `filter[ip_address]`, `filter[actor]` or `filter[*]` for text search. Use text search for a server's short ID; `filter[server_id]` requires an internal numeric ID. Sort with `sort=created_at` or `sort=-created_at`. `per_page` defaults to 25 and is limited to 1 to 100. `actors` lists up to 50 people for filtering, including former members. Members need permission to view both the team and its servers. Personal account events are hidden from members. ### Permissions Requires the account permission `teams.read` (View teams). # Change a member's role Source: https://docs.advinservers.com/api-reference/team-members/change-a-members-role https://console.advinservers.com/docs/openapi.json patch /teams/{team}/members/{member} ### Overview Changes a member's role and returns the membership. Send a `role_id` from this team; a role from another team returns 422. Use the membership ID for `{member}`. Permissions change on the member's next request. You cannot change your own role or manage a member whose current or new role has more permissions than yours. ### Permissions Requires the account permission `teams.manage` (Manage teams). # Invite a team member Source: https://docs.advinservers.com/api-reference/team-members/invite-a-team-member https://console.advinservers.com/docs/openapi.json post /teams/{team}/members ### Overview Emails a team invitation and returns it. Send `email` and a `role_id` from this team. The recipient must have an account and accept the invitation to join. Invalid recipients receive the same error to protect account privacy. Repeating the request replaces and resends an existing invitation. Invitations expire after 3 days. You cannot offer more permissions than you hold. Limited to 20 requests per minute. ### Permissions Requires the account permission `teams.manage` (Manage teams). # List a team's members Source: https://docs.advinservers.com/api-reference/team-members/list-a-teams-members https://console.advinservers.com/docs/openapi.json get /teams/{team}/members ### Overview Lists team memberships, the owner and unanswered invitations without pagination. Use each membership's `id` with member endpoints. The owner is separate and has no membership or role. Expired invitations remain listed until withdrawn or resent; `has_expired` identifies them. ### Permissions Requires the account permission `teams.read` (View teams). # Remove a team member Source: https://docs.advinservers.com/api-reference/team-members/remove-a-team-member https://console.advinservers.com/docs/openapi.json delete /teams/{team}/members/{member} ### Overview Removes a member using the membership ID from the members list. Access ends on their next request. Their resources and activity history remain in the team. You cannot remove yourself or a member with more permissions than you hold. ### Permissions Requires the account permission `teams.manage` (Manage teams). # Withdraw an invitation Source: https://docs.advinservers.com/api-reference/team-members/withdraw-an-invitation https://console.advinservers.com/docs/openapi.json delete /teams/{team}/invitations/{invitation} ### Overview Deletes an unanswered invitation and invalidates its email link. For an accepted invitation, remove the member instead. You cannot withdraw an invitation for a role with more permissions than your own. ### Permissions Requires the account permission `teams.manage` (Manage teams). # Create a role Source: https://docs.advinservers.com/api-reference/team-roles/create-a-role https://console.advinservers.com/docs/openapi.json post /teams/{team}/roles ### Overview Creates a team role. Send a unique `name` of up to 64 characters, an optional `description` of up to 512 characters without line breaks, and a `permissions` array. Names cannot contain control characters. An empty permission list is allowed. Unknown permission keys return 422. You can grant only permissions you hold. Include each permission's `requires` entries so the role can use it. ### Permissions Requires the account permission `teams.manage` (Manage teams). # Delete a role Source: https://docs.advinservers.com/api-reference/team-roles/delete-a-role https://console.advinservers.com/docs/openapi.json delete /teams/{team}/roles/{role} ### Overview Deletes an unused custom role. Returns 422 if members or unanswered invitations use it, or if it is a built-in role. Assign members another role and withdraw invitations before deleting. ### Permissions Requires the account permission `teams.manage` (Manage teams). # Get a role Source: https://docs.advinservers.com/api-reference/team-roles/get-a-role https://console.advinservers.com/docs/openapi.json get /teams/{team}/roles/{role} ### Overview Returns a role, its permission keys and its member count. A role belonging to another team returns 404. ### Permissions Requires the account permission `teams.read` (View teams). # List a team's roles Source: https://docs.advinservers.com/api-reference/team-roles/list-a-teams-roles https://console.advinservers.com/docs/openapi.json get /teams/{team}/roles ### Overview Lists team roles without pagination. Built-in roles appear first, then custom roles, ordered by name within each group. `permissions` lists current permission keys and `members_count` counts assigned members. Roles marked `is_system` can be assigned but cannot be edited or deleted. ### Permissions Requires the account permission `teams.read` (View teams). # List role permissions Source: https://docs.advinservers.com/api-reference/team-roles/list-role-permissions https://console.advinservers.com/docs/openapi.json get /teams/permissions ### Overview Lists permissions available to team roles. Each entry includes its `key`, display name, description and group. `requires` lists permissions needed alongside it. `sensitive` identifies permissions that can delete data, transfer ownership or spend money. The list is shared by all teams and can be cached until the next release. ### Permissions Requires the account permission `teams.read` (View teams). # Update a role Source: https://docs.advinservers.com/api-reference/team-roles/update-a-role https://console.advinservers.com/docs/openapi.json patch /teams/{team}/roles/{role} ### Overview Replaces a role's name, description and permissions and returns the updated role. Send all three fields. Omitted permissions are removed from every member on their next request. Creation limits apply. Built-in roles and unknown permission keys return 422. You cannot edit a role with more permissions than yours or grant permissions you do not hold. ### Permissions Requires the account permission `teams.manage` (Manage teams). # Create a team Source: https://docs.advinservers.com/api-reference/teams/create-a-team https://console.advinservers.com/docs/openapi.json post /teams ### Overview Creates an empty team owned by your account. Send `name` with 1 to 191 characters and no control characters. Duplicate names are allowed. The team starts with Admin, Member and Restricted roles. It does not become the default team. ### Permissions Requires the account permission `teams.manage` (Manage teams). # Delete a team Source: https://docs.advinservers.com/api-reference/teams/delete-a-team https://console.advinservers.com/docs/openapi.json delete /teams/{team} ### Overview Deletes an empty team, including its memberships, invitations and roles. Move or delete the resources listed in `held_resources` first. The default team and the account's last team cannot be deleted. These restrictions return 422 with an explanation. Only the owner can delete a team; other callers receive 404. ### Permissions Requires the account permission `teams.manage` (Manage teams). # Get the current team Source: https://docs.advinservers.com/api-reference/teams/get-the-current-team https://console.advinservers.com/docs/openapi.json get /teams/context ### Overview Returns the current team, its owner, your role and permissions under `active`. `teams` lists the teams you can access, with owned teams first. The remaining fields count owned teams, memberships and teams other than the current one. Leaving or deleting a team selects the account's default team. ### Permissions Requires the account permission `teams.read` (View teams). # List teams Source: https://docs.advinservers.com/api-reference/teams/list-teams https://console.advinservers.com/docs/openapi.json get /teams ### Overview Lists teams owned by the account, with the default team first and the rest ordered by name. `active_team_id` identifies the team assigned to your API key. `permission_catalog` lists available role permissions. `held_resources` counts resources that prevent team deletion; zero counts are omitted. ### Permissions Requires the account permission `teams.read` (View teams). # Rename a team Source: https://docs.advinservers.com/api-reference/teams/rename-a-team https://console.advinservers.com/docs/openapi.json patch /teams/{team} ### Overview Renames a team and returns its updated details. Send `name` with 1 to 191 characters and no control characters. Only the owner can rename it; other callers receive 404. Members, roles and resources are unchanged. ### Permissions Requires the account permission `teams.manage` (Manage teams). # Set the default team Source: https://docs.advinservers.com/api-reference/teams/set-the-default-team https://console.advinservers.com/docs/openapi.json post /teams/{team}/default ### Overview Makes this team the account's default and returns it. Exactly one team is the default. New server orders and requests without a selected team use this team. Existing resources are not moved. Only the owner can change the default; other callers receive 404. ### Permissions Requires the account permission `teams.manage` (Manage teams). # Transfer resources to another team Source: https://docs.advinservers.com/api-reference/transfers/transfer-resources-to-another-team https://console.advinservers.com/docs/openapi.json post /transfers ### Overview Moves resources from the current team to another team. Send the destination team's UUID as `team` and a `moves` list with one `{resource, uuids}` entry per kind. Supported resources are `server`, `ssh_key`, `user_script`, `iso`, `firewall_group`, `firewall_ip_group`, `private_network`, `floating_ip` and `snapshot_storage`. Up to 100 resources can move in one request. A floating IP attached to a server moves only with that server: list it in a `floating_ip` entry beside the server. Attached floating IPs left out of the list are detached from the server and stay in the current team, with their billing unchanged. A server's primary address always moves with it. A detached floating IP can move on its own. A snapshot storage takes every snapshot in it along; a server's snapshots stay in their storage. Move attached resources together. For example, a server and its firewall group cannot move separately while attached. If anything in the list cannot move, nothing moves. The permission needed depends on what moves: `network.transfer` for a floating IP moved on its own, `snapshot.transfer` for a snapshot storage, and `server.transfer` for a server (including the floating IPs listed with it) and every other kind. A member working in another customer's team can move one server with its chosen floating IPs, one detached floating IP or one snapshot storage onto their **own** account. Ownership changes require settled invoices for everything being transferred, matching billing currencies and enough address quota. Automatic payments are cancelled; shared subscriptions must be stopped first. The paid service period is kept. Ownership changes cannot be reversed through this endpoint. Moves between the account's own teams keep billing and automatic payments unchanged. The response names the kinds that moved (`resource`, or null when several kinds moved), the number of resources moved, including floating IPs listed with a server, and the destination team. ### Permissions Requires one of the `server.transfer` (Transfer servers to their own account), `network.transfer` (Transfer floating IPs to their own account) or `snapshot.transfer` (Transfer snapshot storage to their own account) permissions for the selected team, depending on the request. Resources outside that team return 404. # Adding Account Credit Source: https://docs.advinservers.com/guides/account-credit How to add funds to your account credit balance in the Ascienth console and use it to pay invoices and renewals. ## Overview Account credit is a prepaid balance on your account. New servers are paid from it, you can use it to pay invoices, and your services can renew from it automatically. You add funds and manage credit in the [Ascienth console](https://console.advinservers.com). Credit reaches your account either by adding funds yourself, or by being issued to you by us, most commonly as a pro-rata refund when you cancel a service. See our [Refund Policy](/policies/refund) for details. To order a new server, add funds first. See [Ordering a Server](/guides/ordering-a-server). Account credit belongs to your own account. If you work in someone else's team, adding funds adds to your balance, not to the team owner's. ## Adding Funds In the console, open "Add Funds" under "Billing" in the sidebar. The page lists your recent top-ups and their status. Click `Add Funds` and pick one of the preset amounts or enter your own. The dialog shows the smallest and largest top-up you can make, and how much more your balance can hold before it reaches your account's credit limit. Choose how to pay and press pay. Any method from [Payment Methods](/guides/payment-methods) that is available to you can be used, including the legacy Stripe and PayPal options if your account has them. Account credit cannot be used to pay for a top-up. Your balance is credited once the payment has cleared. Card and PayPal payments usually apply within a few minutes, and cryptocurrency applies once the transaction confirms. You can only have one unpaid top-up at a time. An unpaid top-up can be paid or cancelled from the "Add Funds" page with `Pay` or `Cancel`, and cancelling it charges nothing. A top-up that is not paid in time expires, and you can start a new one. ## Using Account Credit ### Renewals Each service has a `Pay this from account credit` switch on its billing tab, and it is on by default. While it is on, a renewal is paid from your credit when your balance covers it. Turn it off if you want an invoice to pay yourself each time the service renews, even when you have credit. ### Existing Invoices Adding funds does not settle an invoice that is already open. That invoice stays unpaid and continues toward suspension until you pay it or apply credit to it. To pay an open invoice with credit, open it from "Invoices" and click `Apply credit`. Enter how much credit to use. It can be the full balance due or only part of it, in which case you pay the rest with another method. If you change your mind before the invoice is paid, click `Remove credit` to return the credit to your balance. Credit can only be applied to an unpaid or overdue invoice that still has a balance due. Check for open invoices right after you add funds. ## Refunding Account Credit Refunds are returned to the payment method used for the order, so a service paid for with account credit is refunded back to your credit balance under our [Refund Policy](/policies/refund). A balance you deposited directly is intended to be spent on services with us. Returning an unspent balance to your original payment method is handled case by case, so open a ticket if you need this. We recommend only depositing what you expect to spend over the course of your billing cycles. ## Frequently Asked Questions You already have an unpaid top-up. Pay or cancel it from the "Add Funds" page before you start another one. New servers are paid from your account credit. Add funds with any [payment method](/guides/payment-methods), then place the order. Credit is not applied to invoices that were already open. Open the invoice and click `Apply credit`. No. Account credit is tied to the account it was deposited on. # Account Security Source: https://docs.advinservers.com/guides/account-security How to turn on two-factor authentication, what happens when you sign in from somewhere new, and how to sign out other devices. ## Overview Your password is the front door to every server on your account. The Ascienth console at [https://console.advinservers.com](https://console.advinservers.com) gives you three ways to protect it: * **Two-factor authentication** asks for a code from an app on your phone every time you sign in. * **Sign-in codes by email** check a sign-in from a network your account has not used before, if you have not turned on two-factor authentication. * **Sessions** show every device that is signed in to your account, and let you sign them out. These settings belong to your own account. Team members manage their own, and no team role gives anyone access to yours. See [Teams and Accounts](/guides/teams-and-accounts). For the sign-in page itself, see [Launching Ascienth](/guides/controlpanel). ## Two-Factor Authentication Two-factor authentication asks for a code from an authenticator app on top of your password every time you sign in. Without it, anyone who learns your password can reach every server on your account. We strongly recommend turning it on. Click "Two-Factor Authentication" in the "Security" group of the "Account" section of the sidebar. The status next to "Authenticator App" shows `On`, `Off`, or `Not finished` if you started the setup and did not confirm it. If your account has a [client area](https://clients.advinservers.com) login, two-factor authentication is usually shared with the client area. The page then says so: you use one app entry and one backup code for both, and turning it on or off in the console turns it on or off in the client area too. ### Turning It On Click `Enable`. Enter your current password when asked and confirm. The "Two-Factor Setup" dialog shows a QR code. Scan it with an authenticator app such as Google Authenticator, 1Password or Authy. If you cannot scan it, click `Can't scan the code?` to show a key you can type into the app instead. Type the six-digit code your app shows in `Code from your app` and click `Confirm`. Two-factor authentication is now on. Your recovery codes are shown straight away. Use `Copy` or `Download` to keep them somewhere other than the phone your authenticator is on. If you close the dialog before confirming, nothing is turned on. If the page shows `Not finished`, click `Finish setup` to start again. ### Recovery Codes and Backup Codes If you lose the device with your authenticator app, a recovery code lets you sign in once without it. What you get depends on your account: * **Recovery codes**: if your two-factor authentication belongs to the console only (for example, it was set up in the console before it was shared with the client area), you get a set of recovery codes. Each one works once. To see them again, click `Recovery codes` and enter your password. To replace them all, click `Generate new codes` in that dialog. * **Backup code**: if your two-factor authentication is shared with the client area, you get one backup code that works in both places. It is only shown when it is issued, so it cannot be looked up later. To get a new one, click `New backup code` and enter your password. The new code replaces the old one in the console and the client area. Keep your recovery or backup codes somewhere safe and away from your phone. They are the only way to sign in if you lose the device with your authenticator app. ### Turning It Off Click `Disable` and enter your current password. Your recovery codes or backup code stop working. If your client area uses a kind of two-factor authentication the console cannot ask for, the page says so. You can manage it in the client area, or turn it off from the console. ## Signing In With Two-Factor Authentication After you enter your email address and password, the "Two-Factor Authentication" screen asks for the code from your app. * Enter the code your app shows in `Code`. * Lost your device? Click `Use a recovery code` and enter one of your saved recovery codes instead. ### Accounts Using the Client Area's Two-Factor Authentication If you turned on two-factor authentication in the client area and sign in to the console with your client area email and password, the console asks for the same code from your app. Type the six-digit code from the authenticator app you use for the client area, and click `Continue`. If you lost the device, click `Use your backup code` and enter the backup code you were given when you set up two-factor authentication. Then click `Continue`. A backup code works only once. After you use it, you see "Save your new backup code" with its replacement, which works in both the console and the client area. Copy it and keep it somewhere safe, then click `I have saved it, continue` to finish signing in. Once you are in, set up two-factor authentication again on your new device. After 5 incorrect codes, you are sent back to the sign-in page. Sign in again with your password to get another five tries. If you have lost both your device and your recovery or backup code, open a ticket at [https://clients.advinservers.com/contact.php](https://clients.advinservers.com/contact.php) to have two-factor authentication turned off. ## Sign-In Codes by Email If your account does not have two-factor authentication turned on, we may ask you to confirm a sign-in from a device or network your account has not used before. Instead of signing you in straight away, the console shows "Confirm this sign-in" and emails a six-digit code to your address. The screen shows part of the address so you know which inbox to check. Find the code we sent you. If it does not arrive, check your spam folder or click `Resend Code`. A new code replaces the last one. Type the code. The form submits when you enter the sixth digit, or you can click `Continue`. Once the code is accepted, you are signed in and that network is remembered for your account. You are not asked again from the same network unless it goes unused for **90 days**. * The code is good for **10 minutes**. If it expires, sign in again and we send another. * After 5 incorrect codes, the code stops working. Ask for another code, or sign in again. * Accounts with two-factor authentication never get this email. The code from your app already does the same job. Each challenge, and whether it was passed or failed, is recorded in your [audit log](/guides/account-settings#audit-logs). If you get a sign-in code that you did not ask for, someone else has your password. Do not enter the code and do not share it. Change your password on the "Account Details" page, then turn on two-factor authentication so a password alone is never enough. ## Sessions Click "Sessions" in the "Security" group of the "Account" section of the sidebar. The page lists everywhere your account is currently signed in, with these columns: * **IP Address**: where the session was last seen. The device you are using now is marked `This device`. * **Browser**: the browser and operating system, or `Unknown`. * **Last Active**: when the session was last used. * **Signed In**: when the session started. Use the search box to find a session by IP address or browser. ### Signing Out One Session Click the menu at the end of the session's row and choose `Revoke`. In the "Revoke Session" dialog, click `Revoke`. That device is signed out immediately and must sign in again. If you choose your current device, the option is called `Sign out`, and you are returned to the sign-in page. ### Signing Out Every Other Device Click `Revoke All`. The dialog tells you how many other sessions there are. Click `Revoke` to sign out every device except the one you are using. The button is disabled when there are no other sessions. If you lose a laptop or think someone else has used your account, click `Revoke All`, change your password on the "Account Details" page, and turn on two-factor authentication. ## Using the API API keys cannot change two-factor authentication or end sessions, even with every permission. This keeps a leaked key from locking you out of your account. Use your browser for everything on this page. See the [API Introduction](/api-reference/introduction). ## Frequently Asked Questions No. Two-factor authentication and sessions belong to each person's own account. A team member manages their own, and no role can change yours. No. The console reads the same setting, and the "Two-Factor Authentication" page shows it as `On`. Use the same authenticator app entry for both. Your home network may have changed, or you have not signed in from it for 90 days. Enter the code once and that network is remembered again. To stop these emails, turn on two-factor authentication. # Account Settings Source: https://docs.advinservers.com/guides/account-settings How to change your contact details, email address and password, adjust how the console looks, and read your audit logs. ## Overview Your account holds your contact details, your billing address, your email address and your password. You manage them in the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com), from the "Account" section of the sidebar. The pages in this section always show **your own** account, whichever team you have selected. If you are a member of someone else's team, you see and change your own details here, never theirs. See [Teams and Accounts](/guides/teams-and-accounts). This page covers: * "Account Details": your name, phone number, billing address, email address and password. * "Accessibility": the theme and the size of the interface. * "Audit Log": a record of what has been done on your account, and the "Team Audit Log" for a single team. ## Account Details Click "Account Details" in the "Account" section of the sidebar. The page has two parts: * **Account Details**: who the account belongs to and where we reach you. This holds `First name`, `Last name`, `Email address`, `Current password`, `New password`, `Confirm new password`, `Phone number (with country code)`, `Company` and `VAT or Tax ID`. * **Billing Address**: the address your invoices are made out to. This holds `Address`, `Address line 2`, `City`, `State or region`, `Postcode` and `Country`. These details are shared with the [client area](https://clients.advinservers.com), so a change made here also applies there. ### Changing Your Details Change any of the contact or address fields. `First name`, `Last name`, `Phone number (with country code)`, `Address`, `City`, `Postcode` and `Country` are required. The others can be left empty. Click `Save Changes`. The button stays disabled until something has changed. When the save works, you see "Account details saved". Your invoices and anything we send you use the new details. The phone number must start with its country code, like `+1 555 0100`. A number without one is refused with "Start the phone number with its country code". ### Changing Your Email Address Your email address is where invoices, server notices and password resets are sent. To move your account to a new address, you prove that you can read mail sent to it. On "Account Details", type the new address in `Email address`. Then type your password in `Current password` and click `Save Changes`. We email a six-digit code to the **new** address and take you to the "Confirm Your New Email" screen. The code is good for **15 minutes**. If it does not arrive, check your spam folder or click `Resend Code`. Each new code replaces the last one. Type the code. The form submits when you enter the sixth digit, or you can click `Change Email`. If your password confirmation has run out in the meantime, you are asked for your password again first. Your account stays on the old address until the code is accepted. Once it is, your account and your client area login both move to the new address, and we email a notice to the **old** address saying it was changed. * The new address cannot already be in use. If it is, you see "That email address is already in use on another account." * After 5 incorrect codes, the code stops working and you need to ask for a new one. * If you leave before entering the code, "Account Details" shows "A change is waiting for its code". Click `Finish the change` to go back to the code screen, or `cancel it` to stop the change. Cancelling does not need your password. If you see a pending email change that you did not start, cancel it straight away and change your password. Then turn on [two-factor authentication](/guides/account-security). ### Changing Your Password On "Account Details", type your password in `Current password`. Type the new password in `New password` and again in `Confirm new password`. Leave both empty if you do not want to change your password. Click `Save Changes`. If you signed up in the client area, your console password is your client area password. The page tells you so under the password fields, and a new password set here changes it in the client area too. The old "Password" page now opens "Account Details", where the password is changed. ### If You Forget Your Password On the sign-in page at [https://console.advinservers.com](https://console.advinservers.com), click `Forgot your password?` under the password field. If the link is not shown, password resets are not available from the console. Open a ticket at [https://clients.advinservers.com/contact.php](https://clients.advinservers.com/contact.php) instead. Type the address you sign in with in `Email` and click `Send reset link`. We send a link to set a new password. It can take a few minutes to arrive. The link sets the password in the client area, which is the same password you use for the console. You always see the same answer, "If an account exists for that address, a link to reset its password is on its way.", whether or not the address has an account. This stops anyone from using the form to find out which addresses are our customers. Reset requests for an existing account are recorded in its audit log. This page is about the password for your account. To reset the root or Administrator password of a server, see [Password Reset](/guides/reset-password). ## Accessibility Click "Accessibility" in the "Account" section of the sidebar. Every person can use this page, including team members. | Setting | Options | | - | - | | **Theme** | `Light`, `Dark`, or `System` to follow your device. | | **Interface scale** | `90%`, `100%`, `110%`, `125%` or `150%`. The interface already grows on larger screens, so use this if it still reads too small or too large. | Each choice applies as soon as you click it. There is no save button. These settings are kept in your browser, not on your account. They apply only to the browser you set them in, and each person on a shared computer can set their own. ## Audit Logs The console records what is done on your account: signing in, changes to servers and other resources, team changes, and account changes such as a new email address. There are two logs, and they answer different questions. | Log | Where to find it | What it shows | Who can read it | | - | - | - | - | | **Audit Log** | "Audit Log" in the "Security" group of the "Account" section | Everything done on your own account, across every team you own, including events that belong to no server, such as signing in. | Only you. Every person has their own. | | **Team Audit Log** | "Audit Log" in the "Teams" section | Everything done in the selected team, by everyone in it, with the person who did each thing. | The team owner, and members whose role allows it. | Each server also has its own audit log tab, which shows the part of this history that is about that server. ### Your Account Audit Log The "Audit Log" page lists the newest entries first, with these columns: * **Event**: what happened. * **Resource**: the server or other resource it was about, if any. * **IP Address**: where the request came from. * **When**: the date and time. Type in the search box to find entries by what happened, the resource or server name, or the IP address. The log is split into pages, which you move through at the bottom of the table. Some of the security entries you may see: * A sign-in from a new location that was challenged with an emailed code, and whether the code was accepted. See [Account Security](/guides/account-security). * A password reset that was requested for your account. * Your email address being confirmed or changed. Work done by our staff on your account is not shown in your audit log. ### The Team Audit Log Open the team from the team menu at the top of the sidebar, then click "Audit Log" in the "Teams" section. The page is called "Team Audit Log" and lists everything done in that team, by everyone in it. It adds a **Performed By** column showing who did each thing. Use the person filter, which starts on `Everyone`, to see one person's actions. Two members of the same team see the same history. To read it, a member's role needs both the **View the team** (or **Manage the team**) permission and the **View servers** permission. Without them, the page says "You cannot see this history". The team owner can always read it. See [Team Members and Roles](/guides/team-members). Members never see the team owner's own account activity in the team log. Invoices, billing details, sessions, API keys, support tickets and account changes such as a new email address stay out of it. ## Using the API You can read and update your account details and read your audit logs with an API key. The key needs the matching account permission: | Action | Endpoint | Account permission | | - | - | - | | Read your account details | `GET /account` | `account.read` (View the account) | | Update your account details | `PATCH /account` | `account.update` (Change the account) | | Read the audit log | `GET /audit-logs` | `audit.read` (View account audit log) | | Read a team's audit log | `GET /teams/{team}/audit-logs` | `teams.read` (View teams) or `team.read` in the key's own team, plus `server.read` | ```bash theme={null} curl https://console.advinservers.com/api/v1/client/audit-logs \ -H "Authorization: Bearer " \ -H "Accept: application/json" ``` An API key cannot change your email address or your password. Do those in your browser. See the [API Introduction](/api-reference/introduction) for how keys work. ## Frequently Asked Questions If the billing system cannot be reached, "Account Details" shows "Billing unavailable" and your details cannot be read or changed until it is back. You can still change your password while this message is shown. Try again later, and if it does not clear, open a ticket at [https://clients.advinservers.com/contact.php](https://clients.advinservers.com/contact.php). Yes. Your console account and your client area login move to the new address together, or neither moves. Your account audit log shows what happened, but not who did it. To see which person did something in a team, open that team's "Team Audit Log". # Affiliate Program Source: https://docs.advinservers.com/guides/affiliates How our affiliate program works, including payout rate, payout method, and eligibility requirements. ## Overview When someone you refer signs up and pays for a service using your affiliate link, you earn a commission on that order. ## Payouts Commission is paid as a **one-time payout of 10%** of the referred order's value. It is not a recurring commission on renewals, so you are paid once per referred order rather than for the lifetime of the service. Payouts are only made through **PayPal**. We do not offer payout by any other method, including account credit, bank transfer, or cryptocurrency. ## Requirements Not every referral qualifies for a payout. To be eligible: * The referred service must **not have been cancelled within 30 days** of the order being placed. If it is cancelled inside that window, the referral does not qualify and no commission is paid. * The referral must be a genuine, separate customer. Referrals involving **alternate or duplicate accounts** (for example, referring yourself or an account you also control) do not qualify and may result in removal from the program. ## Questions If you have questions about a specific referral or payout, open a ticket from the [client area](https://clients.advinservers.com) and we will help you. # API Keys Source: https://docs.advinservers.com/guides/api-keys How to create, edit and revoke API keys, choose what each key can do, and restrict keys to your own IP addresses. ## Overview An API key lets your own scripts and tools use the Ascienth console API. You create and manage keys in the console at [https://console.advinservers.com](https://console.advinservers.com), under the "API" group of the "Account" section of the sidebar: * "API Keys": create keys and choose what each one can do. * "API IP Groups": lists of addresses that a key can be restricted to. For how to send a key with a request, see the [API Introduction](/api-reference/introduction). Keys and IP groups belong to your own account. You can only create, edit or revoke them while signed in to the console in your browser. An API key can never manage keys or IP groups, so a leaked key cannot give itself more access. If you do not see the "API" group in the sidebar, the API is not available at the moment. ## How a Key's Permissions Work Each key has two separate lists of permissions: * **Account permissions** cover what a key may do outside every team: invoices, billing, support, your account details and your teams. * **Team permissions** cover what a key may do inside the **one team** it works in, such as servers, backups, snapshots, the firewall and networking. They use the same names as team roles. See [Team Members and Roles](/guides/team-members). Every key works in exactly one team, which you choose when you create it. You can only choose a team you own. Resources in any other team are out of the key's reach. If you delete that team, the key is deleted with it. To use the API with several teams, create a key for each one. The account permissions you can give a key are: | Group | Permission | What it allows | | - | - | - | | Account | View account audit log | See activity across your account. | | Account | View the account | See the account's own details. | | Account | Change the account | Change the account's own details. | | Invoices | View invoices | See the account's invoices and what is still outstanding. | | Invoices | Pay invoices | Settle an outstanding invoice. | | Billing | View billing | See services, subscriptions, payment methods and account credit. | | Billing | Manage billing | Change or cancel a service, add credit, and remove payment methods. | | Support | View support tickets | See support tickets and their replies. | | Support | Write to support | Open tickets and reply to staff in the account holder's name. | | Teams | View teams | See the account's teams and who is in them. | | Teams | Manage teams | Create teams, rename them, and change who is in them. | Permissions marked **Sensitive** can spend money, speak to us in your name, or change who else can act on your account. Only give them to keys that need them. When a permission needs another one to work, the other one is ticked for you. ## Creating an API Key Click "API Keys" in the "API" group of the "Account" section of the sidebar, then click `Create API Key`. In the "New API Key" dialog, enter a `Name` that says what the key is for. Under "Account permissions", tick what the key may do outside your teams. You can leave this empty if the key only works on servers and other team resources. Under "IP allowlist", you can pick one or more API IP groups. The key then works only from the addresses in them. Leave it empty to allow any address. See [API IP Groups](#api-ip-groups) below. Click `Next`. Pick the one team the key works in from `Team`. Only teams you own are listed. Under "Team permissions", tick what the key may do in that team. For example, the request in the [API Introduction](/api-reference/introduction) needs **View servers**. The key must have at least one account or team permission. Click `Create`. The "API Key Created" dialog shows the key once. Copy it and store it somewhere safe, then click `I have saved it`. We store only a hash of each key, so it cannot be shown again after you close the dialog. If you lose it, revoke the key and create a new one. Keys do not expire. A key works until you revoke it, or until the team it works in is deleted. ## Managing Your Keys The "API Keys" page lists every key with these columns: | Column | What it shows | | - | - | | **Name** | The name you gave the key. | | **Team** | The team the key works in. | | **Account permissions** and **Team permissions** | How many permissions the key has in each list. | | **IP allowlist** | `Any IP` if the key is not restricted, the names of its IP groups, or `Blocked` if it is restricted and has no groups left. | | **Last used** | When the key last made a request. | | **Created** | When the key was created. | ### Editing a Key Click the menu at the end of the key's row and choose `Edit`. The dialog has the same two steps as creating a key. Change the name, the permissions, the IP allowlist or the team, then click `Save`. Changes apply from the key's next request. The key itself stays the same, so you do not need to update your scripts. ### Revoking a Key Click the menu at the end of the key's row and choose `Revoke`. Type the key's name to confirm, then click `Revoke`. Requests using a revoked key fail immediately. This cannot be undone. ## API IP Groups An API IP group is a named list of IP addresses. When you restrict a key to one or more groups, the key only works from the addresses in them. Requests from anywhere else are refused. We recommend this for keys used from servers with a fixed IP address. One group can guard several keys, so you can keep one list per office or per server and edit it in one place. Changes to a group apply from the next request of every key that uses it. API IP groups only restrict API keys. They are separate from the "IP Groups" used by firewall rules, and they do not affect signing in to the console in your browser. ### Creating a Group Click "API IP Groups" in the "API" group of the "Account" section of the sidebar, then click `Create IP Group`. Enter a `Name`, and optionally a `Description` of where the keys are used from. Click `Create`. The name can contain letters, numbers, spaces, dots, dashes and underscores, and must be different from your other groups' names. Click the group's row, or choose `Manage addresses` from the menu at the end of it, then click `Add Addresses`. Enter one IPv4 or IPv6 address or CIDR range per line, such as `203.0.113.10` or `198.51.100.0/24`. You can add an optional `Note`, which is applied to each address you add. Click `Add`. On the "API Keys" page, edit the key and pick the group under "IP allowlist". Save the key. Ranges written as a start and an end, such as `1.2.3.4-1.2.3.9`, are not accepted. Write them as CIDR ranges instead. Addresses already in the group are skipped. A key restricted to an empty group cannot be used from anywhere. Add addresses to the group before you rely on the key. ### Editing or Deleting a Group On a group's page, use the menu at the end of an address's row to `Edit` or `Delete` it. When you delete an address, every key restricted to the group stops working from that address. On the "API IP Groups" page, the "Used By" column shows how many keys each group guards. Use the menu at the end of a group's row to `Edit` its name and description, or to `Delete` it. A group that still guards a key cannot be deleted. Remove it from those keys, or revoke them, first. ## Frequently Asked Questions No. A key can only be limited to a team you own, and only you can create keys on your account. A team member can create keys on their own account, for the teams they own. The key was created before keys were limited to one team. It works in every team you own. Edit the key and choose a team to limit it to that team. Yes. Every request made with an API key, including reads, is recorded in your [audit log](/guides/account-settings#audit-logs) along with the key that made it. # Backups Source: https://docs.advinservers.com/guides/backups How to enable and restore backups of your virtual server. ## Overview You may enable backups through the control panel, by navigating to the Backups tab and clicking the slider. ![Backups Tab](https://advin-cdn.b-cdn.net/chrome_oWplTQ1SOV.png) Restoring a backup will cause full loss of your existing data. Backups are made on a best-effort basis, meaning that we cannot guarantee the longevity or reliability of them. Typically, we take backups once a day and keep up to 5 days worth of backups. This is not a replacement for taking your own, individual backups. Backups can take **multiple hours** to restore since they are pulled from cold storage. It is recommended to take a backup of your VPS prior to restoration. Backups are enabled by default on servers created after September 29th, 2026. On older servers, you need to enable them yourself. It is additionally not possible to take your own backups ahead of the daily backup schedule, backups are only taken once a day. If you need a copy of your server on demand, or kept for longer than 5 days, see [Snapshots](/guides/snapshots). # Bandwidth and Pooling Source: https://docs.advinservers.com/guides/bandwidth How server bandwidth limits work, how to buy extra transfer, and how to share transfer between servers in one city in the Ascienth console. ## Overview Most server plans come with a monthly bandwidth (transfer) allowance. This page explains what happens when a server uses it up, and the two ways the [Ascienth console](https://console.advinservers.com) lets you get more out of it: * **Bandwidth blocks:** extra transfer you buy once and point at servers or a city. Manage them on the "Bandwidth" page under "Resources". * **Bandwidth pooling:** let all of a team's servers in one city share a single allowance. Manage it on the "Bandwidth Pooling" page under "Networking". ## How Bandwidth Limits Work * A server's usage resets each month on the day of the month the server was created. * We email you when a server reaches 25%, 50%, 75%, 90%, 95%, 99% and 100% of its allowance. * When a server goes over its allowance, its connection is throttled to **1.25 MB/s (10 Mbps)** until its usage resets, or until more transfer covers it. * Servers without a transfer limit are not metered, so blocks and pools do not apply to them. ## Bandwidth Blocks A bandwidth block is extra transfer, bought in whole terabytes. It is a balance, not a monthly allowance: * A block is only drawn from once a server has used up its own plan allowance. * Whatever is left on a block carries over from month to month until it is spent. * A block covers either a set of servers or one city's pool, never both at once. * Blocks are priced by region, and a block can only cover servers in the region it was bought for. Blocks are labelled "Americas & EMEA" or "APAC". Open "Bandwidth" in the sidebar to see your blocks. Each row shows the block's size, how much is left, its region, its status and what it is covering. ### Buying a Block Blocks are paid from your [account credit](/guides/account-credit), so make sure your balance covers the purchase first. On the "Bandwidth" page, click `Buy Transfer`. Choose the `Region` your servers are in: `United States or Germany`, or `Malaysia, Singapore, or Japan`. Enter how many `Terabytes` you want. The dialog shows the price and the largest block you can buy. If your account credit does not cover the price, the dialog says how much more you need. [Add funds](/guides/account-credit) and try again. Click `Buy bandwidth`. If the price changed since the dialog opened, you are asked to confirm the new price with `Pay from Credit`. The block appears as `Provisioning` while it is paid from your credit, then changes to `Active`. If your credit ran short in the meantime, it shows `Needs funds` with how much is missing. Add funds before the deadline shown, or the purchase expires. A new block covers nothing until you attach it to a server or bind it to a city. ### Attaching a Block to Servers Open the menu at the end of the block's row and choose `Attach to server`. Pick the server in the "Attach Transfer" dialog and click `Attach`. The server keeps running at full speed once it passes its plan allowance, drawing on the block instead of being throttled. You can attach the same block to several servers. To stop covering a server, choose `Detach from a server`, pick the server and click `Detach`. That server goes back to its own plan allowance straight away, and is throttled again if it is already over it. The block keeps its balance and carries on covering its other servers. ### Binding a Block to a City If pooling is on in a city (see [Bandwidth Pooling](#bandwidth-pooling) below), you can add a block's balance to that city's pool. Choose `Bind to a city`, pick the `City` and click `Bind`. Binding takes the block off any servers it was attached to. To remove it from the pool, choose `Take out of` followed by the city name, then click `Take it out`. The block keeps its balance and can be attached to servers or bound to another city. Any server in that city that is already over its allowance is throttled straight away. ### Seeing Where a Block Went Choose `Where it went` from a block's menu to see how much was drawn from it, one line per server or pool per month. A block that is fully spent no longer appears on the "Bandwidth" page. ### Cancelling a Block Open the menu at the end of the block's row and choose `Cancel block`. The dialog shows the `Estimated credit refund`: the unused part of the block at the price you paid, less any usage settled when you confirm. Type `delete` to confirm, then click `Cancel block`. The block is detached from every server and pool right away, and the unused transfer is refunded to your [account credit](/guides/account-credit). Servers that are over their plan allowance may be throttled. You can also cancel a purchase that is still waiting for payment. Nothing is charged for it. If the console says the refund needs review, the block is cancelled but the credit could not be added automatically. Open a ticket in the [client area](https://clients.advinservers.com/contact.php) and we will sort it out. ## Bandwidth Pooling With pooling on in a city, all of the team's servers there share one allowance: their plan limits added together, plus the balance of any of the team's blocks bound to that city. A quiet server's unused transfer covers a busy one. If a pool runs out, **every** server in it is throttled to 1.25 MB/s, not just the busy one. With pooling off, each server is throttled only when it uses up its own allowance. Pooling is set separately for each city and each team. Running out in one pool never affects servers in another city or in your other teams. Open "Bandwidth Pooling" in the sidebar. Each city is listed with its region, how many of the team's servers are there, the transfer used out of the pool's total, and whether it is `Pooled` or `Not pooled`. ### Turning Pooling On On the "Bandwidth Pooling" page, open the menu at the end of the city's row and choose `Start pooling`. If one of the team's blocks covers servers in this city and also servers in another city or team, the dialog lists it. That block stops covering the servers in this city until you bind it to a city. Its balance is not lost. Click `Start pooling`. The team's servers in that city share one allowance from now on. ### Turning Pooling Off Open the city's menu and choose `Stop pooling`. Before you confirm, the dialog shows how the transfer already used in the city will be shared out between the servers, and which servers would be over their own plan afterwards and throttled. Any blocks bound to the city are detached from it. You can attach them to servers or bind them to another pooled city. Their balance is not lost. Click `Stop pooling` to confirm. Each server is measured against its own plan again. ## Team Permissions | Action | Role permission needed | | - | - | | See the "Bandwidth" and "Bandwidth Pooling" pages | `View networking` | | Attach, detach, bind or take out a block, and turn pooling on or off | `Change networking` | | Buy or cancel a block | `Make purchases` | Blocks bought by a team member are paid from the team owner's account credit. See [Team Members and Roles](/guides/team-members). ## Frequently Asked Questions No. A block is a balance that carries over until it is spent. Only your servers' plan allowances reset each month. A block can only cover servers in the region it was bought for, and only servers that have a transfer limit. A block with no transfer left cannot be attached either. Pooling must be on in that city first, and the city must be in the block's region. Turn pooling on from the "Bandwidth Pooling" page. Extra transfer is not on sale at the moment. Open a ticket in the [client area](https://clients.advinservers.com/contact.php) if you need more than your plans allow. If it used up its allowance, or its city's pool ran out, it is limited to 1.25 MB/s until its usage resets or more transfer covers it. Attach a block or bind one to the city's pool to lift the limit. ## Using the API Bandwidth blocks and pooling can be managed with an API key. Reading needs the `View networking` permission, attaching, binding and pooling need `Change networking`, and buying or cancelling needs `Make purchases`. ```bash theme={null} curl https://console.advinservers.com/api/v1/client/bandwidth-blocks \ -H "Authorization: Bearer " \ -H "Accept: application/json" ``` See the [API Reference](/api-reference/introduction) for every endpoint. # Boot Images Source: https://docs.advinservers.com/guides/boot-images How to upload a Linux kernel and initramfs, or a Unified Kernel Image, for measured direct boot on your virtual server. ## Overview The "Boot Images" page is a library of Linux boot files you can reuse across servers. A boot image is either a **Unified Kernel Image (UKI)** or a **Linux kernel with its initramfs** and a kernel command line. A server set to measured direct boot starts straight from these files instead of the bootloader on its disk, with SEV-SNP launch measurement. This is an advanced, experimental feature for people building confidential computing setups. If you just want to install an operating system from your own installer, use a custom ISO instead. See [ISO Mounting](/guides/iso-mounting). Open the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com) and click "Boot Images" under "Setup" in the left sidebar. Measured boot is not offered everywhere yet. If the page shows `Uploads unavailable`, you can still see your library, but you cannot upload or delete images until it is available. ## Limits | Item | Limit | | - | - | | UKI file | 200 MiB | | Linux kernel | 64 MiB | | Initramfs | 128 MiB | | Kernel command line | 1 to 4096 printable ASCII characters, with no single quotes or backslashes | | Images per team | One per server in the team, plus five more | A UKI must be an x86-64 image with one kernel, one initramfs and one command line built in. Multi-profile images, separate microcode, device trees and firmware sections are not supported. Only upload public boot code. Never put passwords, keys or other secrets in the files or the command line. ## Uploading a Boot Image On the "Boot Images" page, click `Upload Image`. Enter a `Name` of up to 80 characters. Then choose a `Source`: `Unified Kernel Image (UKI)` or `Kernel + initramfs`. For a UKI, choose the `UKI file` and enter its `UKI SHA-256`. The kernel, initramfs and command line are read from inside the UKI. For a kernel and initramfs, choose the `Linux kernel` and `Initramfs` files, enter the `Kernel SHA-256` and `Initramfs SHA-256`, and enter the `Exact kernel command line`. You can get a checksum with `sha256sum ` on Linux. If a checksum does not match the file you uploaded, the upload is refused with `The SHA-256 checksum does not match the uploaded file.` Click `Upload Image`. The form shows the upload progress. When it finishes, the image appears in the list. To see an image's checksums and command line later, click the menu at the end of its row and choose `View Boot Inputs`. These checksums identify the boot files. They are not an SNP launch measurement. ## Using an Image on a Server Open the server, click its "Settings" tab, and open "Measured Boot". Turn on SEV-SNP there, and set UEFI firmware in the "Hardware" section. Turn on `Enable measured direct boot`, then pick your image under `Boot image`. You can also upload a kernel and initramfs for just this server instead. Click `Save Boot Configuration`. The new boot files take effect after a full shutdown and start of the server, not a reboot from inside the operating system. To go back to booting from the disk, turn off `Enable measured direct boot` and save. Make sure your disk still has a working bootloader first. A saved boot configuration is not proof that the server is running a verified operating system. ## Deleting a Boot Image Click the menu at the end of the image's row and choose `Delete`. To confirm, type the image's name and click `Delete`. Servers already set to boot from the image keep their own copy and are not changed. To use the image on another server later, you need to upload it again. ## Team Permissions Boot images belong to the team you are working in. The team owner can always manage them. Members need these permissions in their role: | Permission | Allows | | - | - | | `View measured boot images` | See the boot images saved in the team. | | `Upload measured boot images` | Upload new boot images. | | `Delete measured boot images` | Delete a boot image. | Choosing an image for a server also needs the `Change server settings` permission. See [Team Members and Roles](/guides/team-members). # Launching Ascienth Source: https://docs.advinservers.com/guides/controlpanel How to sign in to the Ascienth console, our virtual server control panel. ## Overview To launch the Ascienth console, go to [https://console.advinservers.com](https://console.advinservers.com) and sign in with your email address and password. Ascienth console sign-in page with Email and Password fields If you were a customer before September 29th, 2026, your old billing account details work at [https://console.advinservers.com](https://console.advinservers.com). Sign in with the same email address and password you used for the billing portal. # Firewall Source: https://docs.advinservers.com/guides/firewall How to write firewall rules in reusable firewall groups, apply them to your servers, and use IP groups as a rule source in the Ascienth console. ## Overview The Ascienth console has a network firewall that filters traffic before it reaches your server. Rules are not written on the server itself. Instead, you write them in a **firewall group** and apply the group to as many servers as you like. Change a rule once and every server using the group picks it up. An **IP group** is a named list of addresses. You can use it as the source of a rule, so one rule can allow or block a whole list of addresses. Open the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com). "Firewall Groups" and "IP Groups" are under "Networking" in the left sidebar. Each server also has a "Firewall" tab that shows the groups applied to it. Every server starts with its firewall on and allowing all traffic in both directions. Nothing is blocked until you apply a group with rules that block it. Firewall groups and IP groups belong to the team you are working in. Team members need these permissions: | Permission | What it allows | | - | - | | `View the firewall` | See firewall groups, their rules and IP groups. | | `Change the firewall` | Create and edit groups, rules and IP groups, and apply or remove groups on servers. | | `Delete firewall settings` | Delete firewall groups, rules and IP groups. | ## How Rules Are Matched Each firewall group has two lists of rules: * **Inbound Rules** cover traffic arriving at the server. * **Outbound Rules** cover traffic leaving the server. Rules are matched from the top down. The first rule that matches a packet decides what happens to it, either `ACCEPT` or `DROP`. Order matters, so put specific rules above general ones. A `DROP` rule with no service, protocol or port can block everything from its source, including your own SSH or RDP connection. Add an `ACCEPT` rule for your own access above it first. ## Creating a Firewall Group Click "Firewall Groups" in the left sidebar, then click `Create Group`. Enter a `Name` and click `Create`. Names can be up to 100 characters and may only contain letters, numbers, spaces, dots, dashes and underscores. Each name must be unique. Click the group in the list. It opens on the "Rules" tab. To rename a group, click the menu at the end of its row and choose `Edit`. ## Adding Rules On the group's "Rules" tab, click `Add Inbound Rule` or `Add Outbound Rule`. * `Action`: `ACCEPT` or `DROP`. * `Service (Optional)`: a common service such as SSH, HTTP, HTTPS, DNS, MySQL or RDP. A service sets its own protocol and ports, so those fields are turned off when you pick one. * `Protocol`: `TCP`, `UDP`, `ICMP`, `GRE` or `None`. * `Port Start` and `Port End`: the destination port. Leave `Port End` blank for a single port. `Port Start` also accepts a range like `8000:8100` or a comma-separated list. Ports do not apply to ICMP, GRE or `None`. * `Source`: `Any Address`, `Specific Address` (enter it in `Address`), or `IP Group` (pick one of your IP groups). Click `Create`. The rule is added to the bottom of its list. A rule with no service and no protocol would match every packet, so it needs a source address or IP group to narrow it down. ### Changing the Order Click the menu at the end of a rule and choose `Move up` or `Move down`. To change a rule, click it or choose `Edit`. To remove it, choose `Delete` and type the rule's ID to confirm. A deleted rule is removed from every server using the group. ## Applying a Group to a Server Click your server, then the "Firewall" tab. It lists the groups already applied. Click `Add Firewall`. Pick a group from the `Firewall` menu and click `Add`. To start a new group here, choose `Create New Firewall`, enter a `Name` and click `Create`. The new group is applied to this server straight away. Add its rules from the "Firewall Groups" page. The `Attachment Status` column shows `Syncing` while the rules are being applied, then `Attached`. If it shows `Failed`, the last attempt to apply the group did not work. Hover over the status for details. To take a group off one server, click the menu at the end of its row on the server's "Firewall" tab and choose `Remove`. The group is kept and stays on your other servers. The group's "Servers" tab lists every server it is applied to, with the same status. You can remove a server from there with `Remove from group`. ## Deleting a Firewall Group On the "Firewall Groups" page, click the menu at the end of the group and choose `Delete`. Type the group's name to confirm. Deleting a group removes it from every server it is applied to and deletes all its rules. Those rules stop being enforced. This cannot be undone. ## IP Groups Use an IP group when several rules, or several firewall groups, need the same list of addresses. Update the list once and every rule using it follows. Click "IP Groups" in the left sidebar, then `Create IP Group`. Enter a `Name` and click `Create`. The same naming rules apply as for firewall groups. Click the group, then `Add Addresses`. Enter one address or CIDR range per line in `Addresses`, for example `203.0.113.7` or `203.0.113.0/24`. You can add a `Note` to remember whose addresses they are. Click `Add`. Addresses already in the group are skipped. A range written as a span, like `1.2.3.4-1.2.3.9`, is not accepted. Write it as CIDR ranges instead. When you add a firewall rule, set `Source` to `IP Group` and pick the group. An IP group can hold up to **2,048** addresses. A rule that uses an empty group matches nothing. To edit or delete one address, click the menu at the end of its row. To rename or delete the whole group, use the menu on the "IP Groups" page. An IP group cannot be deleted while a firewall rule uses it. Change or remove those rules first. ## Frequently Asked Questions No. Every server's firewall is on and allows all traffic by default. You control what is blocked with the rules in your firewall groups. With no groups applied, nothing is blocked. No. Traffic on a [private network](/guides/private-networks) is not filtered by the console firewall. Use a firewall inside your server if you need to restrict it. No. Outgoing port 25 is blocked separately from your firewall groups. See [Port 25 Unblocking](/guides/port25). Yes. A firewall group is not tied to a location. Apply it to any of your servers in the team. ## Using the API Firewall groups, their rules and IP groups are under `/api/v1/client/firewall-groups` and `/api/v1/client/ip-groups`. A server's groups are under `/api/v1/client/servers//firewall-groups`. Your API key needs `firewall.read` to read them, `firewall.update` to create, change and apply them, and `firewall.delete` to delete them. ```bash theme={null} curl https://console.advinservers.com/api/v1/client/firewall-groups \ -H "Authorization: Bearer " \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{"name": "Web servers"}' ``` The API can also change the order of the groups applied to a server. See the [API introduction](/api-reference/introduction) for how to create a key and for the full list of endpoints. # Floating IPs Source: https://docs.advinservers.com/guides/floating-ips How to rent a floating IP address in the Ascienth console, move it between your servers, manage its billing, and cancel it. ## Overview A floating IP is an extra IPv4 or IPv6 address that you rent in one city. It is not tied to a server. You can attach it to any of your servers in that city, detach it, and attach it to another one later, while the address stays the same. Your servers keep the addresses they were built with. Open the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com) and click "Floating IPs" under "Resources" in the left sidebar. A floating IP is paid for from your [account credit](/guides/account-credit). You can only buy one in a city where you already have a server, and it can only be attached to your servers in that city, one at a time. Team members need these permissions: | Permission | What it allows | | - | - | | `View networking` | See the floating IPs. | | `Change networking` | Attach and detach floating IPs. | | `Make purchases` | Buy floating IPs with the account owner's credit, cancel them, and withdraw a cancellation. | | `View billing` | Open an address's billing pages. | | `Delete networking resources` | Give back an address that is not billed. | | `Transfer floating IPs to their own account` | Move a floating IP to the member's own account. | ## The Floating IPs Page The table lists every floating IP in the team you are working in: | Column | What it shows | | - | - | | `Address` | The IP address. | | `City` | Where the address is. | | `Attached to` | The server it is on, or `Not attached`. | | `Status` | `Active` once it is ready. `Provisioning` while it is being paid for, `Needs funds` if your credit ran short, `Attaching` or `Detaching` while it moves, and `Suspended` if its service is suspended. | | `Price`, `Cycle` | What the address costs and how often. An address included at no charge shows `Included`. | | `Next due`, `Autopay` | When it next renews and whether automatic payments are on. | The actions for an address are in the menu at the end of its row. ## Buying a Floating IP Click `Buy Floating IP`. If the button is greyed out, hover over it to see why. For example, you may already hold as many addresses as your account allows. Pick the `City` and the `Address type`, `IPv4` or `IPv6`. The `Price` field shows what it costs and how often it renews. A bar shows how many addresses of that type you hold out of your allowance. Click `Buy address`. The cost is taken from your account credit, and the address appears in the table as `Provisioning` until it is ready. You need enough account credit to cover the price before you can buy. If you do not have enough, the dialog tells you how much to add. Only the account owner can add funds. See [Account Credit](/guides/account-credit). Your allowance of floating IPs is set per account. If you need more, open a ticket in the client area at [https://clients.advinservers.com/contact.php](https://clients.advinservers.com/contact.php). You can also buy a floating IP from a server's "Networking" tab, and it is attached to that server once it is paid for. See [Networking](/guides/networking#adding-an-address). ## Attaching and Detaching Click the menu at the end of an unattached address and choose `Attach to server`. Choose the `Server` and click `Attach`. Only your servers in the address's city are listed. The `Status` column shows `Attaching` until the address is on the server. To take it off, choose `Detach` from the same menu. The address stops routing to that server, but you keep renting it and can attach it somewhere else. Anything still using it on that server stops responding. An address that is still being paid for cannot be attached yet. You also cannot attach or detach an address while its server is busy with another operation, such as an upgrade. ## Managing Billing Click the menu at the end of an address and choose `Manage billing`. The billing page has three sections: * "Overview" shows the price, how often it is billed, the next due date and whether automatic payments are on. It is also where you cancel the address. * "Automatic Payments" lets you turn automatic payments on or off and choose whether renewals are paid from your account credit. * "Billing Cycle" lets you change how often the address renews, where that is offered. Changing these needs the `Manage service billing` permission. Only the account owner can set up new automatic payments. See [Payment Methods](/guides/payment-methods) for how payments work. ## Cancelling an Address Choose `Cancel address` from the address's menu, or click `Cancel Address` on its "Overview" billing page. Under `When it should stop`, pick one: * `End of billing period`: the address keeps working until the period you have paid for ends, then stops. Nothing more is charged. * `Immediate`: the address stops today and is released. If a refund applies, the dialog shows the amount, and it is added to your account credit. Type the address to confirm and click `Cancel`. When a floating IP is cancelled, it goes back to the pool in its city and anything using it stops responding. Someone else may get the address afterwards. You cannot get the same address back. If you only want to stop being charged automatically and keep the address, turn off automatic payments under "Automatic Payments" instead. A floating IP that is the primary address of its server cannot be cancelled immediately. Set another IPv4 address as primary first. See [Networking](/guides/networking#changing-the-primary-ip). ### Withdrawing a Cancellation If you chose `End of billing period` and change your mind before it ends, choose `Withdraw cancellation` from the address's menu and click `Keep the address`. The address stays yours and is invoiced as usual. Automatic payments that were stopped by the cancellation stay off until you turn them back on. ## Giving Back an Included Address Some addresses are included at no charge and show `Included` as their price. There is nothing to cancel for these. To return one you no longer need, detach it first, then choose `Give back` from its menu and click `Give it back`. It stops counting against your allowance. You cannot claim a given-back address again, and a replacement is not free. ## Frequently Asked Questions No. A floating IP belongs to the city it was bought in and can only be attached to your servers there. Yes. You keep renting it until you cancel it. It is only shown to the team owner and to members with the `Make purchases` permission. Yes, if it is not attached to a server. Choose `Move to team` from its menu. The account owner can move it between their own teams. A team member with the `Transfer floating IPs to their own account` permission can move it to their own account, which cancels its automatic payments. See [Teams and Accounts](/guides/teams-and-accounts). ## Using the API Floating IPs are under `/api/v1/client/floating-ips`. Your API key needs `network.read` to list them, `network.update` to attach and detach them, and `billing.purchase` to buy, cancel or withdraw a cancellation. Buying takes two calls: get a quote from `/floating-ips/quote`, then send its `quote_token` with your order. ```bash theme={null} curl -X POST https://console.advinservers.com/api/v1/client/floating-ips//attach \ -H "Authorization: Bearer " \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{"server": ""}' ``` See the [API introduction](/api-reference/introduction) for how to create a key and for the full list of endpoints. # Invoices and Billing Source: https://docs.advinservers.com/guides/invoices-and-billing How to view and pay invoices, manage a server's billing, stop automatic payments, and cancel a service in the Ascienth console. ## Overview Everything you are billed for is managed in the [Ascienth console](https://console.advinservers.com). This page covers: * The "Invoices" page, where you view, pay and print invoices. * Each server's "Billing" tab, where you see what the server costs, turn automatic payments on or off, change the billing cycle, and cancel the server. * The "Recurring Payments" page, which lists everything charged to you automatically. * The "Legacy Payment Methods" page, which lists cards saved under our previous payment processor. The ways you can pay are described in [Payment Methods](/guides/payment-methods). Account credit, adding funds and applying credit to an invoice are covered in [Account Credit](/guides/account-credit). The "Invoices", "Recurring Payments" and "Legacy Payment Methods" pages always show your own account, even while you are working in someone else's team. Team members cannot see or pay the team owner's invoices. A server's "Billing" tab is different: it belongs to the team, and what a member can do there depends on their role. See [Team Permissions](#team-permissions) below. ## Invoices Open "Invoices" under "Billing" in the sidebar. The page lists your invoices with their number, status, issue date, due date and total. Invoices still waiting to be paid (`Unpaid`, `Overdue` and `Payment Pending`) are listed first. Use the search box to find an invoice by its number, date, amount, payment method or what it bills for. Use the status filter to show only one status, such as `Unpaid` or `Paid`. The page shows your 500 most recent invoices. If you have more, a notice at the top says older ones are not included. ### Paying an Invoice Click the invoice in the list. The invoice opens in full, with its line items, any payments already recorded, and the balance still due. Click the `Pay` button, which shows the amount owed. It appears when the invoice is `Draft`, `Unpaid`, `Overdue` or `Payment Pending` and still has a balance due. The "Pay Invoice" dialog lists the payment methods available to you. Choose one and complete the payment. The invoice shows as paid once the payment clears. See [Payment Methods](/guides/payment-methods) for how each method works. To pay all or part of an invoice from your account credit instead, click `Apply credit` on the invoice. See [Account Credit](/guides/account-credit#existing-invoices) for details. ### Paying Several Invoices at Once You can pay up to **20** invoices together with one payment. On the "Invoices" page, tick the checkbox beside each invoice you want to pay. The checkbox in the header ticks every payable invoice on the current page. If an invoice cannot be ticked, hover over its checkbox to see why. A bar appears at the bottom of the page with the number of invoices selected and a `Pay` button showing the total. Click it. Choose a payment method in the "Pay Invoices" dialog and complete the payment. Each invoice is marked paid with its own share of the payment once it clears. Some invoices cannot be paid together with others: * Add funds invoices are paid on their own. * An invoice that belongs to an order placed in the console is paid through that order. * An invoice that already has a payment being processed. * Invoices in different currencies. If you use the legacy Stripe or PayPal options, the selected invoices are combined into one payment in the client area. That combined payment is cancelled if it is not paid within 30 minutes. The `Pay` button is disabled if your selection mixes invoices that can only be paid in the console with invoices that can only be paid through the legacy options. Pay those groups separately. ### Printing an Invoice Open the invoice and click `Print`. Only the invoice itself is printed, without the console around it. To save the invoice as a PDF, choose "Save as PDF" (or your browser's equivalent) as the printer. ## A Server's Billing Tab Open a server and click the "Billing" tab. It has three sections: "Overview", "Automatic Payments" and "Billing Cycle". The "Billing" tab stays available while a server is suspended, so you can still manage its payments and cancel it. ### Overview The overview shows the server's price, how often it is billed, the next due date and whether automatic payments are enabled. A bar shows how much of the current billing period is left, or how many days the service is overdue. ### Automatic Payments The "Automatic Payments" section has two switches. **Pay this automatically.** When this is on, each renewal is charged to your card or wallet on file through Paddle on the day it falls due, so the server stays active without you paying each invoice. In "Automatic Payments", turn on `Pay this automatically`. A Paddle checkout opens. Enter your card or choose another method that Paddle offers, and complete it. Nothing is charged today for a service that is already paid up. If the service is overdue, the outstanding amount is charged right away and shown before you confirm. The console waits for Paddle to confirm and then shows `Automatic payments on`. Do not set up another payment while it is still confirming. To stop automatic payments, turn the switch off. The server keeps running. Renewals are still paid from your account credit while `Pay this from account credit` is on, so turn that off too if you want an invoice to pay yourself each time. If the service is paid by an older PayPal subscription, a dialog warns that the subscription may cover several services and that turning it off stops the payment for all of them. Click `Turn it off` to confirm. **Pay this from account credit.** When this is on, renewals are paid from your account credit if your balance covers them. Turn it off to keep your credit for other services and pay this server's invoices yourself. The change is saved as soon as you move the switch. This switch only appears when it is available for your account. To change the account credit setting for many servers at once, tick them in the server list on the dashboard and click `Change Autopay`. Tick or untick `Pay renewals from account credit` and click `Save`. ### Billing Cycle In "Billing Cycle", choose a new cycle from the `Cycle` list and click `Change cycle`. The console offers `Monthly`, `Quarterly`, `Semi-annually` and `Yearly`, and shows the price of each next to it. A cycle the server is not sold on cannot be selected. * The new cycle applies from the next renewal. Your current paid period stays the same. * If the server has an unpaid invoice, the change is refused. Pay the invoice first. The new cycle then applies to the renewal after that. * If automatic payments through Paddle are on, changing the cycle turns them off. Confirm with `Change cycle` in the dialog, then turn on `Pay this automatically` again if you want it. Your account credit setting stays the same. If the cycle cannot be changed from the console, the section says so. Open a ticket in the [client area](https://clients.advinservers.com/contact.php) if you need it changed. ### Cancelling a Server The `Cancel Server` button is at the bottom of the "Overview" section. Cancelling destroys the server and everything on its disks when the cancellation is processed. Take a copy of anything you need first. If you only want to stop being charged automatically and keep the server, turn off `Pay this automatically` instead. In the server's "Billing" tab, open "Overview" and click `Cancel Server`. Pick one of the two cancellation types: | Type | What happens | | - | - | | `End of billing period` | The server runs until the end of the period you have already paid for, then stops. Nothing more is charged. | | `Immediate` | The server stops today and everything on it is deleted. If any unused time is refundable, the amount is shown next to the option and is refunded to your [account credit](/guides/account-credit). | If secondary floating IPs are attached to the server, they are listed under "Cancel Floating IPs". Tick the ones you want to cancel too. Any you leave unticked stay on your account and continue to be billed. Type the server's name exactly to confirm, then click `Submit` (or `Cancel it now` for an immediate cancellation). Automatic payments for the server are turned off as soon as the cancellation is requested. A server that is busy with another operation, such as an upgrade, cannot be cancelled until that operation finishes. For refunds, including our 14-day money-back guarantee, see our [Refund Policy](/policies/refund). ### Withdrawing a Cancellation While an end-of-billing-period cancellation is pending, the "Overview" section shows when it was requested and when the server stops. Click `Withdraw Cancellation` to take it back. The server keeps running and is invoiced as normal. * Automatic payments stay off after you withdraw. Turn them back on in "Automatic Payments" if you want them. * Floating IP cancellations you requested with the server stay scheduled. Withdraw those separately from the "Floating IPs" page. * An immediate cancellation cannot be withdrawn. If the section says the request cannot be withdrawn from the console, open a ticket in the [client area](https://clients.advinservers.com/contact.php) as soon as you can and we will take it back for you. ### Team Permissions On a team's server, the "Billing" tab needs these role permissions: | Permission | What it allows | | - | - | | `View billing` | Open the "Billing" tab and see the server's billing details. | | `Manage service billing` | Turn off automatic payments, switch account credit on or off, change the billing cycle, and cancel or withdraw a cancellation. | Only the team owner can turn automatic payments on, because it saves a payment method to their account. ## Recurring Payments Open "Recurring Payments" under "Billing" in the sidebar. It lists every server that is charged to you automatically, with the payment provider, location, amount, billing cycle and the date of the next payment. A payment you have turned off shows "None" and the date it ends. Click a row to open its server. To stop one, open the menu at the end of its row and choose `Cancel recurring payment`, then click `Cancel payment`. This only stops the automatic charge: * The service itself is not cancelled and keeps running. * You get an invoice to pay at each renewal. * Paying renewals from your account credit is not affected. If a notice says some payments are managed elsewhere, those arrangements cannot be stopped from the console. Manage them in the [client area](https://clients.advinservers.com) or open a ticket. To cancel the server itself, use its "Billing" tab as described in [Cancelling a Server](#cancelling-a-server). ## Legacy Payment Methods Open "Legacy Payment Methods" under "Legacy" in the sidebar. It lists cards and bank accounts saved under our previous payment processor, with their type, description, processor and expiry date. The console does not store cards, and these are no longer used for new payments. To remove one, open the menu at the end of its row and choose `Remove`. Type the payment method's name exactly as shown, then click `Remove`. Any invoice already waiting to be paid with it will need to be paid another way. ## Frequently Asked Questions Hover over its checkbox to see the reason. Common ones are that it is an add funds invoice, that it belongs to an order placed in the console, or that a payment for it is already being processed. You can still open the invoice and pay it on its own. No. Automatic payments that are already set up stay on, and their next charge moves to the service's new due date once the invoice is paid. Paying invoices together never sets up new automatic payments. The server has an unpaid invoice. Pay it first, then change the cycle. The new cycle applies from the renewal after that. No. Turning off automatic payments only stops the automatic charge. The server keeps running. Renewals are still paid from your account credit while `Pay this from account credit` is on; otherwise you pay each renewal invoice yourself. To stop the server, cancel it from its "Billing" tab. Invoices belong to your account, not to the team. A team member always sees their own invoices on the "Invoices" page. ## Using the API You can list and pay invoices and manage service billing with an API key. Reading invoices needs the `View invoices` account permission, and paying them needs `Pay invoices`. Service billing needs the `View billing` and `Manage service billing` team permissions. ```bash theme={null} curl https://console.advinservers.com/api/v1/client/invoices \ -H "Authorization: Bearer " \ -H "Accept: application/json" ``` See the [API Reference](/api-reference/introduction) for every endpoint. # IP Change Source: https://docs.advinservers.com/guides/ipchange This is an overview of our policies around IP changes. ## Overview We permit IP changes on our services. In general, this is an operation that we can currently do for no additional cost. Usually, we only allow this **once per service** unless you have a good reason for needing the IP changed again. For an IP change, please open a support ticket stating the reason for an IP change. This is not a guaranteed operation and we may deny the request for any reason. We expect you to be honest about the reason for the change. If you are dishonest, then we cannot allow the change to occur. We cannot support constant IP changes or many IP change requests. Additionally, we cannot guarantee that the new IP address will be placed on a different subnet, or have better IP reputation than the previous IP. # ISO Mounting Source: https://docs.advinservers.com/guides/iso-mounting How to upload and mount a custom ISO image on your virtual server. ## Overview Please open the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com) and navigate to the "Custom ISOs" tab on the left navbar. You can then click "Download ISO" and insert a download link to the ISO. Your account will have a 10 GiB ISO quota. You must include a direct link to the ISO. You need to make sure that there are no redirects and that it is the final URL to download the ISO. You might want to run the below command to find a direct link to an ISO. Replace the Microsoft image URL with your ISO URL. ``` curl -LsI -o /dev/null -w '%{url_effective}\n' 'https://go.microsoft.com/fwlink/?linkid=2345730&clcid=0x409&culture=en-us&country=us' ``` It may take 5-10 minutes for an ISO to download to our storage. Please note that we may remove ISOs at any time, please do not rely on it as permanent storage. ![ISO Mounting](https://advin-cdn.b-cdn.net/chrome_QXk85mqr79.png) Once the image is downloaded, you can navigate to the "Mount ISO" tab on any one of your servers and mount the ISO image. ![ISO Mount Button](https://advin-cdn.b-cdn.net/chrome_qt15c3AKc1.png) By default, this will set the boot order to boot from the mounted ISO the next time that you restart the server. We recommend using either the "Restart" or "Stop" buttons on the Ascienth console. You can also manually set the boot order in the Settings -> Boot Order tab of the Ascienth console. If you need to delete an ISO, it should be unmounted from all servers first. Installing Windows this way requires an extra step to load storage drivers during setup. See our [Manual Windows Installation](/guides/windows-manual-install) guide for the full walkthrough. # Networking and DDoS Manager Source: https://docs.advinservers.com/guides/networking How to view and manage the IP addresses on your virtual server, change its primary IP, and set DDoS filtering rules in the Ascienth console. ## Overview Every virtual server has a "Networking" tab that lists the IP addresses assigned to it. From there you can see each address's netmask and gateway, choose which IPv4 address is the primary one, and add or remove [floating IPs](/guides/floating-ips). Servers in our Nuremberg, DE location also have a "DDoS Protection" tab. It opens the DDoS Manager, where you can add filtering rules for each protected address. See [DDoS Protection](/information/ddosprotection) for what the protection covers. Open the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com), click your server, and then click the tab you need. Team members can open the "Networking" tab with the `View servers` permission. Changing addresses needs `Change networking`. Buying an address needs `Make purchases`, and cancelling one needs `Make purchases` as well. The team owner can do all of these. ## The Networking Tab The table lists every address on the server, IPv4 and IPv6, with these columns: | Column | What it shows | | - | - | | `Address` | The IP address. A floating IP that is set to cancel at the end of its billing period is marked `(Cancellation Pending)`. | | `Netmask` | The netmask of the address. | | `Gateway / Nexthop` | The gateway to use for the address. Routed addresses are labelled `Nexthop`. | | `Status` | `Attached` once the address is live on the server. While something is changing it shows `Provisioning`, `Needs funds`, `Attaching`, `Detaching` or `Deleting`. | | `Type` | `Primary IP`, `Secondary IP` or `Floating IP`. | Use the search box to filter the list. The actions for an address are in the menu at the end of its row. Only the actions that apply to that address, and that your role allows, are shown. To set a reverse DNS (PTR) record for an address, see [Reverse DNS](/guides/ptr-rdns). ## Changing the Primary IP If your server has more than one IPv4 address, you can choose which one is primary. The primary address is the one the server is set up around. On the "Networking" tab, click the menu at the end of the IPv4 address you want to use, and choose `Set as Primary`. The "Set Primary Address" dialog asks you to confirm. Click `Confirm`. We update the server's network settings straight away. If the server is running, we also try to apply the new address inside it so it keeps answering without a reboot. If that is not possible, for example because the server is powered off, the change takes effect the next time it boots. Only IPv4 addresses can be primary, and a floating IP can never be the primary address. To move a server off its current primary address, set another of its own IPv4 addresses as primary first. Need a different address altogether? See our [IP Change](/guides/ipchange) policy. ## Adding an Address You can add a floating IP to the server from this tab, either one you already rent or a new one. Click `Add Address` above the table. Pick a floating IP from the `Address` menu. Only addresses that are not attached elsewhere and can reach this server are listed. To buy a new one instead, choose `Create a new floating IP`. Pick IPv4 or IPv6 under `Address type`. The `Price` field shows what the address costs. It is paid from your [account credit](/guides/account-credit). Click `Attach address` for an address you already have, or `Buy and attach` for a new one. The `Status` column shows `Attaching` until the address is on the server, then `Attached`. A new address is attached as soon as its payment goes through. ## Detaching or Cancelling a Floating IP * `Detach` takes a floating IP off this server. The address stays yours and stays billed, so you can attach it to another server from the "Floating IPs" page. Anything still using it on this server stops responding. * `Cancel address` ends the floating IP's subscription. See [Floating IPs](/guides/floating-ips#cancelling-an-address) for the choices. To detach several floating IPs at once, tick their rows and click `Detach` in the bar that appears. Only floating IPs can be detached. A primary address cannot be detached or cancelled immediately. Set another IPv4 address as primary first. ## DDoS Manager The DDoS Manager lets you add filtering rules to your protected addresses. It is only available for servers in our Nuremberg, DE location, and only for their protected IPv4 addresses. Read [DDoS Protection](/information/ddosprotection) for how the filtering works and which presets are offered. Open your server and click the "DDoS Protection" tab. Pick the address to work on from the `IP Address` menu at the top. The table below it lists the rules on that address, with their `Protocol`, `Preset`, `Min Port`, `Max Port` and when they were `Created`. Viewing the DDoS Manager needs the `View networking` permission. Creating rules and changing an address's settings need `Change networking`. Deleting rules needs `Delete networking resources`. ### Creating a Rule Click `Create Rule`. Choose the `Protocol`: TCP, UDP, ICMP or GRE. Then choose a `Preset`. The list only shows presets for the protocol you picked. For TCP and UDP, enter the port in `Min Port`. To cover a range, also enter `Max Port (optional)`. If you leave it blank, the rule covers only the one port. Ports must be between 1 and 65535. Click `Create`. The rule appears in the table. To remove a rule, click the menu at the end of its row and choose `Delete`. You will be asked to type the rule's ID to confirm. ### Address Settings The "IP Configuration" card below the rules holds two settings for the selected address: | Setting | What it does | | - | - | | `Default Action` | What happens to traffic that does not match any rule: `Filter` or `Drop`. | | `Mitigation Duration (seconds)` | How long automatic mitigation stays on after an attack is detected, from 10 to 600 seconds. | Change them and click `Save Changes`. `Drop` discards all traffic to the address that does not match one of your rules. Make sure you have rules for every service you run before you choose it. ## Frequently Asked Questions The tab only appears for servers in Nuremberg, DE. Our other locations do not offer DDoS filtering. See [DDoS Protection](/information/ddosprotection). A floating IP can be detached and moved at any time, so it cannot be the address the server is built around. Use one of the server's own IPv4 addresses as primary. It only appears for IPv4 addresses that belong to the server itself, when the server has more than one IPv4 address, and only if your role has the `Change networking` permission. No. A detached floating IP is still yours and is still billed. Cancel it from the row menu or the "Floating IPs" page to stop paying for it. ## Using the API The server's addresses are part of the server details returned by the API. To change the primary address, use an API key with the `Change networking` permission (`network.update`): ```bash theme={null} curl -X POST https://console.advinservers.com/api/v1/client/servers//addresses//primary \ -H "Authorization: Bearer " \ -H "Accept: application/json" ``` The DDoS Manager is under `/api/v1/client/servers//ddos-protection`. Reading it needs `network.read`, creating rules and changing settings need `network.update`, and deleting rules needs `network.delete`. See the [API introduction](/api-reference/introduction) for how to create a key and for the full list of endpoints. # Ordering a Server Source: https://docs.advinservers.com/guides/ordering-a-server How to create an account, finish account setup and order a virtual server in the Ascienth console. ## Overview You order virtual servers in the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com). New servers are paid from your [account credit](/guides/account-credit), and we start building them as soon as the payment goes through. This page covers three things: 1. Creating an account and finishing account setup. 2. Filling in the "Order a Server" page. 3. What happens after you place the order, and what to do if something goes wrong. If you were already a customer in the client area at [https://clients.advinservers.com](https://clients.advinservers.com), you do not need a new account. Sign in to the console with the same email address and password. See [Launching Ascienth](/guides/controlpanel). ## Creating an Account Go to [https://console.advinservers.com](https://console.advinservers.com) and click `Create one` under the sign-in form, or open [https://console.advinservers.com/register](https://console.advinservers.com/register) directly. If the link is missing or you are sent back to the sign-in page, we are not accepting new accounts at the moment. Enter your `First name`, `Last name`, `Email` and phone number. The phone number must start with your country code. `Company (optional)` can be left empty. Choose a `Password` and repeat it in `Confirm password`. The password must be at least 8 characters and include an upper case letter, a lower case letter, a number and one of `! @ # $ % ^ & *`. Click `Continue`. If the email address already has an account, you are asked to sign in instead. Enter the address your invoices are addressed to: `Address`, `City`, `Postcode` and `Country` are required, and `Address line 2 (optional)` and `State / region (optional)` can be left empty. You can change these details later. If your email address already has a login in the client area, the form also asks for your `Existing billing password`. Enter the password you use in the client area. Complete the verification check, then click `Create account`. You are signed in straight away. ## Finishing Account Setup Before you can use the rest of the console, you need to finish "Account Setup". The console takes you there after you sign up, and keeps sending you back to it until both steps are done. While a step is open, "Finish Setup" also appears at the top of the sidebar with the number of steps left. We send a six-digit code to the email address on your account. Enter it and click `Verify Email`. A code is valid for 15 minutes and allows five wrong attempts. If it does not arrive, check your spam folder, or click `Resend Code`. If you typed your address wrong when you signed up, click `Change email` to correct it. The "Terms and Policies" step links to our [Terms of Service](/policies/termsofservice), [Service Level Agreement](/policies/sla), [Abuse Policy](/policies/abuse), [Fair Use Policy](/policies/fair-use), [Refund Policy](/policies/refund) and [Privacy Policy](/policies/privacypolicy). Each opens in a new tab. Tick `I have read and accept the agreements above.` and click `Accept and Finish`. Only one account per person or business may be verified. If you already have a verified account, sign in to that one instead. Duplicate accounts may be suspended. If we revise the agreements later, you are asked to accept them again. ## Before You Order * **Add account credit.** Orders are paid from your account credit balance. If your balance does not cover the order, the order page tells you and links to "Add Funds". See [Account Credit](/guides/account-credit). * **Save an SSH key (optional).** Keys saved on the "SSH Keys" page can be added to the server when it is built. See [SSH Keys](/guides/ssh-keys). * **Save a setup script (optional).** A script can run while the server is being built. See [Setup Scripts](/guides/scripts). You can also create a key or a script from the order page itself. ## Ordering a Server Click "Virtual Servers" in the sidebar, then click `Deploy Server`. This opens the "Order a Server" page. Under "Choose product group", pick the product family. Then pick a city under "Choose location". A green dot means the location has stock, and a red dot means it is out of stock. Under "Choose plan", pick a plan from the table. Each row shows its vCPU, memory, disk, transfer and monthly price. A plan that is out of stock is greyed out and cannot be picked. To hear when it is back, see [Stock Notifications](/guides/stock-notifications). Under "Choose OS", pick an operating system, then pick its version from `OS Version`. If you choose Windows, it is installed as a 180-day evaluation edition. You must buy a licence from Microsoft and activate the server before the 180 days are up, or it starts shutting itself down. See [Windows](/guides/windows). Under "SSH Keys", tick the keys to add to the server. Keys you marked as default are ticked for you. Click `Create SSH Key` to add a new one without leaving the page. Under "Setup Script", you can pick one of your scripts to run while the server is being built, or click `Create Script` to add one. These two sections are hidden when you choose Windows, because setup scripts are not supported on Windows. Under "Billing Cycle", choose how often the server is invoiced. Each option shows its price for that term. Longer terms are billed up front. Enter a password in `System OS Password`. It is always required, even if you add SSH keys, because the browser console signs in with a password. The password must be at least 5 characters and use only characters from a US keyboard. A Windows password has extra rules: * At least three of: an uppercase letter, a lowercase letter, a number and a symbol. * It must not contain `Administrator`. * At most 127 characters. Under "Name", you can set a `Hostname` and a `Server label`. * The hostname is set on the server itself. It must be a valid hostname, such as `web1.example.com`. If you leave it empty, the server is named after its IP address. * The label is the name shown in the console. It can be up to 40 characters. If you leave it empty, we generate one. In the bar at the bottom of the page, use `Qty` to order up to 10 servers of the same plan at once. You cannot order more than the plan has in stock. Each extra server gets its own pair of fields, such as `Hostname for server 2` and `Server label for server 2`. Hostnames you fill in must all be different. Check the total in the bottom bar, then click `Create Server`. The button stays disabled until everything required is filled in, and its tooltip says what is missing. If the price changed since the page loaded, a "Confirm Purchase" dialog shows the latest price. Click `Pay from Credit` to go ahead. The "Coupon" section does not apply any discount to console orders. Codes from the old client area are not accepted. ## After You Place the Order You are taken back to "Virtual Servers", where the order appears as a row in the server list. Its status changes as the order moves along. Hover over the status to see more detail. | Status | What it means | | - | - | | `Provisioning` | The order is being paid from your account credit, or the server is being created. | | `Needs funds` | Your account credit did not cover the order. Click `Add funds` under the status and top up your balance. We try again until the payment deadline. | | `Awaiting payment` | The order is waiting for its invoice to be paid. | | `Installing` | The server exists, and we are installing your operating system, password, SSH keys and script on it. | When the build finishes, the order row is replaced by your new server. Click it to open the server. See [Server Overview](/guides/server-overview). An unpaid order does not wait forever. If it is still unpaid when the payment deadline passes, it expires and you need to order again. ### Cancelling an Unpaid Order You can withdraw an order that has not been paid for yet. On "Virtual Servers", click the menu at the end of the order's row and choose `Cancel order`. Type the confirmation text the dialog asks for (the order's hostname), then click `Cancel order`. Nothing is charged and no server is created. An order that has already been paid cannot be cancelled this way. Once the server exists, see [Invoices and Billing](/guides/invoices-and-billing) for how to cancel the service. ### If the Build Fails If we cannot set up a paid order, its price is returned to your account credit. If the server was created but the operating system install did not finish, the server's page shows **The last install did not finish**. Click `Try the install again` to reinstall it. See [Server Reinstallation](/guides/reinstall). If it fails a second time, open a ticket in the [client area](https://clients.advinservers.com/contact.php). You can close the notice with the cross in its corner once you have read it. This only hides the notice. It does not change the server. ## Team Permissions A server ordered from the console is created in the account's default team, together with the SSH keys and script you picked there. If you are working in a different team, the order page tells you which team servers are ordered in and offers to switch to it. Team members need these permissions in their role: | Permission | Allows | | - | - | | `View servers` | Open the order page and see plans and prices. | | `Make purchases` | Place an order and cancel an unpaid one. Orders are paid from the team owner's account credit. | Account setup and adding funds always apply to your own account, not to the team you are working in. See [Teams and Accounts](/guides/teams-and-accounts). ## Frequently Asked Questions Not directly. Add funds to your account credit with any [payment method](/guides/payment-methods), then order the server. The order is paid from your credit. Hover over the button to see why. Common reasons are that no plan or operating system is chosen, the root password is missing, or your account credit does not cover the total. Setup scripts are not supported on Windows, so the order page hides both sections when you choose Windows. You sign in to Windows with the Administrator password you set. Yes. See [Server Settings](/guides/server-settings). ## Using the API You can order servers with an API key. Ordering is a two-step process: get a signed quote for a plan, then place the order with that quote. | Endpoint | Permission | | - | - | | `GET /servers/catalog`, `GET /servers/templates`, `POST /servers/quote`, `GET /servers/orders` | `View servers` | | `POST /servers`, `POST /servers/orders/{server_order}/cancel` | `Make purchases` | ```bash theme={null} curl https://console.advinservers.com/api/v1/client/servers/quote \ -H "Authorization: Bearer " \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{"plan_key": ""}' ``` Then send the returned `quote_token` to `POST /servers` with the operating system, password and any hostnames, SSH keys or script. The order is paid from account credit in the background. Poll `GET /servers/orders` to follow it. See the [API introduction](/api-reference/introduction) for how to create a key and for the full list of endpoints. # Dedicated Servers, Licenses and Website Hosting Source: https://docs.advinservers.com/guides/other-services Where to manage dedicated servers, software licenses and website hosting, which are not yet managed in the Ascienth console. ## Overview The Ascienth console manages virtual servers. Our other products are still managed in the [client area](https://clients.advinservers.com): | Console page | What it is for | | - | - | | "Dedicated Servers" | Physical servers with all of their hardware set aside for you. | | "Licenses" | Software licenses bought through your account. | | "Website Hosting" | Shared hosting plans for your websites. | Each page in the console only points you to the client area. It does not list your services or let you change them yet. ## Finding These Pages Open the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com) and click "Hosting" in the left rail. Click "Dedicated Servers", "Licenses" or "Website Hosting". The page says the product cannot be managed in the console yet. Click `Open Legacy Portal`. The client area opens in a new tab, where you can view and manage these services. Only the account holder sees these pages. Team members do not, because these services are tied to your client area account, which teams do not share. See [Teams and Accounts](/guides/teams-and-accounts). ## Frequently Asked Questions Dedicated servers, licenses and website hosting are not managed in the console yet. Sign in to the [client area](https://clients.advinservers.com) to manage them. Open a ticket from the "Tickets" page in the console or in the [client area](https://clients.advinservers.com/contact.php). See [Support Tickets](/guides/support-tickets). # Payment Methods Source: https://docs.advinservers.com/guides/payment-methods Which payment methods you can use to pay invoices and add funds in the Ascienth console. ## Overview You pay for services in the [Ascienth console](https://console.advinservers.com). Invoices and top-ups are paid from a payment dialog that lists the methods available to you. New servers are paid from your [account credit](/guides/account-credit), so you add funds with one of these methods first. | Method | How it works | Renews automatically | | - | - | - | | Credit card or PayPal | Paid through Paddle. Cards, PayPal and supported wallets are accepted. | Optional | | Cryptocurrency | Paid once in Bitcoin or another supported coin. | No | | Account credit | Your prepaid balance. See [Account Credit](/guides/account-credit). | Optional | | Legacy Stripe and PayPal | Paid in the client area through our previous payment processors. Only available to accounts created before September 29th, 2026. | No | | NOWPayments | Paid in the client area in cryptocurrency. Only available to some older accounts. | No | A method only appears when it is switched on. If the payment dialog says there is no way to pay in the console, open a ticket in the [client area](https://clients.advinservers.com/contact.php). ## Credit Card or PayPal In the payment dialog, choose `Credit Card` or `PayPal`. Both open the same secure checkout from Paddle, which shows every method it can accept for your account, including cards, PayPal and supported wallets. Paddle is the merchant of record for these payments, so it may add VAT or sales tax depending on where you live. The tax is shown before you pay. To have a service renew on its own, turn on `Pay this automatically` on the service's billing tab. Renewals are then charged through Paddle until you cancel. You can see and cancel everything that is charged automatically on the "Recurring Payments" page. ## Cryptocurrency Choose the cryptocurrency option to pay once in Bitcoin or another supported coin. A crypto payment does not renew, so pay each renewal invoice yourself or keep enough [account credit](/guides/account-credit) on your account. Confirmations can take a few minutes, and the invoice is marked paid once the transaction confirms. ## Legacy Stripe and PayPal If your account was created before September 29th, 2026, you can also pay through our previous payment processors, Stripe and PayPal. Accounts created on or after that date do not see these options. Choose `Legacy` in the payment dialog, pick `Stripe` or `PayPal (Legacy)`, and press pay. You are sent to the invoice in the [client area](https://clients.advinservers.com) to finish paying. These payments are not taxed by Paddle. The legacy option is available on a single invoice, when paying several invoices at once from the "Invoices" page, and when adding funds. When you pay several invoices at once through a legacy gateway, they are combined into one payment in the client area. That combined payment is cancelled if it is not paid within 30 minutes. ## NOWPayments NOWPayments is only available to accounts that were created in the client area before August 24th, 2026. If your account was created on or after that date, it does not appear as an option. When it is available, you find it under `Legacy` in the payment dialog. Payments made through NOWPayments are non-refundable and are excluded from our money-back guarantee. See our [Refund Policy](/policies/refund). ## Saved Payment Methods The console does not store cards. Cards saved under our previous payment processor are listed on the "Legacy Payment Methods" page, where you can remove them. They are no longer used for new payments. ## Frequently Asked Questions NOWPayments is not available to accounts created on or after August 24th, 2026. Use another method from the list above. The legacy Stripe and PayPal options are only available to accounts created before September 29th, 2026. Use another method from the list above. New servers are paid from your account credit. Add funds with any method on this page, including the legacy options if your account has them, then place the order. Payments through Paddle may include VAT or sales tax depending on your location. The legacy Stripe and PayPal options do not add tax. # Port 25 Unblocking Source: https://docs.advinservers.com/guides/port25 This is an overview of our policies around port 25 and outgoing email. ## Overview By default, port 25 is blocked across our infrastructure, and email sending is not permitted on virtual or cloud servers. If you need to send email, we recommend using a third-party SMTP provider such as Amazon SES. Outgoing email is allowed on our website hosting by default. If you have a valid use case and need port 25 unblocked, please open a support ticket and include the following: * A link to your website or project, if applicable * A clear explanation of why you require port 25 access * Examples of the types of emails you intend to send If your account is found to be sending unsolicited or abusive email after port 25 is unblocked, it will be blocked again, and future unblocking requests will not be considered across any of your current or future services. Exceptions may be made only for resellers or customers operating shared environments, such as web hosting platforms. # Private Networks Source: https://docs.advinservers.com/guides/private-networks How to create a private network between your virtual servers in one city, attach and detach servers, and delete the network in the Ascienth console. ## Overview A private network connects your servers in the same city over an isolated network with its own private address range. Each server on the network gets an extra network interface and an address on that range, and can reach the other servers on it directly. Traffic on a private network is not counted toward your bandwidth quota. Open the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com) and click "Private Networks" under "Networking" in the left sidebar. Each server also has a "Private Network" tab. A private network only connects servers in **one city**. You can only create a network in a city where you already have a server, and only servers in the same team as the network can join it. Team members need these permissions: | Permission | What it allows | | - | - | | `View networking` | See private networks and their servers. | | `Change networking` | Create networks, rename them, and attach or detach servers. | | `Delete networking resources` | Delete a private network. | ## Creating a Network Click "Private Networks" in the left sidebar, then click `Create Network`. * `Network name`: up to 64 characters. Use letters, digits, spaces, dashes, underscores or dots. * `City`: the city the network is in. Only cities where you have a server are listed. * `Address range`: the private range the network uses, in CIDR notation. We fill in a free range for you, which you can change. Click `Create`. The network appears in the list with its `Range`, `City` and number of `Servers`. The address range must: * be inside `10.0.0.0/8`, `172.16.0.0/12` or `192.168.0.0/16`, * have a prefix between `/8` and `/30`, written with no bits set below the prefix (for example `10.20.30.0/24`, not `10.20.30.5/24`), * not overlap another network your team already has in that city. ## Adding Servers You can add a server from the network's page or from the server's own tab. ### From the Network's Page Click the network in the list. It opens on the "Servers" tab. Click `Add Server` and choose the `Server`. Only your servers in the network's city that are not already on it are listed. Under `Address`, pick `Assign one automatically`, or `Choose an address` and enter an `IP address` on the network's range. Click `Add`. ### From the Server's Private Network Tab Click your server, then the "Private Network" tab, and click `Add Private Network`. Choose a network from the `Network` menu. Under `IP Address`, pick `Automatic` or `Manual` and enter the address you want. To start a new network instead, choose `Create a new network` and enter a `Network name`. We pick a free address range for it in the server's city and add the server to it. Click `Add`. The server's status shows `Attaching` while it is being added, then `Attached`. The private interface comes up the next time the server reboots. Reboot the server after adding it to a network. A server can be on several private networks at once. The address you choose must be on the network's range, and no two servers on a network can share an address. The first and last addresses of the range cannot be used. ## Detaching a Server * From the network's "Servers" tab, click the menu at the end of the server's row and choose `Detach from network`. * From the server's "Private Network" tab, click the menu at the end of the network's row and choose `Detach`. Confirm in the dialog. The server loses its interface on that network, and its address goes back to the range. Detaching runs in the background, and the interface disappears from the server on its next reboot. The network and its other servers are not affected. ## Renaming a Network Open the network and click the "Settings" tab. Change the `Name` and click `Save`. The address range and city cannot be changed after the network is created. ## Deleting a Network Open the network and click the "Delete" tab, then `Delete`. You can also choose `Delete` from the menu on the "Private Networks" page or on a server's "Private Network" tab. Type the network's name to confirm. Deleting a network detaches every server on it, removes their private network connections and deletes the network. This cannot be undone. ## Frequently Asked Questions No. The console [firewall](/guides/firewall) does not filter private network traffic. Use a firewall inside your servers if you need to restrict it. No. A private network only spans one city. A server can only join a network in its own city. Only your servers in the network's city and in the same team are listed, and only if they are not already on the network. The interface is added on the server's next reboot. Reboot it from the console and check again. ## Using the API Private networks are under `/api/v1/client/private-networks`, and a server's networks are under `/api/v1/client/servers//private-networks`. Your API key needs `network.read` to read them, `network.update` to create networks and attach or detach servers, and `network.delete` to delete them. ```bash theme={null} curl -X POST https://console.advinservers.com/api/v1/client/servers//private-networks//attach \ -H "Authorization: Bearer " \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{"ip_address": "10.0.0.10"}' ``` Leave out `ip_address` to have the lowest free address assigned. Creating a network through the API does not add any server to it, so attach each server afterwards. See the [API introduction](/api-reference/introduction) for how to create a key and for the full list of endpoints. # Setting Up PTR/RDNS Source: https://docs.advinservers.com/guides/ptr-rdns How to create a reverse DNS (PTR) record for your virtual server. ## Overview You can set a PTR (reverse DNS) record for your server's IP addresses directly from the Ascienth console. Reverse DNS maps an IP address back to a hostname. Mail servers commonly check that this hostname resolves back to the same IP address. ## Creating a Record Open your server, click the "Settings" tab, then "Reverse DNS". Pick the address you want to set from the `IP Address` menu. Reverse DNS section of a server's settings Click `Create RDNS Record`, enter the hostname in `Hostname` (for example `server.example.com`), and click `Create`. For an IPv6 subnet, also type the address from your subnet that the record is for in `IP Address`. Create rDNS Record dialog with a hostname filled in The new record can take a while to spread across DNS. # Server Reinstallation Source: https://docs.advinservers.com/guides/reinstall How to reinstall your virtual server from the Ascienth console. ## Overview You can easily reinstall your server by going to the Reinstall tab. You can choose from a variety of operating system distributions available. **Please note that we may not always support the below operating systems. We regularly remove operating systems when they become EOL or stop receiving updates.** We support: * Ubuntu 18.04, 20.04, 22.04, 24.04, 26.04 * Debian 11, 12, 13 * AlmaLinux 8, 9, 10 * RockyLinux 8, 9, 10 * OracleLinux 9 * Windows Server 2019, 2022, 2025 (Evaluation Edition, see [Windows Server Support](/guides/windows)) ![Reinstallation](https://advin-cdn.b-cdn.net/chrome_JElfOv7iqp.png) # Password Reset Source: https://docs.advinservers.com/guides/reset-password How to set a new root or Administrator password for your virtual server from the Ascienth console. ## Overview If you have lost your server's password, or want to change it, you can set a new one from the Ascienth console. On Linux this changes the `root` password. On Windows it changes the `Administrator` password. In a team, you need a role with the **Change server passwords and SSH keys** permission. See [Team Members](/guides/team-members). ## Resetting the Password Open your server, click the "Settings" tab, then "Reset Password". Type the new password in `Password` and click `Save`. Reset Password section of a server's settings with a new password entered The password must be at least 5 characters long and can only use characters found on a US keyboard. ## When the New Password Applies If the QEMU Guest Agent is running on your server, the new password works right away. If you have uninstalled the QEMU Guest Agent, or your server is off, the new password applies the next time your server starts. Restart the server to use it. Resetting the password does not change the SSH keys on your server. # Setup Scripts Source: https://docs.advinservers.com/guides/scripts How to save a cloud-config document or bash script and run it on a Linux server when you order or reinstall it. ## Overview The "Scripts" page stores setup scripts that run on a Linux server the first time it boots after being built. Use them to install packages, create users, write config files, or run your own commands, so a new server comes up ready to use. A saved script does nothing on its own. It runs only when you pick it while ordering a new server or reinstalling an existing one. Open the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com) and click "Scripts" under "Setup" in the left sidebar. Scripts are saved in the team you are working in. Each team has its own list, so switch to the right team before you add one. ## Script Types | Type | What it does | | - | - | | `Cloud-config` | A YAML document of settings, starting with `#cloud-config`. It is combined with the settings the operating system image already uses. | | `Bash script` | A shell script, starting with `#!/bin/bash`. It runs on the first boot after the install. | When a `Cloud-config` document is combined with the image's own settings: * Lists of work, such as `packages`, `runcmd`, `bootcmd`, `write_files`, `users` and `ssh_authorized_keys`, are added together. Your entries come after the image's, and exact duplicates are skipped. * For any other setting that both define, your value wins. A simple example: ```yaml theme={null} #cloud-config packages: - nginx runcmd: - systemctl enable --now nginx ``` ## Limits and Checks * `Name`: up to 64 characters, unique in your account. * Script content: up to 1 MiB. * A `Cloud-config` document must be valid YAML and must be a list of settings such as `packages:` or `runcmd:`. Otherwise you see an error explaining the problem before the script is saved. * A `cloud-config` document saved as a `Bash script` is refused, because it would fail when run as a shell script. Choose the `Cloud-config` type for it instead. Scripts often contain passwords or tokens. We store script content encrypted. Anyone in your team with the `View setup scripts` permission can still read it. ## Adding a Script On the "Scripts" page, click `Add Script`. Enter a `Name` and choose a `Type`: `Cloud-config` or `Bash script`. The editor starts with `#cloud-config` or `#!/bin/bash` for you. Write or paste your script into the editor. Click `Create`. The script can now be picked the next time you order or reinstall a server. You can also add a script straight from the order or reinstall form with `Create Script`. The new script is selected for you. ## Running a Script on a Server Saved scripts appear in the "Setup Script" section of two forms: * **Ordering a server**, on the "Order a Server" page. * **Reinstalling a server**, on the server's "Reinstall" tab. See [Server Reinstallation](/guides/reinstall). Click a script to select it, and click it again to clear it. You can pick one script per server. The script runs during the first boot of the newly built server, after the operating system is installed. Scripts are not supported on Windows. The "Setup Script" section is hidden when you pick a Windows operating system, and an order or reinstall that includes a script for Windows is refused. Scripts are also not available on every server. If a server's "Reinstall" tab has no "Setup Script" section, that server cannot run scripts. ## Editing or Deleting a Script Click the menu at the end of the script's row: * `Edit` lets you change the name, type and content. Click `Save` when you are done. * `Delete` removes the script. To confirm, type the script's name and click `Delete`. Servers that were already built with a script are not affected by editing or deleting it. Anything the script already did on those servers stays as it is. If the team owner has more than one team, they can also choose `Move to team` to move a script to another of their teams. ## Team Permissions The team owner can always manage scripts. Members need these permissions in their role: | Permission | Allows | | - | - | | `View setup scripts` | See the scripts saved in the team, including their content. | | `Manage setup scripts` | Add and edit scripts. | | `Delete setup scripts` | Delete scripts. | See [Team Members and Roles](/guides/team-members). ## Frequently Asked Questions Log in to the server and check its first-boot logs under `/var/log/`. Our services are unmanaged, so we cannot debug the script for you. No. Scripts only run when a server is ordered or reinstalled. On a running server, run the commands yourself. ## Using the API You can manage scripts with an API key that has the `View setup scripts`, `Manage setup scripts` or `Delete setup scripts` permission for its team. In the API, scripts are called `user-scripts`, and `type` is `cloud-config` or `bash`. ```bash theme={null} curl https://console.advinservers.com/api/v1/client/user-scripts \ -H "Authorization: Bearer " \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{"name": "Install nginx", "type": "cloud-config", "content": "#cloud-config\npackages:\n - nginx\n"}' ``` The list endpoint returns each script's full content, so treat the response as sensitive. See the [API introduction](/api-reference/introduction) for how to create a key and for the full list of endpoints. # Server Overview Source: https://docs.advinservers.com/guides/server-overview How to find your servers, control their power, read their usage graphs, open the browser console and check the audit log in the Ascienth console. ## Overview This page covers the everyday screens of the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com): * The "Virtual Servers" list, where you see all your servers and act on several at once. * A server's "Overview" tab, with its status, power buttons and usage graphs. * The browser console, for using the server when SSH or remote desktop is not working. * A server's "Audit Log" tab, which records what was done to it and by whom. Settings such as the name, firmware and boot order are covered in [Server Settings](/guides/server-settings). ## The Server List Click "Virtual Servers" in the sidebar. This is also the page you land on after you sign in. Each row shows the server's name and hostname, location, IPv4 address and state. On wide screens the row also shows the price, billing cycle, next due date and whether renewals are paid automatically. Click a server to open it. * **Search:** type in the search box to filter by name, hostname, location, operating system or IP address. * **Sort:** click the `Server` or `State` column heading to sort by it. * **Orders:** servers you have ordered but that are not built yet are listed as their own rows with an order status. See [Ordering a Server](/guides/ordering-a-server#after-you-place-the-order). * **New server:** click `Deploy Server` to order another one. The list updates on its own when a server changes state, so you do not need to refresh the page. ### Acting on One Server Click the menu at the end of a server's row for quick actions: | Action | What it does | | - | - | | `Rename` | Change the name shown in the console. Nothing on the server itself changes. | | `Change hostname` | Change the hostname set on the server. | | `Change OS icon` | Pick the logo shown beside the server. | | `Move to team` or `Move to my account` | Move the server between your account and a team. See [Server Transfers](/guides/server-transfers). | | `Cancel service` | Request cancellation of the server. See [Invoices and Billing](/guides/invoices-and-billing#cancelling-a-server). | ### Acting on Several Servers Tick the box at the start of each server's row, or the box in the header to select every server on the page. A bar appears with the actions you can take on the selection: * `Start` starts the selected servers. Servers that are already running are left alone. * `Stop` stops the selected servers. The dialog lets you choose between a graceful stop and a force stop, as described in [Power Actions](#power-actions). * `Change Autopay` sets whether renewals for the selected servers are paid from your account credit. See [Invoices and Billing](/guides/invoices-and-billing). `Start` and `Stop` only appear when at least one selected server can be started or stopped. ## A Server's Overview Tab Click a server in the list to open its "Overview" tab. The header shows the server's name, primary IP address and hostname (click either to copy it), when it was created, its plan, vCPU, RAM, disk, transfer and location. The power buttons are on the right. Below the header, five cards show: | Card | What it shows | | - | - | | `State` | Whether the server is running or stopped, or what it is busy with, such as `Installing` or `Restoring`. | | `CPU` | Current CPU usage. | | `Memory` | Memory assigned to the server. | | `Bandwidth` | How much of this month's transfer you have used. Hover over the figure for the exact amount. Click `Bandwidth` to see the date it resets, which is the monthly anniversary of the service. | | `Storage` | Disk size. | If an invoice for the server is unpaid or overdue, a notice at the top links to it. ### Power Actions The buttons in the header control the server's power: | Button | What it does | | - | - | | `Start` | Turns the server on. Shown while the server is stopped. | | `Restart` | Restarts the server. | | `Stop` | Stops the server. | | `Kill` (in the `...` menu) | Cuts power immediately. | | `VNC` | Opens the browser console. See [Browser Console](#browser-console). | `Restart` and `Stop` open a dialog with a `Force reset` or `Force stop (kill)` box, which is ticked by default: * **Ticked:** the server is reset or powered off immediately, like pulling the plug. Unsaved data may be lost or corrupted. * **Unticked:** we ask the operating system to reboot or shut down cleanly. If a graceful shutdown has not finished after one minute, the server is powered off. A force stop or force reset can corrupt files that were being written. Untick the box when the server is responding normally. The status changes in the header once the command has been carried out. Power buttons are unavailable while the server is busy with another operation, such as a reinstall, a restore or a snapshot. ### While a Server Is Busy When the server is installing, restoring, being upgraded or moved, a notice explains what is happening, and most tabs are disabled until it finishes. The "Overview" and "Billing" tabs stay available. While a snapshot is being taken, the "Snapshots" tab stays available too. A suspended server shows a **Suspended** notice, with the reason when there is one. If the last install did not finish, the notice **The last install did not finish** appears with a link to `Try the install again`. See [Server Reinstallation](/guides/reinstall). If it fails twice, open a ticket in the [client area](https://clients.advinservers.com/contact.php). ## Usage Graphs The "Overview" tab shows four graphs below the cards: `CPU Usage`, `Memory Usage`, `Network Traffic` and `Disk Throughput`. They refresh every few seconds while the page is open. * Choose the time range with `Hour`, `Day`, `Week`, `Month` or `Year`. * Choose `Average` to see typical usage, or `Maximum` to see short spikes that averages hide. The same graphs are also available on their own page, at `https://console.advinservers.com/servers//graphs`. If a graph says `No samples were recorded for this timeframe.`, there is no data for that period yet. A server that was stopped may have gaps. ## Browser Console The browser console shows the server's screen, as if you had a monitor and keyboard plugged into it. Use it when you cannot reach the server over SSH or remote desktop, for example after a firewall mistake or while an installer from an [ISO](/guides/iso-mounting) is running. On the server's page, click `VNC` in the header. The console opens in a new window. Click inside the console and sign in with the server's root or Administrator password. If you do not know it, see [Password Reset](/guides/reset-password). The console's control bar has buttons to show extra keys (such as `Send Ctrl-Alt-Del`), use the clipboard, go full screen and change scaling settings. The console is unavailable while the server is busy with another operation, such as a reinstall. If the window shows `Waiting for the server. Reconnecting…`, the server is restarting and the console reconnects on its own. ## Audit Log Click the "Audit Log" tab on a server to see what has been done to it, newest first. Each entry shows: * `Event`: what happened, for example a power action or a rename. * `Performed By`: the person who did it, or `System` for automatic actions. Entries made by our staff are marked `Staff`. * `IP Address`: where the request came from. * `When`: the date and time. Type in the search box to filter entries by the kind of action, for example `backup`. The log is split into pages; use the controls at the bottom to move between them. For a log of everything in a team, see "Audit Log" under "Teams" in the sidebar. ## Team Permissions The team owner can always use these screens. Members need these permissions in their role: | Permission | Allows | | - | - | | `View servers` | See the server list, the "Overview" tab, the graphs and the "Audit Log" tab. | | `Control power` | Use `Start`, `Restart`, `Stop` and `Kill`, on one server or several. | | `Use the console` | Open the browser console. | | `Change server settings` | Use `Rename`, `Change hostname` and `Change OS icon` from the list. | | `Manage service billing` | Use `Change Autopay` on selected servers. | Members only see the buttons and tabs their role allows. ## Using the API | Endpoint | Permission | | - | - | | `GET /servers`, `GET /servers/{server}`, `GET /servers/{server}/state` | `View servers` | | `GET /servers/{server}/metrics`, `GET /servers/{server}/audit-log` | `View servers` | | `PATCH /servers/{server}/state` | `Control power` | | `POST /servers/{server}/create-console-session` | `Use the console` | This request restarts a server cleanly. Send `state` as `start`, `shutdown`, `restart`, `reset` or `kill`: ```bash theme={null} curl -X PATCH https://console.advinservers.com/api/v1/client/servers//state \ -H "Authorization: Bearer " \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{"state": "restart"}' ``` Take `` from the `id` field of `GET /servers`. See the [API introduction](/api-reference/introduction) for how to create a key and for the full list of endpoints. # Server Settings Source: https://docs.advinservers.com/guides/server-settings How to rename a server and change its icon, firmware, TPM, boot device and other settings in the Ascienth console. ## Overview Each server has a "Settings" tab in the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com). Open the server from "Virtual Servers" and click "Settings". The sections are listed on the left. On a phone, pick a section from the list instead. | Section | What it is for | | - | - | | "General" | The server's display name, hostname and icon. | | "Hardware" | Boot firmware, the virtual TPM and the guest agent. | | "Measured Boot" | AMD SEV-SNP memory encryption and measured direct boot. | | "Boot Order" | Whether the server starts from its disk or a mounted ISO. | | "Reverse DNS" | PTR records for the server's IP addresses. See [Setting Up PTR/RDNS](/guides/ptr-rdns). | | "Reset Password" | A new root or Administrator password. See [Password Reset](/guides/reset-password). | To reinstall the operating system, use the "Reinstall" tab instead. See [Server Reinstallation](/guides/reinstall). You only see the sections your role allows. See [Team Permissions](#team-permissions). ## General ### Display Name and Hostname The "Server Name" card has two fields: * `Display Name` is what the server is called in the console. It can be up to 40 characters. Changing it does not touch the server itself. * `Hostname` is the name set on the server's operating system. It must be a valid hostname, such as `web1.example.com`. Change either field and click `Save`. A new hostname is applied to the operating system the next time the server boots. Restart the server for it to take effect. You can also change either name from the server list: click the menu at the end of the server's row and choose `Rename` or `Change hostname`. ### Server Icon The "Server Icon" card sets the logo shown beside the server everywhere in the console. It is only cosmetic, so nothing on the server changes. Pick a logo, or pick `Automatic` to use the logo of the operating system it was installed with. Then click `Save`. This is useful if you installed a different operating system yourself, for example from an ISO. ## Hardware The "Advanced Hardware" card has three settings. Change what you need and click `Save`. | Setting | What it does | | - | - | | `Boot firmware` | Choose legacy BIOS or modern UEFI firmware. The installed operating system must support the mode you choose. | | `Virtual TPM 2.0` | Adds a software TPM 2.0 device. Windows 11 needs one, together with UEFI firmware. | | `QEMU Guest Agent` | Enables the guest agent device. Turn it on only when the QEMU Guest Agent is installed and running in the operating system. This switch does not install it. | Firmware and TPM changes only apply after a full shutdown and start. Click `Stop` in the console, wait for the server to stop, then click `Start`. Restarting from inside the operating system is not enough. If you choose firmware that the operating system does not support, the server may not start. Switch it back to recover. Turning off `Virtual TPM 2.0` destroys the TPM's state when you save. Anything sealed to the TPM, such as BitLocker recovery keys, cannot be recovered afterwards. If the section shows **Hardware unavailable**, we could not read the server's settings just now. Wait a moment and click `Refresh`. ## Measured Boot This section is for advanced confidential computing setups. Most customers do not need it. ### AMD SEV-SNP The "AMD SEV-SNP" card only appears on servers that support it. Turn on `Enable AMD SEV-SNP` to protect the server's memory from the system hosting it, then click `Save`. SEV-SNP needs UEFI firmware, so set `Boot firmware` to UEFI in the "Hardware" section first. Like firmware changes, it applies after a full shutdown and start. ### Measured Direct Boot The "UKI and Measured Boot" card lets the server start from your own Linux kernel and initramfs with SEV-SNP launch measurement, instead of the bootloader on its disk. It is experimental. Keep SEV-SNP turned on while measured direct boot is in use. How to prepare boot files, upload them and use them on a server is covered in [Boot Images](/guides/boot-images). If the card says `Measured boot is not available for this server.`, the feature is not offered for this server. ## Boot Order The "Boot Device" card sets which device the server starts from: * `Boot from main disk` starts the operating system installed on the server's disk. This is the normal setting. * `Boot from mounted ISO` starts from the ISO currently mounted on the server. It is only available while an ISO is mounted. See [ISO Mounting](/guides/iso-mounting). Click an option to choose it. It is saved straight away, and the server uses it on its next restart. When you have finished installing from an ISO, set the boot device back to `Boot from main disk`. Otherwise the server starts the installer again on every restart. ## Team Permissions The team owner can always change every setting. Members need these permissions in their role: | Permission | Allows | | - | - | | `View servers` | See the "General" section. Without the next permission, the name fields are read-only. | | `Change server settings` | Change the display name, hostname and icon, and use the "Hardware" and "Measured Boot" sections. | | `Reinstall servers` | Use the "Boot Order" section, because booting from an installer can replace what is on the disk. | | `View networking` | See the "Reverse DNS" section. | | `Change server passwords and SSH keys` | Use the "Reset Password" section. | ## Frequently Asked Questions The new hostname is applied when the server next boots. Restart the server from the console. The installed operating system probably does not support the firmware you chose. Change `Boot firmware` back to what it was, save, then stop and start the server. No ISO is mounted on the server. Mount one from the "Mount ISO" tab first. See [ISO Mounting](/guides/iso-mounting). It only appears on servers that support SEV-SNP. ## Using the API | Endpoint | Permission | | - | - | | `POST /servers/{server}/settings/rename`, `PUT /servers/{server}/settings/icon` | `Change server settings` | | `GET /servers/{server}/settings/hardware/options` | `View servers` | | `PATCH /servers/{server}/settings/hardware/options` | `Change server settings` | | `GET /servers/{server}/settings/hardware/boot-order` | `View servers` | | `PUT /servers/{server}/settings/hardware/boot-order` | `Reinstall servers` | This request renames a server. Both `name` and `hostname` are required: ```bash theme={null} curl https://console.advinservers.com/api/v1/client/servers//settings/rename \ -H "Authorization: Bearer " \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{"name": "Web server", "hostname": "web1.example.com"}' ``` See the [API introduction](/api-reference/introduction) for how to create a key and for the full list of endpoints. # Transferring Services to Another Account Source: https://docs.advinservers.com/guides/server-transfers How to hand a server, floating IP or snapshot storage over to another customer, for example after selling it. ## Overview You can hand a service over to another customer yourself, from the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com). The service keeps running, keeps its IP addresses and data, and its billing moves to the new owner's account. You do not need to open a ticket, and you never have to share your password. It works through [teams](/guides/team-members): 1. The **seller** (the current owner) creates a team, puts the service in it, and invites the buyer with a role that allows transfers. 2. The **buyer** accepts the invitation and moves the service onto their own account. Nothing moves until the buyer presses the button, and the seller can call it off at any time before that by removing the buyer from the team. A transfer is permanent. Once the service is on the buyer's account, removing them from your team does not bring it back, and we cannot reverse it for you. Only give a buyer the transfer permission when you are ready for them to take the service. ## What Can Be Transferred | Service | Can be transferred | What goes with it | | - | - | - | | **Server** | Yes | Its primary IP addresses, its disk exactly as it is, its reverse DNS records, and any secondary floating IPs you choose. | | **Floating IP** | Yes, on its own | The address and its billing. It must be detached from any server first. | | **Snapshot storage** | Yes | Every snapshot inside it. | | SSH keys, setup scripts, ISOs, firewall groups, IP groups, private networks | No | These belong to your account. You can only move them between your own teams. | | Bandwidth blocks, account credit, invoices, API keys | No | These stay with your account. | Services are transferred **one at a time**. To hand over two servers, the buyer moves each one separately. ## Requirements Both of you need: * **An account with us.** The buyer must already have an account, either on the client area at [https://clients.advinservers.com](https://clients.advinservers.com) or on the Ascienth console, and give the seller its email address. * **Separate billing profiles in the same currency.** The service keeps its price, so both accounts must bill in the same currency. If they do not, the transfer is refused. The service being transferred must also be ready to move. * **No unpaid invoices.** Any unpaid, pending or overdue invoice for the server must be paid first. Invoices cannot move between accounts. * **Nothing of the seller's attached.** Remove these first, from the page named: | Attached | Where to remove it | | - | - | | Private networks | The server's "Private Networking" tab | | Firewall groups | The server's "Firewall" tab | | Mounted ISOs | The server's "Mount ISO" tab | | Bandwidth blocks | The "Bandwidth Blocks" page | * **Nothing in progress.** The server cannot be suspended, installing, restoring or being deleted, and it cannot have an upgrade in progress or be moving between nodes. * **Room on the buyer's account** for any floating IPs that go with it. Each account has a floating IP limit. * Active, and **detached** from every server. To move a floating IP together with its server, transfer the server instead and select the IP in the dialog. * Free of unpaid invoices. * Within the buyer's floating IP limit. * Active, and not suspended or being cancelled. * Free of unpaid invoices. * Not in the middle of a resize, and not receiving a snapshot that is still being taken. If anything is in the way, the buyer sees a list of what to fix when they try to move the service, and nothing moves. ## Privacy You do not need to know each other's real identity, but some account details are shown: * The buyer sees the seller's **account name and email address** in the invitation and in the team. * The seller sees the buyer's **account name and email address** in the team's member list. Nobody sees the other's password, other services, billing details or account credit, as long as the seller follows the steps below and puts only the service being sold in the team. ## For the Seller Check the [requirements](#requirements) above. Pay any unpaid invoice for the service, and remove private networks, firewall groups, mounted ISOs and bandwidth blocks from a server. Then decide what you want to leave behind: * **Delete anything private from the server.** The disk is handed over exactly as it is, including files, saved passwords and your SSH keys inside the operating system. Reinstalling the server first wipes it. * **Delete reverse DNS records** you do not want the buyer to have. They go with the server. * **Snapshots stay with you.** Snapshots of the server stay in your snapshot storage and can still be restored onto your other servers. Backups taken before the transfer are not available to the buyer. Click "Teams" in the left sidebar, then `Create Team`. Give it a name such as "Server Sale" and click `Create`. A separate team means the buyer can only see what you put in it. Do not invite a buyer to a team that holds your other servers. Create Team dialog with the name Server Sale Open the list the service is on ("Virtual Servers", "Floating IPs" or "Snapshots"). Open the menu at the end of its row, choose `Move to team`, pick the new team and click `Move`. This only changes which of your teams the service is in. Its billing and data do not change. Move to Team dialog with Server Sale as the destination team Switch to the new team from the team menu at the top of the sidebar. Click "Roles", then `Create role`. Name it "Buyer" and tick only the permission for what you are selling: | Selling | Permission to tick | | - | - | | A server | `Transfer servers to their own account` | | A floating IP | `Transfer floating IPs to their own account` | | A snapshot storage | `Transfer snapshot storage to their own account` | The matching view permission is ticked for you, so the buyer can see the service. Leave everything else unticked. Click `Create`. Create Role dialog with Transfer servers to their own account ticked Click "Members", then `Invite member`. Enter the email address of the buyer's account, set **Role** to **Buyer**, and click `Send invitation`. The role starts on **Admin**. Change it to your Buyer role before you send the invitation, or the buyer will be able to do everything in the team. Invite Member dialog with the Buyer role selected The invitation expires after **3 days**. Until the buyer accepts it, you can withdraw it from the "Pending invitations" list. Once the buyer has moved the service, it disappears from your account and its billing stops. Remove the buyer from the team from the "Members" page, then delete the team from the "Teams" page. **Selling to someone you do not know?** Anyone holding the transfer permission can take the service as soon as they accept. If you want the buyer to see the server before they pay, create a second role that only has `View servers` and invite them with that. They can see the server's name, location, IP address and status. Once you have been paid, change their role to Buyer from the "Members" page. See [Team Members and Roles](/guides/team-members) for how to change a role. ## For the Buyer Send the seller the email address of your Advin Servers account. If you do not have an account yet, create one on the client area at [https://clients.advinservers.com](https://clients.advinservers.com) first. Open the link in the invitation email and sign in. Check that the team and the person who invited you are who you expect, then accept. See [Accepting an invitation](/guides/team-members#accepting-an-invitation). Open the team menu at the top of the left sidebar and pick the seller's team. Your role in it is shown next to its name. Team menu listing your own team and the seller's Server Sale team You only see what the seller's role allows: the service being sold, with its name, location, IP address and status. Open the list the service is on ("Virtual Servers", "Floating IPs" or "Snapshots"). Open the menu at the end of its row and choose `Move to my account` (for a server) or `Move to team` (for a floating IP or snapshot storage). Server row menu showing Move to my account The "Move to Your Account" dialog opens. Choose which of your own teams the service should land in. For a server, choose which of its secondary floating IPs come with it. The primary IP addresses always move with the server. Any floating IP you leave unticked is detached and stays with the seller. Click `Move`. If something is still in the way, the dialog lists it and nothing moves. Ask the seller to fix it and try again. Move to Your Account dialog with the destination team selected The service is now on your account, in the team you picked. Then: * **Set up payment.** The service keeps its price, billing cycle and next due date, so nothing is charged when it moves. Automatic payments are cancelled during the transfer, so add your own before the next invoice is due. * **Secure the server.** The seller may still have passwords or SSH keys inside the operating system. [Reset the root password](/guides/reset-password), or [reinstall](/guides/reinstall) the server if you want a clean start. A reinstall erases everything on the disk. * **Ask the seller to remove you** from their team. You no longer need to be in it. ## After the Transfer | | Seller | Buyer | | - | - | - | | Service and its IP addresses | Removed from your account | On your account | | Billing | Stops. Past invoices stay on your account. | Same price, cycle and due date. Add your own payment method. | | Automatic payments | Cancelled | Not set up. Add them yourself. | | Server disk and files | | Unchanged | | Reverse DNS records | | Unchanged | | Backups taken before the transfer | No longer available | Not available. New backups start from the transfer. | | Snapshots of the server | Stay in your snapshot storage | Not included, unless the snapshot storage itself was transferred | | Abuse reports for its IP addresses | Stop | Sent to you | ## FAQ No. Transfers made from the console are free. Services the console cannot transfer can be moved by our staff through a support ticket, for a fee. See [Service Transfers](/policies/termsofservice#service-transfers) in our Terms of Service. No. The new owner can hand it back the same way, by inviting the seller to one of their teams. Yes, up until the buyer moves the service. Withdraw the invitation, or remove the buyer from the team. No. It keeps running, and keeps its IP addresses and hostname. No. Each server, floating IP or snapshot storage is moved on its own. Check that the buyer is in the team that holds the service, and that their role includes the transfer permission for that kind of service. The buyer must also be working in the seller's team, not one of their own. # Snapshots Source: https://docs.advinservers.com/guides/snapshots How to take, restore and manage on-demand snapshots of your virtual server. ## Overview A snapshot is a copy of your server's disk taken whenever you choose. You can restore it later over the same server, or over any other server on your account, including one in a different location. Snapshots are kept until you delete them. Snapshots are kept in **snapshot storage**, which you buy separately from your server and pay for by the GiB. One storage can hold snapshots of any number of servers, and you can buy as many storages as you need. Snapshots are not yet available in every location. If a server's location does not support them, its Snapshots tab will say so. ## Snapshots vs. Backups | | [Backups](/guides/backups) | Snapshots | | - | - | - | | Cost | Free | Paid per GiB of storage | | When they are taken | Once a day, on our schedule | Whenever you take one | | How long they are kept | Up to 5 days | Until you delete them | | Where they can be restored | The same server | Any server on your account | ## Buying Snapshot Storage Open the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com) and click "Snapshots" in the left navbar. Click "Buy Storage", choose a size and a name, and confirm. The dialog shows the price before you pay. Storage is paid from your account credit, so you may need to [add funds](/guides/account-credit) first. You can resize a storage at any time from its row menu: * **Growing** a storage is charged at a prorated rate for the rest of the billing period. * **Shrinking** a storage refunds the prorated difference to your account credit. The new size must still fit every snapshot in it. ## Taking a Snapshot Navigate to the "Snapshots" tab on your server and click "Take Snapshot". Give it a name, pick the snapshot storage to keep it in, and click "Take snapshot". Before you confirm, the dialog calculates how much space the snapshot will use. A snapshot counts as the data actually written to your server's disk, not the full disk size. For example, a 100 GiB disk with 12 GiB of data uses about 12 GiB of storage. Storages without enough room are greyed out. Your server **keeps running** while the snapshot is taken, but it is locked in the control panel until the snapshot finishes. You cannot start, stop, reinstall or restore the server during this time. Only the server's primary disk is included in a snapshot. Additional disks are not captured. A snapshot cannot be taken while another operation is running on the server, such as a nightly backup, a migration or an upgrade. Please wait for it to finish and try again. ## Restoring a Snapshot Navigate to the "Snapshots" tab of the server you want to restore **onto**. This tab lists every snapshot on your account, whichever server it was taken from. Open the menu on the snapshot, click "Restore", and type the server's name to confirm. **Restoring will force-stop the server and overwrite it with the snapshot. Anything written to the server since the snapshot was taken is lost.** If you might need the current data, take a new snapshot of the server first. A restore can take **1-2 hours**, and the server is unavailable until it finishes. Once it is done, the server's disk is grown to match its plan if needed, and the server is started automatically. You can restore a snapshot onto a server in another location, and snapshots of a server you have since cancelled can still be restored onto your other servers. ## Deleting and Moving Snapshots To delete a snapshot, open its menu on a server's Snapshots tab or on the storage's page and click "Delete". Deleted snapshots **cannot be recovered**, and their space is freed straight away. From a storage's page, you can also move a snapshot into another of your storages with "Move to storage". This is instant, as long as the other storage has room for it. ## Cancelling Snapshot Storage A storage must be empty before it can be cancelled. Delete or move every snapshot in it first, then click "Cancel storage" from its row menu. You can cancel at the end of the billing period, or immediately with the unused days refunded to your account credit. **If a storage's invoice goes unpaid, the storage is suspended.** While it is suspended, its snapshots cannot be restored, moved or deleted until the invoice is paid. If it remains unpaid, the storage is terminated and **every snapshot in it is permanently deleted**. ## Troubleshooting If a snapshot shows as "Unavailable", it can no longer be found on our backup servers and cannot be restored. Please [open a ticket](https://clients.advinservers.com/contact.php) and we will help you recover your server where possible. # SSH Keys Source: https://docs.advinservers.com/guides/ssh-keys How to save SSH public keys in the Ascienth console and add them to a server when you order or reinstall it. ## Overview The "SSH Keys" page stores the public keys you use to log in to your servers. A saved key does nothing on its own. It is added to a server only when you pick it while ordering a new server or reinstalling an existing one. Open the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com) and click "SSH Keys" under "Setup" in the left sidebar. Keys are saved in the team you are working in. Each team has its own list, so switch to the right team before you add a key. We only store your **public** key. Never paste a private key into the console. A private key is rejected. ## Supported Keys Paste the contents of your `.pub` file, for example `ssh-ed25519 AAAA... you@laptop`. We accept: | Key type | Accepted | | - | - | | Ed25519 (`ssh-ed25519`) | Yes | | ECDSA (`ecdsa-sha2-nistp256` and similar) | Yes | | RSA (`ssh-rsa`) | Yes, 1024 bits or longer | | DSA (`ssh-dss`) | No | The console also tidies up common copy-and-paste problems for you: * A key that was split across several lines is joined back into one line. * A key pasted without its type at the start has the type added back. * A public key in PEM format (`BEGIN PUBLIC KEY`) or exported from PuTTY is converted to the one-line OpenSSH format. If the key still cannot be read, you will see: `That does not look like an SSH public key. Paste the contents of a .pub file, for example "ssh-ed25519 AAAA… you@laptop".` ## Adding a Key On the "SSH Keys" page, click `Add SSH Key`. * `Name`: a label for the key, up to 64 characters. Each name can only be used once in your account. * `Public key`: the full public key, up to 4096 characters. * `Default`: tick this to have the key selected for you on the order and reinstall forms. You can mark more than one key as default. Click `Create`. The key appears in the list with its type and its `SHA256:` fingerprint, which you can compare against `ssh-keygen -lf ` on your computer. You can also add a key straight from the order or reinstall form with `Create SSH Key`. The new key is selected for you. ## Editing a Key Click the menu at the end of the key's row and choose `Edit`. You can change the name, replace the key itself, and turn `Default` on or off. Click `Save` when you are done. Editing a key does not change servers that already have it. They keep the old key until you reinstall them. To rotate a key on a running server, update `~/.ssh/authorized_keys` on the server yourself. ## Deleting a Key Click the menu at the end of the key's row and choose `Delete`. To confirm, type the key's name and click `Delete`. Deleting a key only removes it from the console. Servers that already have the key still accept it. To revoke access, remove the key from `~/.ssh/authorized_keys` on each server, or reinstall the server. ## Where Keys Are Used Saved keys appear as tiles in the "SSH Keys" section of two forms: * **Ordering a server**, on the "Order a Server" page. Keys marked `Default` are selected for you. * **Reinstalling a server**, on the server's "Reinstall" tab. Keys marked `Default` are selected for you. If you have no default keys, all of your keys are selected. See [Server Reinstallation](/guides/reinstall). Click a tile to select or clear it. You can add up to 25 keys to one server. When a server is built with at least one SSH key, password login over SSH may be turned off on the new server, so sign in with your key. Your root password still works on the server's console. Windows servers do not use SSH keys. The "SSH Keys" section is hidden when you pick a Windows operating system. See [Windows](/guides/windows). ## Team Permissions The team owner can always manage keys. Members need these permissions in their role: | Permission | Allows | | - | - | | `View SSH keys` | See the keys saved in the team. | | `Manage SSH keys` | Add and edit keys. | | `Delete SSH keys` | Delete a saved key. | If the team owner has more than one team, they can also choose `Move to team` from a key's menu to move it to another of their teams. See [Team Members and Roles](/guides/team-members). ## Frequently Asked Questions Saved keys are only added when a server is ordered or reinstalled. For a server that is already running, add the key to `~/.ssh/authorized_keys` on the server yourself. Yes, as long as each copy has a different name. This can help if you want one entry per machine the key belongs to. RSA keys shorter than 1024 bits are refused because the server cannot use them. Generate a new key, for example with `ssh-keygen -t ed25519`. ## Using the API You can manage keys with an API key that has the `View SSH keys`, `Manage SSH keys` or `Delete SSH keys` permission for its team. ```bash theme={null} curl https://console.advinservers.com/api/v1/client/ssh-keys \ -H "Authorization: Bearer " \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{"name": "Laptop", "public_key": "ssh-ed25519 AAAA... you@laptop", "is_default": true}' ``` See the [API introduction](/api-reference/introduction) for how to create a key and for the full list of endpoints. # Stock Notifications Source: https://docs.advinservers.com/guides/stock-notifications How to subscribe to a notification for a plan that is currently out of stock. ## Overview When a plan is sold out, you can ask us to notify you as soon as it is back in stock. Notifications are handled through a support ticket, so you do not need to keep checking our website. When the plan is restocked, we reply to that ticket. Notifications are per plan and per location. Subscribing to Standard XS in Los Angeles does not notify you about Standard XS in Miami, or about Standard S in Los Angeles. For why plans go out of stock in the first place, see [Stock Availability](/information/stock). ## Subscribing Go to [advinservers.com/cloud](https://advinservers.com/cloud) and wait for the current stock to load. Choose the product line that you want, such as KVM Standard VPS or KVM Premium VPS, then choose the location that you want the server in. Stock is listed separately for each location. Find the plan that you want. Plans that are sold out show a **Get Notified** button in place of the Purchase button. Clicking it opens our client area with a support ticket already filled in for that specific plan and location. Submit the ticket without editing the subject line. If you are logged into the [client area](https://clients.advinservers.com), your details are filled in for you. If you are not logged in, enter your name and email address on the form first. ![Site](https://advin-cdn.b-cdn.net/chrome_GH6mqfV3ow.png) Once the ticket is submitted, you are subscribed. There is nothing else to do and no separate confirmation step. Do not change the subject line of the ticket. It contains the product identifier that we use to match your request to the plan you want, and edits to it can mean that you are not notified when that plan returns. ## Subscribing To More Than One Plan If you would be happy with any one of several plans, subscribe to each of them separately. Click **Get Notified** on each plan that you are interested in and submit a ticket for each one. There is no limit on how many you can subscribe to, and doing so does not affect your position when the stock is released. The same applies to locations. If you only need the server to be in the United States and do not mind which site, subscribe to the plan in each United States location that offers it. ## When Stock Returns When the plan is restocked, we reply to your ticket to let you know. From that point the plan is orderable in the normal way from our website. A notification is not a reservation. Stock is released publicly at the same time as we notify subscribers, and popular plans can sell out again quickly. Being notified does not hold a server for you, and it does not place you in a queue. Because of this, order as soon as you can after being notified, and pay the invoice promptly. Capacity is allocated when the invoice is paid, so an unpaid order does not hold stock for you. ## Managing Your Notifications Your notification tickets appear under **Support → My Support Tickets** in the [client area](https://clients.advinservers.com) if you submitted them while logged in. To stop receiving a notification, close the ticket. To subscribe again later, click **Get Notified** on the plan again. If you submitted the ticket as a guest, use the ticket link that was emailed to you when it was created. ## Frequently Asked Questions No. You can submit the notification ticket as a guest by entering your name and email address. We do recommend creating an account beforehand, since you will need one to order once the plan is back in stock. We cannot give a timeframe. Restocks depend on hardware deliveries and datacenter work, so we notify you when the stock is live rather than estimate a date. Usually not. Notification tickets stay open until the plan is restocked, so no reply does not mean that your request was missed. Please do not reply to the ticket to ask for an update, as this does not make the stock arrive sooner. No. Coming Soon means the plan has not launched in that location yet, and notifications are only available for plans that are live but sold out. The notification covers the plan itself, so it also tells you when the capacity needed for an upgrade to that plan exists. See our [Upgrading a VPS](/guides/upgrades) guide for how upgrades are processed. # Support Tickets Source: https://docs.advinservers.com/guides/support-tickets How to open, reply to and close support tickets from the Ascienth console. ## Overview You can talk to our support team without leaving the Ascienth console. Tickets you open here are the same tickets you see in the [client area](https://clients.advinservers.com), so you can switch between the two at any time. Our replies show up in the console and are also sent to your billing email address. Open the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com), click "Support" in the left rail, then click "Tickets". Only the account holder can see and use tickets. Team members do not see the "Tickets" page, even in your team, and no role can give them access. A ticket is written in your name and can mention billing details, so it stays private to you. See [Teams and Accounts](/guides/teams-and-accounts). All services are unmanaged, so we cannot install, configure or fix software inside your server. ## Finding a Ticket The "Support" page lists your tickets with their `Subject`, `Service`, `Status` and `Last activity`. * Type in the search box to find a ticket by its number, subject, department, status, priority or server. * Use the status filter to show only tickets in one status, such as `Open`, `Answered`, `Customer Reply`, `In Progress`, `On Hold` or `Closed`. The page shows your 500 most recent tickets. If you have more, a notice says so, and you can read older tickets in the [client area](https://clients.advinservers.com). ## Opening a Ticket On the "Support" page, click `Open Ticket`. * `Department`: who the ticket is for. The list comes from our support desk. * `Subject`: a short summary on one line, 3 to 255 characters. * `Priority`: `Low`, `Medium` or `High`. It starts at `Medium`. * `Related server`: the server the ticket is about, found by hostname or IP address. Choose `Not about a specific server` if it is a general question. * `Message`: what happened and anything that helps explain it, 2 to 20,000 characters. Click `Open ticket`. You are taken straight to the new ticket, and you get a confirmation with the ticket number, such as `#ABC-123456`. The `Open ticket` form has no file upload. To send screenshots or logs, open the ticket first, then attach them to a reply. ## Replying and Attaching Files Open a ticket to see the full conversation, oldest message first. Type your reply in the box at the bottom and click the send button, or press `Ctrl + Enter` (`⌘ + Enter` on a Mac). To attach files, click the paperclip button or drag files onto the reply box. | Limit | Value | | - | - | | Files per message | 5 | | Size of each file | 4 MB | | Total size per message | 8 MB | | Allowed types | `png`, `jpg`, `jpeg`, `gif`, `webp`, `bmp`, `heic`, `pdf`, `txt`, `log`, `csv`, `json`, `yml`, `yaml`, `xml`, `conf`, `zip`, `gz`, `tgz`, `tar`, `7z` | Files that support attaches to their replies can be downloaded from the conversation. Never send passwords, private keys or other secrets in a ticket. If you open or reply to many tickets in a short time, you may be asked to wait a minute before sending more. ## Closing a Ticket When your issue is solved, click the red close button next to the send button, then confirm with `Close Ticket`. A closed ticket stays readable. If you need to follow up, just reply to it. Replying to a closed ticket opens it again. ## Frequently Asked Questions Tickets belong to the account holder only. A team member who needs help should open a ticket from their own account, or ask you to open one. The console could not load your tickets. Try again in a few minutes, or open a ticket in the [client area](https://clients.advinservers.com/contact.php). ## Using the API An API key can read tickets with the `View support tickets` account permission, and open, reply to and close them with `Write to support`. `Write to support` sends messages to our team in your name, so only grant it to keys you trust. The API also accepts attachments when opening a ticket, with the same limits as above. ```bash theme={null} curl https://console.advinservers.com/api/v1/client/tickets \ -H "Authorization: Bearer " \ -H "Accept: application/json" ``` Use `GET /api/v1/client/tickets/departments` to find the `department_id` to send when opening a ticket. See the [API introduction](/api-reference/introduction) for how to create a key and for the full list of endpoints. # Team Members and Roles Source: https://docs.advinservers.com/guides/team-members How to create a role and invite someone to help manage your servers. ## Overview Teams let other people work on your servers without sharing your password. Each person signs in with their own account, and a **role** decides what they can do in your team. Everything they do is recorded in the team's audit log under their own name. You can manage members from the "Teams" section of the Ascienth console at [https://console.advinservers.com](https://console.advinservers.com). The person you invite must already have an account with us, either on the client area at [https://clients.advinservers.com](https://clients.advinservers.com) or on the Ascienth console. They do not need to have signed in to the console before. To invite people or write roles, you must own the team or hold a role with the **Manage the team** permission. ## Built-in Roles Every team starts with three roles. They cannot be edited or deleted, but you can give them to anyone. | Role | What it allows | | - | - | | **Admin** | Everything, including inviting members and writing roles. | | **Member** | Everything except inviting members, changing roles, or moving a server onto their own account. | | **Restricted** | Create and change servers and other resources. Cannot delete or reinstall anything, change server passwords or SSH keys, or spend money. | If none of these fit, create a custom role first. ## What Roles Do Not Cover A role only covers what is inside the team. Each member's invoices, billing details, two-factor authentication and API keys belong to their own account, so no role can give a member access to yours. See [Teams and Accounts](/guides/teams-and-accounts) for the full list. Team members cannot see or pay your invoices. The "Invoices" page always shows the invoices of the person signed in, even while they are working in your team. A member with the `Make purchases` permission can still spend your account credit on new servers and upgrades for the team. ## Creating a Custom Role Click "Teams" in the left sidebar, then "Roles". You will see the built-in roles and any custom roles you have made. Team Roles page Click `Create role`. Name the role after the job it is for, and add a short description if you like. Tick each permission the role should have. Anything left unticked is refused. When a permission needs another one to work, the other one is ticked for you. For example, ticking `Control power` also ticks `View servers`. Permissions marked **Sensitive** can delete data, give away resources, or spend money. Only grant them to people you trust. Create Role dialog Click `Create`. The new role appears in the list, marked `Custom`, and can now be given to a member. Custom role in the roles list To change or remove a custom role later, click the menu at the end of its row and choose `Edit` or `Delete`. A role cannot be deleted while a member holds it or a pending invitation offers it. ## Inviting a Team Member Click "Teams" in the left sidebar, then "Members", and click `Invite member`. Enter the email address of their client area or console account, and pick the role they should have. Then click `Send invitation`. Invite Member dialog We email them a link to accept. Until they answer, the invitation is listed under "Pending invitations". Invitations expire after **3 days**. Pending invitation on the Members page To cancel an invitation, click the menu at the end of its row and choose `Withdraw invitation`. To send a new link, invite the same address again. This replaces the old invitation. If the address cannot be invited, you will see the same message whatever the reason: the address has no account with us, it is your own, or it is already in the team. This protects the privacy of our customers' accounts. ## Accepting an Invitation The person you invited opens the link in the email and signs in. They are asked to accept or decline. Team Invitation dialog Once they accept, they can switch between their own team and yours from the team menu at the top of the sidebar. Their own servers and account stay private. They only see the pages their role allows. Switching teams from the sidebar ## Changing a Member's Role or Removing Them On the Members page, click the menu at the end of a member's row. Member actions menu * `Change role` moves them onto another role. The change applies on their next click. * `Remove from team` takes away their access straight away. Their activity history stays in the team's audit log. Change Role dialog You cannot give anyone a permission you do not hold yourself, and you cannot change your own role. Only the team owner can grant every permission. # Teams and Accounts Source: https://docs.advinservers.com/guides/teams-and-accounts The difference between your account and your teams, and what a team member can reach. ## Overview The Ascienth console keeps two things apart: * Your **account** is you. It holds your sign-in, your billing and your security settings. Only you can use it. * A **team** is a group of servers and other resources. Your account owns at least one team, and you can invite other people into it. When you join someone else's team, you keep your own account. You sign in as yourself, work on their servers, and switch back to your own team from the team menu at the top of the sidebar. ## What Belongs Where | Belongs to a team | Belongs to your account | | - | - | | Virtual servers, Custom ISOs, snapshots, floating IPs and bandwidth | Account details and email address | | Firewall groups, IP groups and private networks | Invoices, recurring payments and adding funds | | SSH keys, boot images and scripts | Two-factor authentication and sessions | | Members, roles and the team audit log | API keys and API IP groups | The pages under "Account" in the sidebar always show **your own** account, whichever team you have selected. Switching to another person's team never shows you their invoices or their security settings. ## Billing in a Team The team owner pays for everything in their team. A member with the right [role](/guides/team-members) can use the owner's account credit to buy servers, upgrades and other resources for the team, but the owner's invoices stay private to the owner. A team member cannot see or pay the team owner's invoices. The "Invoices" page only ever lists the invoices of the person signed in. No team role can change this. ## Learn More Invite people to your team and choose what they can do. Move a service to another customer's account through a team. # Upgrading a VPS Source: https://docs.advinservers.com/guides/upgrades This is an overview of our policies around upgrading a service. ## Overview You are able to upgrade an existing service to a larger plan, or to another location at any time. Upgrades are billed on a prorated basis. You are charged the difference between your current plan and the new plan for the remainder of your billing cycle, and the new plan price applies from your next invoice onwards. If you have a promotional plan, we are not able to apply the same discount toward an upgrade unless the promotion is still active. ## Availability Upgrades are only available if there is capacity on our hypervisors. We are not able to make exceptions to inventory. If the control panel shows that the upgrade is out of stock, then we generally cannot override it. ## Downgrades It is not possible to downgrade to a service with a lower disk size than your current service. If you need a smaller plan, you will need to purchase the smaller service separately and migrate your data to it. Any unused time on the original service will be refunded to account credit per our [Refund Policy](/policies/refund). ## Upgrading You can navigate to the upgrade tab of the Ascienth console to see a list of available upgrade options. ![Upgrade Tab](https://advin-cdn.b-cdn.net/chrome_R4sVcDmeK2.png) You can upgrade your VPS without increasing its disk space by leaving the "Resize disk to the selected plan" option unchecked. When this option is unchecked, your VPS will keep its current disk size even if the new plan includes more storage. This can make it easier to downgrade later. Keep in mind that you can only downgrade to a plan whose included disk space is greater than or equal to your VPS’s current disk size. Clicking on "Review Upgrade" will give you a summary of the costs. ![Review Upgrade](https://advin-cdn.b-cdn.net/chrome_JUxrfmX8md.png) Please note that if you are upgrading to a plan in another location, there will be a \$5 one time location change fee. Additionally, the process can **take a few hours** and all IP addresses of the server will change, since the virtual server will need to be copied across locations. If you are upgrading the plan to the same location but to a different product group (e.g., KVM Standard VPS -> KVM Premium VPS), a \$2.50 one time fee will apply. The process can take **around 30 minutes** and the IP addresses of the server will not change. If you are only upgrading the plan and not changing product groups or locations, no change fee will apply but the process can take up to 30 minutes and the IP addresses of the server will not change. **The server will be fully offline while the change or upgrade is processing. We recommend stopping your server before the upgrade occurs** Once you confirm that you want to review the upgrade, you will have 30 minutes to pay the invoice. If the invoice is not paid within that timeframe, then the stock is released and we cannot guarantee availability. # Windows Server Support Source: https://docs.advinservers.com/guides/windows This is an overview of Windows Server on our VPS. ## Overview Every account can install Windows Server automatically. You can reinstall any of your servers to Windows Server from the Reinstall tab of the Ascienth console, the same way as any other operating system. See our [Server Reinstallation](/guides/reinstall) guide. The Reinstall tab offers these versions: * Windows Server 2019 * Windows Server 2022 * Windows Server 2025 ![Windows](https://advin-cdn.b-cdn.net/chrome_lFo4cHrIxA.png) ## Licensing Automatic installations use the Evaluation Edition of Windows Server, which shuts down after 180 days without a license. If you need the server to keep running beyond the evaluation period, you will need to supply and apply your own Windows Server license. See [Server Stopping Every Hour](/troubleshooting/server-restarting#windows) for what happens when the evaluation period ends. ## Manual Installation If you need a Windows version or edition that the Reinstall tab does not offer, you can install it manually through the Custom ISO feature of the Ascienth console. See our [Manual Windows Installation](/guides/windows-manual-install) guide for full instructions, including the VirtIO drivers required to see your disk during setup. Manual Windows installations are unsupported. We cannot troubleshoot them or install Windows for you, and you will need to be accustomed to installing Windows Server manually through the ISO image. You are also responsible for your own Windows licensing. ## Frequently Asked Questions No. Automatic Windows Server installation is available to every account, whenever you signed up. No. Reinstalls use the Evaluation Edition, which shuts down after 180 days. Applying a license is your responsibility. # Manual Windows Installation Source: https://docs.advinservers.com/guides/windows-manual-install Step-by-step guide to installing Windows manually from a custom ISO, including the VirtIO drivers required to see your disk. ## Overview This guide walks through installing Windows from scratch using the Custom ISO feature of the [Ascienth console](https://console.advinservers.com), rather than the built-in Reinstall tab. Every account can install Windows Server automatically from the Reinstall tab instead, so you only need this guide for a Windows version or edition the Reinstall tab does not offer. See [Windows Server Support](/guides/windows). Because our virtual servers present disks and network adapters as paravirtualized VirtIO devices, the Windows installer will not see a disk to install to until you load the VirtIO drivers during setup. This guide covers that step in detail. Manual Windows installations are unsupported. We cannot troubleshoot them or install Windows for you. You are also responsible for your own Windows licensing. Installs done this way are not limited to the Evaluation Edition, so make sure you have a valid license or are knowingly using an evaluation build. ## What You Will Need * A Windows ISO (see [Step 1](#step-1-download-a-windows-iso)) * The VirtIO driver ISO (see [Step 2](#step-2-download-the-virtio-driver-iso)) * Access to the [Ascienth console](https://console.advinservers.com) for your server, with enough of your 10 GiB Custom ISO quota free for both images ## Step 1: Download a Windows ISO You need a direct download link to a Windows ISO: the panel downloads the ISO to our storage from a URL you provide, it does not accept a file upload. For Windows Server, Microsoft's Evaluation Center provides free evaluation ISOs: * [Windows Server 2025](https://www.microsoft.com/en-us/evalcenter/download-windows-server-2025) * [Windows Server 2022](https://www.microsoft.com/en-us/evalcenter/download-windows-server-2022) * [Windows Server 2019](https://www.microsoft.com/en-us/evalcenter/download-windows-server-2019) ![Windows ISO Link](https://advin-cdn.b-cdn.net/chrome_iNmmFgulLN.png) ## Step 2: Download the VirtIO Driver ISO VirtIO is the paravirtualized hardware interface our hypervisors use for virtual disks and network adapters. Windows does not include these drivers out of the box, so without them the installer cannot see a disk to install to, and networking will not work after installation. The official, upstream-maintained build is published by the Fedora `virtio-win` project: ``` https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/stable-virtio/virtio-win.iso ``` This link always points to the latest stable release. If you want a specific pinned version instead, browse the [archive-virtio directory](https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/) or see the [virtio-win project on GitHub](https://github.com/virtio-win/virtio-win-pkg-scripts) for release notes. ## Step 3: Upload Both ISOs Follow our [ISO Mounting](/guides/iso-mounting) guide to add both the Windows ISO and the VirtIO ISO under the "Custom ISOs" tab, using the links from the previous two steps. Each download can take 5-10 minutes. ![VirtIO Win ISO](https://advin-cdn.b-cdn.net/chrome_vDdJqAQ6Ka.png) ![Windows Server 2019 ISO](https://advin-cdn.b-cdn.net/chrome_r2yJcYWmqW.png) The ISO can take 20-30 minutes to download (or longer). Please note that the download may hang at 99% while it uploads to our global ISO repository. ## Step 4: Mount the ISOs From the "Mount ISO" tab on your server, mount the Windows ISO you downloaded. This sets your server to boot from it on the next restart. ![Mount ISO](https://advin-cdn.b-cdn.net/chrome_pGQ5Ti1nwL.png) ![ISO Mounted](https://advin-cdn.b-cdn.net/chrome_EZ1SyIGkPU.png) The Ascienth console only allows one ISO to be mounted to a server at a time, so you can't attach the VirtIO ISO alongside the Windows ISO yet. You'll swap to it during [Step 6](#step-6-load-the-virtio-storage-driver). Confirm the server is set to boot from the mounted ISO first. This is usually set automatically when you mount an ISO, but you can check or change it under Settings → Boot Order in the Ascienth console. ![Boot Order](https://advin-cdn.b-cdn.net/chrome_lvDlGhOSOV.png) ## Step 5: Start Windows Setup Restart the server so it boots from the mounted Windows ISO and click on the VNC button which will open the server console. ![Restarting Server](https://advin-cdn.b-cdn.net/chrome_PTQQ34GX9b.png) ![Open VNC](https://advin-cdn.b-cdn.net/chrome_17ZQtzGlsd.png) Work through the initial Windows Setup screens: language and keyboard layout, then **Install now**. If prompted, choose the edition you want to install (for evaluation media, this is typically the Standard or Datacenter **Desktop Experience** edition), accept the license terms, and choose **Install Windows Server**. ![Select Language](https://advin-cdn.b-cdn.net/chrome_7zf9T0vLgy.png) ![Select Keyboard Input](https://advin-cdn.b-cdn.net/chrome_yZYjKjGzet.png) ![Select Install](https://advin-cdn.b-cdn.net/chrome_0ilTfZmDmQ.png) ![Select Standard Edition](https://advin-cdn.b-cdn.net/chrome_LR2binA05k.png) ![Accept the License](https://advin-cdn.b-cdn.net/chrome_6vm8w8WInQ.png) ## Step 6: Load the VirtIO Storage Driver On the "Where do you want to install Windows?" screen, no disks will be listed, because Windows doesn't have a driver for our virtual disk controller yet. Click **Load driver** ![Load driver](https://advin-cdn.b-cdn.net/chrome_8ON1Vbnz5S.png) Go back to the Ascienth console, unmount the Windows ISO, and mount the VirtIO ISO in its place. Mounting an ISO hot-swaps the virtual CD/DVD drive's contents to the server while it's running, so there's no need to restart. Click "Browse" so that it picks up the new disk. ![Unmount ISO](https://advin-cdn.b-cdn.net/chrome_dP7qxp2zG3.png) ![Mount ISO](https://advin-cdn.b-cdn.net/chrome_FY0fjzq81X.png) ![Browse Button](https://advin-cdn.b-cdn.net/chrome_s8RkGZo6mc.png) ![Browse](https://advin-cdn.b-cdn.net/chrome_18oeoW54rs.png) Navigate to the driver matching your disk controller, Windows version, and CPU architecture. Most of our servers use `vioscsi`, so browse to: ``` D:\vioscsi\2k25\amd64\ ``` Replace `2k25` with the folder matching your Windows version (for example `2k22` for Server 2022, or `2k25` for Server 2025). Replace `D:\` with whatever drive letter the VirtIO ISO was mounted as. ![VirtIO SCSI](https://advin-cdn.b-cdn.net/chrome_RmBqk2qzlv.png) Click OK. Select the driver that appears and click **Install**. Your virtual disk should now appear in the list. ![Select Install](https://advin-cdn.b-cdn.net/chrome_1fjAH1R0hb.png) ![Visible Disks](https://advin-cdn.b-cdn.net/chrome_KnHwbSM0oY.png) If you unmounted the Windows ISO in favor of the VirtIO ISO earlier, go back to the panel, unmount the VirtIO ISO, and re-mount the Windows ISO so setup can continue reading installation files from it. ![Umount VirtIO](https://advin-cdn.b-cdn.net/chrome_FYouWJiHmI.png) ![Mount Windows](https://advin-cdn.b-cdn.net/chrome_lbBKKyPm2A.png) If the server was installed with a Linux template, you may have to delete the existing partitions. For every partition that appears, click "Bring Disk Online" (if the option is available) and delete the partition. ![Bring Disk Online](https://advin-cdn.b-cdn.net/chrome_7aKc8lZEzS.png) ![Delete Partition](https://advin-cdn.b-cdn.net/chrome_Kzu7xcXnlb.png) ![Delete Second Partition](https://advin-cdn.b-cdn.net/chrome_6Vj3Y4FfFu.png) ## Step 7: Finish the Installation Select the biggest sized disk and click **Next** to begin copying files. The server will reboot itself a few times during this process. This is normal; let it continue booting from the disk rather than the ISO again. ![Select Partition and Next](https://advin-cdn.b-cdn.net/chrome_CCFM6TSDWz.png) ![Install Button](https://advin-cdn.b-cdn.net/chrome_6RtW7QK98K.png) ![Install Process](https://advin-cdn.b-cdn.net/chrome_ZalQcKgouh.png) Once it reaches the out-of-box setup screen, follow the prompts to set your Administrator password and finish configuration. ## Step 8: Install the Remaining VirtIO Drivers The storage driver you loaded during setup is enough to boot Windows, but the network adapter, balloon (memory management) driver, and other VirtIO devices still need drivers installed from inside Windows. Back in the Ascienth console, mount the VirtIO ISO to the server if it isn't already mounted. Open the VirtIO drive from inside Windows and run `virtio-win-gt-x64.msi` (or `virtio-win-guest-tools.exe` on older builds). This installs all of the remaining VirtIO drivers, plus the QEMU guest agent, in one pass. After the installer finishes and you reboot, check Device Manager for any devices still missing a driver, and confirm the server has network connectivity. ## Step 9: Configure a Static IP Windows will not have network connectivity until it's configured with the static IP details assigned to your server. These details are on the "Overview" tab of your server in the [Ascienth console](https://console.advinservers.com): **IPv4 Address**, **Gateway**, and **Netmask**. Open PowerShell as Administrator and find the interface alias for your network adapter: ```powershell theme={null} Get-NetAdapter ``` Then set the static IP, replacing ``, ``, ``, and `` below with the interface name from the previous command and the IPv4 address, netmask, and gateway from the Overview tab. The netmask needs to be converted to CIDR prefix length (for example, `255.255.255.0` is `/24`): ```powershell theme={null} New-NetIPAddress -InterfaceAlias "" -IPAddress "" -PrefixLength -DefaultGateway "" ``` For example, if `Get-NetAdapter` shows an alias of `Ethernet`, your IPv4 address is `203.0.113.10`, your netmask is `255.255.255.0` (`/24`), and your gateway is `203.0.113.1`: ```powershell theme={null} New-NetIPAddress -InterfaceAlias "Ethernet" -IPAddress "203.0.113.10" -PrefixLength 24 -DefaultGateway "203.0.113.1" ``` Finally, set the DNS servers: ```powershell theme={null} Set-DnsClientServerAddress -InterfaceAlias "Ethernet" -ServerAddresses ("1.1.1.1","1.0.0.1") ``` Common netmask to CIDR prefix length conversions: `255.255.255.0` = `/24`, `255.255.254.0` = `/23`, `255.255.252.0` = `/22`, `255.255.255.128` = `/25`. ## Step 10: Unmount the ISOs Once Windows is installed and working, return to the Ascienth console and unmount both ISOs from your server. Then, under Settings → Boot Order, set the boot order back to boot from the hard disk instead of the ISO. This avoids Windows Setup launching again on your next restart. An ISO must be unmounted from every server using it before it can be deleted from your Custom ISOs quota. ## Frequently Asked Questions Double check you browsed to the folder matching your CPU architecture (`amd64`) and Windows version. If `vioscsi` doesn't produce a driver, try the `viostor` folder instead. Older images use the virtio-blk controller rather than virtio-scsi. No. Setup only needs a storage driver to see the disk. The network driver, along with the rest of the VirtIO drivers, can be installed after Windows is up, in Step 8. Yes. Once it's downloaded to your account, you can mount it on any of your servers without downloading it again. No. Manual installs through Custom ISO are entirely self-service. See [Windows Server Support](/guides/windows) for what is and isn't supported. # Bug Bounty Source: https://docs.advinservers.com/information/bug-bounty How to report security vulnerabilities and other bugs in our systems, and how we reward valid reports. ## Overview If you find a security vulnerability or another bug in the systems we run, please tell us. We reward valid reports, and the reward depends on what the bug is and how much impact it has. This page is for bugs in our own systems. If your server is down or behaving unexpectedly, see our troubleshooting guides for [network](/troubleshooting/network) and [hardware](/troubleshooting/hardware) problems, or open a normal support ticket. If you are reporting abuse coming from one of our IP addresses, see our [Abuse Policy](/policies/abuse) instead. ## Security Vulnerabilities ### In Scope We are responsible for the control panel, the hypervisor, and the network, so these systems are in scope: * The **client area**, at [https://clients.advinservers.com](https://clients.advinservers.com) * The **Ascienth console**, at [https://console.advinservers.com](https://console.advinservers.com), including its [API](/api-reference/introduction) * Our **hypervisors and network**, as reached from a service on your own account Examples of what we are looking for: * Viewing, changing, or deleting another customer's account, services, or data * Escaping a virtual server to reach the host or another customer's server * Bypassing authentication or two-factor authentication, or taking over an account * Reaching admin functions as a customer, or doing more in a team than your role allows * Using an API key on resources outside its team, or with permissions it was not given * Remote code execution, SQL injection, or stored cross-site scripting in the client area or console * Intercepting another customer's traffic, or using IP addresses that are not assigned to you ### Out of Scope The following are not eligible for a reward: * Anything inside a customer's server, including the operating system and software on your own server. Our services are unmanaged, so securing them is your responsibility. * Services run by third parties, such as our payment processors * Denial-of-service attacks, load testing, or any testing that degrades our services * Social engineering or phishing of our staff or customers, and physical attacks on our facilities * Reports from automated scanners without a working proof of concept * Missing security headers, cookie flags, or email records (SPF, DKIM, DMARC) with no demonstrated impact * Self-XSS, logout CSRF, or clickjacking on pages without sensitive actions * Software version disclosure without a working exploit * Issues that require a compromised device or physical access to the victim's device ## Other Bugs Bugs that are not security issues are also eligible for a reward. For example: * Billing errors, such as being charged the wrong amount or a renewal being calculated incorrectly * A way to get a service, an upgrade, or account credit without paying for it * A feature in the client area or console that fails, or that behaves differently from our documentation ## Testing Rules To stay eligible, you must follow these rules while looking for and confirming a bug: * **Only use your own accounts and services.** If you need a second account to test access between accounts, create one yourself. Its details, including your first name, last name, address, and phone number, must match your original account, as our [Terms of Service](/policies/termsofservice#multiple-accounts) require. Never test against another customer's account or server. * **Stop once you have confirmed the issue.** If you reach another customer's data, access no more than you need to show the issue, do not keep a copy of it, and report it to us right away. * **Do not disrupt our services.** Do not run high-volume automated scanners or anything that affects other customers. * **Do not profit from the bug.** If a bug gives you credit, services, or resources you did not pay for, report it instead of using it. Anything gained through the bug may be removed from your account. * **Keep it private.** Do not share the details publicly or with anyone else until we have fixed the issue and agreed to disclosure. * **Follow our policies.** Our [Terms of Service](/policies/termsofservice) and [Abuse Policy](/policies/abuse) still apply while you are testing. ## How to Report Open a ticket from the [client area](https://clients.advinservers.com/contact.php). Start the subject line with "Security Report" or "Bug Report" so that it reaches the right people. Include the following so that we can reproduce the bug without asking follow-up questions: * A short description of the bug and where it is, such as the page URL or API endpoint * Step-by-step instructions to reproduce it * What an attacker, or any customer, could do with it * Evidence, such as screenshots, HTTP requests and responses, or a short video. Paste text rather than screenshots where possible. * The account and services you used for testing, and the date, time, and **timezone** you tested ### Writing Your Report Keep your report concise and explain the bug in plain English. A few clear sentences and working reproduction steps are more useful to us than a long, generic write-up. You may use AI tools to help you find a bug or write your report, but they should not write the whole report for you. You are responsible for everything you submit, so make sure you have reproduced the bug yourself and that every step and claim in your report is accurate. ## Rewards We pay cash rewards, decided case by case within the ranges below. Higher-impact bugs receive larger rewards. | Severity | Reward (USD) | Examples | | - | - | - | | Critical | \$500 – \$1,500 | Escaping a virtual server, taking over any account, or accessing other customers' data at scale | | High | \$150 – \$500 | Bypassing two-factor authentication, reaching another customer's services, or getting services without paying | | Medium | \$50 – \$150 | Stored cross-site scripting, or exposure of limited or low-sensitivity information | | Low | \$10 – \$50 | Billing miscalculations, broken features, and other bugs with little or no security impact | Rewards are paid only by **bank transfer** or **PayPal**. We do not pay rewards by any other method. We may pay large rewards in monthly installments over a period of up to 6 months. If we do, we will tell you the schedule when we confirm your reward. We also consider how many customers are affected, how easy the bug is to exploit, and how clear your report is. A report with a working proof of concept and clear reproduction steps is worth more than a theoretical one. A report is not eligible for a reward if: * Someone else reported the same issue first, or we were already aware of it * It is out of scope, as described above * You broke the testing rules on this page Whether a report qualifies, and the amount of any reward, is at our discretion. ## After You Report We will confirm that we have received your report and investigate it. We may ask you for more detail while we do. Once we have confirmed the bug, we will let you know the outcome and any reward, and we will keep you updated until it is fixed. # DDoS Protection Source: https://docs.advinservers.com/information/ddosprotection This is an overview of our DDoS protection. ## Overview We only provide DDoS protection with filtering capabilities in our Nuremberg, DE location. This page is only applicable to this location. For the rest of our locations (including Los Angeles, Miami, Secaucus, Kansas City, and Johor), we do not provide any DDoS protection and there is a high likelihood that your service may be nullrouted upon an attack. In these locations, we suggest using a third-party mitigation service like Cloudflare. ## DDoS Protection Add-on ### Price and Availability For services in Nuremberg, we include DDoS mitigation by Dataforest at no additional charge (this may change in the future). ### Filters Filters are only available for servers in our Nuremberg, DE location. Currently, we provide the following filters (this may change in the future) for servers located in Nuremberg, DE: | Name | Protocol | Action | Filter | Tags | | - | - | - | - | - | | SCP: Secret Laboratory | UDP | FILTER | SCP: Secret Laboratory | Default | | Arma | UDP | FILTER | Arma Reforger | Default | | Palworld | UDP | FILTER | Palworld | Default | | TeamSpeak 3 Query/Filetransfer | TCP | FILTER | TeamSpeak 3 Query/Filetransfer | Default | | AltV UDP | UDP | FILTER | AltV UDP | Default | | AltV TCP | TCP | FILTER | AltV TCP | Default | | txAdmin | TCP | FILTER | txAdmin | Default | | OpenVPN | UDP | FILTER | OpenVPN | Default | | FiveM TCP Ultra Strict | TCP | FILTER | FiveM TCP Ultra Strict | Default | | FiveM TCP Strict | TCP | FILTER | FiveM TCP Strict | Default | | Plasmo Voice | UDP | FILTER | Plasmo Voice | Default | | UDP Light Generic | UDP | FILTER | UDP Generic | Default | | HTTP | TCP | FILTER | HTTP | Default | | Minecraft Java | TCP | FILTER | Minecraft Java | Default | | any TCP application | TCP | FILTER | Stateful TCP | Default | | Source Engine / A2S | UDP | FILTER | Source Engine / A2S | Default | | FiveM TCP | TCP | FILTER | FiveM TCP | Default | | FiveM UDP | UDP | FILTER | FiveM UDP | Default | | RakNet (Rust, MC Bedrock, Terraria, 7 Days to Die, ...) | UDP | FILTER | RakNet (Rust, MCPE, Terraria, ...) | Default | | QUIC | UDP | FILTER | QUIC | Default | | DayZ | UDP | FILTER | DayZ | Default | | TLS | TCP | FILTER | TLS | Default | | TeamSpeak 3 | UDP | FILTER | TeamSpeak 3 | Default | | WireGuard | UDP | FILTER | WireGuard | Default | | any UDP application | UDP | FILTER | UDP Generic | Default | | Remote Desktop Protocol | TCP | FILTER | RDP | Default | | FiveM UDP Strict | UDP | FILTER | FiveM UDP Strict | Default | | SSH | TCP | FILTER | SSH2 | Default | ### Configuration For servers in our Nuremberg, DE location, you will have access to a tab within the Ascienth console called the DDoS Protection. ![image](https://advin-cdn.b-cdn.net/chrome_DeQxeLHg78.png) Set the "Default Action" to Drop in order to block all traffic unless it matches a specific rule. This means that if you want to allow something (like a port or app), you must create a rule for it, otherwise, it will be blocked. ![image](https://advin-cdn.b-cdn.net/chrome_28xUDSzVWc.png) Make sure to create firewall rules for each of the applications that you are running on your VPS. For example, if you have SSH on port 22, make a firewall rule with: ``` Protocol: TCP Preset: SSH (TCP) Min Port: 22 Max Port: Blank ``` You can also create port ranges. For example, if you have Minecraft Java servers running on Port 25565 to Port 25575, you can make a firewall rule like: ``` Protocol: TCP Preset: Minecraft Java (TCP) Min Port: 25565 Max Port: 25575 ``` If you do not perform these steps to add rules for each of your applications, then the mitigation will not work properly. ### Sending DDoS Attacks We strictly prohibit any form of Distributed Denial of Service (DDoS) activity toward our network, even if the target is your own DDoS-protected IP address. Launching or simulating DDoS attacks is illegal in many jurisdiction. In the United States, it constitutes a violation of the Computer Fraud and Abuse Act of 1986, and [can lead to a prison sentence, fine, or a criminal record](https://www.fbi.gov/contact-us/field-offices/anchorage/fbi-intensify-efforts-to-combat-illegal-ddos-attacks). Furthermore, purchasing access to DDoS tools or botnets is not only unethical but also contributes directly to cybercrime. These tools are commonly powered by networks of compromised devices, often without the knowledge or consent of their owners. Therefore, we highly advise against participating in sending DDoS attacks, even if it is to only test your DDoS mitigation. # Geoblocking Source: https://docs.advinservers.com/information/geoblocking Information regarding geoblocking, the Great Firewall, and IP restrictions. ## Overview We do not guarantee the geolocation accuracy of any IP address, nor do we guarantee that an IP will remain clean or unblocked by any third-party network, service, or government-level restriction, including but not limited to the Great Firewall of China (GFW). ## Geolocation Accuracy IP geolocation data is maintained by third-party databases, not by us. While we do submit correction requests to these databases when an IP is geolocated incorrectly, it is ultimately up to each provider to review and apply the change, and the timeline and outcome are usually outside of our control. ## No Support for Bypassing Restrictions IP addresses can be geoblocked, flagged, or filtered at any time by outside networks for reasons entirely outside of our control. If an IP is blocked or throttled by the GFW or a similar system, there is generally nothing we are able to do to resolve it, and we are unable to offer support for bypassing these restrictions. # Network Information Source: https://docs.advinservers.com/information/network This is an overview of our network. ## Port Capacities All of our virtual servers come with a 1 Gbps shared port by default. ## Looking Glass We have a looking glass containing all of our locations below. [https://lg.advinservers.com](https://lg.advinservers.com) ## BGP Sessions We can allow a BGP sessions for free across all services in the below locations. * Los Angeles, CA * Nuremberg, DE * Miami, FL * Kansas City, MO * Johor Bahru, MY Please note that in some cases, we may need LOAs for any prefixes that you'd like to announce. Please contact us first before purchasing a service to see if it is possible with your requirements. It can take up to 1-2 weeks before we fully process the BGP session. ## Bring Your Own IP (BYOIP) We can allow a BYOIP for free across all services in the below locations. * Los Angeles, CA * Nuremberg, DE * Miami, FL * Kansas City, MO * Johor Bahru, MY Please contact us first before purchasing a service to see if it is possible with your requirements. It can take up to 1-2 weeks before we fully process the BYOIP request. ## IPv6 All virtual private server products include a /48 routed IPv6 subnet. By default, only a /128 on-link address is configured in the system. Any /48 routed IPv6 subnets will need to be manually configured by you. The only exception is that our Secaucus (NJ) and Osaka (JP) locations include a /48 on-link subnet instead of routed. ## Configuring Additional IP ### Ubuntu In most Linux servers using Ubuntu, you can configure an additional IP by running: ``` echo "network: version: 2 ethernets: eth0: addresses: - ip/32" > /etc/netplan/99-additional-ip.yaml netplan apply ``` Replace `ip` with your additional IP. In the future, if you want to add additional IPs, you can modify `/etc/netplan/99-additional-ip.yaml` and add more lines with more addresses like so: ``` network: version: 2 ethernets: eth0: addresses: - ip1/32 - ip2/32 - ip3/32 ``` ### Debian In Debian, you can configure a additional IP by running: ``` echo "iface eth0 inet static address ip/32" > /etc/network/interfaces.d/99-additional-ip systemctl restart networking ``` Replace `ip` with your additional IP. In the future, if you want to add additional IPs, you can modify `/etc/network/interfaces.d/99-additional-ip` and add more lines with more addresses like so: ``` face eth0 inet static address ip1/32 address ip2/32 address ip3/32 ``` # Stock Availability Source: https://docs.advinservers.com/information/stock Why our servers go out of stock and what you can do when the plan you want is unavailable. ## Overview Our [cloud page](https://advinservers.com/cloud) shows live stock for every plan in every location. A plan that is available shows a **Purchase** button, a plan that has sold out shows **Get Notified**. Stock changes frequently. It is normal for a plan to be out of stock in one location while the same plan is available in another, and it is normal for a plan to sell out again within hours of being restocked. ## Why Plans Go Out of Stock We only sell what we can physically deliver. Every plan is backed by real resources on a hypervisor that we own and operate, so the number of servers we can sell in a location is limited by the hardware that is racked and running there. When that capacity is allocated, the plan goes out of stock rather than being oversold. ## Why Restocking Takes Time Adding capacity is not something we can do on demand. New hardware has to be specified and ordered, shipped to the datacenter, racked and cabled, provisioned and burned in, and added to our automation before a single plan can be sold from it. Depending on the location and the parts involved, that process can take weeks. Demand also arrives unevenly. A promotion, a new location launch, or a single customer ordering in volume can consume a batch of capacity much faster than we expected when the hardware was ordered. The ongoing memory shortages have made it extraordinarily hard to purchase adequate memory to restock our servers. The price of DDR4 ECC has tripled over the past few months, and DDR5 ECC is now practically impossible to purchase. Unlike many other providers, we have chosen not to raise pricing for existing servers which reduces the amount of hypervisors we can purchase in any given month. ## What You Can Do Click **Get Notified** on any out of stock plan to be told when it returns. The same plan is often available elsewhere on our network. If you need capacity urgently, a different plan or a different location is almost always faster than waiting for a specific plan to restock. We are not able to reserve capacity, hold stock, or place you at the front of a queue, including for existing customers. Stock is released publicly and is first come, first served. ## Frequently Asked Questions We usually cannot give a date. Restocks depend on hardware deliveries and datacenter work that are outside of our control, so rather than promise a date we cannot keep, we notify you as soon as the stock is actually live. No. If a plan shows as out of stock, the capacity does not exist yet. Selling it anyway would mean overselling the hardware that our existing customers are already running on. That plan has not launched in that location yet, so there is nothing to notify you about. Notifications are only available for plans that are live but currently sold out. # Introduction Source: https://docs.advinservers.com/introduction This knowledgebase contains a variety of information regarding our virtual private server, dedicated servers, colocation, and other products that we offer. ## What Is Advin Servers? We are a hosting provider based in the state of Delaware in the United States of America. We rent out and sell dedicated servers, virtual private servers, colocation, and other products to clients from all around the world. We currently have a prescence in over 7+ locations around the world. ## Unmanaged Services All of our services are provided on an unmanaged basis. We are responsible for providing and maintaining the underlying hardware, network, and infrastructure, along with the base level of access and control needed to operate your server (such as remote access, power management, and network connectivity). Beyond that, clients are responsible for everything that happens within their server environment. This includes installing and configuring the operating system, applying software and security updates, hardening and securing the server, installing and maintaining applications, and troubleshooting any issues within the server itself. We do not provide managed support services such as software installation, configuration assistance, or in-server troubleshooting. # Abuse Policy Source: https://docs.advinservers.com/policies/abuse This is an overview of our policies governing abuse complaints and prohibited activities. Last Updated: `August 22nd, 2026` ## Overview If we receive an abuse complaint related to your service, you must respond within 24 hours. If there is no response, the server will be suspended. If we detect suspicious activity on your account, we may suspend your account and all of its associated services immediately. This may include suspected fraudulent payments, multiple services generating abuse complaints, history of abuse or non-response, and other cases. We reserve the right to also cancel your services for suspicious activity. Please keep in mind that we have an agreement with our IP lenders to act within a certain time frame, and take action on abuse that may harm IP reputation. If you are running a service that may harm our IP reputation or may be prohibited, you need to open a support ticket and describe the use case so that we can give you clearance. ## Prohibited Activities Any illegal activity, activity that may damage our infrastructure, impact other customers, or harm the reputation of our IP ranges or services is strictly prohibited. The following examples are activities which are strictly prohibited on our network: * Brute-force attacks * Distributed or Denial-of-Service (DDoS/DoS) attacks * IP spoofing * Phishing or fraudulent activity * Email spamming * Use of cracked or pirated software * Distributing copyrighted material without proper authorization We further do not allow the below high-risk services from being hosted on our infrastructure: * Gambling websites * Pornography websites (unless with prior approval) * Financial services involving lending, investments, or forex * Paste sites and user-generated-content platforms with weak moderation * Pharmacy or prescription drug websites ## Resellers If you are a reseller of our services and are expecting abuse complaints, then you must inform us over support ticket. We will add a note to your account and may provide additional time to respond to complaints and may take it into account when factoring our response to certain abuse. It is still your responsibility to monitor your customers. If there is a high amount of forbidden activity on your account, we may take action on the whole account. Please contact us for more information. ## Activities Requiring Approval Some legal activities, such as operating a TOR exit node or conducting port scans, often generate abuse complaints and harm IP reputation. We may allow these activities in certain locations, but you must contact us and receive written approval before ordering. ## Legal Compliance You are required to comply with the laws of both the United States and the country where your server is physically hosted. For example, if your service is located in Germany, you must adhere to both German and U.S. law. It is your responsibility to perform due diligence and ensure your usage is fully legal under all applicable jurisdictions. ## Changes to the Policy We may amend this policy from time to time. It is your responsibility to check for changes in our privacy policy and make sure that you are up to date. We may send an email notice when major changes occur. # Fair Use Policy Source: https://docs.advinservers.com/policies/fair-use This is an overview of our policies governing our fair use of resources. Last Updated: `October 13th, 2026` ## Overview All plans, no matter the type (VPS, VDS, dedicated, etc), is subject to a fair use policy regarding the shared resources that are available. We try our best to make this as relaxed as possible, but there are resources that are shared with other users that you must keep in mind when using your product. ## Virtual Servers ### CPU Usage We check every VPS's CPU usage every 10 minutes. If a VPS averages above 85% of its CPU over the past hour, it is automatically capped. Time when the VPS is powered off counts as idle. Each cap lifts on its own after a set time, plus up to two extra hours. The extra time is random, so that many servers capped at once on the same machine do not all get their full CPU back at the same moment. When a cap lifts, the VPS's previous CPU limit is restored and we wait an hour before judging it again. If it averaged above 85% over that hour, it is capped again. Caps get longer each time a VPS is capped again: | Cap | Length | | - | - | | First | 3 hours | | Second | 6 hours | | Third | 9 hours | | Fourth | 12 hours | | Fifth and every one after | 24 hours | No cap is permanent. Once the CPU usage comes down, the VPS steps back down this ladder by one level for each day that passes without another cap. The specific cap applied depends on the lineup. * **KVM Extreme VPS:** No automatic capping is applied, a server can use 100% of the CPU. * **KVM Storage VPS:** No automatic capping is applied, a server can use 100% of the CPU. * **KVM Premium VPS:** A server is capped to 75% of the CPU. * **KVM Ryzen VPS:** A server is capped to 75% of the CPU. * **KVM Standard VPS:** A server is capped to 50% of the CPU. ### Cryptocurrency or Blockchain Projects We have generally seen that, in the past, cryptocurrency projects have caused issues on our infrastructure despite CPU caps being applied. If you are running a cryptocurrency project, we recommend that you reach out over support ticket first and clear it with us. Any form of cryptocurrency mining is usually forbidden. However, if you are running something that likely won't damage our hardware or substantially impact our infrastructure (e.g., hosting a Monero node), then it is most likely fine. ### IO Usage For virtual servers, we do not enforce strict limits on disk usage. We ask that you keep your usage reasonable. If we see that your virtual private server is causing substantial IOWait on the hypervisor, we may cap the disk speed on the server. In general, we use NVMe SSDs on most of our products except for the KVM Storage VPS lineup, so IO caps are exceptionally rare. This is not something that you will generally need to worry about. ## Website Hosting ### Unmetered Storage This only applies to legacy website hosting plans that were purchased with Unmeted storage. If you have metered storage, then we have no restrictions on how you may use that storage as long as it abides by the abuse policy. Our unlimited and unmetered plans still operate within practical software and hardware limits and are governed by our fair use policy. These hosting plans are meant solely for website-related content. Using them for backups, file storage, personal media (such as photos, videos, or music), or file-locker services is not allowed. If your resource usage exceeds what is considered reasonable for the platform, we will contact you via support ticket and request that you reduce it. In cases where a user’s resource consumption threatens the stability or performance of the platform, we may suspend the affected service(s) to protect overall system integrity. ### CPU & Memory Usage Each hosting plan includes defined CPU and memory limits, which are listed on the product page. In cases of sustained excessive usage, we may further restrict resources to ensure reliable performance for all customers. ### IO Usage In general, we limit IOPS to 1024 and IO speed to 100 MB/s. If you need more than this, you may reach out to support. ### Email We restrict emails to 200 emails per day per user. If you need more than this, then please open a ticket. ### Addon Domain & Sub-accounts We do not explicitly limit the number of addon domains or sub-accounts that can be created, but excessive use may be subject to resource restrictions. Most users will not have to worry about this, and we will contact you if it becomes an issue. ## General Policies ### Unmetered Bandwidth On plans advertised as having unmetered bandwidth (but not labeled as "unlimited" or "dedicated"), we expect customers to maintain reasonable bandwidth usage. In many of our locations, we have spare capacity available, which allows us to offer unmetered bandwidth. However, this does not imply unlimited or unconstrained use. As a general guideline, we recommend keeping your monthly usage within 30–50TB. You may exceed this amount in many cases, and we will reach out to you directly if your usage is deemed excessive. Factors such as the cost of your plan and the overall impact on our network will influence whether any action is taken. Starting in 2024, we have largely phased out "unmetered fair-use" bandwidth plans, with the sole exception of shared website hosting services. All other services have defined limits. ### Port Speeds Most of our services support burstable speeds of up to 1 Gbps, with typical sustained throughput expected to remain within 100–200 Mbps at the 95th percentile. Throttling or usage caps are rarely enforced and typically apply only to low-cost plans with consistently high or abusive bandwidth patterns. In certain regions, particularly within APAC, more conservative thresholds may apply. Sustained usage may be limited below the typical 100–200 Mbps range depending on traffic behavior (e.g., frequent spikes) and plan type. In cases of excessive or abusive network consumption, bandwidth may be reduced to 1 Gbps or lower. Unless otherwise specified, all plans operate on shared bandwidth. Only services explicitly labeled as having dedicated bandwidth guarantee reserved throughput. ## Changes to the Policy We may amend this policy from time to time. It is your responsibility to check for changes in our privacy policy and make sure that you are up to date. We may send an email notice when major changes occur. # Law Enforcement Requests Source: https://docs.advinservers.com/policies/law-enforcement This is an overview of how we handle requests for customer information from law enforcement and other legal authorities. Last Updated: `October 5th, 2026` ## Overview Advin Servers is a hosting provider based in the state of Delaware in the United States. We do not host, control, or monitor the content our customers place on their servers. When we receive a valid request from a law enforcement agency, we will respond in accordance with applicable law and with our [Privacy Policy](/policies/privacypolicy). This page is intended for law enforcement agencies and legal professionals. If you are a customer, or you are reporting abuse originating from our network, please see our [Abuse Policy](/policies/abuse) instead. ## Submitting a Request All requests must be submitted in writing on official agency letterhead through our [contact form](https://clients.advinservers.com/contact.php) or [legal@advinservers.com](mailto:legal@advinservers.com). Please state clearly in the subject line that the request is a law enforcement request so that it is routed correctly. We do not accept legal process by telephone. Requests should include: * The name of the requesting agency and the badge, warrant, or case number * The name, title, and official contact details of the requesting officer * The specific IP address, service, or account identifier the request concerns * The precise date and time range of interest, including the time zone * A clear description of the records being sought * Any applicable non-disclosure order or preservation instruction Requests that do not identify a specific service or time range cannot be processed. We are unable to conduct broad or open-ended searches of our systems. ## Legal Process We Accept We generally comply with law enforcement in the United States and in the country where the service in question is physically hosted. Our servers are located in a number of countries, and the correct jurisdiction depends on the location of the service named in your request. * **Subpoena or equivalent** — basic subscriber and billing records * **Court order** — non-content records such as connection or access logs * **Search warrant** — content stored on a server, where such content is within our control Foreign authorities seeking records held in the United States should proceed through a Mutual Legal Assistance Treaty (MLAT) request or letter rogatory. **Requests concerning a server located outside of the United States should be directed through the appropriate authority in that jurisdiction.** ## Preservation Requests We will honor a properly submitted preservation request and preserve the records we hold for 90 days pending the service of valid legal process, with one 90-day extension available on request. A preservation request by itself does not result in disclosure. ## Information We Hold The records available to us are limited. Depending on the service and the time period, we may hold account and billing information, payment records, ticket transcripts, and service provisioning records. Our data retention practices are described in our [Privacy Policy](/policies/privacypolicy). We do not retain customer traffic content, and we do not maintain full packet captures of customer traffic. On unmanaged services we do not hold customer server credentials or encryption keys. Records that have aged out of retention or that were never collected cannot be produced. ## Content Complaints and Takedowns We are not the publisher of content hosted by our customers. Complaints regarding specific content, including copyright claims, should be submitted through our [Abuse Policy](/policies/abuse) process. In most cases we will forward the complaint to the customer responsible and require a response within 24 hours. We will act directly on the service where the content is unlawful, where the customer fails to respond, or where we are required to do so by law. ## Changes to the Policy We may amend this policy from time to time. It is your responsibility to check for changes and make sure that you are up to date. We may send an email notice when major changes occur. # Privacy Policy Source: https://docs.advinservers.com/policies/privacypolicy This is an overview of the information we collect, how we use it, and how long we keep it. Last Updated: `August 22nd, 2026` ## Overview Advin Services LLC is a hosting provider registered in the state of Delaware in the United States. This policy explains what information we collect about you, why we collect it, who we share it with, and how long we keep it. We do not sell your personal information, and we do not monitor the content you place on your server. ## Data We Collect **Information you give us.** We collect the information you provide when you create an account, order a service, complete a payment, open a support ticket, or otherwise communicate with us. This typically includes your name, email address, billing address, phone number, company name, and the contents of your tickets and correspondence with us. **Information collected automatically.** We record the IP addresses you use to access your account and our website, along with browser type, browser language, request details, and timestamps. This is used to operate the site, investigate fraud, and troubleshoot problems. **Service information.** We record which services are assigned to you, the IP addresses allocated to them, provisioning history, and the actions taken on them through our panels. **Payment information.** Payments are processed by our payment providers. We do not store full card numbers on our systems. We do retain the transaction records, invoices, and identifiers our processors return to us. **Cookies.** We use cookies to keep you signed in and to remember your preferences. For general information on cookies, see ["What Are Cookies"](https://www.cookieconsent.com/what-are-cookies/). ## Use of the Data We use your information to provide and bill for your services, to communicate with you about your account, to provide support, to investigate abuse and fraud, to maintain the security and stability of our network, and to meet our legal and accounting obligations. We employ industry standard techniques to protect against unauthorized access to the data we store about you. We do not share personally identifying information you have provided to us without your consent, unless: * Doing so is appropriate to carry out your own request * We believe it is needed to enforce our legal agreements or that it is legally required * We believe it is needed to detect, prevent, or address fraud, security, or technical issues * We believe it is needed for a law enforcement request * We believe it is needed to fight a chargeback ## Data Retention How long we keep information depends on what it is. In general, we keep account and billing records indefinitely, and we keep operational data only for as long as it is useful to us. **Account and billing records.** Records held in our billing system (including your account details, contact information, invoices, payment and transaction records, service history, ticket transcripts, and account access logs) are retained indefinitely. We rely on these records for accounting, tax, fraud prevention, and dispute purposes, and we do not currently operate an automatic deletion schedule for them. **Backups.** Where backups were enabled on a service, backup data may continue to exist for a period of time after the service is deleted (usually a few days), and may then be removed at any point without notice. We do not guarantee that a backup of a deleted service still exists, and you should not rely on us being able to restore or produce one. Once a backup has been purged it cannot be recovered. **Traffic records.** We do not capture the contents of your traffic and we do not maintain packet captures. The traffic data available to us for an IP address is the set of remote IP addresses and autonomous systems (ASNs) it exchanged traffic with, and the volume of traffic to each. We do not record ports or payload. Where these records are collected they are kept for up to 14 days and then discarded. Collection is not guaranteed, and we may be unable to produce traffic records for a given IP address or time period. **IP allocation records.** We retain a permanent record of which customer an IPv4 address was assigned to and when. This is necessary for abuse handling, IP reputation management, and our obligations to the parties we lease address space from. We do not retain historical allocation records for IPv6 assignments. **Website request logs.** Our website is served through Cloudflare, which logs requests made to it, including IP address, user agent, and request metadata. Cloudflare retains these logs for 30 days. **Deleted services.** When a service is destroyed, the data on its disks is removed as part of reclaiming the underlying storage. The account and billing records relating to that service remain under the retention rules described above. ## Sharing of Data **Payment processors.** We offer payment options such as Tebex, PayPal, Stripe, BitPay, and NowPayments. Your personal information, such as your full name or email address, may be sent to these services in order to complete and validate your payment. You are responsible for reading and understanding those third party services' privacy policies before using them to pay. **Login providers.** We also offer login buttons provided by services such as Google. Your use of these third party services is entirely optional. We are not responsible for the privacy policies or practices of these services. **Infrastructure and upstream providers.** We use Cloudflare in front of our website, and we operate in facilities and on address space provided by third parties. Where an abuse complaint, a legal request, or an IP reputation issue requires it, we may share the information necessary to respond with the relevant datacenter, IP lender, or upstream network. ## Chargebacks Upon receipt of a chargeback, we reserve the right to send any information about you to our payment processor in order to fight the chargeback. ## Legal Requests Upon receipt of a legal complaint, court order, or request from a law enforcement agency, we reserve the right to disclose the information we hold in order to comply. This may include personally identifying information. We generally comply with law enforcement in the United States and in the country where the service in question is physically hosted. Details on how such requests should be submitted, and what we are able to produce, are set out in our [Law Enforcement Requests](/policies/law-enforcement) policy. ## Your Choices and Data Deletion You can view and correct most of your account information from the [client area](https://clients.advinservers.com) at any time. If you would like your information removed, please open a ticket. We will remove as much information as we reasonably can within 30 business days and will tell you what we are unable to remove. As described above, we retain billing, transaction, and IPv4 allocation records, and we are generally unable to delete these. They are needed to meet our accounting and legal obligations, to handle abuse and chargebacks, and to protect against fraud. Deleting your account does not by itself erase these records. Depending on where you are located, you may have additional rights over your personal information, including rights of access, correction, and erasure. Open a ticket and we will work with you on your request. ## Security We take reasonable steps to protect personally identifiable information from loss, misuse, and unauthorized access, disclosure, alteration, or destruction. However, no system is completely secure, and we cannot guarantee the security of information transmitted to or stored on our systems. On unmanaged services, the security of the data on your server is your responsibility. We do not hold your encryption keys, and we cannot read the contents of an encrypted disk. ## About Children The Website is not intended for children under the age of 13. We do not knowingly collect personally identifiable information via the Website from visitors in this age group. ## Changes to the Policy We may amend this policy from time to time. It is your responsibility to check for changes in our privacy policy and make sure that you are up to date. We may send an email notice when major changes occur. # Refund Policy Source: https://docs.advinservers.com/policies/refund This is an overview of our policies governing refunds or returns of goods or services Last Updated: `September 13th, 2026` ## 14-Day Money-Back Guarantee If you are not satisfied with a service, you may request a full refund within **14 days** of the date of purchase through Paddle, Stripe, PayPal, or BTCPayServer. You do not need to give us a reason, and no conditions apply. This guarantee covers every product we sell, including virtual servers, cloud servers, dedicated servers, and website hosting. Refunds are issued in full, including any taxes and payment fees charged on the order, and are returned to the original payment method used for the purchase. We process refund requests promptly, and funds are typically returned within 5 to 10 business days depending on your payment provider. Payments made through NOWPayments are excluded from this guarantee and are non-refundable, as cryptocurrency transactions made through NOWPayments cannot be reversed. ## How to Request a Refund You can request a refund in either of the following ways: 1. Submit a cancellation request for the service from the client area and choose the cancellation type "Immediate." 2. Open a ticket in the "Refund Support" department at [https://clients.advinservers.com](https://clients.advinservers.com) and include your invoice number. Cancelling a service terminates it immediately, which means all data on it is deleted. Please take a copy of anything you need before you submit the request. ## Refunds After 14 Days After the 14-day window has passed, we still provide pro-rata refunds of any unused time back to your account credit balance. Submit an immediate cancellation request for the service, and the remaining days will be credited to your account. The full refund amount is shown on the cancellation page before you confirm. ![image](https://advin-cdn.b-cdn.net/chrome_f3FdYSIgyl.png) Account credit can be spent on any service with us. See our [Account Credit](/guides/account-credit) guide for details on refunding an account credit balance to an original payment method outside of the 14-day window. ## Questions If you are unsure whether a refund applies to your situation, open a ticket from the [client area](https://clients.advinservers.com) and we will help you. # Service Level Agreement Source: https://docs.advinservers.com/policies/sla This is an overview of our policies governing our service level agreement Last Updated: `August 22nd, 2026` ## Overview This Service Level Agreement ("SLA") sets out the uptime we commit to, the events that qualify for compensation, and how to claim a service credit if we fall short. It forms part of our [Terms of Service](/policies/termsofservice). Service credits are your sole and exclusive remedy for downtime or unavailability of your service. ## Qualifying Services All paid services qualify for SLA, including virtual servers, dedicated servers, and web hosting. The following do not qualify: * Free, trial, promotional, or complimentary services * Services explicitly labelled as beta, testing, or experimental * Services that are suspended, cancelled, or past due at the time of the event ## Uptime Commitment We guarantee **99% uptime** per service, measured per calendar month. Uptime is measured against the availability of the service itself. Downtime is any period during which your service is fully unavailable due to a qualifying event on our side. ### How Downtime Is Measured Downtime begins at the earlier of: * The time our monitoring first records the service as unavailable, or * The time you open a support ticket reporting the service as unavailable. Downtime ends when the service is restored to a working state, whether by us or automatically. Duration is determined by our monitoring systems, node logs, and internal records. Where our records and a third-party monitoring service disagree, our records apply. Time spent waiting on a response from you, or on work that requires access to your operating system, is not counted as downtime. ## Qualifying Events These qualifying events may include, but are not limited to: * Network outages * Power outages * Datacenter failures * Host node issues ## Non-Qualifying Events We do not provide SLA credit for the following: * Network packet loss * Network throughput issues * Failures caused by the client, including misconfiguration, resource exhaustion, or a broken operating system * Failures confined to an individual VPS where the host node is healthy * Performance issues, including slowdowns caused by [fair use](/policies/fair-use) limits or CPU capping * [Scheduled or emergency maintenance](/policies/termsofservice#maintenance) * Service cancellation or suspension, including suspension for non-payment or under our [Abuse Policy](/policies/abuse) * [DDoS attacks](/information/ddosprotection), including nullrouting of an attacked IP address * Events outside our reasonable control, such as natural disasters, government action, upstream carrier failures, or failures of a third-party service you rely on ## Service Credits Credits are issued as an extension of your service term. The extension is based on the length of a single qualifying incident: | Downtime in a Single Incident | Service Credit | | - | - | | Under 1 hour | No credit | | 1 hour to under 2 hours | Service extended by 1 day | | 2 hours to under 3 hours | Service extended by 2 days | | 3 hours to under 4 hours | Service extended by 3 days | | 4 hours to under 5 hours | Service extended by 4 days | | 5 hours to under 6 hours | Service extended by 5 days | | 6 hours to under 7 hours | Service extended by 6 days | | 7 hours or more | Service extended by 2 weeks | There must be a minimum of **1 hour** of downtime in order for SLA credit to be issued. Total credits issued for any single service will not exceed 30 days of that service's term within a calendar month. ### Form of Credit Service credits are applied as additional service time on the affected service only. They hold no cash value, cannot be exchanged for a refund or account credit, and cannot be transferred to another service or account. Credits do not apply to setup fees, add-on fees, or other one-time charges. ## Claiming SLA Credits To claim a credit, open a support ticket from the [client area](https://clients.advinservers.com) within **72 hours** of the qualifying event. Please include the following so we can process the claim without delay: * The service ID, hostname, or IP address of the affected service * The date and approximate start time of the outage, including your timezone * The time the service was restored, if it has been * Any monitoring logs, traceroutes, or screenshots you have You must also meet the following requirements: * Your account must be in good standing. * You must not have created a chargeback. * You must have created a ticket within 72 hours of the qualifying event. * Your service must not be cancelled or suspended. * SLA can only be claimed once per incident. We aim to review claims within 5 business days. If a claim is approved, the credit is applied to the renewal date of the affected service, and we will confirm it on the ticket. If a claim is declined, we will explain why. **Note:** Multiple outages in a row can be considered part of the same incident, as long as the root cause is the same. For example, if your host node were to go offline due to an issue with an SSD (as an example), momentarily comes back online, and then goes back offline due to the same problem, that would be considered as one incident/event and can only have SLA claimable once. We reserve the right to deny SLA compensation depending on the circumstances. You can follow ongoing incidents and planned maintenance on our [status page](https://status.advinservers.com). ## Changes to the Policy We may amend this policy from time to time. It is your responsibility to check for changes in this policy and make sure that you are up to date. We may send an email notice when major changes occur. # Terms of Service Source: https://docs.advinservers.com/policies/termsofservice The agreement that governs your use of Advin Servers and our services. Last Updated: `August 26th, 2026` ## Overview Advin Services LLC is a hosting provider registered in the state of Delaware in the United States. These Terms of Service ("Terms") are the agreement between you and Advin Services LLC, and they govern your use of our website at [https://advinservers.com](https://advinservers.com), our client area, our control panels, and every service you order from us. By creating an account, placing an order, or using any of our services, you agree to these Terms. If you do not agree to them, do not use our services. ### Policies Incorporated by Reference These Terms incorporate the following policies, and each forms part of your agreement with us: * [Service Level Agreement](/policies/sla) * [Refund Policy](/policies/refund) * [Fair Use Policy](/policies/fair-use) * [Abuse Policy](/policies/abuse) * [Law Enforcement Requests](/policies/law-enforcement) * [Privacy Policy](/policies/privacypolicy) Where a specific policy addresses a subject in more detail than these Terms, that policy controls for that subject. Where you have a signed written agreement with us, that agreement controls over both. ### Definitions * **"Client," "you," and "your"** refer to the person or entity that holds an account with us or uses our services. * **"Company," "we," "our," and "us"** refer to Advin Services LLC, a limited liability company registered in the state of Delaware, United States, trading as Advin Servers. * **"Party" or "Parties"** refer to you and us, individually or together. * **"Service"** refers to any product you order from us, including virtual servers, dedicated servers, and website hosting. Terms used in the singular include the plural and vice versa, and the use of a particular gender or of "they" is not intended to be limiting. ## Your Account ### Eligibility You must be at least 18 years old and legally able to enter into a binding contract to hold an account with us. If you are ordering on behalf of a company or other organization, you represent that you are authorized to bind it to these Terms. ### Accurate Information The information on your account must be accurate, complete, and current. This includes your legal name, billing address, phone number, and a working email address that you monitor. We may suspend or close an account with information we believe to be false, incomplete, or deliberately obscured. We may ask you to verify your identity, your payment method, or your intended use before we provision a service, and we may decline any order at our discretion. ### Account Security You are responsible for your account credentials and for all activity that occurs under your account, including activity by anyone you give access to. Use a strong, unique password and enable two-factor authentication where it is offered. Tell us immediately if you believe your account has been accessed without your authorization. We will never ask you for your account password. ### Multiple Accounts Multiple accounts are allowed as long as they are not used for the purposes of: * Redeeming a one-per-account promotion code more than once * Fraudulent activity * Evading account closure, suspension, or a ban * Claiming affiliate revenue from yourself If you are found to be violating this policy, we reserve the right to close the duplicate accounts. Closing an account does not affect your right to a refund under our [Refund Policy](/policies/refund). The information across your accounts must be consistent, including full name, address, and phone number. If you cannot do this, you must contact us and receive written approval before creating a new account. ## Services ### Support Unless a service is explicitly sold as managed, our services are unmanaged. We are responsible for the physical infrastructure, the network, the hypervisor, and the control panel. You are responsible for your operating system, your applications, your configuration, your security patching, and your data. We are usually happy to point you in the right direction, but we do not administer customer servers, and we are not obligated to resolve problems that arise from within your own environment. ### Advertised Specifications We strive to provide the exact hardware specifications advertised on our website. In certain situations, we may substitute the listed CPU model and/or thermal design power (TDP) with an equivalent or higher-performing alternative based on availability within our cloud infrastructure. For example, an advertised AMD EPYC 7763 may be substituted with an AMD EPYC 9654. These substitutions are made in good faith, are intended to meet or exceed the performance of the originally specified specifications, and are extremely rare. We may undo these substitutions at any time. We do not substitute across fundamentally different CPU product lines; for instance, Ryzen and EPYC processors are not mixed or interchanged under any circumstances. ### IP Addresses IP addresses assigned to your service are allocated to you for the duration of that service. They remain the property of Advin Services LLC or of the party we lease them from, and you acquire no ownership rights in them. We may be required to justify an allocation to a regional internet registry or to an upstream provider, and we may ask you for a description of your usage. We may also change the IP addresses assigned to your service where it is absolutely necessary. We will give you notice where it is reasonably practical to do so. Additional IP addresses are subject to availability. ### Geolocation The geolocation of our subnets may not be correct, as geolocation data is maintained by third-party databases and organizations that we do not control. If you are using our servers to access region-locked content, please contact us beforehand so that we can confirm. We do not guarantee that any third party will geolocate an address to a particular country or city, and an incorrect entry in a third-party database is not by itself grounds for a refund outside of our [Refund Policy](/policies/refund). ### Storage To deliver our services, we are required to store your service files on our infrastructure. Depending on the specific product or plan you have purchased, we may also create and retain backups of your data, which are sometimes stored off-site for additional redundancy and protection. You may request the deletion of your files or backups at any time by contacting our support team. ### Email Sending By default, port 25 is blocked across our infrastructure, and email sending is not permitted on virtual or cloud servers. If you need to send email, we recommend using a third-party SMTP provider such as Amazon SES. Outgoing email is allowed on our website hosting by default. If you have a valid use case and need port 25 unblocked, please open a support ticket and include the following: * A link to your website or project, if applicable * A clear explanation of why you require port 25 access * Examples of the types of emails you intend to send If your account is found to be sending unsolicited or abusive email after port 25 is unblocked, it will be blocked again, and future unblocking requests will not be considered across any of your current or future services. Exceptions may be made only for resellers or customers operating shared environments, such as web hosting platforms. ### Maintenance We perform routine maintenance on our network and hardware. We aim to schedule work that is likely to be disruptive outside of peak hours and to give advance notice by email or on our [status page](https://status.advinservers.com). Emergency maintenance needed to preserve the security or stability of our infrastructure may be carried out without notice. Scheduled maintenance is not a qualifying event under our [Service Level Agreement](/policies/sla). ### Service Transfers You may transfer a virtual server, floating IP or snapshot storage to another client account yourself, free of charge, from the Ascienth console. See [Transferring Services](/guides/server-transfers) for how it works. Any unpaid invoices for the service must be paid first. From the moment of transfer, the receiving account is responsible for the service and for all use of it. Other services can be transferred by our staff on request through a support ticket. There is a \$5 USD transfer fee for this, which covers the administrative work of transferring services. Transferring services by any other means, such as sharing login details, or selling or transferring whole accounts, is not permitted. If you are caught doing so, the account and all services on it may be closed. ### Fair Use Our services are subject to our [Fair Use Policy](/policies/fair-use), which describes the CPU, disk, bandwidth, and port speed expectations that apply to each product line. ## Billing and Payment ### Invoicing and Renewal Services are sold on a recurring subscription basis and renew automatically at the end of each billing period until you cancel. Invoices are typically generated at least one week in advance of the due date. If you have a stored payment method or an active billing agreement, you authorize us to charge it for invoices as they become due, including renewals. ### Non-Payment If payment is not received by the due date, services are generally suspended two days later, following multiple email reminders. Termination may occur after seven days of non-payment. Depending on the product, we may retain your service or data for a longer period, but this is not guaranteed. Backups are not retrievable after a service is terminated. If your service is suspended, your data is still intact and recoverable upon payment. If your service is terminated, your data has been deleted and recovery is generally not possible. ### Cancellation You are responsible for submitting a cancellation request through the control panel before the service's due date. Failure to do so may result in the payment method on file being charged, the invoice remaining active, or both. ### Pricing and Taxes Prices are in US dollars unless stated otherwise. Amounts quoted exclude any sales, use, VAT, GST, or similar taxes, which we will add where we are required to collect them. You are responsible for any bank, currency conversion, or payment processor fees charged on your side. We may change the price of a service. Where we do, we will give you notice before the change applies to your renewal, and you may cancel before the renewal date if you do not wish to continue. Promotional pricing applies only for the period stated in the promotion. ### Chargebacks If you believe an invoice is incorrect, open a ticket and we will look into it. Please do not file a chargeback or a payment dispute before contacting us. A chargeback filed against us may result in the immediate suspension or termination of every service on your account, and in the loss of eligibility for future SLA credits. We may require any outstanding balance, along with any fee our processor charges us for the dispute, to be settled before we restore service or accept a future order. Your rights under our [Refund Policy](/policies/refund) are unaffected. ### Refunds We offer a 14-day money-back guarantee on every service, with no conditions and no reason required. Full details, including how to request a refund and how pro-rata account credit works after the 14-day window, are described in our [Refund Policy](/policies/refund). ## Acceptable Use Your use of our services is governed by our [Abuse Policy](/policies/abuse), which sets out prohibited activities, the activities that require our written approval in advance, and the timeframe in which you must respond to an abuse complaint. You are required to comply with the laws of the United States and of the country in which your server is physically hosted. You are also responsible for the conduct of anyone you allow to use your service, including your own customers if you are a reseller. ### Export Control and Sanctions You may not use our services if you are located in, ordinarily resident in, or organized under the laws of a country or region subject to comprehensive US sanctions, or if you are listed on a US government restricted or denied party list. You agree not to make our services available to any such person, or to use them in violation of applicable export control laws. ## Suspension and Termination We may suspend or terminate a service, or close an account, where we believe it is necessary to protect our infrastructure, our network reputation, our other customers, or ourselves. This includes non-payment, a violation of these Terms or of any incorporated policy, suspected fraud, a chargeback, or a legal requirement. We reserve the right to terminate your service with or without a reason and with or without notice at any time. Where we choose to end our business relationship with you for reasons other than a violation of these Terms, non-payment, or a legal requirement, we will normally provide 30 days of notice before account closure or service termination. You may cancel a service at any time through the control panel, as described under [Cancellation](#cancellation). ### Effect of Termination When a service is terminated, we delete the data associated with it, including any backups we hold for it, and that data cannot generally be recovered. Please take your own copy of anything you need before a cancellation takes effect. Any amounts you owe us at termination remain payable. Termination does not affect your right to a refund under our [Refund Policy](/policies/refund). ## Data and Backups We are not responsible for any data loss across our services. It is the responsibility of the customer to take backups of their service. We may include backups in some of our services, but these are best-effort and carry no guarantee. You are responsible for maintaining your own independent backups of anything you cannot afford to lose, stored somewhere other than the service it came from. Our handling of your personal information is described in our [Privacy Policy](/policies/privacypolicy). Our handling of requests from law enforcement is described in our [Law Enforcement Requests](/policies/law-enforcement) page. ## Uptime Our uptime commitment, the events that qualify for credit, and the process for claiming it are set out in our [Service Level Agreement](/policies/sla). The credits described there are your sole and exclusive remedy for downtime or unavailability. ## Disclaimer of Warranties Our services are provided "as is" and "as available." To the fullest extent permitted by law, we disclaim all warranties, whether express, implied, or statutory, including any implied warranty of merchantability, fitness for a particular purpose, title, and non-infringement. We do not warrant that a service will be uninterrupted, error-free, secure against every attack, or free of data loss, or that it will meet your specific requirements. No advice or information you obtain from us, whether spoken or written, creates any warranty not expressly stated in these Terms. ## Limitation of Liability To the fullest extent permitted by law, neither party is liable to the other for any indirect, incidental, special, consequential, exemplary, or punitive damages, or for any loss of profits, revenue, business, goodwill, or data, however caused and regardless of the theory of liability, even if that party has been advised of the possibility of such damages. Our total aggregate liability arising out of or relating to these Terms or your use of our services is limited to the amount you paid us for the affected service in the three months immediately preceding the event giving rise to the claim. These limitations do not apply to liability that cannot be excluded or limited under applicable law, and they do not limit your obligation to pay amounts owed to us. ## Indemnification You agree to indemnify and hold harmless Advin Services LLC, its officers, employees, and suppliers from any claim, demand, loss, liability, or expense, including reasonable legal fees, arising out of your use of our services, your content, your violation of these Terms or of any incorporated policy, your violation of any law, or your infringement of the rights of any third party. ## Force Majeure Neither party is liable for a failure or delay in performance caused by events beyond its reasonable control, including natural disasters, fire, flood, war, civil unrest, acts of terrorism, labor disputes, government action, epidemics, failures of upstream network providers or datacenter operators, large-scale attacks on infrastructure, and widespread power or internet outages. This does not excuse an obligation to pay amounts already owed. ## Website Use ### Cookies We use cookies. By accessing Advin Servers, you agree to our use of cookies in accordance with our [Privacy Policy](/policies/privacypolicy). Most interactive websites use cookies to retrieve user details on each visit. We use them to keep you signed in, remember your preferences, and enable the functionality of certain areas of the site. ### Linking to Our Content Anyone may hyperlink to our website. You may not frame our website or present our content within an iframe without our prior written permission, and you may not use our name, logo, or branding in a way that suggests an endorsement or a relationship that does not exist. ### Links from Our Website Our website may link to third-party sites that we do not control and are not responsible for. If you find a link on our website that you believe is offensive or inappropriate, you are welcome to contact us at any time. We will consider requests to remove links, but we are not obligated to remove them or to respond to you directly. ## Purchases Through Tebex We partner with Tebex Limited ([www.tebex.io](https://www.tebex.io)), who are the official merchant of digital content produced by us. If you wish to purchase licenses to use digital content we produce, you can do so through Tebex as our licensed reseller and merchant of record. To make such a purchase from Tebex, you must agree to their terms, available at [https://checkout.tebex.io/terms](https://checkout.tebex.io/terms). If you have any queries about a purchase made through Tebex, including but not limited to refund requests, technical issues, or billing enquiries, you should contact Tebex support at [https://www.tebex.io/contact/checkout](https://www.tebex.io/contact/checkout) in the first instance. ## General **Governing law.** These Terms are governed by the laws of the State of Delaware, United States, without regard to its conflict of laws rules. The courts located in Delaware have exclusive jurisdiction over any dispute arising out of these Terms, and both parties consent to that jurisdiction and venue. The United Nations Convention on Contracts for the International Sale of Goods does not apply. **Notices.** We will send notices to the email address on your account, and a notice is considered received on the day it is sent. Keep your email address current, as you are responsible for notices sent to a stale address. You can reach us through our [contact form](https://clients.advinservers.com/contact.php), or at [legal@advinservers.com](mailto:legal@advinservers.com) for legal matters. Legal notices should be addressed to Advin Services LLC. **Assignment.** You may not assign or transfer these Terms without our written consent. Transferring a service to another client account is handled under [Service Transfers](#service-transfers). We may assign these Terms in connection with a merger, acquisition, or sale of all or substantially all of our assets. **Severability.** If any provision of these Terms is found unenforceable, it will be limited or removed to the minimum extent necessary, and the remaining provisions stay in full force. **Waiver.** Our failure to enforce a provision is not a waiver of our right to enforce it later. **Independent parties.** Nothing in these Terms creates a partnership, joint venture, agency, or employment relationship between us. **Entire agreement.** These Terms, together with the policies incorporated above, are the entire agreement between you and Advin Services LLC regarding our services, and they supersede any prior understanding on the subject. **Survival.** The sections covering billing obligations, acceptable use, effect of termination, disclaimer of warranties, limitation of liability, indemnification, and this General section survive the termination of your account. ## Changes to These Terms We may amend these Terms from time to time. It is your responsibility to check for changes and make sure that you are up to date. We may send an email notice when major changes occur. Your continued use of our services after a change takes effect constitutes acceptance of the revised Terms. # Hardware Issues Source: https://docs.advinservers.com/troubleshooting/hardware How to diagnose and report CPU, disk, and memory problems on your server. ## Overview Hardware issues can occasionally occur where something is not working correctly and our monitoring systems have not picked up on it. This is usually unsatisfactory CPU performance, slow disk performance, or a fault with the server hardware itself. This page explains how to diagnose each of these and what information to collect before opening a ticket. As always, please open a ticket if you run into any problems, even if you are unsure of the cause. We greatly appreciate these reports, as they allow us to find underlying issues that our monitoring may have missed. If you are troubleshooting slow downloads, high latency, or packet loss, see [Network Problems](/troubleshooting/network) instead. ## Before You Start Before assuming a hardware fault, rule out the most common causes, which are almost always inside the server itself: * **Runaway processes.** Run `top` or `htop` and check whether a single process is consuming all of the CPU or memory. * **Memory exhaustion and swapping.** Run `free -h`. If your server is out of memory and swapping heavily, everything will feel slow, including the disk. * **A full disk.** Run `df -h` and `df -i`. A disk at 100 percent capacity, or one that is out of inodes, causes failures that look like hardware faults. * **Recent changes.** Consider whether the problem started after a package update, a kernel upgrade, a configuration change, or a new workload being deployed. * **A reboot.** If the server has been running for a long time or is in an unclear state, a clean reboot from the [Ascienth console](/guides/controlpanel) is worth trying first. It is also worth checking whether the problem is constant or happens only at certain times of day. That distinction is very useful to us when investigating. ## CPU Performance ### Checking CPU Steal If you are experiencing unsatisfactory CPU performance on a virtual server, run the `top` command and check the value labelled `st` on the CPU line. This indicates CPU steal, which is the percentage of CPU time your VPS is waiting on from the hypervisor. ``` %Cpu(s): 4.2 us, 1.1 sy, 0.0 ni, 94.5 id, 0.1 wa, 0.0 hi, 0.1 si, 0.0 st ``` We generally aim to keep CPU steal at 0 percent across our hypervisors. However, in some cases where CPU contention is higher, you may see values between 5 and 10 percent. This is not unusual in shared environments where multiple virtual servers are competing for CPU resources. Even if the hypervisor still has CPU headroom, some steal can occur if the host is above 50 percent usage and starting to rely on hyperthreading, or due to other low-level factors. **If your CPU steal value regularly exceeds 10 percent, please open a support ticket.** ### Monitoring Steal Over Time CPU steal often fluctuates, so a single `top` reading is rarely enough to demonstrate a problem. Tools such as HetrixTools or Netdata can monitor CPU steal continuously without you having to watch `top`. These tools generate graphs that are very helpful for our team when diagnosing patterns or identifying specific times when performance degrades. If you cannot install a monitoring agent, you can still capture a short sample from the command line: ``` vmstat 1 60 ``` This prints one line per second for 60 seconds. The `st` column at the far right is CPU steal. Send us the full output along with the time and timezone it was captured. ### If There Is No Steal If you are not seeing any CPU steal but performance is still poor, please reach out and we can investigate further. A few things worth knowing first: * Benchmarks such as Geekbench may report lower scores when the VPS is using hyperthreaded vCPU cores. * The clock speed reported inside your VM is frequently inaccurate. See [Hardware Information](/information/hardware) for details on the processors we use and the clock speeds they actually run at. * In rare cases, abnormal CPU steal is caused by a hardware fault rather than contention. We have seen situations where faulty memory led to spikes in CPU steal despite otherwise normal conditions. ### Dedicated Servers CPU steal does not exist on dedicated or bare metal machines, since there is no hypervisor scheduling your cores. If you are seeing performance issues on dedicated hardware, install `lm-sensors` and check the CPU temperatures as a first step: ``` sudo apt install lm-sensors sudo sensors-detect --auto sensors ``` Sustained temperatures at or near the processor's thermal limit will cause it to throttle and lose performance. If you see this, please open a ticket so that we can inspect the cooling on the machine. ## Disk Performance ### Running a Benchmark We use enterprise Gen3 or Gen4 NVMe SSDs across almost all of our VPS hypervisors, so disk performance issues are extraordinarily rare. To measure your disk, we recommend running the following and checking the `fio` results it outputs: ``` curl -sL yabs.sh | bash -s -- -i -g -n ``` Note that `yabs.sh` is a third-party tool, so use it at your own risk. ### Interpreting the Results As long as the 1m result is above 1 GB/s and the 4k results are above 100 MB/s, your disk performance is within the expected range. Our virtual servers typically exceed these figures by a wide margin, as in the sample output below: ``` fio Disk Speed Tests (Mixed R/W 50/50): --------------------------------- Block Size | 4k (IOPS) | 64k (IOPS) ------ | --- ---- | ---- ---- Read | 219.67 MB/s (54.9k) | 1.64 GB/s (25.7k) Write | 220.25 MB/s (55.0k) | 1.65 GB/s (25.8k) Total | 439.93 MB/s (109.9k) | 3.30 GB/s (51.5k) | | Block Size | 512k (IOPS) | 1m (IOPS) ------ | --- ---- | ---- ---- Read | 4.30 GB/s (8.4k) | 4.91 GB/s (4.7k) Write | 4.53 GB/s (8.8k) | 5.24 GB/s (5.1k) Total | 8.84 GB/s (17.2k) | 10.15 GB/s (9.9k) ``` Keep two things in mind when comparing your numbers: * Disk throughput is shared between the virtual servers on a hypervisor, so results will vary somewhat between runs. * Linux caches disk contents in memory, which can inflate 4k and 1m results well above what the underlying storage can sustain. **If you are consistently seeing under 1 GB/s on 1m or under 100 MB/s on 4k, please open a ticket so that we can investigate.** ### High I/O Wait If throughput looks acceptable but the server still feels slow, check the `wa` (I/O wait) value in `top`. A persistently high I/O wait combined with low throughput usually points to a workload issuing a large number of small synchronous writes, such as an unoptimised database. Running `iostat -x 1` from the `sysstat` package will show you which device is busy and how long requests are queuing. ## Memory Issues If processes on your server are being killed unexpectedly, check whether the kernel is running out of memory before suspecting faulty hardware: ``` sudo dmesg -T | grep -i -e "out of memory" -e "killed process" ``` Entries here mean the OOM killer terminated a process because the server ran out of available memory. That is a capacity issue rather than a hardware fault, and is resolved by reducing memory usage, adding swap, or upgrading your plan. On dedicated servers you can also check for correctable and uncorrectable ECC memory errors: ``` sudo dmesg -T | grep -i -e edac -e "hardware error" -e mce ``` Any uncorrectable errors, or a steadily increasing count of correctable errors, should be reported to us immediately so that we can arrange a memory replacement. ECC errors are not visible from inside a virtual server, so if you suspect a memory fault on a VPS, please open a ticket and we will check the host. ## Reporting a Hardware Issue Opening a ticket with the information below lets us start investigating right away instead of asking follow-up questions: * A clear description of the symptom and how you are measuring it. * The date, time, and **timezone** the problem occurred, and whether it is constant or intermittent. * The raw output of any commands you ran, such as `top`, `vmstat 1 60`, or the full `yabs.sh` results. Please paste the text rather than sending a screenshot where possible. * Monitoring graphs covering the period in question, if you have them. * Anything that changed on the server shortly before the problem started. Tickets can be opened from the [client area](https://clients.advinservers.com/contact.php). If we find a fault with the underlying hardware, we will migrate your server to healthy hardware or replace the faulty component, and we will keep you updated throughout. # Network Problems Source: https://docs.advinservers.com/troubleshooting/network Troubleshooting network speeds. ## Overview It is best to open a ticket if you are running into any problems with our network, but following these instructions and providing our support with this information can greatly help with diagnosing potential network problems and potentially rerouting your connection or fixing network througput problems. ## Packet Loss from Home PC If you suspect that you are experiencing packet loss from your home computer to your server, please follow these instructions. These instructions should be followed on your home PC. ### Windows WinMTR is a tool that will allow you to easily measure the latency to your server and see where packet loss is happening along with how often it is occurring. WinMTR is free and open source, it can be downloaded at [https://sourceforge.net/projects/winmtr/](https://sourceforge.net/projects/winmtr/). Once WinMTR is downloaded, please extract the zip file and launch the WinMTR.exe executable. Once finished downloading and launching the executable, input your server IP address into the `Host:` field at the top of the window. Then click `Start`. ![WinMTR](https://advin-cdn.b-cdn.net/WinMTR_9AgNfa7NW1.png) Wait for a few minutes for the MTR, and once finished, click on `Copy Text to clipboard` and submit it in a support ticket. This will allow us to diagnose any network problems along your traceroute and see where packet loss could potentially be occurring. Alternatively, you can also press `Export TEXT` and upload the resulting text file into a ticket. We cannot accept traceroutes when diagnosing network issues, since it does not give us enough information. ### Linux or MacOS On Linux or MacOS, use your package manager to install the `mtr` package. On Linux, it should be called `mtr` or `mtr-tiny`, and on MacOS it will be called `mtr` (Homebrew is required). On either operating system, run `mtr `, replacing `` with your actual server IP. Wait a few minutes and then copy the output to your clipboard. ![MTR](https://advin-cdn.b-cdn.net/WindowsTerminal_E7pHseo836.png) ## Low Network Throughput In order to debug low download and/or upload speeds from your VPS, please install the official Speedtest CLI application found at [https://www.speedtest.net/apps/cli](https://www.speedtest.net/apps/cli). Once done, just run `speedtest` and check the result. Make sure that it is testing to a speedtest server local to your server, sometimes speedtest will default to a different country and/or region than your server is in, which can lead to inaccurate results. Once the speedtest is finished, please review the results and send it to our support if it is not matching expectations. **Please do not use the speedtest-cli tool! Make sure to download the official CLI from the speedtest.net website** Note: Sometimes we see some of our customers run the `yabs.sh` benchmark script and report low throughput to some of the iperf3 destinations that this benchmark script uses. This is because some of the iperf3 servers can be overloaded or deprioritize our connections, hence why `iperf3` results are typically not the most accurate. # Server Stopping Every Hour Source: https://docs.advinservers.com/troubleshooting/server-restarting Why a server shuts down or reboots roughly once an hour, and how to fix it. ## Overview If your server is shutting down or rebooting on its own roughly every hour, the cause depends on which operating system you are running. * **Windows:** this is almost always caused by the Windows Server Evaluation Edition license expiring. See [Windows](#windows) below. * **Linux:** this is not expected behavior. See [Linux](#linux) below. ## Windows Every Windows Server reinstall we provide uses the **Evaluation Edition**, which is only licensed to run for 180 days. See [Windows Server Support](/guides/windows) for details on licensing. Once those 180 days pass without a valid license being applied, Windows enters a state where it automatically initiates a shutdown every hour, along with a notification that the evaluation period has expired. This is expected behavior built into Windows itself, not a fault with your server. ### Confirming This Is the Cause You can confirm the evaluation has expired by connecting to your server (before it shuts down again) and running the following in an elevated Command Prompt: ``` slmgr /dlv ``` This displays the licensing status. Look for a line indicating the license has expired, or that the machine is in "Notification" mode. You can also check `eventvwr.msc` under **Windows Logs > System** for `EventLog` source events around the time of each shutdown, which will reference the evaluation period ending. It may also be visible in the bottom right corner, where it says "Windows License is expired." ![License Expired](https://advin-cdn.b-cdn.net/trial-license-3.jpg) ### Resolving It You have a few options: If you have your own Windows Server license, you can apply it with: ``` slmgr /ipk slmgr /ato ``` This stops the hourly shutdowns immediately, without needing to reinstall. If you do not have a license yet, you can temporarily extend the evaluation period by running the following in an elevated Command Prompt, then restarting the server: ``` slmgr /rearm ``` This grants another 180 days and stops the hourly shutdowns. It can only be done a limited number of times before Windows requires activation regardless, so this is a temporary workaround rather than a permanent fix, and it may not work on all versions of Windows. Reinstalling Windows Server through the Reinstall tab of the [Ascienth console](https://console.advinservers.com) starts a fresh 180-day evaluation period. See [Server Reinstallation](/guides/reinstall) for how to do this. Remember to back up any data first, as reinstalling wipes the server. If you do not need Windows specifically, reinstalling to a Linux distribution avoids licensing and evaluation limits entirely. We do not provide Windows Server licenses and cannot extend the evaluation period for you, as this is a restriction set by Microsoft rather than by us. ## Linux Linux distributions do not have any built-in evaluation period or licensing mechanism that would cause hourly shutdowns or reboots, so this is not expected behavior. This is usually caused by something on the server itself, such as a cron job, a misconfigured watchdog, a kernel panic, or a script left running by a previous action on the server. If you cannot find the cause, please [open a ticket](https://clients.advinservers.com/contact.php) with: * The output of the commands above, if available. * The exact time (and timezone) restarts have occurred. * Anything that changed on the server before this started happening. Our team can also check the hypervisor logs on our end to see whether the shutdown is being triggered from inside the server or from the host.