การปรับแต่ง: ฟิลด์และโมดูล
Flash ถูกปรับแต่งให้เข้ากับแต่ละแบรนด์ในสองวิธี โดยใช้ฐานโค้ดเดียวกัน ไม่ใช่การแยกโค้ด ฟิลด์ที่กำหนดเอง เพิ่มข้อมูลของคุณเองลงในบันทึกสมาชิก และตั้งค่าผ่าน v2 REST API โมดูล เป็นความสามารถเสริมที่เปิดใช้งานต่อพื้นที่ทำงาน และบังคับใช้โดยเซิร์ฟเวอร์ คู่มือนี้ครอบคลุมทั้งสองอย่าง
มีการประกาศฟิลด์ก่อนที่จะตั้งค่า
เจ้าของหรือผู้ดูแลระบบสร้างฟิลด์ภายใต้ การตั้งค่า → ฟิลด์ที่กำหนดเอง แต่ละฟิลด์จะมี key (ชื่อเครื่อง เช่น cf_membership_no), type และ — สำหรับประเภทที่เลือก — รายการตัวเลือก คีย์และประเภทจะถูกกำหนดตายตัวเมื่อสร้างแล้ว API จะไม่สร้างฟิลด์ใหม่ แต่จะกำหนดค่าให้กับฟิลด์ที่มีอยู่แล้ว และปฏิเสธคีย์ที่ไม่รู้จัก — ตารางคำจำกัดความคือรายการที่อนุญาต
ส่งผ่าน customAttributes ในการสร้างหรืออัปเดต
ทั้ง POST /api/v2/members (สร้าง) และ PATCH /api/v2/members/{id} (อัปเดต) ยอมรับอ็อบเจ็กต์ customAttributes ที่คีย์โดยคีย์ฟิลด์ของคุณ ตรวจสอบสิทธิ์ด้วยคีย์ Bearer fl_live_ ที่มีขอบเขต members:write
curl -X POST https://flash.socialhub.ai/api/v2/members \
-H "Authorization: Bearer fl_live_..." \
-H "Content-Type: application/json" \
-d '{
"email": "ada@example.com",
"fullName": "Ada Lovelace",
"customAttributes": {
"cf_membership_no": "A-10023",
"cf_preferred_store": "flagship",
"cf_child_birthday": "2018-05-01"
}
}'เมื่ออัปเดต ให้ส่งเฉพาะคีย์ที่คุณต้องการเปลี่ยนแปลง การตั้งค่าคีย์เป็น null จะเป็นการลบล้าง
curl -X PATCH https://flash.socialhub.ai/api/v2/members/{id} \
-H "Authorization: Bearer fl_live_..." \
-H "Content-Type: application/json" \
-d '{ "customAttributes": { "cf_preferred_store": "airport" } }'สิ่งที่ช่องแต่ละประเภทยอมรับ
| ประเภท | ตัวอย่างค่า JSON | ยอมรับ |
|---|---|---|
text | "A-10023" | เชือก |
number | 42 | ตัวเลข (หรือสตริงตัวเลข) |
date | "2018-05-01" | วันที่ ISO (ปปปป-ดด-วว) |
boolean | true | จริง / เท็จ |
enum | "flagship" | หนึ่งในตัวเลือกของฟิลด์ |
list | ["running","tennis"] | เซ็ตย่อยของตัวเลือกของฟิลด์ |
การตรวจสอบความถูกต้องเข้มงวด: ค่าต้องตรงกับประเภทของฟิลด์ ค่า enum/list จะต้องเป็นหนึ่งในตัวเลือกที่กำหนดไว้ และคีย์ที่ไม่รู้จักจะถูกปฏิเสธด้วย 400 ช่องสำหรับข้อมูลส่วนบุคคลที่ละเอียดอ่อน (PII) ยังไม่ได้รับการยอมรับ — เก็บแอตทริบิวต์ที่กำหนดเองสำหรับมูลค่าทางธุรกิจที่ไม่ละเอียดอ่อน
ค่าเดียวที่ใช้ทั่วทั้งแพลตฟอร์ม
ส่วนต่างๆ
กรองสมาชิกตามช่องที่กำหนดเองด้วยตัวดำเนินการตามประเภท — ช่องเดียวกับที่คุณตั้งค่าไว้บน API
การปรับแต่งอีเมลในแบบของคุณ
อ้างอิงค่าในการคัดลอกเป็น {{cf_membership_no}} หรือ {{member.cf_membership_no}}
สมาชิกอ่านแล้ว
ค่าที่กำหนดเองจะถูกส่งกลับบนวัตถุสมาชิกภายใต้ customAttributes
ความสามารถเสริมที่เปิดใช้งานต่อพื้นที่ทำงาน
เมื่อช่องที่กำหนดเองเพิ่ม ค่า โมดูลจะเพิ่มความสามารถทั้งหมด ลองนึกถึงโมดูลตั๋วบริการ การนัดหมาย หรือบันทึกการซ่อมแซม โมดูลจะปิดอยู่ตามค่าเริ่มต้นและเปิดใช้งานตามพื้นที่ทำงาน ทุกพื้นที่ทำงานใช้ฐานโค้ดเดียวกัน โมดูลที่เปิดหรือปิดอยู่คือ ข้อมูล (การให้สิทธิ์) ไม่ใช่บิลด์ส่วนตัว
บังคับใช้โดยเซิร์ฟเวอร์ในที่เดียว
แต่ละโมดูลมีคีย์ที่เสถียร (เช่น tickets) การใช้งานโมดูลในพื้นที่ทำงานนั้นขึ้นอยู่กับสวิตช์เดียวต่อพื้นที่ทำงาน โดยจะตรวจสอบ ณ จุดตัดสินใจจุดเดียวและนำไปใช้ทุกที่ที่โมดูลปรากฏ — fail-closed: หากสวิตช์ไม่ได้เปิดอยู่ ความสามารถนั้นก็จะไม่ปรากฏ
API
จุดสิ้นสุดของโมดูลที่ถูกปิดใช้งานปฏิเสธการโทรด้วย 403 การเข้าถึงจะไม่ปล่อยให้โอกาสใน UI เพียงอย่างเดียว
การนำทางและหน้าต่างๆ
รายการเมนูและหน้าต่างๆ ของโมดูลจะปรากฏขึ้นเฉพาะเมื่อเปิดใช้งานสำหรับพื้นที่ทำงานเท่านั้น และจะหายไปอย่างราบรื่นเมื่อปิดใช้งาน
ผู้เช่าแยกออกจากกัน
การให้สิทธิ์เป็นไปตามพื้นที่ทำงาน โมดูลและข้อมูลของแบรนด์หนึ่งจะไม่ปรากฏให้อีกแบรนด์หนึ่งมองเห็นได้
วิธีการแนะนำโมดูลใหม่
เมื่อความสามารถสามารถนำกลับมาใช้ใหม่ได้อย่างแท้จริง ความสามารถนั้นจะถูกสร้างเพียงครั้งเดียวเป็นโมดูล — ลงทะเบียนในแค็ตตาล็อกโมดูลภายใต้คีย์ของมัน พร้อมด้วยข้อมูลของตัวเอง API ที่ควบคุมการให้สิทธิ์ของตัวเอง และเพจของตัวเอง พื้นที่ทำงานแห่งแรกที่ต้องการจะถูกสร้างขึ้น ถัดไปเพียงแค่พลิกสวิตช์ นี่คือแกนหลักของโมเดล: ความแตกต่างของลูกค้าจะแสดงเป็นการตั้งค่า ดังนั้นการอัปเกรดหรือการแก้ไขหนึ่งรายการจะเข้าถึงทุกพื้นที่ทำงานพร้อมกัน
- โมดูลจะลงทะเบียนในแค็ตตาล็อกด้วยคีย์และคำอธิบายที่เสถียร
- ข้อมูลและเส้นทาง API ถูกควบคุมบนคีย์นั้น (ปิดไม่สำเร็จ)
- การนำทางและหน้าต่างๆ จะแสดงเฉพาะเมื่อเปิดใช้งานคีย์เท่านั้น
- เจ้าของเปิดใช้งานสำหรับพื้นที่ทำงาน พื้นที่ทำงานที่สองคือสวิตช์ ไม่ใช่การสร้างใหม่
เปิดหรือปิดโมดูล
เจ้าของพื้นที่ทำงานจัดการโมดูลจาก การตั้งค่า → โมดูล การสลับแต่ละครั้งจะมีผลทันทีทั่วทั้ง API และ UI
กฎการตัดสินใจ: ใช้การกำหนดค่าก่อน เพิ่ม ฟิลด์ที่กำหนดเอง เมื่อคุณต้องการจัดเก็บค่า สร้างโมดูลเมื่อความสามารถนั้นสามารถนำกลับมาใช้ซ้ำได้อย่างแท้จริง และอย่าแยกผลิตภัณฑ์เพื่อลูกค้าเพียงรายเดียว
ต้องการบันทึกรูปแบบใหม่ ไม่ใช่แค่สนามเพิ่มเติมใช่ไหม ดู ออบเจ็กต์ที่กำหนดเอง — สร้างออบเจ็กต์ธุรกิจแบบไม่ต้องใช้โค้ดของคุณเอง จากนั้นเรียกดูบันทึกและแบ่งส่วนในออบเจ็กต์เหล่านั้น เพื่อให้สแต็กที่เหลือของคุณซิงค์กัน โปรดดู ตัวเชื่อมต่อและการแจ้งเตือน