جلب حالة عمل النسخ أو نتيجته (V1 القديم)
قراءة V1 للتوافق فقط تستخدمها حزم SDK لـJavaScript وPython في الإصدار 0.18.0؛ استخدم V2 لتكاملات HTTP المباشرة الجديدة.
/transcribe/{job_id}/{lang}هذه عملية V1 للتوافق فقط، وتستخدمها حزم SDK لـJavaScript وPython في
الإصدار 0.18.0. استخدم GET /transcribe/{job_id} (V2) في تكاملات HTTP
المباشرة الجديدة.
استخدم jobId العائد من عملية الإرسال، واستعلم عن status مع مهلة لكل
طلب وموعد نهائي كلي محدود. استمر فقط عند queued وprocessing، وتوقف عند
done أو failed أو cleared. اقرأ results.transcript و
results.offsets فقط عند done. لا تتضمن استجابة V1 ذات الحالة
failed سبب فشل قابلاً للقراءة آليًا، وتعني cleared أن حقول النتيجة
المخزنة غير متاحة. تعود حالات المهمة الخمس كلها ضمن HTTP 200؛ وتشير
الاستجابات غير 2xx إلى خطأ في الطلب أو المصادقة أو التفويض أو البحث أو الخادم.
قد يكون تسليم done أو failed أحادي الاستهلاك مع القيمة الافتراضية
save_result=false. اضبط save_result=true في كل استعلام عندما يجب جلب
الاستجابة النهائية مجددًا بعد فقدها. لا يحدد API مدة احتفاظ.
المصادقة
ApiKeyAuth الموضع: header
معاملات المسار
معرّف عمل النسخ.
مقطع توافق قديم مطلوب في المسار. لا يستخدم معالج V1 الحالي هذه القيمة ولا يتحقق منها. ترسل حزم SDK في الإصدار 0.18.0 لغة الإرسال. ينبغي لعملاء HTTP المباشرين الجدد استخدام GET /transcribe/{job_id}.
معاملات الاستعلام
اترك حقول النتيجة النهائية المخزنة متاحة بعد هذه القراءة. قد تجعل القيمة الافتراضية false تسليم done أو failed أحادي الاستهلاك. اضبط true في كل استعلام عندما يجب إعادة محاولة تسليم النتيجة النهائية. لا يحدد هذا الخيار مدة احتفاظ.
يتحكم فقط في results.offsets[].speaker ولا يغير diarization_segments. مع true (الافتراضي)، تُسند الكلمة التي يقع startTime لها خارج كل المقاطع الحقيقية إلى متحدث أقرب حد مقطع، استنادًا إلى منتصف الكلمة، ويُختار المقطع الأسبق عند التعادل. مع false تستخدم تلك الكلمات UNKNOWN_SPEAKER. وإذا لم توجد مقاطع حقيقية فتبقى speaker بقيمة null. لا تعرض حزم SDK في الإصدار 0.18.0 هذا الخيار. القيم المقبولة true/false أو 1/0.
جسم الاستجابة
application/json
application/json
application/json
application/json
application/json
application/json
curl -sS --fail-with-body --connect-timeout 10 --max-time 120 -X GET \ "https://example.com/transcribe/497f6eca-6276-4993-bfeb-53cbbbba6f08/en?save_result=true" \ -H "Origin: https://example.com"استجابة النسخ القديمة
application/json
عمل في قائمة الانتظار
{
"status": "queued",
"APIVersion": "v1",
"version": "api-version",
"metadata": {
"sautechVersion": "v1",
"jobId": "7f51f2c2-e7bc-41c8-a850-f848df2ddfc8",
"fileDuration": 12.34
},
"results": {
"transcript": ""
},
"diarization_segments": null
}عمل قيد المعالجة
{
"status": "processing",
"APIVersion": "v1",
"version": "api-version",
"metadata": {
"sautechVersion": "v1",
"jobId": "7f51f2c2-e7bc-41c8-a850-f848df2ddfc8",
"fileDuration": 12.34
},
"results": {
"transcript": ""
},
"diarization_segments": null
}عمل مكتمل
{
"status": "done",
"APIVersion": "v1",
"version": "api-version",
"metadata": {
"sautechVersion": "v1",
"jobId": "7f51f2c2-e7bc-41c8-a850-f848df2ddfc8",
"fileDuration": 12.34
},
"results": {
"transcript": "hello world",
"offsets": [
{
"word": "hello",
"startTime": 0,
"endTime": 0.45,
"speaker": "speaker-1"
},
{
"word": "world",
"startTime": 0.46,
"endTime": 0.9,
"speaker": null
}
]
},
"diarization_segments": [
{
"start_time": 0,
"end_time": 1,
"speaker": "speaker-1"
}
]
}عمل فاشل
{
"status": "failed",
"APIVersion": "v1",
"version": "api-version",
"metadata": {
"sautechVersion": "v1",
"jobId": "7f51f2c2-e7bc-41c8-a850-f848df2ddfc8",
"fileDuration": 12.34
},
"results": {
"transcript": ""
},
"diarization_segments": null
}حقول النتيجة المخزنة غير متاحة
{
"status": "cleared",
"APIVersion": "v1",
"version": "api-version",
"metadata": {
"sautechVersion": "v1",
"jobId": "7f51f2c2-e7bc-41c8-a850-f848df2ddfc8",
"fileDuration": 12.34
},
"results": {
"transcript": ""
},
"diarization_segments": []
}معرّف عمل أو قيمة save_result أو diarization_force_align غير صالحة
application/json
معرّف عمل غير صالح
{
"error": "error.uuid.invalid",
"code": "VALIDATION_INVALID_UUID",
"detail": "error.uuid.invalid",
"job_id": "not-a-uuid",
"retryable": false,
"timestamp": "2026-01-15T10:30:00Z"
}قيمة `save_result` غير صالحة
{
"error": "error.api.error.param.save_result.invalid",
"code": "VALIDATION_INVALID_PARAM",
"detail": "error.api.error.param.save_result.invalid",
"job_id": "7f51f2c2-e7bc-41c8-a850-f848df2ddfc8",
"retryable": false,
"timestamp": "2026-01-15T10:30:00Z"
}قيمة `diarization_force_align` غير صالحة
{
"error": "error.api.error.param.diarization_force_align.invalid",
"code": "VALIDATION_INVALID_PARAM",
"detail": "error.api.error.param.diarization_force_align.invalid",
"job_id": "7f51f2c2-e7bc-41c8-a850-f848df2ddfc8",
"retryable": false,
"timestamp": "2026-01-15T10:30:00Z"
}غير مصرح
application/json
المثال missing_key
{
"error": "auth.unauthorized",
"message": "unauthorized",
"code": "AUTH_UNAUTHORIZED",
"retryable": false,
"timestamp": "2026-01-15T10:30:00Z"
}لا يمنح مفتاح API صلاحية الوصول إلى النسخ الدفعي
application/json
المثال scope_denied
{
"error": "error.api_key.scope_denied",
"code": "AUTH_FORBIDDEN",
"detail": "scope not permitted",
"retryable": false,
"timestamp": "2026-01-15T10:30:00Z"
}عمل النسخ غير موجود
application/json
المثال missing_job
{
"error": "error.transcription_job.get",
"code": "TRANSCRIPTION_JOB_NOT_FOUND",
"detail": "transcription job not found",
"job_id": "7f51f2c2-e7bc-41c8-a850-f848df2ddfc8",
"retryable": false,
"timestamp": "2026-01-15T10:30:00Z"
}فشل استعلام النتيجة القديمة أو مسح النتيجة بعد الاستجابة
application/json
المثال lookup_failed
{
"error": "error.transcription_job.get",
"code": "SERVER_INTERNAL",
"detail": "error.transcription_job.get",
"job_id": "7f51f2c2-e7bc-41c8-a850-f848df2ddfc8",
"retryable": true,
"timestamp": "2026-01-15T10:30:00Z"
}المثال clear_failed
{
"error": "error.transcription_job.clear_result_failed",
"code": "SERVER_INTERNAL",
"detail": "error.transcription_job.clear_result_failed",
"job_id": "7f51f2c2-e7bc-41c8-a850-f848df2ddfc8",
"retryable": true,
"timestamp": "2026-01-15T10:30:00Z"
}قيمة `save_result` غير صالحة
{
"error": "error.api.error.param.save_result.invalid",
"code": "VALIDATION_INVALID_PARAM",
"detail": "error.api.error.param.save_result.invalid",
"job_id": "7f51f2c2-e7bc-41c8-a850-f848df2ddfc8",
"retryable": false,
"timestamp": "2026-01-15T10:30:00Z"
}الخطوات التالية
أبقِ V1 فقط عندما يتطلبه التوافق مع SDK بالإصدار 0.18.0. لعميل HTTP مباشر جديد، انتقل إلى V2؛ وفي الحالتين أوقف الاستعلام عند done أو failed أو cleared.