getFormsDataByMarker
Buscando datos de formularios por identificador de texto (marcador).
Descripción
Este método recupera un objeto de datos de formulario específico por su marcador desde la API. Acepta un parámetro de marcador como el marcador de los datos del formulario. Devuelve una Promesa que se resuelve en un array de objetos del tipo FormDataEntity.
FormData.getFormsDataByMarker(
marker*,
formModuleConfigId*,
body,
isExtended,
langCode,
offset,
limit
);
Esquema de parámetros
Esquema
marker(requerido): string
Marcador del formulario
ejemplo: "contact_form"
formModuleConfigId(requerido): number
ID de configuración del módulo de formulario
ejemplo: 4
body: IFormsDataFilter
Filtro para los registros a devolver. Cada campo es opcional; un campo omitido o vacío no se aplica
ejemplo:
{
"entityIdentifier": "blog",
"parentId": 10,
"userIdentifier": "",
"status": [
"moderation",
"approved"
],
"dateFrom": "2025-01-01",
"dateTo": ""
}
body.entityIdentifier: string
Identificador de texto (marcador) de la entidad a la que pertenecen los registros; una cadena vacía significa "sin filtro".
ejemplo: "blog"
body.parentId: number
Identificador del registro padre — la forma de obtener respuestas a un comentario.
ejemplo: 10
body.userIdentifier: string
Identificador de texto del remitente; una cadena vacía significa "sin filtro".
ejemplo: "admin"
body.status: FormDataStatus[]
Estados de moderación a mantener. Debe ser un array — una cadena simple es rechazada con 400. Un array vacío significa "sin filtro".
ejemplo: ["approved"]
body.dateFrom: string
Límite inferior de la fecha de envío, YYYY-MM-DD; una cadena vacía significa "sin límite". Un valor que la API no puede analizar falla la solicitud con un 500.
ejemplo: "2025-01-01"
body.dateTo: string
Límite superior de la fecha de envío, YYYY-MM-DD; una cadena vacía significa "sin límite".
ejemplo: "2025-12-31"
isExtended: number
Indicador para obtener campos adicionales
ejemplo: 1
langCode: string
Código de idioma. Por defecto: "en_US"
ejemplo: "en_US"
offset: number
Parámetro para la paginación. Por defecto: 0
ejemplo: 0
limit: number
Parámetro para la paginación. Por defecto: 30
ejemplo: 30
Por defecto, puedes recuperar 10 objetos. Esto se debe al límite de registros en la configuración de permisos del módulo.
Para que la paginación funcione correctamente, necesitas configurar Permisos del módulo de acuerdo a tus necesidades en la sección correspondiente.
Ejemplos
Ejemplo mínimo
const response = await FormData.getFormsDataByMarker('my-marker', 2);
Ejemplo con un filtro
const response = await FormData.getFormsDataByMarker(
'my-marker',
2,
{ entityIdentifier: 'blog', status: ['approved'] },
0,
'en_US',
0,
30,
);
La API devuelve los campos de cada registro envueltos por idioma — "formData": { "en_US": [ … ] } — y el SDK los desenrolla para el langCode solicitado. Lee record.formData como un array; record.formData[langCode] es undefined y no produce nada. Esto se mantiene para ambos valores de isExtended.
Ejemplo de respuesta
{
"items": [
{
"id": 8409,
"formIdentifier": "test-form",
"time": "2026-08-23T17:47:58.472Z",
"formData": [
{
"marker": "name",
"type": "string",
"value": "Test"
}
],
"attributeSetIdentifier": "form",
"moduleIdentifier": "content"
},
{
"id": 8392,
"formIdentifier": "test-form",
"time": "2026-08-23T14:37:47.250Z",
"formData": [
{
"marker": "name",
"type": "string",
"value": "Test"
}
],
"attributeSetIdentifier": "form",
"moduleIdentifier": "content"
},
{
"id": 8375,
"formIdentifier": "test-form",
"time": "2026-08-23T14:31:26.065Z",
"formData": [
{
"marker": "name",
"type": "string",
"value": "Test"
}
],
"attributeSetIdentifier": "form",
"moduleIdentifier": "content"
},
"..."
],
"total": 853
}
Esquema de respuesta
Esquema: IFormsDataEntity
items: IFormByMarkerDataEntity[]
Array de objetos de datos de formulario.
ejemplo:
[
{
"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
El identificador único de la página del formulario.
ejemplo: 12345
items.parentId: null | number
El identificador único de la página del formulario padre.
ejemplo: 123
items.formIdentifier: string
El identificador de la página.
ejemplo: "contact_form"
items.depth: number
**
ejemplo: 1
items.ip: string | null
Ip.
ejemplo: '127.0.0.1'
items.fingerprint: string | null
Huella digital.
ejemplo: 'fingerprint'
items.status: string | null
Estado de moderación del registro: "enviado", "moderación", "aprobado", "prohibido" o "eliminado"; null cuando el formulario no está moderado.
ejemplo: 'approved'
items.userIdentifier: string | null
Identificador de texto (marcador) del usuario.
ejemplo: "admin"
items.formData: FormDataType[]
Campos enviados, ya desenrollados de la localización: la API devuelve { "en_US": [ … ] } y el SDK entrega el array para el langCode solicitado. Lee formData directamente — formData[langCode] es undefined.
ejemplo:
[
{
"marker": "name",
"type": "string",
"value": "Test"
}
]
items.attributeSetIdentifier: string | null
Identificador de texto (marcador) del conjunto de atributos utilizado.
ejemplo: "product_attributes"
items.time: Date | string
El identificador del formulario.
ejemplo: "2023-10-01T12:00:00Z"
items.entityIdentifier: string
Identificador de texto (marcador) de la entidad.
ejemplo: "test"
items.isUserAdmin: boolean
¿Es el usuario administrador?
ejemplo: true
items.formModuleConfigId: number
ID de configuración del módulo de formulario.
ejemplo: 2
items.moduleIdentifier: string
Identificador del módulo.
ejemplo: "blog"
items.entityId: number
ID de configuración del módulo de formulario.
ejemplo: 2
total: number
Número total de registros encontrados.
ejemplo: 100