For Developers
Account

Billing

Read your usage totals for a billing period and the current unit prices.

These read-only routes report what your account has used and what each billable item costs. All money values are decimal amounts in US dollars, not cents.

EndpointRequest
Get usage summaryGET/v1/billing/usage
Get pricingGET/v1/billing/pricing

The usage summary object

Fields use camelCase, but the keys inside usageByType are snake_case usage types.

Attributes

billingPeriodobjectrequired
The period covered, described below.
usageByTypeobjectrequired
Usage per type, described below.
totalAmountnumberrequired
The total charge across all usage types, in US dollars.
totalRecordsintegerrequired
The total number of usage records across all types.

billingPeriod attributes

startstringrequired
ISO 8601 start of the period.
endstringrequired
ISO 8601 end of the period.
yearintegerrequired
The UTC year of the period's start.
monthintegerrequired
The UTC month of the period's start, from 1 to 12.

Each key in usageByType holds an object with three fields:

Usage type attributes

quantitynumberrequired
The units used. See the unit for each type below.
totalAmountnumberrequired
The charge for this type, in US dollars.
recordCountintegerrequired
The number of usage records for this type.

usageByType keys

call_minutesobject
Calls. quantity is in minutes, and each call's duration is rounded up to a whole minute when it's billed.
structured_output_analysisobject
Call analysis. quantity counts analysis results.
phone_number_purchaseobject
One-time phone number charges.
phone_number_monthlyobject
Monthly phone number charges.
voice_clone_instantobject
Instant voice clones.
voice_clone_professionalobject
Professional voice clones.
message_sentobject
Messages sent.

Get usage summary

GET/v1/billing/usageread key

Returns usage totals for a period. Every usage type is present, with zeros when there is no usage.

Query parameters

periodstringdefault current_month
current_month runs from the start of this UTC month until now. last_month is the whole previous UTC month. last_30_days is the 30 days up to now.

An unknown period returns 400.

Request
curl "https://backend.synthesys.app/api/v1/billing/usage?period=last_month" \
  -H "SYNTH_API_KEY: YOUR_API_KEY"
Response
{
  "success": true,
  "data": {
    "billingPeriod": {
      "start": "2026-09-01T00:00:00.000Z",
      "end": "2026-09-30T23:59:59.999Z",
      "year": 2026,
      "month": 9
    },
    "usageByType": {
      "call_minutes": { "quantity": 412, "totalAmount": 123.6, "recordCount": 96 },
      "structured_output_analysis": { "quantity": 96, "totalAmount": 9.6, "recordCount": 96 },
      "phone_number_purchase": { "quantity": 0, "totalAmount": 0, "recordCount": 0 },
      "phone_number_monthly": { "quantity": 0, "totalAmount": 0, "recordCount": 0 },
      "voice_clone_instant": { "quantity": 0, "totalAmount": 0, "recordCount": 0 },
      "voice_clone_professional": { "quantity": 0, "totalAmount": 0, "recordCount": 0 },
      "message_sent": { "quantity": 0, "totalAmount": 0, "recordCount": 0 }
    },
    "totalAmount": 133.2,
    "totalRecords": 192
  }
}

Get pricing

GET/v1/billing/pricingread key

Returns the current unit prices as an object that maps each price type to a number in US dollars. The response doesn't include a currency field.

Price types

call_per_minutenumberrequired
Price per minute of a call.
phone_number_purchasenumberrequired
One-time fee per phone number.
phone_number_monthlynumberrequired
Monthly fee per phone number.
voice_clone_instantnumberrequired
Price per instant voice clone.
voice_clone_professionalnumberrequired
Price per professional voice clone.
message_per_messagenumberrequired
Price per message.
structured_output_analysisnumberrequired
Price per call analysis result.

The sample below shows the format, so read the route for current prices.

Request
curl https://backend.synthesys.app/api/v1/billing/pricing \
  -H "SYNTH_API_KEY: YOUR_API_KEY"
Response
{
  "success": true,
  "data": {
    "call_per_minute": 0.3,
    "phone_number_purchase": 0,
    "phone_number_monthly": 20,
    "voice_clone_instant": 1,
    "voice_clone_professional": 5,
    "message_per_message": 0.05,
    "structured_output_analysis": 0.1
  }
}