
Wat de API doet
De Murmel API (v1) is een REST API. Je stuurt een audiobestand naar één endpoint en krijgt de volledige tekst terug, plus de zinnen met begin- en eindtijd en, als je dat wilt, de spreker per zin. Achter de API draait murmel-flash, het eigen model van Murmel, dat vanaf nul is getraind op Nederlandse spraak met Engels als tweede taal. Op vier open Nederlandse benchmarks maakt het grootste model de minste fouten van de zeven geteste modellen; de meting staat in het verslag over Murmel v5.
- Talen: Nederlands en Engels (language=nl of en). Geen andere talen en geen vertaling.
- Sprekerherkenning: per aanvraag aan of uit met identify_speakers.
- Woordenlijst: standaard de lijst uit je profiel, of per aanvraag een eigen lijst met hotwords. Zie eigen woordenlijst.
- Formaten: wav, mp3, m4a, webm, ogg, flac en meer.
- Lengte: tot 3 uur audio per aanvraag. Langere opnames splits je zelf, of je uploadt ze in de Studio, die ze automatisch opdeelt.
Aan de slag in vijf minuten
- Maak een account en bevestig je e-mailadresDe API gebruikt hetzelfde tegoed als de Studio: een abonnement of losse credits.
- Maak een API-sleutelGa in de app naar de pagina Ontwikkelaar en maak een sleutel aan. Murmel bewaart sleutels alleen gehasht, dus kopieer hem meteen.
- Installeer de SDKpip install murmel, of roep de REST API direct aan met curl of je eigen HTTP-client.
# pip install murmel
from murmel import Murmel
client = Murmel(api_key="murmel_sk_...")
result = client.transcribe(
"interview.mp3",
language="nl",
identify_speakers=True,
hotwords=["Rijkswaterstaat", "Gemeente Utrecht"],
)
print(result.text)
for segment in result.segments or []:
print(f"[{segment.start:.1f}s] {segment.speaker}: {segment.text}")Zonder SDK stuur je een POST naar https://api.murmel.eu/v1/transcribe met het bestand als formulierveld audio en je sleutel in de header X-API-Key. Alle endpoints en velden staan in de API-documentatie.
Wachten of een webhook
Een gewone aanvraag wacht op het resultaat, tot maximaal 10 minuten. Voor lange bestanden of veel bestanden tegelijk is een webhook handiger. Geef een callback_url mee (een publieke https-URL) en de aanvraag komt meteen terug met status "pending". Zodra het transcript klaar is, stuurt Murmel het met een POST naar jouw endpoint, met het event transcription.completed of transcription.failed.
- Elke webhook is ondertekend met een HMAC-SHA256-handtekening in de header X-Murmel-Signature. De SDK controleert die met verify_webhook.
- Antwoordt je server niet met een 2xx-status, dan probeert Murmel het tot zes keer opnieuw, verspreid over ongeveer twee uur.
- Met een Idempotency-Key kun je een aanvraag veilig herhalen: binnen 24 uur krijg je met dezelfde sleutel dezelfde transcriptie terug, zonder opnieuw te betalen. Hetzelfde bestand met dezelfde instellingen nog een keer sturen kost ook geen minuten.
Niets opslaan met store=false
Standaard komt een transcriptie via de API ook in je geschiedenis in de Studio. Verwerk je gevoelige audio, stuur dan store=false mee. Dan wordt alles verwijderd zodra je het resultaat hebt opgehaald, en uiterlijk een uur nadat de transcriptie klaar is. De audio wordt in Nederland verwerkt, net als in de Studio. Meer over waar je data staat op beveiliging en privacy.
Prijs en limieten
Je betaalt per minuut audio, net als in de Studio. Met losse credits is dat €1,45 per uur incl. btw (vanaf €6,05), met Basic heb je 12 uur per maand voor €10,89 incl. btw. Bestandsgrootte, aanvragen per uur en het aantal gelijktijdige transcripties hangen af van je abonnement; losse credits tellen als Basic. Wordt een limiet bereikt, dan krijg je een duidelijke foutmelding (HTTP 429). Zie prijzen. Heb je grotere volumes, een SLA of een verwerkersovereenkomst nodig, neem dan contact op.
Veelgestelde vragen
Is er een SDK voor andere talen dan Python?
Er is een officiële SDK voor Python. Vanuit andere talen roep je de REST API direct aan; het is een gewone multipart-upload met een API-sleutel in de header.
Kan ik de API gebruiken met losse credits?
Ja. De API gebruikt hetzelfde tegoed als de Studio, of dat nu een abonnement is of losse credits.
Waar wordt de audio verwerkt?
In Nederland. Opslag en servers staan bij Scaleway in Nederland, het rekenwerk draait op GPU's van Leafcloud in Amsterdam. Zie beveiliging en privacy.