Vultr API Billing: Unbilled Charges and Read-Only Setup

Monitor Vultr's USD unbilled cloud charges with a dedicated billing-read API key. Keep raw signed account values separate from available funds and AI budgets.

Costs only · Not a balance

Guide updated

Official documentation checked on 2026-10-17; integration implemented. Real service-user creation, minimum permissions, account scope and console/API reconciliation remain pending user testing. No supplier login, resource creation, payment or permission change was performed.

Required credentials
Dedicated Vultr API key · account.billing.Read
Monitoring currency
USD · decimal dollars, not cents
What is monitored
This month's unbilled charges · not funds
Only GET https://api.vultr.com/v2/account. account.pending_charges is this month's unbilled charges for the authenticated cloud billing account, including non-AI services. account.balance is retained separately with its original sign, not interpreted as available funds.

Check billing directly without Quota Monitor

  1. Open the Vultr Console, select the correct organization/account and open Billing. History shows invoices and payments; Make a Payment/account credit is a different view. Merely view these pages—do not submit a payment.
  2. Read the current unbilled monthly charges separately. If using the official GET /v2/account from your own secure environment, preserve account.balance's sign and pending_charges as independent values; do not infer wallet funds from a negative example.
  3. Compare the same account and observation time, not another project/key or a finalized invoice. Explicit month boundaries, time zone and reset time are not provided by this endpoint.
Open official Vultr · Cloud account billing page(opens in a new tab)

Connect Vultr · Cloud account billing to Quota Monitor

  1. Choose the correct account and organization

    Sign in to the Vultr Console yourself and select the organization/account that pays for your workloads. Open Billing and identify the current month's unbilled charges separately from credit, payments and invoices.

    This connection covers the whole cloud billing account, including compute, GPU and other non-AI services. A Quota Monitor project does not split supplier funds; sub-account billing must be reconciled separately.

  2. Create a dedicated service user

    An existing authorized administrator opens the organization name → Manage Organization → Users → +. Choose User Type: Service User, enter its name and email, review, then Add service user.

    Keep unrelated groups and roles off this identity. Service users are for API access, not interactive login. Do not give the monitor root or administrator privileges; if you lack setup authority, ask your existing administrator.

  3. Define the least-privilege policy

    In Manage Organization → Permission Policies → +, name the policy and allow only account.billing.Read under account billing. Review the selected actions before Add Permission Policy; do not select all actions.

    The JSON below is a policy_document for the official IAM API, not a claimed Console paste editor. Console users choose the same action in the policy UI. Resource * denotes account-wide scope, not unrestricted actions; this read permission can expose additional account data.

    Vultr · Cloud account billing read-only policy JSON

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "account.billing.Read"
          ],
          "Resource": "*"
        }
      ]
    }

    Copies the complete JSON without keys or account details.

  4. Attach the policy to the service user

    Open the new policy under Permission Policies, select Attached Entities → +, choose only the dedicated service user and Attach Entities. Creating a policy alone does not grant it.

    Review that user's inherited groups, roles and other policies as well. A narrow new policy does not remove broader existing grants. Quota Monitor does not create, attach or modify supplier permissions for you.

  5. Enable API access and generate a separate key

    Open Manage Organization → Users → the service user → API Access → Create API Key. Set a recognizable Key Name and an appropriate expiration, then Generate API Key. Copy it once, acknowledge successful copying and Finalize Key Generation.

    If API access is disabled, an already authorized administrator must follow the official Enable API Access guide (api_enabled: true); do not grant user-management rights to the monitoring identity. Keep the full key private, not in chat, source code, screenshots or MCP arguments.

  6. Respect the existing network allowlist

    In the user's API Access → Access Control List, review allowed networks. The official default may permit Any IPv4 and Any IPv6. Restrict access to known authorized server egress with Add IP to Allowlist → subnet/prefix → Add Subnet, without disrupting other clients.

    Do not broaden an existing restricted policy or select Allow All for this integration. If your hosting does not provide an approved stable egress address, resolve that with your administrator or use manual billing checks; Quota Monitor does not promise a fixed IP.

  7. Connect Vultr in Quota Monitor

    Open the intended project, add a provider connection, select Vultr · Cloud account billing and paste the dedicated key into the masked field. Save when you are ready; the key is encrypted and the endpoint is fixed.

    The binding is USD only. No account URL, project/key filter, internal monthly budget, monetary alert or burn override is accepted. The help drawer and public tutorial use the same instructions.

  8. Reconcile the first successful snapshot

    Refresh the connection and verify that its successful query time advances. Compare pending_charges with the same account's current unbilled charges; compare the separately displayed raw account.balance with the same signed API value.

    For example, raw balance -100.55 and pending charges 60.25 remain two independent USD values, not a computed 40.30 wallet. Exact source decimals such as 60.123456789012345678 are retained. Consult the official API documentation locally; never send us the key or account identity.

  9. Handle failures and rotate safely

    For expiry, revocation or a leaked key, create a new dedicated restricted key in the same account and use Quota Monitor's credential update. Verify a successful read before retiring the old key through your normal process.

    401/403, rate limits, malformed data and provider outages do not erase the prior success. Report only the safe error code and time. Do not bypass permissions, relax IP restrictions, create cloud resources, call models or make a payment to test billing.

What Quota Monitor reads from Vultr · Cloud account billing

  • The ordinary-account API does not document the sign convention of account.balance. Preserve positive, negative and zero values; do not negate, take an absolute value, infer credit/debt or subtract pending_charges to calculate a wallet.
  • This is shared cloud-account billing, not an AI-only wallet, project budget, per-key limit or a roll-up of child accounts. Different users/keys can share billing; never sum duplicate connections.
  • pending_charges is an unbilled monthly amount, not a finalized invoice or remaining credit. Taxes and later adjustments may affect the final bill. No cost breakdown, payment history or usage-based fund estimate is collected.
  • The endpoint does not return explicit period boundaries, time zone or reset time. These remain unknown; no UTC month start, next reset, burn rate, runway, internal budget or monetary threshold is invented.
  • Only the two amounts are retained. Name, email, ACLs and last-payment details are discarded. Failed or incomplete reads retain the last successful snapshot and timestamp, not a new zero.
  • Whole cloud account, including non-AI services. The raw balance's sign convention and exact billing/reset times are undocumented: no credit/debt, wallet calculation, cap, budget or availability is inferred. Keep the two amounts separate.

Vultr · Cloud account billing FAQ and troubleshooting

Why is the raw balance negative?
The ordinary-account contract names balance but does not explain its sign. Quota Monitor retains it without calling it credit, debt or available money. Sub-account UI examples are not evidence for ordinary-account API semantics; confirm your own account with Vultr.
The key works elsewhere but billing returns 401 or 403?
Check expiry/revocation, API access, the correct service user, attached account.billing.Read policy and allowed egress IP. Model or resource access is not billing-read permission. Do not add administrator rights or Allow All.
Why are charges not the same as an invoice or AI costs?
pending_charges is current unbilled whole-account spending, including non-AI cloud services. Final invoices may have taxes or adjustments. We do not allocate AI costs, subtract charges from balance or import historical payments.
Why are reset time, budgets and remaining days absent?
The account endpoint reports no exact period boundaries, time zone, reset or spend cap. Unknown values stay unknown. Internal budgets and monetary thresholds are disabled for this integration; sync-failure and stale-data alerts remain available.
Why does another project show the same amount?
Vultr users/keys can share account billing. Quota Monitor projects are organizational groups, not separate supplier wallets. Repeated bindings of one connection are deduplicated in the overview; independently created duplicate connections still must not be summed.
A query failed, but an amount is still visible?
It is the previous successful snapshot, with its original timestamp and a separate error state. Missing fields, unsupported currency, 404/429 or malformed responses never become zero. Real key permissions and account reconciliation are still pending user testing.

Official Vultr · Cloud account billing references

Prepared by Quota Monitor, not an official provider tutorial. Interfaces and permissions may change; check official pages. Verification is limited to the scope stated here.

Monitor Vultr · Cloud account billing automatically

Checking a console by hand is easy to forget. Quota Monitor reads Vultr · Cloud account billing through its official API for you.

  • Refreshes every 10 minutes by default, and you can refresh manually at any time.
  • Whole cloud account, including non-AI services. The raw balance's sign convention and exact billing/reset times are undocumented: no credit/debt, wallet calculation, cap, budget or availability is inferred. Keep the two amounts separate.
  • Read exact unbilled charges and the separate raw signed balance through REST or MCP; no estimated funds, internal budget or monetary alert.
Start for free