SocialHub.AI
Pusat Pembangun · Kebolehpanjangan Terbuka

Objek Tersuai API

Ruang kerja boleh menentukan objek perniagaan berstrukturnya sendiri — kerja pembaikan, temu janji, aduan — dengan medan, rekod, UI senarai/borang dan segmentasi, semuanya tanpa kod. API ini membolehkan integrasi anda membaca skema objek tersebut dan membaca atau menulis rekodnya. object ditakrifkan dalam aplikasi terlebih dahulu; API berfungsi terhadap apa yang sedia ada.

Langkah 1 — temui

Senaraikan jenis object, kemudian baca skema mereka

Pengesahan dengan kekunci Bearer fl_live_ yang memegang objects:read. GET /api/v2/objects mengembalikan jenis object yang didedahkan oleh ruang kerja ini — hanya objek yang diterbitkan, API-kelihatan dikembalikan; draf dan objek tersembunyi API tidak pernah bocor. GET /api/v2/objects/{type} mengembalikan skema medan penerangan kendiri object (kunci, jenis, pilihan, diperlukan) supaya anda boleh memaparkan borang atau rekod peta tanpa pengekodan keras apa-apa. Jenis yang tidak diketahui, draf, tersembunyi atau ruang kerja silang mengembalikan 404.

# what object types exist here?
curl https://flash.socialhub.ai/api/v2/objects \
  -H "Authorization: Bearer fl_live_..."
# { "data": [ { "type": "repair_jobs", "label": "Repair Jobs", ... } ] }

# what does one look like?
curl https://flash.socialhub.ai/api/v2/objects/repair_jobs \
  -H "Authorization: Bearer fl_live_..."
# { "data": {
#     "type": "repair_jobs", "label": "Repair Jobs",
#     "fields": [
#       { "key": "cf_status",  "type": "enum", "required": true,
#         "options": ["Received","In Progress","Completed"] },
#       { "key": "cf_item",    "type": "text" },
#       { "key": "member_ref", "type": "member_ref" }
#     ]
# } }
Langkah 2 — baca rekod

Senarai, tapis, isih & susun halaman

GET /api/v2/objects/{type}/records mengembalikan rekod untuk object (skop objects:read). Halaman dengan limit (maks 200) dan offset; susun dengan sortBy (created_desc, created_asc, updated_desc, title_asc); teks bebas search; tapis kepada ahli dengan memberId; dan tapis mana-mana medan dengan f_<fieldKey>=<value>. Rekod tunggal ialah GET /api/v2/objects/{type}/records/{recordId}.

curl "https://flash.socialhub.ai/api/v2/objects/repair_jobs/records\
?f_cf_status=In%20Progress&sortBy=updated_desc&limit=50" \
  -H "Authorization: Bearer fl_live_..."

# { "data": [ { "id": "rec_...", "data": { "cf_status": "In Progress",
#               "cf_item": "Sole replacement", "member_ref": "mbr_..." } } ],
#   "total": 12 }
Langkah 3 — tulis rekod

Cipta, kemas kini & padam

Penulisan memerlukan skop objects:write. data object disahkan terhadap skema medan object — medan, jenis, pilihan enum dan rujukan ahli yang diperlukan semuanya diperiksa dan kekunci yang tidak diketahui ditolak. Pengawal kadar penulisan setiap kekunci yang ditutup gagal terletak di hadapan setiap penulisan, jadi kekunci yang bocor tidak dapat membanjiri jadual.

# create
curl -X POST https://flash.socialhub.ai/api/v2/objects/repair_jobs/records \
  -H "Authorization: Bearer fl_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "data": {
    "cf_status": "Received",
    "cf_item": "Sole replacement",
    "member_ref": "mbr_..."
  } }'
# 201 { "data": { "id": "rec_...", "data": { ... } } }

PATCH …/records/{recordId} ialah kemas kini separa secara lalai (digabungkan medan demi medan, jadi tampalan serentak tidak akan saling bertindih). Hantar medan sebagai null untuk mengalih keluarnya, atau { "replace": true } untuk menulis ganti keseluruhan rekod. DELETE …/records/{recordId} memadam secara lembut.

# partial update — only touch cf_status
curl -X PATCH https://flash.socialhub.ai/api/v2/objects/repair_jobs/records/rec_... \
  -H "Authorization: Bearer fl_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "data": { "cf_status": "Completed" } }'

# delete
curl -X DELETE https://flash.socialhub.ai/api/v2/objects/repair_jobs/records/rec_... \
  -H "Authorization: Bearer fl_live_..."