getFormByMarker
Mengambil satu objek formulir berdasarkan penanda.
Deskripsi
Metode ini mengambil satu objek formulir berdasarkan pengidentifikasi tekstualnya (penanda) dari API. Ini mengembalikan sebuah Promise yang menyelesaikan menjadi objek FormEntity.
Forms.getFormByMarker(
marker*,
langCode
);
Skema parameter
Skema
marker(required): string
Penanda formulir
contoh: "contact_form"
langCode: string
Kode bahasa. Default: "en_US"
contoh: "en_US"
Contoh
Contoh minimal
const response = await Forms.getFormByMarker('my-form');
Contoh dengan atribut
const response = await Forms.getFormByMarker('my-form', 'en_US');
Contoh respons
{
"id": 6,
"attributeSetId": 15,
"type": "data",
"localizeInfos": {
"title": "Test form",
"titleForSite": "",
"successMessage": "",
"unsuccessMessage": "",
"urlAddress": "",
"database": "0",
"script": "0"
},
"version": 14,
"position": 1,
"identifier": "test-form",
"processingType": "script",
"templateId": null,
"attributes": [
{
"type": "string",
"marker": "name",
"position": 1,
"settings": {},
"isVisible": true,
"listTitles": [],
"validators": {
"requiredValidator": {
"strict": true
},
"stringInspectionValidator": {
"stringMax": 0,
"stringMin": 0,
"stringLength": 0
}
},
"initialValue": null,
"localizeInfos": {
"title": "Name"
},
"additionalFields": {
"additional_field": {
"type": "string",
"value": "Additional field data"
}
}
},
{
"type": "file",
"marker": "file",
"position": 2,
"settings": {},
"isVisible": true,
"listTitles": [],
"validators": {},
"initialValue": null,
"localizeInfos": {
"title": "File"
},
"additionalFields": {}
}
],
"total": "1",
"moduleFormConfigs": [
{
"id": 2,
"moduleIdentifier": "content",
"isGlobal": false,
"isClosed": false,
"viewOnlyUserData": false,
"commentOnlyUserData": false,
"entityIdentifiers": [
{
"id": "blog",
"isNested": false
}
],
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null
}
]
}
Skema respons
Skema: IFormsEntity
id: number
Pengidentifikasi objek.
contoh: 12345
attributeSetId: number | null
Pengidentifikasi set atribut yang digunakan, atau null jika tidak berlaku.
contoh: 1234
type: string | null
Jenis formulir.
contoh: "contact"
localizeInfos: IFormLocalizeInfo
Nama formulir dan bidang lokalisi sisi formulir (pesan sukses/gagal, konfigurasi pemrosesan, dll.).
contoh:
{
"key": "value"
}
version: number
Nomor versi objek.
contoh: 1
position: number
Posisi objek.
contoh: 1
identifier: string
Pengidentifikasi tekstual untuk bidang catatan.
contoh: "form_contact_us"
processingType: string
Jenis pemrosesan formulir.
contoh: "async"
templateId: number | null
Pengidentifikasi template yang digunakan oleh formulir, atau null jika tidak ada template yang digunakan.
contoh: 6789
attributes: IFormAttribute[]
Bidang formulir dengan lokalisi, validator, dan bendera spesifik formulir.
attributes.marker: string
Penanda bidang (nama mesin).
contoh: "email"
attributes.type: AttributeType
Tipe data atribut (misalnya "string", "file").
attributes.position: number
Posisi urut bidang.
contoh: 1
attributes.isVisible: boolean
Apakah bidang tersebut terlihat oleh pengguna.
contoh: true
attributes.localizeInfos: IAttributeLocalizeInfo
Label yang dilokalisasi untuk bidang. Untuk atribut timeInterval, juga membawa muatan jadwal intervals.
attributes.initialValue: unknown
Nilai default yang diterapkan ketika bidang tidak diisi.
attributes.listTitles: IListTitle[]
Opsi yang telah ditentukan untuk bidang list/radioButton; array kosong untuk tipe lainnya.
attributes.validators: IAttributeValidators
Aturan validasi; objek kosong ketika tidak ada validator yang dikonfigurasi.
attributes.settings: Record<string, unknown>
Konfigurasi spesifik bidang; objek kosong secara default.
attributes.additionalFields: Record<string, IFormAttributeAdditionalField>
Sub-bidang bersarang yang dikunci oleh penanda; objek kosong ketika tidak ada.
attributes.isLogin: boolean
Apakah bidang ini membawa nilai login yang digunakan untuk otentikasi.
contoh: false
attributes.isSignUp: boolean
Apakah bidang ini diperlukan saat pendaftaran.
contoh: false
attributes.isPassword: boolean
Apakah bidang ini membawa nilai kata sandi yang digunakan untuk otentikasi.
contoh: false
attributes.isSignUpRequired: boolean
Apakah bidang ini diperlukan saat pendaftaran.
contoh: false
attributes.isNotificationEmail: boolean
Apakah bidang ini menyimpan email yang digunakan untuk notifikasi.
contoh: false
attributes.isNotificationPhonePush: boolean
Apakah bidang ini menyimpan nomor telepon yang digunakan untuk notifikasi push.
contoh: false
attributes.isNotificationPhoneSMS: boolean
Apakah bidang ini menyimpan nomor telepon yang digunakan untuk notifikasi SMS.
contoh: false
total: number | string
Jumlah total entri terkait.
contoh: "1"
moduleFormConfigs: IFormConfig[]
Array konfigurasi formulir modul yang terkait dengan formulir.
moduleFormConfigs.id: number
Pengidentifikasi konfigurasi formulir.
contoh: 123
moduleFormConfigs.formIdentifier: string
Pengidentifikasi formulir (hanya di API produk/halaman).
contoh: "review"
moduleFormConfigs.moduleIdentifier: string
Pengidentifikasi modul yang terkait dengan konfigurasi formulir.
contoh: "module_identifier"
moduleFormConfigs.isGlobal: boolean
Menunjukkan apakah konfigurasi formulir bersifat global.
contoh: true
moduleFormConfigs.isClosed: boolean
Menunjukkan apakah konfigurasi formulir ditutup.
contoh: true
moduleFormConfigs.isModerate: boolean
Menunjukkan apakah formulir memerlukan moderasi (hanya di API produk/halaman).
contoh: false
moduleFormConfigs.viewOnlyUserData: boolean
Menunjukkan apakah konfigurasi formulir memungkinkan melihat data pengguna (digunakan di API formulir).
contoh: true
moduleFormConfigs.commentOnlyUserData: boolean
Menunjukkan apakah konfigurasi formulir memungkinkan mengomentari data pengguna (digunakan di API formulir).
contoh: true
moduleFormConfigs.viewOnlyMyData: boolean
Menunjukkan apakah konfigurasi formulir memungkinkan melihat data saya (digunakan di API produk/halaman).
contoh: false
moduleFormConfigs.commentOnlyMyData: boolean
Menunjukkan apakah konfigurasi formulir memungkinkan mengomentari data saya (digunakan di API produk/halaman).
contoh: false
moduleFormConfigs.entityIdentifiers: object[]
Array pengidentifikasi entitas yang terkait dengan konfigurasi formulir.
moduleFormConfigs.nestedEntityIdentifiers: string[]
Array string pengidentifikasi entitas bersarang (hanya di API produk/halaman).
contoh: ["catalog"]
moduleFormConfigs.exceptionIds: string[]
Array pengidentifikasi pengecualian.
moduleFormConfigs.formDataCount: number
Jumlah total entri data formulir (hanya di API produk/halaman).
contoh: 306
moduleFormConfigs.entityFormDataCount: Record<string, number>
Jumlah data formulir per pengidentifikasi entitas (hanya di API produk/halaman).
contoh:
{"catalog": 306}
moduleFormConfigs.isRating: boolean | null
Menunjukkan apakah konfigurasi formulir ini untuk penilaian.
contoh: null
moduleFormConfigs.isAnonymous: boolean | null
Menunjukkan apakah pengiriman anonim diizinkan.
contoh: null
moduleFormConfigs.allowHalfRatings: boolean | null
Menunjukkan apakah penilaian setengah diizinkan.
contoh: null
moduleFormConfigs.allowRerating: boolean | null
Menunjukkan apakah penilaian ulang diizinkan.
contoh: null
moduleFormConfigs.maxRatingScale: number | null
Nilai maksimum skala penilaian.
contoh: 5
moduleFormConfigs.ratingCalculation: string
Metode perhitungan penilaian.
contoh: "average"
Contoh penggunaan
Panduan langkah demi langkah dalam dokumentasi:
- Kirim formulir — ambil formulir kontak berdasarkan penanda dan kirim input pengguna kembali ke OneEntry.
- Form entitas — tangani formulir yang berisi bidang tipe entitas (halaman atau produk).
- Daftar pengguna — gunakan formulir pendaftaran untuk membuat akun baru.
Coba secara langsung
Jalankan metode ini secara interaktif di JS SDK sandbox — pada kunjungan pertama, sambungkan URL Proyek dan Token Aplikasi Anda, lalu buka skenario apa pun di bawah ini untuk melihat Forms.getFormByMarker() beraksi:
- Kirim formulir — ambil formulir kontak berdasarkan penanda dan kirim input pengguna kembali ke OneEntry.
- Form entitas — tangani formulir yang berisi bidang tipe entitas (halaman atau produk).
- Form file — kirim formulir yang menyertakan lampiran file.
- Form spam — kirim formulir dengan perlindungan spam.
- Form jadwal — pilih slot waktu dari bidang
timeIntervaldan kirimkan. - Form Formik — buat formulir Formik dari konfigurasi formulir OneEntry menggunakan
useFormConfig. - Daftar pengguna — gunakan formulir pendaftaran untuk membuat akun baru.