SocialHub.AI
Pusat Pembangun · REST API

Penyesuaian: Medan & Modul

Flash dibentuk untuk setiap jenama dalam dua cara, kedua-duanya pada satu pangkalan kod kongsi — tidak pernah satu cabang. Medan tersuai tambahkan data anda sendiri pada rekod ahli dan ditetapkan melalui v2 REST API. Modul ialah keupayaan pilihan yang dihidupkan setiap ruang kerja dan dikuatkuasakan oleh pelayan. Panduan ini merangkumi kedua-duanya.

Langkah 1 — tentukan medan (dalam aplikasi)

Medan diisytiharkan sebelum ia ditetapkan

Pemilik atau pentadbir mencipta medan di bawah Tetapan → Medan Tersuai. Setiap medan mempunyai key (nama mesinnya, contohnya cf_membership_no), type, dan — untuk jenis yang dipilih — senarai pilihan. Kekunci dan jenis ditetapkan setelah dicipta. API tidak pernah mencipta medan; ia hanya menetapkan nilai untuk medan yang sudah wujud dan menolak kekunci yang tidak diketahui — jadual definisi ialah senarai yang dibenarkan.

Langkah 2 — tetapkan nilai melalui API

Lulus customAttributes untuk mencipta atau mengemas kini

Kedua-dua POST /api/v2/members (cipta) dan PATCH /api/v2/members/{id} (kemas kini) menerima customAttributes object yang dikunci oleh kekunci medan anda. Sahkan dengan kekunci Bearer fl_live_ yang mempunyai skop 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"
    }
  }'

Semasa kemas kini, hantar hanya kunci yang anda ingin ubah. Menetapkan kunci kepada null akan mengosongkannya.

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" } }'
Bentuk nilai mengikut jenis

Apa yang diterima oleh setiap jenis medan

JenisContoh nilai JSONMenerima
text"A-10023"string
number42number (atau angka string)
date"2018-05-01"Tarikh ISO (TTTT-BB-HH)
booleantruebenar / salah
enum"flagship"salah satu pilihan medan
list["running","tennis"]subset pilihan medan

Pengesahan adalah ketat: nilai mesti sepadan dengan jenis medannya, nilai enum/list mestilah salah satu pilihan yang ditakrifkan, dan kunci yang tidak diketahui ditolak dengan 400. Medan untuk data peribadi sensitif (PII) belum diterima lagi — kekalkan atribut tersuai kepada nilai perniagaan yang tidak sensitif.

Apa yang anda dapat di hiliran

Satu nilai, digunakan merentasi platform

Segmen

Tapis ahli mengikut mana-mana medan tersuai dengan operator yang sesuai jenis — medan yang sama yang anda tetapkan di atas API.

Pemperibadian e-mel

Rujuk nilai dalam salinan sebagai {{cf_membership_no}} atau {{member.cf_membership_no}}.

Ahli telah membaca

Nilai tersuai dikembalikan pada ahli object di bawah customAttributes.

② Modul

Keupayaan pilihan, dihidupkan setiap ruang kerja

Jika medan tersuai menambah nilai , modul menambah keseluruhan keupayaan — fikirkan modul tiket perkhidmatan, temu janji atau log pembaikan. Modul dimatikan secara lalai dan didayakan setiap ruang kerja. Setiap ruang kerja menjalankan asas kod yang sama; Modul yang dihidupkan atau dimatikan adalah data (satu kelayakan), bukan binaan peribadi.

Cara gating berfungsi

Dikuatkuasakan oleh pelayan, di satu tempat

Setiap modul mempunyai kunci stabil (cth. tickets). Sama ada ruang kerja boleh menggunakannya ialah suis tunggal setiap ruang kerja, diperiksa pada satu titik pertimbangan dan digunakan di mana-mana sahaja modul muncul — gagal-ditutup: jika suis tidak dihidupkan, keupayaan itu tidak ada.

API

Titik akhir modul yang dilumpuhkan menolak panggilan dengan 403. Akses tidak pernah dibiarkan secara kebetulan dalam UI sahaja.

Navigasi & halaman

Entri menu dan halaman modul hanya muncul apabila ia diaktifkan untuk ruang kerja — dan hilang dengan bersih apabila ia dimatikan.

Diasingkan daripada penyewa

Kelayakan adalah setiap ruang kerja. Modul dan data satu jenama tidak pernah kelihatan kepada jenama lain.

Melanjutkan tanpa fork

Cara modul baharu diperkenalkan

Apabila keupayaan benar-benar boleh diguna semula, ia dibina sekali sebagai modul — didaftarkan dalam katalog modul di bawah kuncinya, dengan datanya sendiri, API yang dipagar kelayakannya sendiri dan halamannya sendiri. Ruang kerja pertama yang memerlukannya akan membinanya; ruang kerja seterusnya hanya perlu menukar suis. Inilah teras model: perbezaan pelanggan dinyatakan sebagai tetapan, jadi satu peningkatan atau pembaikan akan sampai ke setiap ruang kerja sekaligus.

  1. Modul mendaftar dalam katalog dengan kunci dan penerangan yang stabil.
  2. Data dan laluan APInya dipagar pada kunci tersebut (gagal ditutup).
  3. Navigasi dan halamannya hanya ditunjukkan apabila kekunci diaktifkan.
  4. Pemilik menghidupkannya untuk ruang kerja; ruang kerja kedua ialah suis, bukan bina semula.
Mengurus modul

Hidupkan atau matikan modul

Pemilik ruang kerja mengurus modul daripada Tetapan → Modul. Setiap togol berkuat kuasa serta-merta merentasi API dan UI.

Peraturan keputusan: gunakan konfigurasi dahulu; tambah medan tersuai apabila anda perlu menyimpan nilai; bina modul apabila keupayaan benar-benar boleh diguna semula — dan jangan sekali-kali menukar produk untuk seorang pelanggan.

Perlukan rekod jenis baharu, bukan sekadar medan tambahan? Lihat Objek Tersuai — bina perniagaan tanpa kod anda sendiri object, kemudian layari rekod dan segmenkannya. Untuk memastikan susunan anda yang lain disegerakkan, lihat Penyambung & Pemberitahuan.