การปฏิบัติตามข้อกำหนดและความยินยอม API สด
อ่านคำชี้แจงความเป็นส่วนตัว/การปฏิบัติตามข้อกำหนดที่เผยแพร่ของทีมของคุณ และตรวจสอบความยินยอมต่อสมาชิกผ่าน v2 REST API ที่ได้รับการควบคุม หน้าร้าน แอป คลังข้อมูล หรือแบ็คออฟฟิศของคุณสามารถดึงข้อมูลใบแจ้งยอดปัจจุบัน เดินประวัติเวอร์ชัน และยืนยันได้อย่างแน่ชัดว่าสมาชิกตกลงในเวอร์ชันใด — ด้วยคีย์ที่กำหนดขอบเขตและได้รับการตรวจสอบแล้ว
การตรวจสอบสิทธิ์และขอบเขต
ปลายทางทั้งหมดอยู่บนโฮสต์ Flash API และตรวจสอบสิทธิ์ด้วยคีย์ API ฝั่งเซิร์ฟเวอร์ (Bearer) ทีมงานจะถูกสร้างขึ้นจากคีย์เสมอ — ไม่ได้ถูกส่งมาในคำขอ ขอบเขตการอ่านอย่างเดียวสองขอบเขตจะควบคุมการเข้าถึง:
privacy:read— ข้อความ: เวอร์ชันปัจจุบัน ประวัติ และเวอร์ชันเฉพาะconsent:read— บันทึกความยินยอมของสมาชิก (เวอร์ชัน ขอบเขต สถานะ เวลา)
# Every call uses a server-side API key (Bearer). teamId is derived from the key,
# never sent in the request. Two read scopes:
# privacy:read → the statement (current / history / a version)
# consent:read → a member's consent records
curl https://flash.socialhub.ai/api/v2/privacy/current \
-H "Authorization: Bearer fl_live_your_key_here"อ่านแถลงการณ์
เวอร์ชันที่เผยแพร่และเก็บถาวรเท่านั้น — ฉบับร่างจะไม่ถูกเปิดเผย และเนื้อหาจะถูกฆ่าเชื้อ (ถอดเครื่องหมายตรวจสอบภายในออก) ก่อนที่จะออกจาก API
GET https://flash.socialhub.ai/api/v2/privacy/current # scope: privacy:read
# 200 — the current published statement (sanitized), or { "data": null } if none published.
{
"data": {
"id": "pol_…",
"version": "v3",
"versionSeq": 3,
"status": "published",
"locale": "en",
"changeType": "material",
"changeSummary": "Updated data-retention section",
"effectiveAt": "2026-02-01T00:00:00.000Z",
"contentHash": "…sha256…",
"content": { "sections": [ { "key": "intro", "title": "…", "body": "…" } ] }
}
}GET https://flash.socialhub.ai/api/v2/privacy/policies # scope: privacy:read
# 200 — version history, newest first (metadata only; published & archived — never drafts).
{
"data": [
{ "id": "pol_3", "version": "v3", "versionSeq": 3, "status": "published",
"changeType": "material", "effectiveAt": "2026-02-01T00:00:00.000Z", "contentHash": "…" },
{ "id": "pol_2", "version": "v2", "versionSeq": 2, "status": "archived",
"changeType": "minor", "effectiveAt": "2026-01-01T00:00:00.000Z", "contentHash": "…" }
],
"total": 2
}
GET https://flash.socialhub.ai/api/v2/privacy/policies/{id} # one version, full sanitized content (404 for a draft id)ยืนยันความยินยอม
ยืนยันให้แน่ชัดว่าสมาชิกได้ให้ความยินยอมต่อข้อความเวอร์ชันและขอบเขตใด บันทึกเป็นหลักฐานที่เพิ่มได้เท่านั้นและยังคงอยู่แม้สมาชิกจะลบออก API จะส่งคืนสิ่งที่คุณต้องการตรวจสอบ โดยไม่มีที่อยู่ IP หรือ user-agent ดิบ (การลดข้อมูลส่วนบุคคล)
GET https://flash.socialhub.ai/api/v2/members/{id}/consents # scope: consent:read
# 200 — the member's consent records, newest first. The evidence to VERIFY consent:
# which statement version + scopes, the method, status and time. No raw IP / user-agent.
{
"data": [
{
"id": "con_…",
"scopes": ["privacy_policy", "marketing_email"],
"method": "register",
"status": "active", // active | legacy_unverified | withdrawn
"policyVersion": "v3",
"policyVersionSeq": 3,
"policyContentHash": "…sha256…",
"consentedAt": "2026-02-02T10:30:00.000Z"
}
]
}
# A member of another team (or unknown) → 404. No consents yet → { "data": [] }.การค้ำประกัน
ผู้เช่าแยกออกจากกัน
teamId มาจากคีย์ API รหัสของทีมอื่นแก้ไขเป็น 404 จุดสิ้นสุดมีการจำกัดอัตราต่อคีย์
ร่างเอกสารจะไม่รั่วไหล
แสดงเฉพาะเวอร์ชันที่เผยแพร่/เก็บถาวรแล้วเท่านั้น โดยมีการตรวจสอบความถูกต้องแล้ว ร่างงานที่อยู่ระหว่างดำเนินการและเครื่องหมายภายในจะยังคงอยู่ภายใน
ความยินยอมผูกพันกับถ้อยคำ
แต่ละบันทึกจะมีหมายเลขเวอร์ชันและแฮชของเนื้อหา ดังนั้น "v3" จึงหมายถึงคำเดียวกันเสมอ
น้อยที่สุดตามค่าเริ่มต้น
บันทึกคำยินยอมจะละเว้น IP ดิบ / user-agent — คุณจะได้รับหลักฐานการยืนยัน ไม่ใช่ข้อมูลการเฝ้าระวัง
ข้อมูลอ้างอิงที่เครื่องอ่านได้: จุดสิ้นสุดอยู่ในข้อมูลจำเพาะ v2 OpenAPI ที่ https://flash.socialhub.ai/api/v2/openapi.json (แท็ก Privacy)
นอกเหนือจากการยินยอม: การสมัครรับข้อมูลหัวข้อ บังคับใช้เมื่อส่ง
ความยินยอมเป็นประตูทางกฎหมาย การสมัครรับข้อมูลหัวข้อเป็นทางเลือกโดยละเอียดของสมาชิกในการทำการตลาดแบบใดที่พวกเขาต้องการ จากพื้นที่ความเป็นส่วนตัวของพอร์ทัล สมาชิกสามารถปิดแต่ละหัวข้อได้ — การส่งเสริมการขาย จดหมายข่าว ความภักดี ประกาศเกี่ยวกับผลิตภัณฑ์ — ในขณะที่ยังคงรักษาส่วนที่เหลือไว้ เป็นรูปแบบการยกเลิก (ไม่มีบันทึก = สมัครรับข้อมูล) และมีการบังคับใช้ฝั่งเซิร์ฟเวอร์: ทุกแคมเปญมีหัวข้อ และประตูการส่งจะระงับข้อความเมื่อสมาชิกปิดหัวข้อนั้น - ควบคู่ไปกับความถี่สูงสุดของนโยบายการสื่อสารและเวลาปิดเสียง ข้อความธุรกรรมจะไม่ได้รับผลกระทบ สมาชิกจัดการเอง พอร์ทัลอ่านและเขียนบนจุดสิ้นสุดเซสชันผู้บริโภค (/api/member/topic-subscriptions) ดังนั้นจึงไม่มีคีย์ผู้ดูแลระบบ API เกี่ยวข้อง