WhipScribe › For AI agents
For AI agents

How does an AI agent create a WhipScribe API key and keep it topped up?

Signed in to an account with API access (the $24 pack or Workspace), open whipscribe.com/apis/keys, choose “Sign in & create a key”, name the key and press “Create key”. The key is shown once: store it as WHIPSCRIBE_API_KEY. Send it in the X-API-Key header. GET /v1/credits returns the hours left; when a job comes back locked, add credit and fetch it again.

Checked 5 October 2026 · Markdown version · instructions for agents

Steps

  1. Have API access on the account. API access comes with the 5,000-minute pack ($24) or the Workspace plan ($19/month). The smaller packs work on the website and do not include API keys. See whipscribe.com/agents/buy-credits.
  2. Create the key. Open whipscribe.com/apis/keys and choose “Sign in & create a key”. In the workspace's “Business APIs” panel, type a name (for example production, staging or ci) and press “Create key”.
  3. Store it immediately. The key is displayed once. Put it in an environment variable or a secret store, never in a repository, a web page or a chat transcript.
    export WHIPSCRIBE_API_KEY="paste-the-key"
  4. Check the balance. payg_hours_remaining is the pack credit left, in hours.
    curl -s https://whipscribe.com/api/v1/credits -H "X-API-Key: $WHIPSCRIBE_API_KEY"
  5. Transcribe something. Submit a link, poll the job, fetch the result.
    export WHIPSCRIBE_API_KEY="paste-the-key"
    
    # 1. Balance: hours of transcription left on the account
    curl -s https://whipscribe.com/api/v1/credits \
      -H "X-API-Key: $WHIPSCRIBE_API_KEY"
    
    # 2. Send a link; a job_id comes back straight away
    curl -s https://whipscribe.com/api/v1/transcribe/url \
      -H "X-API-Key: $WHIPSCRIBE_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{"url": "https://www.archive.org/download/testmp3testfile/mpthreetest.mp3"}'
    
    # 3. Poll every few seconds until "status" is "done"
    curl -s https://whipscribe.com/api/v1/jobs/$JOB_ID \
      -H "X-API-Key: $WHIPSCRIBE_API_KEY"
    
    # 4. Fetch the transcript (format=txt | json | srt | vtt | docx)
    curl -s "https://whipscribe.com/api/v1/jobs/$JOB_ID/result?format=txt" \
      -H "X-API-Key: $WHIPSCRIBE_API_KEY"

What we checked

On 5 October 2026 an automated browser created a key this way with no person involved, and the key then worked from curl: the balance call returned the account's hours, a submitted link came back as a job, the job reached done in seconds and the transcript downloaded as text. The balance fell by the length of the audio.

When the balance runs out

A job that finishes with no credit left is kept, not lost. Its status carries "locked": true and an unlock_url. format=json still returns the opening part as a preview; other formats and the summary answer 402 with the code transcript_locked until the account has credit.

What an agent should do: stop submitting, tell the person the balance is empty and give them the pack link (whipscribe.com/credits?sku=mini-4 for the smallest), then poll GET /v1/credits every minute or so. When the balance is positive, fetch the same job again; it opens in full. Nothing needs to be re-uploaded.

# 402 on a locked transcript (main fields)
{"error": "This transcript is locked. Add credits to download it.",
 "code": "transcript_locked",
 "upgrade_url": "https://whipscribe.com/pricing?src=locked-transcript"}

Rules worth encoding in the agent

The full reference

Every endpoint, field and error code: whipscribe.com/docs. Machine-readable: whipscribe.com/openapi.json (OpenAPI 3.0, 12 operations).

Questions

Can an agent create an API key through the API?

No. Keys are created in the signed-in workspace, at whipscribe.com/apis/keys. A browser agent can do it; an agent that only makes HTTP calls needs the person to create the key and hand it over.

How does an agent check how much credit is left?

GET whipscribe.com/api/v1/credits with the X-API-Key header. payg_hours_remaining is pack credit in hours; the workspace object says whether the unlimited plan is active.

What does a 402 from the WhipScribe API mean?

The transcript exists but the account had no credit when it finished, so it is locked (code transcript_locked). Add credit to the account and request it again; it opens in full.

Is there a free API tier?

No. API access comes with the 5,000-minute pack ($24) or the Workspace plan ($19/month), and usage comes out of the same balance as the website.

What if the key leaks?

Revoke it in the same panel; it stops working immediately. Create a new one. Anyone holding a key can spend the account's balance, so treat it like a password.

Keep reading

WhipScribe for AI agents: the overview How does an AI agent create a WhipScribe account? How does an AI agent buy WhipScribe credit? How do I get Claude or Claude Code to transcribe with WhipScribe? How do I get ChatGPT to transcribe with WhipScribe? How do I get Cursor or a coding agent to use the WhipScribe API? How do I get an n8n, Make or Zapier agent to transcribe with WhipScribe? How do I transcribe from an Apify Actor or an Apify-based agent? API docsPricing
Start with the pack that includes API access

API access comes with the 5,000-minute pack ($24) or the Workspace plan ($19/month). Credits never expire, and the same balance serves the website and the API.

Open the pack →