postFormsData
Criando um objeto de dados de formulário que salva informações.
Descrição
Este método retorna um objeto FormDataEntity criado. Se você quiser mudar o idioma, basta passá-lo como segundo argumento.
Métodos com uma solicitação POST aceitam como corpo da solicitação um objeto com o campo de dados do formulário, que corresponde ao tipo de informação sendo enviada. A seguir estão exemplos de objetos de dados de formulário para diferentes tipos de dados.
FormData.postFormsData(
body*,
body.formIdentifier*,
body.formModuleConfigId*,
body.moduleEntityIdentifier*,
body.replayTo*,
body.status*,
body.formData*,
body.fileQuery,
langCode
);
Esquema de parâmetros
Esquema (body)
body(obrigatório): IBodyPostFormData
Corpo da solicitação
exemplo:
{
"formIdentifier": "test-form",
"formModuleConfigId": 2,
"moduleEntityIdentifier": "blog",
"replayTo": null,
"status": "sent",
"formData": [
{
"marker": "name",
"type": "string",
"value": "Test"
}
]
}
body.formIdentifier(obrigatório): string
Identificador de texto (marcador) do formulário.
exemplo: "form"
body.formModuleConfigId(obrigatório): number
O identificador único da configuração do módulo do formulário.
exemplo: 2
body.moduleEntityIdentifier(obrigatório): string
Identificador de texto (marcador) da entidade do módulo.
exemplo: "blog"
body.replayTo(obrigatório): string | null
Email para resposta.
exemplo: "some@email.com"
body.status(obrigatório): string
Status do formulário.
exemplo: "sent"
body.formData(obrigatório): FormDataType[]
Array de objetos de dados do formulário.
exemplo:
[
{
"marker": "name",
"type": "string",
"value": "Jack"
}
]
body.fileQuery: IUploadingQuery
Consulta de arquivo opcional para upload de arquivos.
exemplo:
{
"type": "page",
"entity": "editor",
"id": 3787
}
langCode: string
Código do idioma. Padrão: "en_US"
exemplo: "en_US"
Exemplos
Exemplo mínimo
const body = { "formIdentifier": "contact_us", "formModuleConfigId": 2, "moduleEntityIdentifier": "blog", "replayTo": null, "status": "sent", "formData": [ { "marker": "last_name", "type": "string", "value": "Andrey" } ]};
const response = await FormData.postFormsData(body);
Exemplo com um atributo de tipo simples "string", "number", "float"
const body = { "formIdentifier": "test-form", "formModuleConfigId": 2, "moduleEntityIdentifier": "blog", "replayTo": null, "status": "sent", "formData": [ { "marker": "string_marker", "type": "string", "value": "Username" }, { "marker": "number_marker", "type": "number", "value": 1 }, { "marker": "float_marker", "type": "float", "value": 2.256 } ]};
const response = await FormData.postFormsData(body);
Exemplo com um atributo de tipo simples "date", "dateTime", "time"
const body = { "formIdentifier": "contact_us", "formModuleConfigId": 2, "moduleEntityIdentifier": "blog", "replayTo": null, "status": "sent", "formData": [ { "marker": "date_marker", "type": "date", "value": { "fullDate": "2024-05-07T21:02:00.000Z", "formattedValue": "08-05-2024 00:02", "formatString": "DD-MM-YYYY HH:mm" } } ]};
const response = await FormData.postFormsData(body);
Exemplo com um atributo de tipo simples "text" (Apenas um de htmlValue, plainValue ou mdValue pode ser fornecido)
const body = { "formIdentifier": "contact_us", "formModuleConfigId": 2, "moduleEntityIdentifier": "blog", "replayTo": null, "status": "sent", "formData": [ { "marker": "about_marker", "type": "text", "value": [ { "htmlValue": "<p>Hello world</p>", "params": { "isImageCompressed": true, "editorMode": "html" } } ] } ]};
const response = await FormData.postFormsData(body);
Exemplo com um atributo de tipo simples "textWithHeader" (Apenas um de htmlValue, plainValue ou mdValue pode ser fornecido)
const body = { "formIdentifier": "contact_us", "formModuleConfigId": 2, "moduleEntityIdentifier": "blog", "replayTo": null, "status": "sent", "formData": [ { marker: "textwithheader_marker", type: "textWithHeader", value: [ { "header": "Headline", "htmlValue": "<p>Hello World</p>", "params": { "isImageCompressed": true, "editorMode": "html" } } ] } ]};
const response = await FormData.postFormsData(body);
Exemplo com atributo de tipo "image"
const testImageUrl = 'https://your-project.oneentry.cloud/cloud-static/files/project/product/2954/image/7e0a6a70-a23d-410f-8b6a-f8b4f7483244.png';const filename = 'test-image.png';
/* Em um cenário do mundo real, você deve usar a API de Arquivos para criar um arquivo a partir da URL, mas para simplificar, usaremos uma URL de arquivo predefinida e usaremos o método createFileFromUrl para este exemplo */const file = await FileUploading.createFileFromUrl(testImageUrl, filename);
const body = { "formIdentifier": "contact_us", "formModuleConfigId": 2, "moduleEntityIdentifier": "blog", "replayTo": null, "status": "sent", "formData": [ { marker: "image_marker", type: "image", value: [ file ] } ]};
const response = await FormData.postFormsData(body);
Exemplo com atributo de tipo "groupOfImages"
const testImageUrl = 'https://your-project.oneentry.cloud/cloud-static/files/project/product/2954/image/7e0a6a70-a23d-410f-8b6a-f8b4f7483244.png';const filename = 'test-image.png';
/* Em um cenário do mundo real, você deve usar a API de Arquivos para criar um arquivo a partir da URL, mas para simplificar, usaremos uma URL de arquivo predefinida e usaremos o método createFileFromUrl para este exemplo */const file = await FileUploading.createFileFromUrl(testImageUrl, filename);
const body = { "formIdentifier": "contact_us", "formModuleConfigId": 2, "moduleEntityIdentifier": "blog", "replayTo": null, "status": "sent", "formData": [ { marker: "groupofimages_marker", type: "groupOfImages", value: [ file ] } ]};
const response = await FormData.postFormsData(body);
Exemplo com atributo de tipo "files"
const testImageUrl = 'https://your-project.oneentry.cloud/cloud-static/files/project/product/2954/image/7e0a6a70-a23d-410f-8b6a-f8b4f7483244.png';const filename = 'test-image.png';
/* Em um cenário do mundo real, você deve usar a API de Arquivos para criar um arquivo a partir da URL, mas para simplificar, usaremos uma URL de arquivo predefinida e usaremos o método createFileFromUrl para este exemplo */const file = await FileUploading.createFileFromUrl(testImageUrl, filename);
const body = { "formIdentifier": "contact_us", "formModuleConfigId": 2, "moduleEntityIdentifier": "blog", "replayTo": null, "status": "sent", "formData": [ { "marker": "picture_marker", "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 } ] } ]};
const response = await FormData.postFormsData(body);
Exemplo com atributo de tipo "radioButton" ou "list"
const body = { "formIdentifier": "contact_us", "formModuleConfigId": 2, "moduleEntityIdentifier": "blog", "replayTo": null, "status": "sent", "formData": [ { "marker": "selector_marker", "type": "list", "value": [ { "marker": "list", "type": "list", "value": ["1"] } ] } ]};
const response = await FormData.postFormsData(body);
Exemplo com atributo de tipo "entity" (lista aninhada)
const body = { "formIdentifier": "contact_us", "formModuleConfigId": 2, "moduleEntityIdentifier": "blog", "replayTo": null, "status": "sent", "formData": [ { "marker": "entity_marker", "type": "entity", "value": [25, 32, 24] } ]};
const response = await FormData.postFormsData(body);
Valor - identificadores numéricos para páginas e identificadores de string para produtos. Identificadores para produtos devem incluir o prefixo 'p-', por exemplo, 'p-1-', 'p-2-', etc. p-[parentId]-[productId]
Exemplo com atributo de tipo "timeInterval"
const body = { "formIdentifier": "contact_us", "formModuleConfigId": 2, "moduleEntityIdentifier": "blog", "replayTo": null, "status": "sent", "formData": [ { marker: 'timeinterval_marker', type: 'timeInterval', value: [ [ "2025-02-11T16:00:00.000Z", "2025-02-13T16:00:00.000Z" ] ] }, ]};
const response = await FormData.postFormsData(body);
valor — array de arrays de intervalos no formato ISO 8601. por exemplo 2025-02-11T16:00:00:000Z
2025 — ano; 02 — mês; 11 — dia do mês; T — separador entre data e hora; 16:00:00 — hora no formato horas:minutos:segundos; 000Z — milissegundos e indicação de fuso horário. Z significa que a hora está especificada no formato UTC.
Exemplo de retorno:
{
"formData": {
"formIdentifier": "test-form",
"time": "2025-11-06T09:28:00.915Z",
"formData": [
{
"marker": "name",
"type": "string",
"value": "Test"
}
],
"entityIdentifier": "blog",
"fingerprint": "UQ_ue7gas",
"isUserAdmin": false,
"formModuleId": 2,
"userIdentifier": null,
"parentId": null,
"id": 843
},
"actionMessage": ""
}
Esquema de resposta
Esquema: IPostFormResponse
formData: object
Dados do formulário.
exemplo:
{
"id": 42,
"formIdentifier": "contact_form",
"time": "2023-10-01T12:00:00Z",
"entityIdentifier": "blog",
"isUserAdmin": false,
"formModuleId": 2,
"parentId": null,
"userIdentifier": null,
"formData": [
{
"marker": "name",
"type": "string",
"value": "Jack"
}
]
}
formData.id: number
O identificador único da página do formulário.
exemplo: 12345
formData.formIdentifier: string
O identificador do formulário.
exemplo: "contact_form"
formData.time: string
O tempo do envio do formulário.
exemplo: "2023-10-01T12:00:00Z"
formData.entityIdentifier: string
O identificador da entidade.
exemplo: "blog"
formData.isUserAdmin: boolean
O usuário é administrador.
exemplo: false
formData.formModuleId: number
O identificador do módulo do formulário.
exemplo: 2
formData.parentId: any
O identificador do pai.
exemplo: null
formData.userIdentifier: any
O identificador do usuário.
exemplo: null
formData.formData: FormDataType[]
Dados dos campos do formulário.
exemplo:
[
{
"marker": "name",
"type": "string",
"value": "Jack"
}
]
actionMessage: string
Mensagem de ação para os dados do formulário.
exemplo: "Formulário enviado com sucesso"