คู่มือการจัดการ Projects
Project คืออะไร?
Project คือหน่วยงานหลักในการทำงานภายใน Organization ทุก Template การอัปโหลดเอกสาร และผลลัพธ์การประมวลผลล้วนอยู่ภายใต้ Project เดียวเสมอ Project ช่วยให้คุณแยกกิจกรรมตามลักษณะการใช้งาน ทีมงาน หรือลูกค้า — ทำให้ข้อมูลแต่ละส่วนแยกออกจากกันอย่างชัดเจนโดยไม่จำเป็นต้องสร้าง Organization หลายแห่ง
Organization (บริษัทของคุณ)
├── Billing & Credits (ใช้ร่วมกันทุก Project)
├── Team Members (บทบาทและสิทธิ์ระดับ Org)
│
├── Project: Invoice Processing
│ ├── Templates (extraction configurations)
│ ├── Uploads & Processing History
│ ├── Project Members (subset of org members)
│ └── Project Settings
│
├── Project: Receipt Scanning
│ ├── Templates
│ ├── Uploads & Processing History
│ ├── Project Members
│ └── Project Settings
│
└── Project: Contract Analysis
├── Templates
├── Uploads & Processing History
├── Project Members
└── Project Settingsหลักการแยกข้อมูลที่สำคัญ:
- Template ที่สร้างใน Project หนึ่งจะไม่ปรากฏในอีก Project หนึ่ง
- Processing History ถูกจำกัดขอบเขตไว้เฉพาะ Project ที่อัปโหลดเอกสารนั้น
- การจัดการสมาชิกของแต่ละ Project เป็นอิสระจากกัน — สมาชิก Org ต้องได้รับการเพิ่มเข้า Project อย่างชัดเจนก่อนจึงจะเข้าถึงได้
- Credit จะถูกเรียกเก็บในระดับ Organization และใช้ร่วมกันในทุก Project โดยค่าเริ่มต้นจะไม่มีงบประมาณ Credit แยกต่อ Project
NOTE
คุณต้องเป็นสมาชิกของ Organization ก่อน จึงจะสร้างหรือเข้าถึง Project ได้ ดูรายละเอียดการตั้งค่า Organization และการเชิญสมาชิกระดับ Org ได้ที่ Organization & Teams
การสร้าง Project
- ไปที่ Organization → Projects
- คลิก Create Project
- กรอกข้อมูลที่จำเป็น:
- Name — ชื่อที่ชัดเจนและสื่อความหมาย เช่น "Invoice Processing — APAC"
- Description — ไม่บังคับ แต่แนะนำให้กรอก เพื่อบอกวัตถุประสงค์ของ Project ให้สมาชิกทีมทราบ
- ขยายส่วน Advanced Settings เพื่อกำหนดค่าการควบคุมระดับ Project เพิ่มเติม (ดูรายละเอียดที่ Project Settings ด้านล่าง)
- คลิก Create — Project จะถูกสร้างและคุณจะได้รับบทบาท Owner ภายใน Project นั้นโดยอัตโนมัติ
TIP
การเป็น Org Admin หรือ Org Owner ไม่ได้ทำให้คุณเข้าถึง Project โดยอัตโนมัติ หลังจากสร้าง Project คุณจะเป็น Owner ของ Project นั้น สมาชิก Org คนอื่นต้องได้รับการเชิญเข้า Project แต่ละแห่งอย่างชัดเจนก่อนจึงจะเข้าถึงได้
Project Settings
ไปที่ Project → Settings เพื่อแก้ไขรายละเอียดและกำหนดค่าการควบคุมการเข้าถึง
General
| ฟิลด์ | คำอธิบาย |
|---|---|
| Name | ชื่อที่แสดงสำหรับ Project |
| Description | คำอธิบายภายใน — แสดงให้สมาชิก Project เห็น |
Access Controls
การตั้งค่าเหล่านี้ควบคุมสิ่งที่สมาชิก Project สามารถทำได้โดยค่าเริ่มต้น:
| การตั้งค่า | ค่าเริ่มต้น | คำอธิบาย |
|---|---|---|
| Allow members to create templates | เปิดใช้งาน | สมาชิกสามารถสร้าง Template การดึงข้อมูลใหม่ภายใน Project ได้ |
| Allow members to upload documents | เปิดใช้งาน | สมาชิกสามารถอัปโหลดเอกสารเพื่อประมวลผลได้ |
| Allow members to view all documents | ปิดใช้งาน | เมื่อปิดใช้งาน สมาชิกจะเห็นเฉพาะเอกสารที่ตัวเองอัปโหลดเท่านั้น |
| Max documents per month | 100 | จำนวนสูงสุดของเอกสารที่ประมวลผลได้ต่อเดือนสำหรับ Project นี้ |
| Max templates per project | 10 | จำนวน Template สูงสุดที่อนุญาตใน Project |
| File retention days | สืบทอดจาก Org | จำนวนวันที่เก็บไฟล์ที่อัปโหลดก่อนถูกลบอัตโนมัติ |
WARNING
การปิด Allow members to upload documents จะป้องกันไม่ให้สมาชิกที่ไม่ใช่ Owner ส่งเอกสารใหม่เพื่อประมวลผล เฉพาะ Project Owner และ Org Admin เท่านั้นที่ยังคงสิทธิ์อัปโหลดได้ ควรใช้การตั้งค่านี้ด้วยความระมัดระวัง หาก Project กำลังถูกใช้งานอยู่
Project Members
การเป็นสมาชิก Project แยกออกจากการเป็นสมาชิก Organization สมาชิก Organization ต้องได้รับการเพิ่มเข้า Project อย่างชัดเจนก่อนจึงจะเข้าถึงได้
Project Roles
สมาชิก Project ทุกคนจะได้รับบทบาทหนึ่งในสี่บทบาทต่อไปนี้:
| Role | คำอธิบาย |
|---|---|
| Owner | ควบคุม Project ทั้งหมด รวมถึงการตั้งค่า สมาชิก และการลบ Project |
| Admin | จัดการสมาชิกและการตั้งค่าของ Project ได้ แต่ไม่สามารถลบ Project ได้ |
| Member | สร้าง Template อัปโหลดเอกสาร และดู Processing History ของตัวเองได้ |
| Viewer | เข้าถึงแบบอ่านอย่างเดียว — ดูผลลัพธ์การประมวลผลได้ แต่ไม่สามารถอัปโหลดหรือแก้ไขใดๆ ได้ |
NOTE
บทบาทของสมาชิก Project มีผลเฉพาะภายใน Project นั้นเท่านั้น บุคคลเดียวกันสามารถเป็น Admin ใน Project หนึ่ง และเป็น Viewer ในอีก Project หนึ่งได้ โดยไม่ขึ้นกับบทบาทระดับ Org
สถานะสมาชิก (Member Status)
| สถานะ | ความหมาย |
|---|---|
active | สมาชิกยอมรับคำเชิญแล้วและมีสิทธิ์เข้าถึงตามบทบาทที่กำหนด |
pending | ส่งคำเชิญแล้วแต่สมาชิกยังไม่ได้ยอมรับ |
suspended | ปิดการเข้าถึงชั่วคราว แต่ยังคงการเป็นสมาชิกไว้ |
การเพิ่มสมาชิก
เฉพาะผู้ที่เป็นสมาชิกของ Organization แล้วเท่านั้นที่สามารถเพิ่มเข้า Project ได้
- ไปที่ Project → Members
- คลิก Add Member
- ค้นหาสมาชิก Org ด้วยชื่อหรืออีเมลในช่องค้นหา
- เลือกผู้ใช้จากผลการค้นหา
- เลือก Role: Owner, Admin, Member หรือ Viewer
- เพิ่ม Invitation message เพื่อให้บริบทเกี่ยวกับ Project (ไม่บังคับ)
- คลิก Add — สมาชิกจะถูกเพิ่มด้วยสถานะ
activeทันที
TIP
ใช้บทบาท Viewer สำหรับลูกค้า ผู้ตรวจสอบบัญชี หรือผู้บริหาร ที่ต้องการดูผลลัพธ์การประมวลผลโดยไม่สามารถแก้ไข Template หรืออัปโหลดเอกสารใหม่ได้
การเปลี่ยนบทบาทสมาชิก
- ไปที่ Project → Members
- ค้นหาสมาชิกในรายการ
- คลิก Dropdown บทบาทถัดจากชื่อของพวกเขา
- เลือกบทบาทใหม่และยืนยัน
การเปลี่ยนบทบาทมีผลทันที
การลบสมาชิก
- ไปที่ Project → Members
- ค้นหาสมาชิกในรายการ
- คลิก Remove ถัดจากชื่อของพวกเขา และยืนยันการดำเนินการ
WARNING
การลบสมาชิกจะเพิกถอนสิทธิ์การเข้าถึง Project ทันที เอกสารที่พวกเขาอัปโหลดและ Template ที่สร้างไว้จะยังคงอยู่ — เฉพาะสิทธิ์การเข้าถึงเท่านั้นที่ถูกยกเลิก การดำเนินการนี้ไม่สามารถยกเลิกได้หากไม่เพิ่มพวกเขากลับเข้ามาใหม่
สถิติ Project
ไปที่ Project → Overview หรือเรียก GET /projects/:id/stats เพื่อดูสรุปกิจกรรมของ Project สถิติที่แสดงมีดังนี้:
| สถิติ | คำอธิบาย |
|---|---|
| Total documents processed | จำนวนเอกสารทั้งหมดที่ส่งเข้าประมวลผล OCR/AI สะสม |
| Documents this month | จำนวนการประมวลผลในเดือนปฏิทินปัจจุบัน |
| Total templates | จำนวน Template การดึงข้อมูลใน Project |
| Active members | จำนวนสมาชิกที่มีสถานะ active |
| Credits consumed | Credit ทั้งหมดที่ Project นี้ใช้ไป (หักจาก Credit Pool ของ Org) |
| Average processing time | เวลาเฉลี่ยตั้งแต่อัปโหลดจนถึงส่งมอบผลลัพธ์ |
NOTE
สถิติคำนวณแบบ Real Time และสะท้อนสถานะปัจจุบันของ Project ไม่มีการบันทึก Snapshot สถิติย้อนหลัง — ใช้ Project Analytics สำหรับข้อมูลแบบ Time-Series
Project Analytics
ไปที่ Project → Analytics หรือเรียก GET /projects/:id/analytics เพื่อดูข้อมูลการใช้งานแบบ Time-Series ของ Project Analytics ช่วยให้คุณเข้าใจแนวโน้มการประมวลผล ระบุช่วงเวลาที่มีการใช้งานสูง และวางแผนรองรับโหลด
มิติ Analytics ที่ใช้บ่อย ได้แก่:
- Documents processed over time — ปริมาณงานประมวลผลรายวันหรือรายสัปดาห์
- Success vs. failure rate — สัดส่วนงานที่สำเร็จเทียบกับงานที่เกิดข้อผิดพลาด
- Credits consumed over time — อัตราการใช้ Credit เพื่อช่วยคาดการณ์ค่าใช้จ่าย
- Processing time trends — แนวโน้มว่าเวลาเฉลี่ยในการประมวลผลดีขึ้นหรือแย่ลง
- Template usage breakdown — Template ใดถูกใช้งานบ่อยที่สุด
TIP
ใช้ Analytics เพื่อตรวจจับความผิดปกติแต่เนิ่นๆ — การเพิ่มขึ้นอย่างรวดเร็วของงานที่ล้มเหลวมักบ่งชี้ว่ารูปแบบเอกสาร Input มีการเปลี่ยนแปลงและจำเป็นต้องอัปเดต Template
API Tokens ระดับ Project
API Token สามารถกำหนดขอบเขตไว้เฉพาะ Project ใด Project หนึ่ง เพื่อจำกัดสิทธิ์การเข้าถึงเฉพาะข้อมูลและการดำเนินการภายใน Project นั้น นี่คือแนวทางที่แนะนำสำหรับการเชื่อมต่อระบบภายนอกหรือ Automation Pipeline กับ Project เดียว
ความแตกต่างระหว่าง Project-Scoped Token และ Org-Level Token:
| ด้าน | Org-Level Token | Project-Scoped Token |
|---|---|---|
| Scope | เข้าถึงทุก Project ใน Org | เข้าถึงเฉพาะ Project ที่กำหนดเท่านั้น |
| Use case | เครื่องมือ Admin, รายงานระดับ Org | Integration เฉพาะสำหรับแต่ละ Project |
| Risk exposure | สูง — หากถูกเจาะจะกระทบทั้ง Org | ต่ำ — ผลกระทบจำกัดเฉพาะ Project นั้น |
| Template access | Template ทั้งหมดใน Org | เฉพาะ Template ใน Project ที่กำหนด |
| Upload access | ทุก Project | เฉพาะ Project ที่กำหนด |
วิธีสร้าง Project-Scoped Token:
- ไปที่ Organization → API Tokens
- คลิก Create Token
- ตั้งชื่อที่สื่อความหมาย เช่น "Invoice Processor — Production"
- ตั้ง Scope เป็น Project และเลือก Project เป้าหมาย
- ตั้ง วันหมดอายุ (ไม่บังคับ)
- คลิก Create และคัดลอก Token ทันที — ระบบจะไม่แสดง Token นี้อีก
WARNING
จัดการ API Token เหมือนกับรหัสผ่าน เก็บไว้ใน Secrets Manager ของคุณ เช่น Doppler, AWS Secrets Manager หรือ GitHub Secrets และอย่า Commit ลงใน Source Code หาก Token ถูกเจาะ ให้รีบยกเลิกทันทีจาก Organization → API Tokens
Webhook Dashboard ระดับ Project
แต่ละ Project มี Webhook Delivery Dashboard เป็นของตัวเอง ให้คุณเห็นกิจกรรม Webhook ขาออกที่จำกัดขอบเขตเฉพาะ Event ของ Project นั้น
ไปที่ Project → Webhooks หรือเรียก GET /projects/:id/webhook-dashboard เพื่อดู:
| Metric | คำอธิบาย |
|---|---|
| Total deliveries | จำนวน Webhook Event ทั้งหมดที่ส่งออกสำหรับ Project นี้ |
| Successful deliveries | Event ที่ได้รับการตอบกลับ 2xx จาก Endpoint ปลายทาง |
| Failed deliveries | Event ที่หมดเวลาหรือได้รับการตอบกลับที่ไม่ใช่ 2xx |
| Success rate | เปอร์เซ็นต์ของ Delivery ที่สำเร็จจากทั้งหมด |
| Recent events | บันทึก Webhook Payload ล่าสุดและสถานะการส่ง |
NOTE
Webhook Endpoint กำหนดค่าที่ระดับ Organization Webhook Dashboard ของ Project จะแสดงสถิติการส่งที่กรองเฉพาะ Event จาก Project นี้ ดูวิธีกำหนดค่า Endpoint และประเภท Event ได้ที่ เอกสาร Webhooks
TIP
หากพบอัตราความล้มเหลวสูงใน Webhook Dashboard ให้ตรวจสอบว่า Endpoint URL ของคุณเข้าถึงได้จากภายนอกและส่งการตอบกลับ 2xx ภายในกรอบเวลา Timeout Ocriva จะลองส่งซ้ำสำหรับ Delivery ที่ล้มเหลวด้วย Exponential Backoff
แนวทางปฏิบัติที่ดี
การตั้งชื่อ Project
- ใช้รูปแบบการตั้งชื่อที่สม่ำเสมอทั่วทั้ง Organization เช่น
{ทีม} — {ประเภทเอกสาร}(เช่น "Finance — Invoices", "Operations — Delivery Notes") - หลีกเลี่ยงชื่อทั่วไป เช่น "Project 1" หรือ "Test" — ชื่อเหล่านี้จะสร้างความสับสนเมื่อจำนวน Project เพิ่มขึ้น
- ระบุ Environment ในชื่อเมื่อคุณรัน Project แยกสำหรับ Staging และ Production เช่น "Invoice Processing — Production" เทียบกับ "Invoice Processing — Staging"
การจัดการสมาชิก Project
- ใช้ หลักการสิทธิ์ขั้นต่ำ — กำหนด Viewer ให้กับผู้ที่ต้องการเพียงแค่อ่านผลลัพธ์ กำหนด Member ให้ผู้ที่ประมวลผลเอกสาร และกำหนด Admin เฉพาะผู้ที่ต้องจัดการ Project
- ตรวจสอบสมาชิก Project เป็นระยะ โดยเฉพาะหลังจากมีการเปลี่ยนแปลงในทีม นำสมาชิกที่ไม่ต้องการเข้าถึงอีกต่อไปออก
- หลีกเลี่ยงการกำหนดบทบาท Owner ให้กับคนมากกว่าสองหรือสามคนต่อ Project การมี Owner มากเกินไปทำให้ความรับผิดชอบไม่ชัดเจน
- ใช้ Project-Scoped API Token สำหรับ Automation Integration แทนการแชร์ข้อมูลรับรองส่วนตัวหรือ Org-Level Token
การจัดระเบียบ Template
- จัดกลุ่มประเภทเอกสารที่เกี่ยวข้องไว้ใน Project เดียวกัน เพื่อให้ Template และ Processing History อยู่ด้วยกัน
- สร้าง Project แยกสำหรับ Workflow เอกสารที่แตกต่างกัน (ใบแจ้งหนี้ สัญญา ใบเสร็จ) แทนที่จะรวมทุกอย่างไว้ใน Project เดียวที่มี Template จำนวนมาก
- ใช้การตั้งค่า
maxTemplatesPerProjectเพื่อบังคับใช้ระเบียบวินัยในการดูแล Template — Template ที่ไม่ได้ใช้งานควรถูก Archive หรือลบออก
File Retention
- ตั้งค่า
fileRetentionDaysสำหรับ Project ที่จัดการเอกสารที่มีความอ่อนไหว เพื่อให้ไฟล์ที่อัปโหลดถูกลบอัตโนมัติหลังจากระยะเวลาที่กำหนด - Project ที่ไม่มีการตั้งค่า Retention จะสืบทอดค่าเริ่มต้นจาก Organization ตรวจสอบ Organization → Settings เพื่อยืนยันว่าค่าเริ่มต้นระดับ Org ตรงตามข้อกำหนดด้านการปฏิบัติตามกฎระเบียบของคุณ
TIP
หากคุณกำลังทำ Proof-of-Concept หรือทดสอบ Integration ให้สร้าง Staging Project เฉพาะที่มีช่วงเวลา File Retention สั้น (เช่น 7 วัน) เพื่อป้องกันไม่ให้ข้อมูลทดสอบสะสมมากเกินไป
