From zero to your first transcription in minutes — no matter how you want to use Heify.
Heify turns voice recordings into structured data. You define what to extract, Heify does the rest: transcription, field extraction, AI summaries, quality scoring, and analytics — all through a pipeline you control.
Every transcription in Heify flows through the same building blocks:
Configuration
The template that defines how to process audio: what fields to extract, whether to summarize, which language, custom vocabulary, and webhooks.
Evaluator
An optional quality-scoring rubric. Define criteria with weights that sum to 100 — Heify scores every call against them automatically.
Participant
An optional person profile — a support agent, job candidate, salesperson, or any individual. Attach a participant to a transcription to track their performance over time.
Transcription
The result: full transcript, extracted fields, AI summary, evaluation score, and more — ready to query or export.
Only a Configuration is required. Evaluators and Participants are optional modules you can add when you need quality scoring or per-person performance tracking.
The Sandbox is Heify’s browser-based interface. No code required — create configurations, upload audio, and explore results in minutes.
1
Sign in
Go to sandbox.heify.com and enter your email address.Heify uses passwordless authentication — no passwords to set or remember. After you submit your email:
A 6-digit OTP code is sent to your inbox
Enter the code in the Sandbox (you have 3 minutes before it expires)
You’re in — your session lasts 30 days
You can paste the full 6-digit code directly into the first field and it fills in automatically.
2
Configure your API key
Before you can transcribe, the Sandbox needs an API key linked to your account.Open API Keys & Sandbox from the top-left menu (or follow the yellow banner on the Dashboard). Your sandbox key auto-provisions and auto-configures — no manual steps needed. The status indicator turns green: Ready.
Your sandbox key is automatically shared across devices. Log in from any browser and it’s already configured.
3
Create a Configuration
A Configuration tells Heify what to do with each audio file.
Go to Configurations → Create Configuration
Give it a Tag (a name, e.g. support-calls-v1)
Toggle Automatic Summary on if you want an AI-generated executive summary per call
Add Extraction Fields to pull structured data from conversations:
Use the Quick Actions shortcuts to add common fields (sentiment analysis, quality rating, next action) with a single click.
4
Transcribe your first audio
Go to Transcribe in the sidebar
Select your Configuration from the dropdown
(Optional) Select an Evaluator and/or a Participant if you have them
Choose how to submit:
Upload file — drag & drop or click to browse (MP3, WAV, MP4, WebM, AAC, and more)
URL — paste a public link to an audio file
Click Process
Once submitted, a link appears to open the transcription detail directly. The transcription is processed asynchronously — if you see a Processing status, wait a moment and click the Refresh button to check for updates.
5
Review your results
Once processing is complete (status: Completed), click the transcription to open the detail view:
Full transcript with speaker labels and timestamps
Extracted fields — the structured data you defined (e.g. resolved: true, call_reason: "billing issue")
AI Summary — if you enabled it in the configuration
Evaluation — score, pass/fail status, and per-criterion feedback (if you used an evaluator)
Export to PDF — the full report in one click
The Heify API lets you submit audio, retrieve results, and query analytics programmatically. All endpoints use POST and return a standard JSON envelope.
import requests, timedef wait_for_transcription(transcription_id, api_key): while True: response = requests.post( "https://api.heify.com/get-transcription", headers={ "Content-Type": "application/json", "x-api-key": api_key }, json={"transcription_id": transcription_id} ) result = response.json()["data"] status = result["status"] if status == "COMPLETED": return result elif status == "FAILED": raise Exception(result.get("error_message", "Transcription failed")) print(f"Status: {status} — waiting...") time.sleep(5)result = wait_for_transcription(transcription_id, "YOUR_API_KEY")
A completed transcription returns:
Response (200)
{ "data": { "transcription_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "status": "COMPLETED", "configuration_tag": "support-calls-v1", "name": "Support call 2024-01-15", "duration": 312.4, "language": "en", "transcript": "Agent: Thank you for calling. How can I help you today? Customer: Hi, I have an issue with my invoice...", "summary": "The customer called regarding a billing discrepancy on their January invoice. The agent resolved the issue by applying a correction credit.", "extraction": { "customer_sentiment": "NEGATIVE", "resolved": true }, "evaluation_score": null, "critical_fail_triggered": false, "group": null, "created_at": "2024-01-15T10:30:00.000000" }}
Instead of polling, configure a webhook on your Configuration (webhooks.success_url) to receive a POST notification the moment processing completes.