انتقل إلى المحتوى الرئيسي

getFormsDataByMarker

البحث عن بيانات النموذج بواسطة معرف نصي (علامة).

الوصف​

تسترجع هذه الطريقة كائن بيانات نموذج محدد بواسطة علامته من واجهة برمجة التطبيقات. تقبل معلمة علامة كعلامة لبيانات النموذج. تعيد Promise يتم حلها إلى مصفوفة من كائنات من نوع FormDataEntity.

.getFormsDataByMarker(

, , , , , ,

);

مخطط المعلمات​

المخطط

marker(required): string
علامة النموذج
مثال: "contact_form"

formModuleConfigId(required): number
معرف تكوين وحدة النموذج
مثال: 4

body: IFormsDataFilter
تصفية السجلات التي سيتم إرجاعها. كل حقل اختياري؛ الحقل المفقود أو الفارغ لا يتم تطبيقه
مثال:

{
"entityIdentifier": "blog",
"parentId": 10,
"userIdentifier": "",
"status": [
"moderation",
"approved"
],
"dateFrom": "2025-01-01",
"dateTo": ""
}

body.entityIdentifier: string | number
معرف الكيان الذي تنتمي إليه السجلات؛ سلسلة فارغة تعني "لا تصفية". علامة نصية للكيانات المحتوى ("مدونة")، المعرف الرقمي للمنتجات (2954)، تسجيل الدخول للمستخدمين والمشرفين.
مثال: "blog"

body.parentId: number
معرف السجل الأب — الطريقة لجلب الردود على تعليق واحد.
مثال: 10

body.userIdentifier: string
معرف نصي للمرسل؛ سلسلة فارغة تعني "لا تصفية".
مثال: "admin"

body.status: FormDataStatus[]
حالات الاعتدال التي يجب الاحتفاظ بها. يجب أن تكون مصفوفة — يتم رفض سلسلة عارية بـ 400. مصفوفة فارغة تعني "لا تصفية".
مثال: ["approved"]

body.dateFrom: string
الحد الأدنى من تاريخ التقديم، YYYY-MM-DD؛ سلسلة فارغة تعني "لا حد" — getFormsDataByMarker تزيله من الجسم، حيث ترفض نقطة النهاية تاريخًا فارغًا بـ 400. قيمة غير فارغة لا يمكن لواجهة برمجة التطبيقات تحليلها لا تزال تفشل الطلب.
مثال: "2025-01-01"

body.dateTo: string
الحد الأقصى من تاريخ التقديم، YYYY-MM-DD؛ سلسلة فارغة تعني "لا حد"، يتم التعامل معها مثل dateFrom.
مثال: "2025-12-31"

isExtended: number
علامة للحصول على حقول إضافية
مثال: 1

langCode: string
رمز اللغة. الافتراضي: "en_US"
مثال: "en_US"

offset: number
معلمة للتقسيم. الافتراضي: 0
مثال: 0

limit: number
معلمة للتقسيم. الافتراضي: 30
مثال: 30

بشكل افتراضي، يمكنك استرجاع 10 كائنات. وذلك بسبب حد السجلات في إعدادات أذونات الوحدة.
لعمل التقسيم بشكل صحيح، تحتاج إلى تكوين أذونات الوحدة وفقًا لاحتياجاتك في القسم المقابل.

أمثلة​

مثال بسيط​

const response = await FormData.getFormsDataByMarker('my-marker', 2);

مثال مع تصفية​

const response = await FormData.getFormsDataByMarker(
'my-marker',
2,
{ entityIdentifier: 'blog', status: ['approved'] },
0,
'en_US',
0,
30,
);
يتم إرجاع formData بدون غلاف اللغة

ترجع واجهة برمجة التطبيقات حقول كل سجل مغلفة بواسطة اللغة — "formData": { "en_US": [ … ] } — ويفكك SDK هذه الحقول للرمز اللغوي المطلوب. اقرأ record.formData كمصفوفة؛ record.formData[langCode] هو undefined ولا يعطي شيئًا بهدوء. هذا ينطبق على كلا قيمتي isExtended.

مثال على الاستجابة​

{
"items": [
{
"id": 9085,
"formIdentifier": "test-form",
"time": "2026-10-08T09:01:52.479Z",
"formData": [
{
"marker": "name",
"type": "string",
"value": "Test"
}
],
"attributeSetIdentifier": "form",
"moduleIdentifier": "content",
"entityIdentifier": "blog",
"entityId": 8,
"formModuleConfigId": 2
},
{
"id": 9084,
"formIdentifier": "test-form",
"time": "2026-10-08T09:01:26.676Z",
"formData": [
{
"marker": "name",
"type": "string",
"value": "Test"
}
],
"attributeSetIdentifier": "form",
"moduleIdentifier": "content",
"entityIdentifier": "blog",
"entityId": 8,
"formModuleConfigId": 2
},
{
"id": 9066,
"formIdentifier": "test-form",
"time": "2026-10-08T08:31:01.625Z",
"formData": [
{
"marker": "name",
"type": "string",
"value": "Test"
}
],
"attributeSetIdentifier": "form",
"moduleIdentifier": "content",
"entityIdentifier": "blog",
"entityId": 8,
"formModuleConfigId": 2
},
"..."
],
"total": 895
}

مخطط الاستجابة​

المخطط: IFormsDataEntity

items: IFormByMarkerDataEntity[]
مصفوفة من كائنات بيانات النموذج.
مثال:

[
{
"id": 42,
"parentId": null,
"formIdentifier": "test-form",
"depth": 0,
"ip": null,
"status": null,
"userIdentifier": null,
"formData": [
{
"marker": "name",
"type": "string",
"value": "Test"
}
],
"attributeSetIdentifier": "form",
"time": "2025-03-03T15:51:17.458Z",
"entityIdentifier": "blog",
"isUserAdmin": false,
"formModuleConfigId": 2
}
]

items.id: number
المعرف الفريد لصفحة النموذج.
مثال: 12345

items.parentId: null | number
المعرف الفريد لصفحة النموذج الأب.
مثال: 123

items.formIdentifier: string
معرف الصفحة.
مثال: "contact_form"

items.depth: number
**
مثال: 1

items.ip: string | null
Ip.
مثال: '127.0.0.1'

items.fingerprint: string | null
بصمة الإصبع.
مثال: 'fingerprint'

items.status: string | null
حالة الاعتدال للسجل: "مرسل"، "اعتدال"، "موافق"، "محظور" أو "محذوف"؛ null عندما لا يتم الاعتدال في النموذج.
مثال: 'approved'

items.userIdentifier: string | null
معرف نصي (علامة) للمستخدم.
مثال: "admin"

items.formData: FormDataType[]
الحقول المقدمة، التي تم فك تغليفها بالفعل من اللغة: ترجع واجهة برمجة التطبيقات { "en_US": [ … ] } ويمرر SDK المصفوفة للرمز اللغوي المطلوب. اقرأ formData مباشرة — formData[langCode] هو undefined.
مثال:

[
{
"marker": "name",
"type": "string",
"value": "Test"
}
]

items.attributeSetIdentifier: string | null
معرف نصي (علامة) لمجموعة السمات المستخدمة.
مثال: "product_attributes"

items.time: Date | string
معرف النموذج.
مثال: "2023-10-01T12:00:00Z"

items.entityIdentifier: string
معرف نصي (علامة) للكيان.
مثال: "test"

items.isUserAdmin: boolean
هل المستخدم مشرف.
مثال: true

items.formModuleConfigId: number
معرف تكوين وحدة النموذج.
مثال: 2

items.moduleIdentifier: string
معرف الوحدة.
مثال: "blog"

items.entityId: number
معرف تكوين وحدة النموذج.
مثال: 2

total: number
إجمالي عدد السجلات التي تم العثور عليها.
مثال: 100