Перейти к основному контенту

postFormsData

Создание объекта данных формы для сохранения информации

FormData.postFormsData(data, langCode)

Методы с POST-запросом принимают в качестве тела запроса объект с полем данных формы, которое соответствует типу отправляемой информации. Ниже приведены примеры объектов данных формы для различных типов данных.


Пример с простым типом атрибута "string", "number", "float"

{
"marker": "last_name",
"type": "string",
"value": "Username"
}

Пример с простым типом атрибута "date", "dateTime", "time"

{
"marker": "birthday",
"type": "date",
"value": {
"fullDate": "2024-05-07T21:02:00.000Z",
"formattedValue": "08-05-2024 00:02",
"formatString": "DD-MM-YYYY HH:mm"
}
}

Пример с простым типом атрибута "text"

{
"marker": "about",
"type": "text",
"value": {
"htmlValue": "<p>Hello world</p>",
"plainValue": "",
"params": {
"isEditorDisabled": false,
"isImageCompressed": true
}
}
}

Пример с простым типом атрибута "textWithHeader"

{
"marker": "about",
"type": "textWithHeader",
"value": {
"header": "Заголовок",
"htmlValue": "<p>Hello World</p>",
"plainValue": "",
"params": {
"isEditorDisabled": false,
"isImageCompressed": true
}
}
}

Пример с простым типом атрибута "image" или "groupOfImages"

{
"marker": "avatar",
"type": "image",
"value": [
{
"filename": "files/project/page/10/image/Screenshot-from-2024-05-02-15-23-14.png",
"downloadLink": "http://my-site.com/cloud-static/files/project/page/10/image/Screenshot-from-2024-05-02-15-23-14.png",
"size": 392585,
"previewLink": "",
"params": {
"isImageCompressed": true
}
}
]
}

Пример с простым типом атрибута "files"

{
"marker": "picture",
"type": "file",
"value": [
{
"filename": "files/project/page/10/image/Screenshot-from-2024-05-02-15-23-14.png",
"downloadLink": "http://my-site.com/cloud-static/files/project/page/10/image/Screenshot-from-2024-05-02-15-23-14.png",
"size": 392585
}
]
}

Пример с простым типом атрибута "radioButton" или "list"

{
"marker": "selector",
"type": "list",
"value": [
{
"title": "красный",
"value": "1",
"extended": {
"value": "red",
"type": "string"
}
}
]
}

Пример с атрибутом типа "entity" (вложенный список)

{
"formIdentifier": "entity_form",
"formData": {
"en_US": [
{
"marker": "entity-marker",
"type": "entity",
"value": [25, 32, 24]
}
]
}
}

Значение - числовые идентификаторы для страниц и строковые идентификаторы для продуктов. Идентификаторы для продуктов должны включать префикс 'p-', например, 'p-1-', 'p-2-', и т.д. p-[parentId]-[productId]


Пример с атрибутом типа "timeInterval"

{
"formIdentifier": "reg",
"formData": {
"en_US": [
{
"marker": "interval",
"type": "timeInterval",
"value": [
[
"2025-02-11T16:00:00:000Z",
"2025-02-13T16:00:00:000Z",
]
]
}
]
}
}

значение — массив массивов интервалов в формате ISO 8601. например 2025-02-11T16:00:00:000Z

2025 — год; 02 — месяц; 11 — день месяца; T — разделитель между датой и временем; 16:00:00 — время в формате часы:минуты:секунды; 000Z — миллисекунды и указание часового пояса. Z означает, что время указано в формате UTC.


Пример

const body = {
"formIdentifier": "contact_us",
"formData": [
{
"marker": "last_name",
"type": "string",
"value": "Andrey"
},
]
}

const value = await FormData.postFormsData(body)
Схема (тело)

formIdentifier: строка
Текстовый идентификатор объекта формы (маркер)
пример: my-form

formData: FormDataLangType
Данные, отправленные формой
пример:

[
{
"marker": "name_field",
"type": "string",
"value": "Имя"
}
]

fileQuery: объект
fileQuery для загрузки файлов с формой
пример:

{
"type": "page",
"entity": "editor",
"id": 3492,
}

Этот метод возвращает созданный объект FormDataEntity. Если вы хотите изменить язык, просто передайте его вторым аргументом.

Пример возвращаемого значения:

{
"id": 1764,
"formIdentifier": "my-form",
"time": "2025-05-09T18:32:46.834Z",
"formData": {
"marker": "name_1",
"value": "Имя",
"type": "string"
}
}
Схема

id: число
идентификатор объекта
пример: 1764

formIdentifier: строка
Текстовый идентификатор объекта формы (маркер)
пример: my-form

time: Дата
Дата и время изменения формы
пример: 2025-05-09T18:32:46.834Z

formData: FormDataLangType
Данные, отправленные формой
пример:

  [
{
"marker": "marker_1",
"value": "Имя"
}
]