Menu QaldyDocs

Capacity and plan changes

The resource pool, previewing and applying a change, the monthly budget and autoscale settings. 6 routes, from the API’s own OpenAPI document.

6 routes. Every path starts at https://cloud-api.qaldy.com. Sign-in, tokens, errors and limits are on the overview.

Routes

MethodPathWhat it does
GET/​v1/​workspaces/​{ws}/​capacityPlan, allocations, usage, tips and list prices (MOCK billing)
POST/​v1/​workspaces/​{ws}/​capacityApply a capacity change (admins; the plan needs the owner). MOCK billing
PUT/​v1/​workspaces/​{ws}/​capacity/​autoscaleSave autopilot settings (admins). Planned: nothing acts on them yet
PUT/​v1/​workspaces/​{ws}/​capacity/​budgetSet the monthly add-on budget cap (owner). Nothing is bought above it
POST/​v1/​workspaces/​{ws}/​capacity/​previewPrice, land and problems of a capacity change; writes nothing
GET/​v1/​workspaces/​{ws}/​usageDaily usage per resource (measured or labelled estimate)

Reference

GET /v1/workspaces/{ws}/capacity

Plan, allocations, usage, tips and list prices (MOCK billing).

  • Authentication: the console’s session cookie.
  • Token: a personal access token or an MCP sign-in with the read scope.
  • Who: member
ParameterInTypeRequiredNotes
wspathstringyes1 to 128 characters

Response 200

FieldTypeRequiredNotes
workspaceIdstringyesat least 1 characters
versionintegeryesat least 0
plan"free" · "maker" · "team" · "business" · "sovereign"yes
planSource"default" · "set"yes
currency"EUR" · "USD" · "KZT"yes
timezonestringyesat least 1 characters
periodobjectyes
period.startstring (date-time)yes
period.endstring (date-time)yes
period.daysInPeriodintegeryes28 to 31
period.dayintegeryes1 to 31
allocationsobject[]yes
allocations[].kind"cpu_time" · "concurrency" · "runs" · "requests" · "egress_gb" · "storage_db_gb" · "storage_files_gb" · "ai_credits" · …yes
allocations[].status"available" · "planned"yes
allocations[].gaugeKind"period" · "instant" · "stock"yes
allocations[].includednumberyesat least 0
allocations[].addOnStepsintegeryesat least 0
allocations[].stepSizenumberyesat least 0
allocations[].totalnumberyesat least 0
allocations[].periodTotalnumberyesat least 0
usageobject[]yes
usage[].kind"cpu_time" · "concurrency" · "runs" · "requests" · "egress_gb" · "storage_db_gb" · "storage_files_gb" · "ai_credits" · …yes
usage[].usednumber or nullyesat least 0
usage[].source"runs_table" · "baas_log" · "row_estimate" · "ledger" · "mock" · "none"yes
usage[].estimatebooleanyes
usage[].notestring or nullyes
usage[].measuredAtstring (date-time) or nullyes
quotasobject[]yes
quotas[].kind"cpu_time" · "concurrency" · "runs" · "requests" · "egress_gb" · "storage_db_gb" · "storage_files_gb" · "ai_credits" · …yes
quotas[].usednumber or nullyesat least 0

…and 18 more fields. The full schema is in openapi.json.

Errors: 400, 401, 403, 404, 409, 429 (the error format is on the overview).

POST /v1/workspaces/{ws}/capacity

Apply a capacity change (admins; the plan needs the owner). MOCK billing.

  • Authentication: the console’s session cookie.
  • Token: not available. This route is for a signed-in person in the console (403 console_only for a token).
  • Who: admin (plan: owner); signed-in person only, never a token
ParameterInTypeRequiredNotes
wspathstringyes1 to 128 characters

Request body (application/json)

FieldTypeRequiredNotes
basedOnVersionintegeryesat least 0
idempotencyKeystring8 to 128 characters
plan"free" · "maker" · "team" · "business" · "sovereign"
linesobject[]yesup to 17 items
lines[].kind"cpu_time" · "concurrency" · "runs" · "requests" · "egress_gb" · "storage_db_gb" · "storage_files_gb" · "ai_credits" · …yes
lines[].addOnStepsintegeryes0 to 100000

Response 200

FieldTypeRequiredNotes
changeobjectyes
change.idstringyesat least 1 characters
change.workspaceIdstringyesat least 1 characters
change.versionintegeryesat least 1
change.actorobjectyes
change.planobjectyes
change.linesobject[]yes
change.monthlyDeltaobjectyes
change.todayobjectyes
change.islandobjectyes
change.billingobjectyes
change.createdAtstring (date-time)yes
stateobjectyes
state.workspaceIdstringyesat least 1 characters
state.versionintegeryesat least 0
state.plan"free" · "maker" · "team" · "business" · "sovereign"yes
state.planSource"default" · "set"yes
state.currency"EUR" · "USD" · "KZT"yes
state.timezonestringyesat least 1 characters
state.periodobjectyes
state.allocationsobject[]yes
state.usageobject[]yes
state.quotasobject[]yes
state.landobjectyes
state.monthlyobject or nullyes
state.budgetobject or nullyes
state.canChangebooleanyes
state.canChangePlanbooleanyes
state.autoscaleobjectyes
state.recommendationsobject[]yes

…and 4 more fields. The full schema is in openapi.json.

Errors: 400, 401, 403, 404, 409, 429 (the error format is on the overview).

PUT /v1/workspaces/{ws}/capacity/autoscale

Save autopilot settings (admins). Planned: nothing acts on them yet.

  • Authentication: the console’s session cookie.
  • Token: not available. This route is for a signed-in person in the console (403 console_only for a token).
  • Who: admin
ParameterInTypeRequiredNotes
wspathstringyes1 to 128 characters

Request body (application/json)

FieldTypeRequiredNotes
enabledbooleanyes
unitsobject[]yesup to 17 items
units[].kind"cpu_time" · "concurrency" · "runs" · "requests" · "egress_gb" · "storage_db_gb" · "storage_files_gb" · "ai_credits" · …yes
units[].minStepsintegeryes0 to 1000
units[].maxStepsintegeryes0 to 1000
schedulesobject[]yesup to 8 items
schedules[].kind"cpu_time" · "concurrency" · "runs" · "requests" · "egress_gb" · "storage_db_gb" · "storage_files_gb" · "ai_credits" · …yes
schedules[].daysinteger[]yesup to 7 items
schedules[].fromstringyes
schedules[].tostringyes
schedules[].addOnStepsintegeryes0 to 1000

Response 200

FieldTypeRequiredNotes
workspaceIdstringyesat least 1 characters
versionintegeryesat least 0
plan"free" · "maker" · "team" · "business" · "sovereign"yes
planSource"default" · "set"yes
currency"EUR" · "USD" · "KZT"yes
timezonestringyesat least 1 characters
periodobjectyes
period.startstring (date-time)yes
period.endstring (date-time)yes
period.daysInPeriodintegeryes28 to 31
period.dayintegeryes1 to 31
allocationsobject[]yes
allocations[].kind"cpu_time" · "concurrency" · "runs" · "requests" · "egress_gb" · "storage_db_gb" · "storage_files_gb" · "ai_credits" · …yes
allocations[].status"available" · "planned"yes
allocations[].gaugeKind"period" · "instant" · "stock"yes
allocations[].includednumberyesat least 0
allocations[].addOnStepsintegeryesat least 0
allocations[].stepSizenumberyesat least 0
allocations[].totalnumberyesat least 0
allocations[].periodTotalnumberyesat least 0
usageobject[]yes
usage[].kind"cpu_time" · "concurrency" · "runs" · "requests" · "egress_gb" · "storage_db_gb" · "storage_files_gb" · "ai_credits" · …yes
usage[].usednumber or nullyesat least 0
usage[].source"runs_table" · "baas_log" · "row_estimate" · "ledger" · "mock" · "none"yes
usage[].estimatebooleanyes
usage[].notestring or nullyes
usage[].measuredAtstring (date-time) or nullyes
quotasobject[]yes
quotas[].kind"cpu_time" · "concurrency" · "runs" · "requests" · "egress_gb" · "storage_db_gb" · "storage_files_gb" · "ai_credits" · …yes
quotas[].usednumber or nullyesat least 0

…and 18 more fields. The full schema is in openapi.json.

Errors: 400, 401, 403, 404, 409, 429 (the error format is on the overview).

PUT /v1/workspaces/{ws}/capacity/budget

Set the monthly add-on budget cap (owner). Nothing is bought above it.

  • Authentication: the console’s session cookie.
  • Token: not available. This route is for a signed-in person in the console (403 console_only for a token).
  • Who: owner
ParameterInTypeRequiredNotes
wspathstringyes1 to 128 characters

Request body (application/json)

FieldTypeRequiredNotes
capobject or nullyes
cap.currency"EUR" · "USD" · "KZT"yes
cap.minorintegeryes

Response 200

FieldTypeRequiredNotes
workspaceIdstringyesat least 1 characters
versionintegeryesat least 0
plan"free" · "maker" · "team" · "business" · "sovereign"yes
planSource"default" · "set"yes
currency"EUR" · "USD" · "KZT"yes
timezonestringyesat least 1 characters
periodobjectyes
period.startstring (date-time)yes
period.endstring (date-time)yes
period.daysInPeriodintegeryes28 to 31
period.dayintegeryes1 to 31
allocationsobject[]yes
allocations[].kind"cpu_time" · "concurrency" · "runs" · "requests" · "egress_gb" · "storage_db_gb" · "storage_files_gb" · "ai_credits" · …yes
allocations[].status"available" · "planned"yes
allocations[].gaugeKind"period" · "instant" · "stock"yes
allocations[].includednumberyesat least 0
allocations[].addOnStepsintegeryesat least 0
allocations[].stepSizenumberyesat least 0
allocations[].totalnumberyesat least 0
allocations[].periodTotalnumberyesat least 0
usageobject[]yes
usage[].kind"cpu_time" · "concurrency" · "runs" · "requests" · "egress_gb" · "storage_db_gb" · "storage_files_gb" · "ai_credits" · …yes
usage[].usednumber or nullyesat least 0
usage[].source"runs_table" · "baas_log" · "row_estimate" · "ledger" · "mock" · "none"yes
usage[].estimatebooleanyes
usage[].notestring or nullyes
usage[].measuredAtstring (date-time) or nullyes
quotasobject[]yes
quotas[].kind"cpu_time" · "concurrency" · "runs" · "requests" · "egress_gb" · "storage_db_gb" · "storage_files_gb" · "ai_credits" · …yes
quotas[].usednumber or nullyesat least 0

…and 18 more fields. The full schema is in openapi.json.

Errors: 400, 401, 403, 404, 409, 429 (the error format is on the overview).

POST /v1/workspaces/{ws}/capacity/preview

Price, land and problems of a capacity change; writes nothing.

  • Authentication: the console’s session cookie.
  • Token: not available. This route is for a signed-in person in the console (403 console_only for a token).
  • Who: member
ParameterInTypeRequiredNotes
wspathstringyes1 to 128 characters

Request body (application/json)

FieldTypeRequiredNotes
basedOnVersionintegeryesat least 0
idempotencyKeystring8 to 128 characters
plan"free" · "maker" · "team" · "business" · "sovereign"
linesobject[]yesup to 17 items
lines[].kind"cpu_time" · "concurrency" · "runs" · "requests" · "egress_gb" · "storage_db_gb" · "storage_files_gb" · "ai_credits" · …yes
lines[].addOnStepsintegeryes0 to 100000

Response 200

FieldTypeRequiredNotes
basedOnVersionintegeryesat least 0
planobjectyes
plan.from"free" · "maker" · "team" · "business" · "sovereign"yes
plan.to"free" · "maker" · "team" · "business" · "sovereign"yes
linesobject[]yes
lines[].kind"cpu_time" · "concurrency" · "runs" · "requests" · "egress_gb" · "storage_db_gb" · "storage_files_gb" · "ai_credits" · …yes
lines[].fromStepsintegeryesat least 0
lines[].toStepsintegeryesat least 0
lines[].fromTotalnumberyesat least 0
lines[].toTotalnumberyesat least 0
lines[].monthlyDeltaobjectyes
lines[].todayobjectyes
lines[].effective"now"yes
lines[].periodFromTotalnumberat least 0
lines[].periodToTotalnumberat least 0
monthlyobject or nullyes
monthly.fromobjectyes
monthly.toobjectyes
monthly.deltaobjectyes
todayobject or nullyes
today.currency"EUR" · "USD" · "KZT"yes
today.minorintegeryes
prorationobjectyes
proration.daysChargedintegeryesat least 0
proration.daysCreditedintegeryesat least 0
proration.daysInPeriodintegeryes
landobjectyes
land.fromobjectyes
land.toobjectyes
land.entitledFromintegeryesat least 0

…and 7 more fields. The full schema is in openapi.json.

Errors: 400, 401, 403, 404, 409, 429 (the error format is on the overview).

GET /v1/workspaces/{ws}/usage

Daily usage per resource (measured or labelled estimate).

  • Authentication: the console’s session cookie.
  • Token: not available. This route is for a signed-in person in the console (403 console_only for a token).
  • Who: member
ParameterInTypeRequiredNotes
wspathstringyes1 to 128 characters
rangequery"7d" · "30d" · "90d"default "30d"

Response 200

FieldTypeRequiredNotes
range"7d" · "30d" · "90d"yes
fromstring (date)yes
tostring (date)yes
timezonestringyesat least 1 characters
unitsobject[]yes
units[].kind"cpu_time" · "concurrency" · "runs" · "requests" · "egress_gb" · "storage_db_gb" · "storage_files_gb" · "ai_credits" · …yes
units[].source"runs_table" · "baas_log" · "row_estimate" · "ledger" · "mock" · "none"yes
units[].estimatebooleanyes
units[].notestring or nullyes
units[].pointsobject[]yesup to 93 items

Errors: 400, 401, 403, 404, 409, 429 (the error format is on the overview).

Type to search. Up and down to choose, Enter to open, Esc to close.