> For the complete documentation index, see [llms.txt](https://docs.dapta.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.dapta.ai/dapta-docs-es/dforms/builder/question-types/file-upload.md).

# Subir archivo

Recoge un documento o una imagen con la pregunta Subir archivo: elige qué tipos aceptas, pon un límite de tamaño y mira exactamente qué ve quien responde al adjuntar un archivo o al equivocarse de tip

**Subir archivo** le pide a quien responde un archivo: una hoja de vida, un formato firmado, un logo, la foto de una factura. El archivo viaja directo desde su navegador al almacenamiento, y la respuesta aparece en **Respuestas** con el nombre del archivo, lista para abrirla o descargarla.

***

## Añade la pregunta

Haz clic en **Añadir pregunta** y elige **Subir archivo** en el grupo **Texto**. Su descripción en la galería dice *Un documento o imagen*.

<figure><img src="https://365551146-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMUYDYzjmxpzlYaw0gcaZ%2Fuploads%2Fgit-blob-a78800fda04024d780823d11154f448c67a764af%2Fforms-file-upload-01-gallery.png?alt=media" alt="El diálogo Añadir una pregunta con la tarjeta Subir archivo resaltada en el grupo Texto"><figcaption><p><strong>Subir archivo</strong> vive en la familia Texto, al lado de <strong>Deslizador</strong>.</p></figcaption></figure>

Escribe el texto de la pregunta en el lienzo como en cualquier otra, y usa la descripción para decir qué esperas. Un *PDF o Word, hasta 10 MB* te ahorra una tanda de adjuntos equivocados.

***

## Elige qué acepta

Selecciona la pregunta y mira **Ajustes de la pregunta** a la derecha. Aparece una sección **Subir archivo** con dos controles propios.

<figure><img src="https://365551146-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMUYDYzjmxpzlYaw0gcaZ%2Fuploads%2Fgit-blob-fb5b7c344d8a0dd1ee65947c0c607e6e9caab5c2%2Fforms-file-upload-02-settings.png?alt=media" alt="El panel Ajustes de la pregunta con los grupos de Archivos aceptados, la lista de extensiones y el campo Archivo más grande (MB)"><figcaption><p><strong>Archivos aceptados</strong> arriba, <strong>Archivo más grande (MB)</strong> abajo. Una pregunta nueva empieza en <code>pdf, doc, docx, jpg, png</code>.</p></figcaption></figure>

**Archivos aceptados** es una fila de cuatro grupos sobre un campo de texto. Al hacer clic en un grupo se añaden sus extensiones al campo, y al volver a hacer clic se quitan. El campo es el ajuste real, así que puedes escribir lo que los grupos no cubren.

| Grupo                | Extensiones que añade       |
| -------------------- | --------------------------- |
| **Documentos**       | `pdf`, `doc`, `docx`, `txt` |
| **Imágenes**         | `jpg`, `png`, `gif`, `webp` |
| **Hojas de cálculo** | `xls`, `xlsx`, `csv`        |
| **Comprimidos**      | `zip`                       |

Escribe las extensiones separadas por comas, en minúsculas y sin el punto: `pdf, dwg, ai`. Un grupo se marca solo cuando todas sus extensiones están en el campo, así que marcar uno a medias completa el conjunto en vez de no hacer nada.

> **⚠️ Nota:** Si vacías el campo aparece el aviso *Elige al menos un tipo de archivo, o nadie podrá responder esta pregunta*. Con el campo vacío la pregunta no detiene a nadie: se acepta cualquier archivo que no sea un programa ni una página web, así que deja al menos un tipo a propósito antes de publicar.

***

## Lo que nunca se acepta

Hay dos familias de archivo que se rechazan sin importar lo que escribas, en todos los formularios:

* **Programas y scripts**, entre ellos `exe`, `msi`, `dmg`, `pkg`, `deb`, `rpm`, `jar`, `bat`, `cmd`, `sh`, `ps1`, `vbs` y `js`.
* **Páginas web**, entre ellas `html`, `htm`, `xhtml` y `svg`, porque ejecutan código en lo que sea que las abra.

La ayuda bajo el campo lo dice claro: *Los programas y las páginas web nunca se aceptan.*

***

## Pon un límite de tamaño

**Archivo más grande (MB)** es tu propio tope para esta pregunta. La ayuda te dice el tope que permite el despliegue, que en `app.dforms.ai` son **10 MB**. Deja el campo vacío para permitir el máximo completo.

Solo puedes bajar. Si escribes un número mayor se recorta al límite del despliegue, porque ese límite se verifica dos veces en el servidor: antes de autorizar la subida y otra vez contra el archivo ya guardado.

***

## Qué ve quien responde

La pregunta se muestra como un área que dice **Elige un archivo**, con los tipos aceptados y el límite de tamaño escritos debajo. Quien responde hace clic para elegir un archivo de su dispositivo.

<figure><img src="https://365551146-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMUYDYzjmxpzlYaw0gcaZ%2Fuploads%2Fgit-blob-45e8beb4e76a9a7a7112ca9d939990ce9c06b0fe%2Fforms-file-upload-03-choose.png?alt=media" alt="El formulario público con el área Elige un archivo y la línea PDF, DOC, DOCX, JPG, PNG, hasta 10 MB"><figcaption><p>La segunda línea se arma con tus ajustes, así que la gente lee las reglas antes de elegir nada.</p></figcaption></figure>

Mientras el archivo viaja, el control dice **Subiendo 42%**. Cuando llega, el área se reemplaza por el nombre del archivo y un enlace **Quitar** que lo borra y empieza de nuevo.

<figure><img src="https://365551146-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMUYDYzjmxpzlYaw0gcaZ%2Fuploads%2Fgit-blob-8de67ba0ff086c8f03a0796842732531b75bd561%2Fforms-file-upload-04-selected.png?alt=media" alt="La misma pregunta con un archivo adjunto, mostrando resume-jane-doe.pdf y el enlace Quitar"><figcaption><p>Un archivo por pregunta. <strong>Quitar</strong> devuelve el control a <strong>Elige un archivo</strong>.</p></figcaption></figure>

Si eligen un archivo que rompe una regla, la subida nunca empieza. El mensaje queda bajo el control con un enlace **Intenta de nuevo**:

| Qué hicieron                           | Qué leen                                 |
| -------------------------------------- | ---------------------------------------- |
| Eligieron un tipo que no aceptas       | *Ese tipo de archivo no se acepta aquí.* |
| Eligieron un archivo pasado del límite | *Ese archivo pesa más de 10 MB.*         |
| La subida se interrumpió               | *La subida no terminó.*                  |

<figure><img src="https://365551146-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMUYDYzjmxpzlYaw0gcaZ%2Fuploads%2Fgit-blob-8e34139bd1b004a66f3579d4fc366fe36265dcd6%2Fforms-file-upload-05-wrong-type.png?alt=media" alt="El formulario público con el mensaje Ese tipo de archivo no se acepta aquí y un enlace Intenta de nuevo"><figcaption><p>No se sube nada cuando el archivo rompe una regla, así que la persona se queda en la pregunta.</p></figcaption></figure>

> **💡 Consejo:** Una pregunta **Subir archivo** respeta **Obligatoria** como cualquier otra. Déjala obligatoria y el formulario no avanza sin archivo; quítala y la gente puede saltarla.

***

## Cómo llega el archivo

El archivo nunca pasa por la página del formulario ni por los servidores de Dapta. El navegador pide una dirección de subida de un solo uso y corta duración, y manda los bytes directo al almacenamiento.

Al enviar el formulario el archivo se revisa otra vez antes de guardar la respuesta: su contenido real tiene que coincidir con su extensión. Un programa renombrado a `.pdf` no pasa esa revisión y el envío se rechaza, así que un archivo que llega a tu tabla de **Respuestas** es un archivo cuyo tipo quedó verificado.

***

## Límites

| Límite                | Valor                                                                                                                                                                      |
| --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Archivos por pregunta | 1. Añade una segunda pregunta **Subir archivo** para recoger un segundo archivo.                                                                                           |
| Archivo más grande    | 10 MB en `app.dforms.ai`, o tu propio número menor.                                                                                                                        |
| Tipos                 | Los que tú listes, menos los programas y las páginas web que siempre se rechazan.                                                                                          |
| Puntaje               | Una respuesta de archivo no lleva puntos y nunca cambia el puntaje.                                                                                                        |
| Pantallas             | En un formulario de **Diapositivas** siempre va en su propia pantalla.                                                                                                     |
| Prellenado            | Un enlace no puede llevar un archivo, así que no se puede prellenar. El interruptor **Pregunta oculta** aparece, pero una pregunta Subir archivo oculta nunca se responde. |

***

## Qué sigue

* [Archivos subidos en Respuestas](/dapta-docs-es/dforms/results/uploaded-files.md): abre, previsualiza y descarga lo que te mandaron.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.dapta.ai/dapta-docs-es/dforms/builder/question-types/file-upload.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
