# Formularios

Los administradores del tenant pueden crear formularios dinámicos a partir de atributos preconfigurados (texto, listas, casillas, archivos, etc.) para recopilar respuestas estructuradas.

Los formularios incluyen estado (draft, active, inactive), slug, validación de campos obligatorios e historial de respuestas. Solo los formularios active aceptan respuestas.

## Objeto de formulario

Incluye id, title, description, status, slug, metadata, attributes, created_at y updated_at. Cada atributo vinculado incluye id, form_id, attribute_id, required, order_by, metadata y attribute (definición del campo, restricciones y opciones).

## Objeto de respuesta

Una respuesta incluye id, submission_ref, form_id, user_id (0 si es anónima), user (perfil breve), ip_address, user_agent, metadata, attribute_values, created_at y updated_at. Cada valor contiene id, submission_id, form_id, attribute_id, values_ (cadenas elegidas o introducidas) y un resumen del atributo.
