Skip to content

Usage ​

Minutes, period and limits for the key's account.

Operations ​

GET Minutes, period and limits for this account ​

GET /v1/usage

Read limits.perFileMinutes before a long upload; minutes.remaining is what a job may still cost (plan allowance plus purchased credit).

Responses

StatusMeaningBody
200The account's usage.Usage
401The API key is missing, malformed, unknown, revoked, expired, or for the other environment (invalid-api-key).Problem
429Over 120 requests/minute for this key (rate-limited). Honour Retry-After.Problem
500Usage could not be read (internal).Problem
bash
curl "https://api.esfera.audio/v1/usage" \
  -H "Authorization: Bearer $ESFERA_API_KEY"
js
import { Esfera } from "@esfera/sdk";

const esfera = new Esfera({ apiKey: process.env.ESFERA_API_KEY });

const usage = await esfera.usage.get();
python
import os
import requests

res = requests.get(
    "https://api.esfera.audio/v1/usage",
    headers={
        "Authorization": f"Bearer {os.environ['ESFERA_API_KEY']}",
    },
)
res.raise_for_status()
print(res.json())

Response · 200

json
{
  "plan": "pro",
  "period": {
    "resetsMonthly": true,
    "resetsAt": "2026-10-01T00:00:00Z"
  },
  "minutes": {
    "used": 140,
    "included": 600,
    "remaining": 460,
    "planRemaining": 460,
    "credit": 0
  },
  "limits": {
    "perFileMinutes": 180,
    "perFileBytes": 107374182400,
    "concurrent": 1,
    "inFlight": 0,
    "rateLimitPerMinute": 120,
    "retentionHours": 72
  }
}

Objects ​

Usage ​

FieldTypeRequiredDescription
planfree | creator | proyesThe account's plan.
periodobjectyes
minutesobjectyes
limitsobjectyes

Usage.period

FieldTypeRequiredDescription
resetsMonthlybooleanyesWhether the allowance refills every month.
resetsAtstring or nullyesFirst instant of next month (UTC) when the allowance refills; null for a one-time grant.

Usage.minutes

FieldTypeRequiredDescription
usedintegeryesMinutes used this period.
includedintegeryesMinutes the plan includes.
remainingintegeryesWhat a job may still cost: plan remaining plus purchased credit.
planRemainingintegeryesPlan minutes left.
creditintegeryesPurchased credit minutes left.

Usage.limits

FieldTypeRequiredDescription
perFileMinutesintegeryesLongest source accepted, in minutes.
perFileBytesintegeryesLargest source accepted, in bytes.
concurrentintegeryesConversions the account may run at once.
inFlightintegeryesConversions currently holding one of concurrent slots (uploading, analysing, analysed, queued or running). inFlight < concurrent means a create will not hit concurrency-limit.
rateLimitPerMinuteintegeryesRequests per minute for each key.
retentionHoursintegeryesHours an output stays available after the conversion is ready.

developers.esfera.audio · the Esfera Converter API, SDK and CLI