The docs' own sentence
ذهب الطالب الى المدرسة
ذَهَبَ الطَّالِبُ إِلَى المَدْرَسَةِ
dhahaba ṭ-ṭālibu ilā l-madrasati
Four case endings the reader would have to supply.
Tashkīl and Arabic tools
One POST adds the diacritics a reader, a learner or a voice needs to say the text as written. On the same key: translation that streams, sentiment and keywords on any transcript.
curl -X POST "https://api.munsit.com/api/v1/tashkil/diacritize" \
-H "x-api-key: $MUNSIT_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "text": "ذهب الطالب الى المدرسة" }'Unvoweled Arabic leaves the reader to infer the case endings and, now and then, which word it is. The response returns the original and the vowelled text together, so you can show both or diff them.
Tashkeel for Modern Standard Arabic.
# one call; three sentences it settles curl -X POST "https://api.munsit.com/api/v1/tashkil/diacritize" -H "x-api-key: $MUNSIT_API_KEY" -H "Content-Type: application/json" -d '{ "text": "…" }'
ذهب الطالب الى المدرسة
ذَهَبَ الطَّالِبُ إِلَى المَدْرَسَةِ
dhahaba ṭ-ṭālibu ilā l-madrasati
Four case endings the reader would have to supply.
أعلنت الوزارة عن خطة جديدة للتعليم
أَعْلَنَتِ الوِزَارَةُ عَنْ خُطَّةٍ جَدِيدَةٍ لِلتَّعْلِيمِ
aʿlanati l-wizāratu ʿan khuṭṭatin jadīdatin li-t-taʿlīm
Formal wording kept; the joins between words voiced.
قرأ الطفل الكتب في المكتبة
قَرَأَ الطِّفْلُ الكُتُبَ فِي المَكْتَبَةِ
qaraʾa ṭ-ṭiflu l-kutuba fī l-maktabati
كتب alone could be four words. The marks pick one.
Three places where the vowels are the difference between text that can be read and text that can only be guessed at.
Fusha scripts diacritized before synthesis, so the voice reads every ending as written.
Learners see the pronunciation on the page instead of inferring it.
Formal Arabic normalised before it goes out, in one synchronous call.
Vowelled text is the input speech wants. Three calls take a paragraph from plain text to a narrated clip with every word timed.
Send the plain Fusha; read data.diacritized_text.
POST /tashkil/diacritizeFeed the vowelled text straight to a voice. Streamed, the first chunk plays before the rest exists.
POST /text-to-speech/{model_id}The same request with timestamps returns the audio and a character-level alignment.
POST /text-to-speech/{model_id}/with-timestampsFour more endpoints on the same key. Three run on a transcript or a recording you already have; one on any text you send.
Any language to any other, streamed over Server-Sent Events so the first words land while the rest are generated. Source language detected.
POST /translation/streamSentiment and keywords run on the transcript, after it is written. Tone, emotions and trends, read with Arabic's cultural context.
POST /audio/{transcriptionId}/sentiment-analysisPeople, organisations, terms, topics and the numbers that matter, grouped, from a meeting's minutes.
POST /minutes-of-meeting/{transcriptionId}/keyword-extractionKeep the voice, drop the noise. Up to 200 MB and 15 minutes per file. MP3, WAV, OGG, MP4, MOV, MKV, WebM.
POST /denoisePlain Fusha in, the same text back with its marks. Try it for free.