Genel Kullanımı

Bu API sadece İngilizce desteklemektedir.

Bu API ile İngilizce ses dosyalarını (mp3, wav ve flac) yazı formuna dönüştürebilirsiniz.

Bu API'nin kullanımı için bir API anahtarı gereklidir. API anahtarını https://api.benegedeniz.com/buy/speech-to-text/ bağlantısı üzerinden edinebilirsiniz.

Bu API sadece İngilizce ve Türkçe ses dosyalarını çevirebilir.

Bu API maksimum 20 saniyelik dosyalar kabul eder.

İstek bilgileri

API Uçnoktası:

Türkçe:

https://api.benegedeniz.com/speech-to-text/v1/recognize/tr

İngilizce:

https://api.benegedeniz.com/speech-to-text/v1/recognize/en

Bu API sadece POST metodunu kabul etmektedir.

Gönderilecek başlıklar:

Başlık

İçerik

Content-Type

audio/mpeg veya audio/flac veya audio/wav

Authorization

apikey API_ANAHTARI

Parametreler:

Bu API bir parametre istemez. Ses dosyasını body olarak göndermelisiniz. Aynı zamanda body olarak bir ses URL'si gönderirseniz, o URL içerisindeki ses dönüştürülür.

PHP örneği aşağıdadır.

PHP Örneği (Düz ses dosyası):

<?php
$body = file_get_contents("ses/dosyasi/yolu/ses.mp3");
$headers = [
"Content-Type: audio/mpeg",
"Authorization: apikey API_ANAHTARI"
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, "https://api.benegedeniz.com/speech-to-text/v1/recognize/en");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_USERAGENT, "BenEgeDeniz API");
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $body);
$result = curl_exec($ch);
curl_close($ch);
echo $result;
?>

PHP Örneği (URL'den ses dosyası):

<?php
$body = "https://api.benegedeniz.com/speech-to-text/adsiz.mp3";
$headers = [
"Content-Type: audio/mpeg",
"Authorization: apikey API_ANAHTARI"
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, "https://api.benegedeniz.com/speech-to-text/v1/recognize/en");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_USERAGENT, "BenEgeDeniz API");
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $body);
$result = curl_exec($ch);
curl_close($ch);
echo $result;
?>

Dönütler

Yanlış metot:

{"status":"error","message":"Only POST method is allowed."}

Eksik başlık:

{"status":"error","message":"Missing headers."}

Geçersiz Content-Type başlığı:

{"status":"error","message":"Invalid content type. Content type can be: audio/flac, audio/mpeg, audio/wav"}

Geçersiz API anahtarı:

{"status":"error","message":"Invalid API key."}

Body gönderilmedi:

{"status":"error","message":"No audio sent."}

Gönderilen dosya, API anahtarı için belirlenmiş boyut limitini aştı:

{"status":"error","message":"Audio file exceeds API_ANAHTARININ_BOYUT_LİMİTİ byte file size limit."}

20 saniye limiti aşıldı:

{"status":"error","message":"Audio exceeded 20 seconds limit."}

Başarılı:

{"status":"success","transcript":"DÖNÜŞTÜRÜLMÜŞ YAZI"}