Encode the MP3 bytes as Base64 and set lang to the language spoken in the challenge. Do not put an audio URL or filename into the audio field. Check the language codes in the parameters below.
Each task reserves $0.015 from your wallet. Successful tasks cost 1.5 times the provider cost; unused reserved credit is returned. Failed tasks are not charged. Billing details
Only MP3 audio is accepted.
Choose the correct language to improve transcription quality.
Trim long silence before uploading when possible.
For the complete examples, prepare challenge.mp3. You can change these filenames in the code.
Spoken language. Supports en, fr, de, el, pt, and ru. Defaults to en.
Decoded file limits use 1 KB = 1,000 bytes. The complete JSON payload must fit within 5,000,000 bytes after Base64 encoding.
03 / Result
Understand the result
Creation returns HTTP 201. Fetching the task returns HTTP 200. Both wrap the task in task; always check its status before reading the solution.
Read the transcript from solution.text. Spoken digits may produce a string with leading zeros, so keep the answer as text. The API returns the recognized answer, not a new audio file.
Saved instructions and input metadata. Raw files are not returned.
04 / Integrate
Complete examples
These Node.js and Python scripts prepare the input, create one task and poll until it is ready or failed. They stop waiting after approximately 3 minutes. A client timeout does not cancel the task.
Set SCRAPINGBUDDY_API_KEY in your server environment.
Place the input files beside your script, or update the filenames.
For Node.js, use version 20+ and save as solve.mjs. For Python, install requests and save as solve.py.
Run the script and retain the printed request and task IDs.
cURL shows task creation only. Use the GET example to retrieve its result.
When something goes wrong
Check whether you received an HTTP error or a task with status: failed. Fix validation errors before retrying. For HTTP 429, pause for Retry-After; all requests share the account limit of 60 per minute.
If creation times out, do not automatically submit another task. Keep your request ID and check the existing task or Usage first.