تخطَّ إلى المحتوى

التسجيلات

GET /api/v1/recordings

يُرجع قائمة مرقمة من التسجيلات التي يمكن للمستخدم المصادق عليه الوصول إليها.

المعلمةالنوعالافتراضيالوصف
limitرقم20عدد النتائج (1-100)
offsetرقم0إزاحة ترقيم الصفحات
searchسلسلة-التصفية حسب العنوان (تطابق جزئي)
statusسلسلة-التصفية حسب الحالة (راجع حالات التسجيل)
date_fromسلسلة-تاريخ ISO 8601 - إرجاع التسجيلات التي تم إنشاؤها في أو بعد التاريخ المحدد فقط
date_toسلسلة-تاريخ ISO 8601 - إرجاع التسجيلات التي تم إنشاؤها في أو قبل التاريخ المحدد فقط
organization_idسلسلة-النطاق إلى مؤسسة
folder_idسلسلة-النطاق إلى مجلد (يتطلب organization_id)
{
"data": [
{
"id": "uuid",
"status": "COMPLETED",
"title": "Weekly sync",
"createdAt": "2025-09-19T15:00:00.000Z",
"thumbnailUrl": "https://...",
"progress": 1.0,
"capabilities": {
"canDownload": true,
"canShare": true,
"canViewTranscription": true,
"canGenerateSummary": true,
"canAskQuestions": true
}
}
],
"pagination": {
"total": 42,
"limit": 20,
"offset": 0,
"has_more": true
}
}

GET /api/v1/recordings/:id

يُرجع تفاصيل كاملة لتسجيل واحد.

تكون تسجيلات المؤسسة متاحة لأي عضو في المؤسسة مسموح له بعرضها. يمكن للمالكين والمسؤولين فتح كل تسجيل في مؤسستهم؛ ويرى المحررون والمشاهدون التسجيلات التي تسمح بها أدوارهم وإمكانية وصولهم إلى المجلدات. بالنسبة لتسجيل المؤسسة، تعكس is_locked وdownload_url وcapabilities خطة المؤسسة وأعلام ميزات العضو، وليس الخطة الشخصية للمتصل.

يُرجع 402 ORGANIZATION_SUBSCRIPTION_EXPIRED عندما لا يكون اشتراك Enterprise الخاص بالمؤسسة نشطًا.

{
"data": {
"id": "uuid",
"status": "COMPLETED",
"title": "Weekly sync",
"createdAt": "2025-09-19T15:00:00.000Z",
"updatedAt": "2025-09-19T15:30:00.000Z",
"startedAt": "2025-09-19T15:01:00.000Z",
"endedAt": "2025-09-19T15:30:00.000Z",
"videoUrl": "https://...",
"hlsUrl": "https://...",
"downloadUrl": "https://...",
"downloadUrlExpiresAt": "2025-09-19T21:00:00.000Z",
"thumbnailUrl": "https://...",
"organizationId": "org_uuid or null",
"transcription": {
"status": "completed",
"language": "en",
"speakers": ["Speaker 1", "Speaker 2"],
"segmentsCount": 184,
"duration": 1740.5
},
"summary": {
"status": "completed",
"content": "## Key topics\n...",
"topics": [
{
"title": "Project timeline",
"keyPoints": [
{ "point": "Launch date confirmed", "details": ["Set for Q1"] }
]
}
]
},
"isLocked": false,
"capabilities": {
"canDownload": true,
"canShare": true,
"canViewTranscription": true,
"canStartTranscription": true,
"canRegenerateTranscription": false,
"canRenameSpeaker": true,
"canViewSummary": true,
"canGenerateSummary": true,
"canAskQuestions": true
}
}
}

GET /api/v1/recordings/:id/transcript

يُرجع مقاطع نصية مرقمة لتسجيل.

تتبع تسجيلات المؤسسة نفس قواعد الوصول مثل الحصول على تسجيل. يُرجع 403 RECORDING_LOCKED عندما يكون التسجيل مقفلاً و403 TRANSCRIPT_NOT_AVAILABLE عندما تكون ميزة النسخ معطلة للمؤسسة أو للعضو. التسجيل الذي لم يتم نسخه بعد لا يزال يُرجع 200 مع "status": "not_started" ومصفوفة segments فارغة.

المعلمةالنوعالافتراضيالوصف
start_chunkرقم0فهرس الجزء للبدء منه
limitرقم50عدد الأجزاء (1–100)
{
"data": {
"status": "completed",
"language": "en",
"speakers": ["Speaker 1", "Alice"],
"duration": 1740.5,
"segments": [
{
"id": 1,
"start": 0.5,
"end": 3.2,
"text": "Good morning everyone.",
"speaker": "Alice",
"confidence": 0.97
}
],
"pagination": {
"total_chunks": 184,
"has_more": true
}
}
}

PATCH /api/v1/recordings/:id

تحديث عنوان التسجيل أو ملاحظاته. مطلوب حقل واحد على الأقل.

{
"title": "New title (1–500 characters)",
"notes": "Optional notes (max 100,000 characters)"
}
{
"data": { "success": true }
}

DELETE /api/v1/recordings/:id

يحذف التسجيل وجميع البيانات المرتبطة به (النص، الملخص، المشاركات) بشكل دائم.

{
"data": { "success": true }
}

POST /api/v1/recordings/:id/share-link

ينشئ رابط مشاركة عام للتسجيل.

بالنسبة لتسجيل المؤسسة، يمكن لأي عضو يمكنه عرض التسجيل إنشاء الرابط. يتم إنشاء الرابط نيابة عن مالك التسجيل ويستخدم خطة المؤسسة، لذلك تعمل روابط download لتسجيلات المؤسسة حتى عندما تكون الخطة الشخصية للمتصل مجانية. يُرجع 403 RECORDING_LOCKED عندما يكون التسجيل مقفلاً و403 SHARING_DISABLED عندما تكون المشاركة معطلة للمؤسسة أو للعضو.

{
"permission": "view"
}
القيمةالوصف
viewيمكن للمستلمين مشاهدة الفيديو والوصول إلى النص/الملخص
downloadيمكن للمستلمين أيضًا تنزيل ملف الفيديو
{
"data": {
"share_url": "https://recordmeeting.com/app/shared/abc123",
"share_token": "abc123",
"permission": "view"
}
}

الحالةالوصف
STARTINGتم استلام طلب التسجيل، الإعداد قيد التقدم
CONNECTINGالاتصال بجلسة Google Meet
WAIT_APPROVALانتظار الموافقة داخل المكالمة للتسجيل
RECORDINGالتسجيل قيد التقدم
UPLOADINGالتحميل من جانب العميل قيد التقدم (تفريغ الأجزاء إلى التخزين)
PROCESSINGحزمة Cloudflare Stream HLS/DASH - غير قابلة للتشغيل بعد
MIGRATINGالفيديو قابل للتشغيل بالكامل؛ يتم ترحيل HLS إلى التخزين طويل الأجل
COMPLETEDتم معالجة التسجيل وتخزينه بالكامل
ERRORفشل التسجيل

يجب على مستهلكي واجهة برمجة التطبيقات التعامل مع MIGRATING بشكل مماثل لـ COMPLETED لعمليات التشغيل والتنزيل والمشاركة - التمييز داخلي.