Hear2Text

Hatalar

Her reddedilen istek için tek bir gövde, dallanabileceğiniz sabit bir kod ve bize sorarken vereceğiniz bir istek id’si.

Hata gövdesi

Bu API’de reddedilen her istek, sebebi ne olursa olsun aynı iki alanı taşır. Ayrıca ele almanız gereken ikinci bir hata biçimi yok.

Herhangi bir 4xx ya da 5xx
{
  "error": "insufficient_scope",
  "message": "This key does not carry the scope this endpoint needs.",
  "required": "transcriptions:write"
}
  • error sabit ve makinenin okuyabileceği koddur. Akışınızı buna göre dallandırın.
  • message log okuyan bir insan için yazılır. Ayrıştırmayın; ifadesi her an değişebilir.
  • Bazı hatalar bir alan daha taşır: doğrulama hatasında errors, kapsam reddinde required, erişimi kesen 403’lerde docs.

Katalog

API’nin verebileceği bütün kodlar. Bu liste, API’nin karşısında test edildiği OpenAPI belgesinden üretilir; yani çalışan koddan ayrı düşemez.

HTTPerrorAnlamı
401missing_api_keyAuthorization başlığı yok. `Authorization: Bearer h2t_live_…` gönderin.
401invalid_api_keyAnahtar okunamıyor, tanınmıyor ya da iptal edilmiş; başka bir yerin kimlik bilgisi de olabilir. Yeniden denemenin faydası yok.
403subscription_requiredHesabın etkin aboneliği yok. Anahtar duruyor; abonelik geri geldiğinde yeniden çalışır.
403insufficient_scopeAnahtar, bu endpointin istediği kapsamı taşımıyor. Hangi kapsam olduğunu gövde yazar; o kapsamla yeni bir anahtar oluşturun.
403account_restrictedHesap kısıtlanmış. Destek ekibiyle iletişime geçin.
403guest_account_not_supportedMisafir hesaplar API’yi kullanamaz.
403workspace_scope_mismatchBu anahtar bir çalışma alanına sabitlenmiş, kayıt ise başka bir alanda.
403forbiddenSormaya yetkiniz var, bu kayda bunu yapmaya yok.
404not_foundBöyle bir kayıt yok ya da bu anahtarın göremeyeceği bir kayıt. İkisi bilerek ayırt edilemiyor.
409concurrency_limitPlanın aynı anda işleyebileceğinden fazla kayıt çalışıyor. Biri bitene kadar bekleyin.
409idempotency_key_reusedBu Idempotency-Key daha önce başka bir gövdeyle kullanılmış. Yeni bir değer üretin.
409idempotency_request_in_progressAynı Idempotency-Key ile gelen ilk istek henüz yanıtlanmadı. Birkaç saniye sonra tekrar deneyin.
409transcription_still_processingHenüz bitmemiş bir kayıt, yani sırada bekleyen ya da işlenmekte olan bir kayıt silinemez. Tamamlanmasını ya da başarısız olmasını bekleyin.
409transcription_is_not_readyYalnızca tamamlanmış bir kayıt dışa aktarılabilir.
413file_too_largeİstek gövdesi sunucunun hiç kabul etmediği bir büyüklükte. Kaydı sıkıştırın ya da bölün. Sunucuya ulaşan ama dosya başına tavanı aşan bir dosyanın karşılığı ise `file` alanını gösteren bir `validation_failed` olur.
400bad_requestİstek, anlayabildiğimiz bir HTTP isteği olarak okunamadı. Aynı haliyle yeniden denemenin anlamı yok.
405method_not_allowedBu yol var, ama bu HTTP yöntemiyle değil. API referansına bakın.
422validation_failedİstek geldiği haliyle kabul edilemedi. Hangi alanda ne olduğu `errors` içinde.
422uploaded_file_cannot_be_processedYükleme depolamaya sağlam ulaşmadı. Yeni bir Idempotency-Key üretip baştan gönderin.
422playlist_not_acceptableBu bağlantı bir oynatma listesi. Tek seferde tek kayıt gönderin.
429rate_limitedÇok fazla istek geldi ya da bugünün kayıt açma hakkı bitti. Retry-After kadar saniye bekleyin.
500internal_errorHata bizde. Araları açarak yeniden deneyin; sürerse X-Request-Id’yi bize iletin.
503service_unavailableAPI kısa bir süreliğine kapalı, çoğunlukla bir sürüm yüklenirken. Retry-After kadar ya da biraz sonra yeniden deneyin.

Doğrulama hataları

422 yanıtında bir errors nesnesi gelir: hangi alanda sorun varsa onun adı ve o alanla ilgili bütün mesajlar.

422 Unprocessable Entity
{
  "error": "validation_failed",
  "message": "The request could not be accepted as sent.",
  "errors": {
    "url": ["Send either a `file` or a `url`."],
    "language": ["Unknown language code. GET /languages lists the ones we accept."]
  }
}

İstek id’leri

Her yanıt — hata yanıtları dahil — X-Request-Id taşır. Kendi id’nizi gönderirseniz aynısını döneriz, göndermezseniz biz üretiriz. Bu id loglarımızda isteğin yanında durur; destek yazışmasında onu vermeniz herkese bir gün kazandırır.

Neyi yeniden denemeli

Durum koduDenenir mi?
401, 403, 404, 413, 422Hayır. Beklemek yanıtı değiştirmez; isteği ya da anahtarı düzeltin.
409Evet, ama hemen değil. Kayıtlar bittikçe aynı anda işleme sınırı boşalır; yanıtlanmayı bekleyen bir Idempotency-Key ise saniyeler içinde sonuçlanır.
429Evet, Retry-After kadar saniye bekledikten sonra. Daha erken değil.
5xxEvet, araları açarak. Oluşturma isteğiyse aynı Idempotency-Key ile; böylece tek kayıt için iki kez ödemezsiniz.