Businesses
สร้างและจัดการ business ที่บัญชีเป็นเจ้าของ — business คือ tenant ระดับบนสุด recording, member, collection และ provider ทั้งหมดอยู่ภายใน business เดียว
Account key เท่านั้น — endpoint เหล่านี้ใช้กับ business key ไม่ได้ (business key ผูกกับ business เดียว) ถ้าเรียกด้วย business key จะได้
403 account_key_requiredและ account key ไม่ต้องส่งX-Business-Idที่นี่ เพราะ business คือ path{id}อยู่แล้ว ดูเพิ่มที่ Getting started → API Key ระดับบัญชี
GET /businesses
ดูทุก business ที่เจ้าของบัญชีเป็นสมาชิก
Scopes: account key เท่านั้น (manage_all)
curl https://phone.mcloud.co.th/api/v1/businesses \
-H "Authorization: Bearer crk_..."
{
"items": [
{ "id": "0192b9...", "name": "Acme Co.", "slug": "acme-co" }
],
"total": 1
}
POST /businesses
สร้าง business ใหม่ — ผู้เรียกจะกลายเป็น owner
Scopes: account key เท่านั้น (manage_all)
| Param | Type | Note |
|---|---|---|
name | string (2-80) | required |
curl -X POST https://phone.mcloud.co.th/api/v1/businesses \
-H "Authorization: Bearer crk_..." \
-H "Content-Type: application/json" \
-d '{"name":"Acme Co."}'
{ "id": "0192b9...", "name": "Acme Co.", "slug": "acme-co" }
GET /businesses/{id}
ดึง business ที่เจ้าของเป็นสมาชิก พร้อม roleKey ของเจ้าของใน business นั้น
Scopes: account key เท่านั้น (manage_all)
ได้ 404 not_found ถ้าเจ้าของบัญชีไม่ใช่สมาชิกของ business นั้น
{ "id": "0192b9...", "name": "Acme Co.", "slug": "acme-co", "roleKey": "owner" }
PATCH /businesses/{id}
เปลี่ยนชื่อ business
Scopes: account key เท่านั้น (manage_all)
| Param | Type | Note |
|---|---|---|
name | string (2-80) | required |
curl -X PATCH https://phone.mcloud.co.th/api/v1/businesses/$ID \
-H "Authorization: Bearer crk_..." \
-H "Content-Type: application/json" \
-d '{"name":"Acme Co. (renamed)"}'
{ "id": "0192b9...", "name": "Acme Co. (renamed)", "slug": "acme-co" }
DELETE /businesses/{id}
ลบ business — เฉพาะ owner ถ้า role ของผู้เรียกใน business นั้นไม่ใช่ owner จะได้ 403 owner_required และจะ cascade ลบ member, recording, provider config ทั้งหมดภายใน business นั้นด้วย ย้อนกลับไม่ได้
Scopes: account key เท่านั้น (manage_all), ต้องมี role owner
curl -X DELETE https://phone.mcloud.co.th/api/v1/businesses/$ID \
-H "Authorization: Bearer crk_..."
{ "ok": true, "id": "0192b9..." }
