Skip to content

The project’s quotas and what is left

GET
/v1/quotas
curl --request GET \
--url https://beta-api.plune.ai/v1/quotas \
--header 'Authorization: Bearer <token>'

Each ceiling of the project with limit, used, remaining and resetsAt — the numbers a write is judged by, so a refusal is never a surprise. The run quota is a rolling 24 hours (resetsAt is when its oldest run ages out); the case and review-queue quotas are working sets that only an action shrinks (resetsAt is null). A reader of the project may call it: a project over a quota can still see why.

The quotas

Media type application/json
object
quotas
required
object
runsPerDay
required
object
limit
required

The ceiling. A write that would take used past it is refused with 429.

integer
used
required

What the project holds now, counted by the same query that refuses a write.

integer
remaining
required

limit - used, never below 0.

integer
resetsAt
required

When the oldest counted run ages out of the rolling 24 hours and a slot frees on its own. null for the two quotas only an action frees (delete cases, decide queue items), and for a run quota with no runs in the window.

string | null format: date-time
testCasesPerProject
required
object
limit
required

The ceiling. A write that would take used past it is refused with 429.

integer
used
required

What the project holds now, counted by the same query that refuses a write.

integer
remaining
required

limit - used, never below 0.

integer
resetsAt
required

When the oldest counted run ages out of the rolling 24 hours and a slot frees on its own. null for the two quotas only an action frees (delete cases, decide queue items), and for a run quota with no runs in the window.

string | null format: date-time
bugsPerProject
required
object
limit
required

The ceiling. A write that would take used past it is refused with 429.

integer
used
required

What the project holds now, counted by the same query that refuses a write.

integer
remaining
required

limit - used, never below 0.

integer
resetsAt
required

When the oldest counted run ages out of the rolling 24 hours and a slot frees on its own. null for the two quotas only an action frees (delete cases, decide queue items), and for a run quota with no runs in the window.

string | null format: date-time
pendingReviewItems
required
object
limit
required

The ceiling. A write that would take used past it is refused with 429.

integer
used
required

What the project holds now, counted by the same query that refuses a write.

integer
remaining
required

limit - used, never below 0.

integer
resetsAt
required

When the oldest counted run ages out of the rolling 24 hours and a slot frees on its own. null for the two quotas only an action frees (delete cases, decide queue items), and for a run quota with no runs in the window.

string | null format: date-time
Example generated
{
"quotas": {
"runsPerDay": {
"limit": 1,
"used": 1,
"remaining": 1,
"resetsAt": "2026-04-15T12:00:00Z"
},
"testCasesPerProject": {
"limit": 1,
"used": 1,
"remaining": 1,
"resetsAt": "2026-04-15T12:00:00Z"
},
"bugsPerProject": {
"limit": 1,
"used": 1,
"remaining": 1,
"resetsAt": "2026-04-15T12:00:00Z"
},
"pendingReviewItems": {
"limit": 1,
"used": 1,
"remaining": 1,
"resetsAt": "2026-04-15T12:00:00Z"
}
}
}

No / invalid token or session