Chuyển giọng nói thành văn bản

Tải lên một file audio và nhận về văn bản phiên âm (transcript), xử lý đồng bộ. **Backpressure:** hệ thống giới hạn tối đa 18 request STT xử lý đồng thời — nếu đạt giới hạn, trả về `503 SERVICE_OVERLOADED` kèm `Retry-After: 2`. **Circuit breaker:** nếu nhà cung cấp lỗi 5 lần trong 10 lần gọi gần nhất, circuit breaker mở trong 30 giây — trong lúc này mọi request nhận `503 AI_PROVIDER_UNAVAILABLE` kèm `Retry-After` là số giây còn lại.

Headers

X-Api-KeystringRequired
Idempotency-KeystringOptional<=200 characters
Key tuỳ chọn, tự sinh phía client, giúp request tính phí retry an toàn. Gửi lại nguyên vẹn cùng một giá trị khi retry: lần gọi thành công đầu tiên được tính phí một lần, kết quả được replay lại cho các lần gọi sau với cùng key (trong vòng 24 giờ). Gửi lại trong lúc request gốc vẫn đang xử lý sẽ nhận `409 DUPLICATE_REQUEST`.

Request

This endpoint expects a multipart form containing a file.
filefileRequired

File âm thanh (mọi định dạng ffmpeg giải mã được — wav, mp3, m4a, ogg, flac…). Tối đa 25 MB.

languageCodestringOptional

Gợi ý ngôn ngữ, ví dụ vi-VN.

Response

Thành công.

trackingIdstringformat: "uuid"

Mã tra cứu request (UUID v7).

transcriptstring

Văn bản phiên âm được từ audio.

audioDurationinteger

Độ dài audio đầu vào, làm tròn tới giây.

inputAudioFileNamestring or null

Tên file gốc đã upload.

inputAudioUrlstring or nullformat: "uri"

Link tạm thời (presigned URL) để nghe lại audio đã gửi ngay sau khi nhận response — hết hạn nhanh, file input tự động xoá (giọng nói là dữ liệu cá nhân — PII); không dùng để lưu trữ lâu dài.

processingTimeMslong

Tổng thời gian xử lý end-to-end (mili-giây).

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
409
Conflict Error
429
Too Many Requests Error
502
Bad Gateway Error
503
Service Unavailable Error