ข้ามไปยังเนื้อหา

การบันทึก

GET /api/v1/recordings

ส่งคืนรายการการบันทึกแบบแบ่งหน้าซึ่งผู้ใช้ที่รับรองความถูกต้องสามารถเข้าถึงได้

พารามิเตอร์ประเภทค่าเริ่มต้นคำอธิบาย
limitnumber20จำนวนผลลัพธ์ (1–100)
offsetnumber0การชดเชยการแบ่งหน้า
searchstring-กรองตามชื่อเรื่อง (การจับคู่บางส่วน)
statusstring-กรองตามสถานะ (ดู สถานะการบันทึก)
date_fromstring-วันที่ ISO 8601 - ส่งคืนเฉพาะการบันทึกที่สร้างขึ้นในหรือหลังวันที่ดังกล่าว
date_tostring-วันที่ ISO 8601 - ส่งคืนเฉพาะการบันทึกที่สร้างขึ้นในหรือก่อนวันที่ดังกล่าว
organization_idstring-กำหนดขอบเขตไปยังองค์กร
folder_idstring-กำหนดขอบเขตไปยังโฟลเดอร์ (ต้องมี 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_chunknumber0ดัชนีส่วนย่อยที่จะเริ่มต้น
limitnumber50จำนวนส่วนย่อย (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กำลังอัปโหลดฝั่งไคลเอ็นต์ (กำลังระบายส่วนย่อยไปยังพื้นที่เก็บข้อมูล)
PROCESSINGCloudflare Stream กำลังแพ็คเกจ HLS/DASH - ยังไม่สามารถเล่นได้
MIGRATINGวิดีโอเล่นได้สมบูรณ์แล้ว; HLS กำลังถูกย้ายไปยังพื้นที่เก็บข้อมูลระยะยาว
COMPLETEDการบันทึกได้รับการประมวลผลและจัดเก็บอย่างสมบูรณ์
ERRORการบันทึกล้มเหลว

ผู้ใช้ API ควรปฏิบัติต่อ MIGRATING เหมือนกับ COMPLETED สำหรับการเล่น การดาวน์โหลด และการแชร์ - ความแตกต่างเป็นเพียงภายในเท่านั้น