POSTCriar formulário
Cria um formulário personalizado com campos e configuração.
Cria um formulário (contato, orçamento, cadastro de parceiro...) que a vitrine serve em /api/v1/storefront/forms/{slug} quando o estado é active. Os campos e a configuração são validados na hora: um formulário inválido não é gravado.
/api/v1/admin/formsAdminCria um formulário personalizado
Rota ligada ao módulo custom-forms: com o módulo desligado a resposta é 403. Leitura exige manage_content ou view_content; escrita exige manage_content.
Corpo da requisição
namestringobrigatórioNome do formulário. Não pode ficar vazio.
slugstringobrigatórioIdentificador na URL: minúsculas, números e hífens (
fale-conosco). Único na loja.descriptionstringDescrição.
statusstringpadrão: draftdraftactivearchivedEstado. Só
active aceita respostas dos clientes.fieldsarrayLista de campos (veja a página inicial da seção). Ids de campo não podem se repetir.
settingsobjectConfiguração do formulário (veja a página inicial da seção).
Exemplo de requisição
Resposta
201Formulário criado
Campos da resposta
iduuidIdentificador do formulário.
namestringNome interno.
slugstringIdentificador na URL pública do formulário. Só minúsculas, números e hífens. Único.
descriptionstringDescrição.
statusstringdraft, active ou archived.fieldsarrayCampos do formulário, na ordem de
order. Veja a seção "Campos" na página inicial desta seção.settingsobjectConfiguração: mensagem de sucesso, e-mail de aviso, redirecionamento, limite de envios, antispam.
vendor_iduuidSeller dono do formulário. Ausente em formulário da loja.
created_atstringCriação, RFC 3339.
updated_atstringÚltima alteração, RFC 3339.
Erros
| Status | Quando | Exemplo de corpo |
|---|---|---|
| 401 | Token ausente, inválido ou expirado. | {"error":"invalid or expired token"} |
| 403 | O administrador não tem o privilégio exigido. | {"error":"insufficient privileges","required":"manage_content"} |
| 400 | Validação: SLUG_REQUIRED, INVALID_SLUG, NAME_REQUIRED, INVALID_STATUS, INVALID_FIELD_ID, INVALID_FIELD_TYPE:<id>, INVALID_FIELD_LABEL:<id>, DUPLICATE_FIELD_ID:<id>, FIELD_OPTIONS_REQUIRED:<id>, INVALID_FIELDS_JSON, INVALID_SETTINGS_JSON, INVALID_NOTIFICATION_EMAIL. | {"error":"FIELD_OPTIONS_REQUIRED:assunto"} |
| 409 | Já existe um formulário com esse slug. | {"error":"SLUG_ALREADY_EXISTS"} |
| 500 | Falha ao gravar. | {"error":"FORM_CREATE_FAILED","detail":"..."} |