---
title: "Add computers’ worth of memory, vCPU and disk on the card on file, or price them first (dry_run)"
method: POST
path: "/api/account/capacity"
tags: ["account"]
---

# Add computers’ worth of memory, vCPU and disk on the card on file, or price them first (dry_run)

`POST /api/account/capacity`

## Request

- Base URL: `https://www.orgo.ai`
- URL: `https://www.orgo.ai/api/account/capacity`
- Auth: HTTP bearer

Adds the memory, vCPU and disk (and, for os windows, the license) of count computers to the account pool. It does not raise the computer count: every paid plan includes 50 computers, and past 50 a new computer runs by the hour from credit, up to 999 an account. Body: a size ({ "size": "small" | "medium" | "large" | "xl" | "2xl" }), any shape ({ "ram_gb", "vcpu", "disk_gb" }, all three), or a size with parts replaced ({ "size": "medium", "vcpu": 1 } is 8 GB, 1 vCPU, 40 GB); plus "count": 1-500, "os"?: "linux" | "windows", "term"?: "monthly" | "yearly", "dry_run"?: boolean. ram_gb is 4, 8, 16, 32 or 64, vcpu 0.5, 1, 2, 4, 6 or 8, disk_gb 20 to 300 in steps of 20: the shapes a computer can be created with. Every shape is billed at the same per-part rates (GET rates). Past XL (2xl, ram_gb 64, or vcpu 8) is set up on request on every plan: 403 CONTACT_US_FOR_SIZE with max_cpu and max_ram_gb, dry runs included, unless the account is on Enterprise or its negotiated plan goes past XL (GET past_xl_allowed). Send an Idempotency-Key header (a UUID) so a retry answers again instead of buying twice. Bounded by the account’s self-serve cap; past it the answer is 403 capacity_cap and the cap can be raised for the account.

Or add memory, vCPU or storage on their own to the account’s pool, with no computer: { "addon": { "vcpu": 4, "ram_gb": 16, "disk_gb": 100 } }, amounts to add (vCPU in 0.5 steps, RAM in whole GB, disk in 20 GB steps), with term and dry_run as above and nothing else. Every computer draws from the pool.

## Headers

- `Idempotency-Key` string

## Request body

- union
  - object
    - `size` 'small' | 'medium' | 'large' | 'xl' | '2xl'
    - `ram_gb` 4 | 8 | 16 | 32 | 64
    - `vcpu` 0.5 | 1 | 2 | 4 | 6 | 8
    - `disk_gb` integer
    - `count` integer, required
    - `os` 'linux' | 'windows'
    - `term` 'monthly' | 'yearly'
    - `dry_run` boolean
  - object
    - `addon` object, required
      - `vcpu` number
      - `ram_gb` integer
      - `disk_gb` integer
    - `term` 'monthly' | 'yearly'
    - `dry_run` boolean

## Response `200`

Added (or, for dry_run, priced), with the account’s capacity after it.

## Other responses

- `400`: Invalid request.
- `402`: No paid plan (no_subscription), or the card was declined (card_declined).
- `403`: Past the self-serve cap (capacity_cap), past XL (CONTACT_US_FOR_SIZE, with max_cpu and max_ram_gb), or a workspace-scoped key.
- `409`: A request with this Idempotency-Key is running, or did not finish.
- `422`: This Idempotency-Key was used for a different request.
- `429`: Rate limited.

## Changes

- **2026-10-17** `f8aa6f329eea`: 1 breaking, 8 warning, 1 info
  - the request's body type changed from `object` to no type
  - removed the request property `count`
  - removed the request property `disk_gb`
  - removed the request property `dry_run`
  - …6 more
- **2026-10-16** `29481109703a`: 2 info
  - added the new `6.00` enum value to the request property `vcpu`
  - added the new `8.00` enum value to the request property `vcpu`
- **2026-10-15** `75b9a344f5ba`: 1 breaking
  - added required request body
- **2026-10-02** `57e3ea6e140b`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/orgo/apis/orgo-api/changes/api/account/capacity/post.md)

---

[API](https://skmtc.dev/orgo/apis/orgo-api.md) - [All operations](https://skmtc.dev/orgo/apis/orgo-api/llms.txt) - [OpenAPI document](https://skmtc.dev/orgo/apis/orgo-api/revisions/e4c1e7379fa5?raw)
