Skip to main content

How to Generate Podcasts with the Podhoc API: A Complete Walkthrough

Generate AI podcasts programmatically with the Podhoc REST API. Authentication, the create-poll-download lifecycle, rate limits, credit estimation.

An active or trialing Pro subscription is required to create or rotate either test or production tokens. Test tokens spend real account credits; this is not a free sandbox. Keep keys on your server and out of browser code, URLs, logs and repositories.

Sources must be supported publicly reachable URLs. The API does not accept uploaded files or pasted text. Do not make confidential documents public to use this endpoint.

Safe first request

This example uses a fictional public source. It creates audio and spends credits: first read the balance and estimate, then approve a budget. The one-voice, five-minute example is 72 credits at the default test multiplier; use the returned estimate if runtime settings differ.

Save a new Idempotency-Key for each intended generation before sending. Retry an uncertain request with the same key and identical payload. The original receipt is reused; a changed payload with the same key returns 409. Do not invent a new key merely because a response timed out.

API · OpenAPI v1

Limits and pricing

Test: 2 requests/minute, 20/hour, 1 concurrent generation, at most 5 minutes, 1 URL and English. Production: 30/minute, 300/hour and 5 concurrent generations, subject to Pro feature limits. Read Retry-After on 429.

Standard base: max(36, ceil(minutes × 10 / 3)). Multiple sources add 27 credits; custom weights add 13; multiple standard voices multiply the subtotal by 1.2, with rounding and the applicable generation cap. API pricing then applies the account/token multiplier: defaults 2× test, 3.5× production. Runtime configuration can change these values. A 30-minute, one-source, one-voice production example is 100 base × 3.5 = 350 credits. A test token cannot request 30 minutes.

Use estimate-cost with the same settings and inspect final_credits and credit_multiplier. Check the resulting balance before approval. Generation duration is approximate; credits price the requested settings, not the final audio stopwatch. Extra options can change the quote.

Status, download and failure

Poll test tokens no faster than every 240 seconds, at most 12 times, reserving hourly capacity for other requests. For production, use a bounded backoff and respect rate headers. If still pending, save the podcast ID and resume later; do not create a duplicate. No completion webhook is promised by this reference.

Download only after completed. Failed generation should show a terminal reason; inspect the account balance/refund state before a new attempt. A download URL is temporary and private: do not publish it or store it as a permanent asset address.

Private output, publication and deletion

Output defaults to public. Creator and Pro can choose private creation before generating; private episodes can later be published with rights confirmation. Production API requests respect the subscribed owner’s choice; test tokens cannot publish. For private creation, explicitly send auto_publish=false using your Pro account.