Lewati ke konten utama

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 timeInterval dan kirimkan.
  • Form Formik — buat formulir Formik dari konfigurasi formulir OneEntry menggunakan useFormConfig.
  • Daftar pengguna — gunakan formulir pendaftaran untuk membuat akun baru.