Pricing
Start free, pay-as-you-go. New accounts begin with free credits — no card required. When you need more, top up and pay only for what you use: $1 = 7,500 credits, and credits never expire. All API prices below are per minute of audio processed (input duration unless noted).Minimum top-up: 10,000.
Premium variants and modes. Some services charge a multiplier on the base
rate:
- Music Generation — AudioMusic Premium (
quality="premium"): 2× the base rate ($0.08/min). - Stem Separation — premium catalog selections: separations that run on the premium engine bill at 1.5× (0.20/min).
single, two, four, six, producer, studio,
mastering — bills at the base $0.10/min.TTS billing model. API wallet bills TTS by the duration of the generated
audio, not by character count. The per-character rate shown elsewhere in the
docs applies to account-credit billing (subscription plans), not to API-wallet
billing.
Noise Reduction is currently billed from your account credit balance
(subscription plan credits), not from the API wallet. To use noise reduction
programmatically, sign in to your account and obtain a session — the API-key
- wallet path for denoising is not yet enabled.
Check Balance
- cURL
- Python
- Node.js
Add Funds
- cURL
- App
url in your browser to complete payment.Automatic Top-Up
Automatic top-up keeps long-running and unattended integrations from stalling on an empty wallet. Once it is on, we watch your balance as calls come in — the moment it would drop below your threshold, we charge a saved card for your chosen amount and credit the wallet. The wallet stays prepaid: funds are added before they are spent. Nothing is ever billed after the fact, and every automatic charge sends you a receipt by email.One-time browser step
A card can only be saved from a browser. Card details are entered on a secure hosted form run by our payment provider — they never pass through the AudioPod API, and they can never be sent with an API key. This is a card-industry requirement (and the reason bank verification prompts can appear), not an AudioPod restriction. So arming automatic top-up is a two-part flow:- Once, in a browser — save a card, either from
API Keys →
Automatic top-up → Add card, or by calling
POST /auto-topup/payment-method-sessionfrom a signed-in session and opening the returnedurl. - From then on, over the API — read the configuration, tighten the limits, or switch it off with a plain API key.
Read the configuration
limits rather than hard-coding them — they are the
authoritative ranges and can change without a breaking API version.
Update the configuration
Every field is optional; send only what you want to change.
Returns the full configuration object shown above.
The automatic minimum (1) on
purpose. Card processing has a flat component, so a $1 automatic recharge
spends a third of itself on fees. Larger, less frequent top-ups keep more of
your money in the wallet.
Save or replace a card
Call this from a signed-in dashboard session and send the browser to the returnedurl. The link is single-use and short-lived; expires_at is a Unix
timestamp.
Turn it off
DELETE switches automatic top-up off and forgets the saved card. It
returns the resulting configuration, with enabled: false and
has_payment_method: false. Your balance and manual top-up are untouched.
PUT {"enabled": false} instead.
Guardrails
Two independent ceilings bound what a runaway loop can spend. Both are enforced server-side, and a charge that would cross either is simply not placed.day_charge_count and month_charged_cents in the response tell you how much
headroom is left against each. When a ceiling is reached, automatic top-up stops
for the period but stays armed — nothing is disabled, and manual top-up still
works.
When a charge fails
A declined charge is retried on a widening schedule, then automatic top-up switches itself off rather than hammering your card:- First failure — retried about an hour later.
- Second failure — retried about six hours after that.
- Third failure — automatic top-up is switched off and we email you.
next_attempt_at holds the earliest time we will try
again and consecutive_failures counts the run. A successful charge resets both.
Some failures skip the retries and disable immediately, because a retry cannot
possibly clear them — most commonly when your bank requires you to confirm the
card in person, which is impossible for a charge placed while you are away.
When automatic top-up disables itself, disabled_reason and disabled_at
explain what happened. Save the card again (or replace it) and turn automatic
top-up back on.
Estimate Cost
Calculate cost before processing (no auth required):Usage History
Get Pricing (No Auth)
Error Handling
Example 402 response:
Next Steps
Quick Start
Make your first API call
Stem Separation
Most popular API
