> 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/dapta-forms/connect/webhooks/test-and-history.md).

# Probar y ver el historial de entregas

Prueba un webhook de Dapta Forms con Enviar prueba, entiende cada mensaje de éxito y de error, y lee el diálogo Historial de webhook: filas Entregado, En curso, Fallido y Omitido, conteos de intentos,

Nunca tienes que adivinar si un webhook funciona. **Enviar prueba** dispara una petición de ejemplo real y firmada, y te dice con palabras claras qué contestó tu endpoint. El **Historial de webhook** lista las últimas entregas que hizo el formulario, con el cuerpo exacto que se envió y la respuesta exacta que volvió.

***

## Enviar una prueba

**Paso 1:** En la pestaña **Conectar** del formulario, con una URL guardada en la tarjeta de **Webhook**, haz clic en **Enviar prueba**. El botón dice **Enviando…** un momento. Una prueba correcta muestra el aviso **Prueba entregada. Tu endpoint la aceptó.**

<figure><img src="https://365551146-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMUYDYzjmxpzlYaw0gcaZ%2Fuploads%2Fgit-blob-706dba333ca4211ea878d4bd2dd339d06f0ae69b%2Fforms-test-and-history-01-send-test-ok.png?alt=media" alt="La tarjeta de Webhook con el botón Enviar prueba y un aviso que dice Prueba entregada. Tu endpoint la aceptó."><figcaption><p>Tu endpoint contestó con un estado 2xx.</p></figcaption></figure>

La petición de prueba tiene la forma real y la firma real, con respuestas inventadas y `"test": true` dentro de `data` (mira [Referencia del payload y las cabeceras](/dapta-docs-es/dapta-forms/connect/webhooks/payload-reference.md)). Llega a tu endpoint de verdad, así que todo lo que tu endpoint haga con los datos entrantes se va a ejecutar.

**Paso 2:** Si el endpoint no la acepta, el aviso explica por qué. Siempre empieza por lo que contestó tu endpoint y, cuando había cuerpo, lo cita tras **Respondió:**.

<figure><img src="https://365551146-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMUYDYzjmxpzlYaw0gcaZ%2Fuploads%2Fgit-blob-75aa0ee2a103493dc817f3812c30647fea4903b9%2Fforms-test-and-history-04-test-failed.png?alt=media" alt="Un aviso que dice Tu endpoint respondió HTTP 500. Falló de su lado. Dapta Forms siempre entrega con POST y un cuerpo JSON. Respondió: error database unavailable"><figcaption><p>Una prueba fallida cita el estado y la respuesta del propio endpoint.</p></figcaption></figure>

| Mensaje                                                                                                      | Qué significa                                                                             | Qué hacer                                                                        |
| ------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- |
| **Guarda antes una URL de webhook.**                                                                         | La **URL del endpoint** está vacía o todavía no se ha guardado.                           | Pega una URL `https://` válida y espera a **Cambios guardados automáticamente**. |
| **Tu endpoint respondió HTTP 405** (o 501): No acepta POST en esta URL.                                      | La ruta existe pero solo para GET u otro método.                                          | Acepta POST en esa ruta. Dapta Forms siempre entrega con POST y un cuerpo JSON.  |
| **HTTP 415**: Rechazó el tipo de contenido.                                                                  | Tu endpoint rechaza `application/json`.                                                   | Acepta cuerpos JSON.                                                             |
| **HTTP 401** o **403**: Rechazó la petición como no autorizada. Revisa cualquier token o secreto que espere. | Tu endpoint quiere una credencial que Dapta Forms no envía.                               | Usa el secreto de firma para autenticar, o permite la URL sin token.             |
| **HTTP 404** o **410**: No hay nada en esa URL.                                                              | Ruta equivocada o el endpoint se quitó.                                                   | Revisa la URL.                                                                   |
| **HTTP 429**: Nos está limitando la tasa. Inténtalo de nuevo en un rato.                                     | Demasiadas peticiones de tu lado.                                                         | Espera y reintenta.                                                              |
| Otro **4xx**: Leyó la petición y rechazó el cuerpo.                                                          | Tu endpoint parseó el JSON pero no le gustó.                                              | Compáralo con el cuerpo de ejemplo; relaja la validación.                        |
| **5xx**: Falló de su lado.                                                                                   | Tu servidor se cayó o devolvió un error.                                                  | Revisa los logs de tu servidor; el cuerpo de la respuesta se cita cuando lo hay. |
| **3xx**: Contestó con una redirección, que nunca seguimos. Usa la URL final directamente.                    | La URL redirige (por ejemplo de http a https, o por una barra final).                     | Pega la URL final.                                                               |
| **Bloqueado antes de enviar: esa dirección es privada, reservada o interna, y nunca mandamos POST ahí.**     | El host resuelve a una dirección privada, de loopback, link-local o de metadatos de nube. | Usa un endpoint público.                                                         |
| **Nada contestó en esa URL. Comprueba que el host es alcanzable y que no se agota el tiempo.**               | Fallo de DNS, conexión rechazada, o sin respuesta en 10 segundos.                         | Revisa el nombre de host, el firewall y el tiempo de respuesta.                  |
| **La entrega falló por un motivo que no pudimos identificar.**                                               | Cualquier otra cosa.                                                                      | Abre **Ver historial** para la transcripción.                                    |

> **💡 Tip:** Las entregas de prueba también se listan en el historial, con una insignia **Prueba**, así que una prueba fallida nunca se pierde en un aviso.

***

## Leer el historial de entregas

**Paso 3:** Al final de la tarjeta de Webhook, la fila **Historial de webhook** muestra una etiqueta de **{n} entregas** (o una roja de **{n} fallidas** cuando algunas se rindieron). Haz clic en **Ver historial**.

<figure><img src="https://365551146-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMUYDYzjmxpzlYaw0gcaZ%2Fuploads%2Fgit-blob-7754d47008afa8dd1c5454f4c1838b48a006a2d1%2Fforms-test-and-history-02-view-history.png?alt=media" alt="La fila Historial de webhook con una etiqueta de 5 entregas y el botón Ver historial"><figcaption><p>La etiqueta resume el registro; <strong>Ver historial</strong> lo abre.</p></figcaption></figure>

**Paso 4:** El diálogo **Historial de webhook** lista «Las últimas entregas que hizo este formulario, de la más reciente a la más antigua.» Cada fila muestra una píldora de estado, la acción (**parcial**, **completa**, o una insignia **Prueba** en los pings), el estado HTTP que contestó tu endpoint, **{n} intentos** cuando hizo falta más de uno, y la hora. Haz clic en una fila para desplegarla.

<figure><img src="https://365551146-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMUYDYzjmxpzlYaw0gcaZ%2Fuploads%2Fgit-blob-a2efe7a5966beece04cbc6b9828a8daaeb9b3cbb%2Fforms-test-and-history-03-history-expanded.png?alt=media" alt="El diálogo Historial de webhook con la primera fila desplegada, mostrando el JSON en Qué enviamos y la respuesta en Qué volvió HTTP 200"><figcaption><p><strong>Qué enviamos</strong> es el cuerpo exacto; <strong>Qué volvió</strong> es la respuesta y el estado de tu endpoint.</p></figcaption></figure>

| Elemento                       | Qué significa                                                                                                                                                                                          |
| ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Entregado**                  | Tu endpoint contestó 2xx.                                                                                                                                                                              |
| **En curso**                   | Encolada o esperando entre reintentos. El conteo de intentos crece según ocurren.                                                                                                                      |
| **Fallido**                    | Los 5 intentos fallaron. La fila muestra el último error, por ejemplo «webhook delivery failed: HTTP 500», o **No se registró ningún motivo.**                                                         |
| **Omitido**                    | No se envió a propósito y nunca se reintenta, por ejemplo una entrega que ya no se podía hacer. Raro en webhooks.                                                                                      |
| Insignia **Prueba**            | Un ping de **Enviar prueba**. Llegó a tu endpoint de verdad pero con respuestas de ejemplo.                                                                                                            |
| **HTTP {estado}**              | El estado que contestó tu endpoint en el último intento.                                                                                                                                               |
| **{n} intentos**               | Cuántas veces hizo falta (se muestra a partir del segundo intento).                                                                                                                                    |
| **Qué enviamos**               | El cuerpo JSON, exactamente como se mandó.                                                                                                                                                             |
| **Qué volvió · HTTP {estado}** | El cuerpo de la respuesta de tu endpoint (recortado). **Tu endpoint contestó sin cuerpo.** cuando venía vacío, **No registrado para esta entrega.** en filas anteriores a la función de transcripción. |
| **Refrescar**                  | Recarga la lista, útil mientras hay un reintento en curso.                                                                                                                                             |

El diálogo conserva las últimas 25 entregas. No hay reenvío manual: los reintentos son automáticos, y una fila **Fallido** se queda como registro. Si arreglas tu endpoint, simplemente vuelve a enviar o ejecuta **Enviar prueba**.

## Qué sigue

* [Entrega, reintentos e historial](/dapta-docs-es/dapta-forms/connect/delivery-and-retries.md): el calendario de reintentos y qué significan Fallido y Omitido en todas las integraciones.
* [Verificar la firma](/dapta-docs-es/dapta-forms/connect/webhooks/verify-signature.md): haz que tu endpoint solo acepte peticiones firmadas.
* [Conexiones (a nivel de cuenta)](/dapta-docs-es/dapta-forms/connect/connections.md): el inventario de webhooks de toda la cuenta con los conteos de fallos.


---

# 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 dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.dapta.ai/dapta-docs-es/dapta-forms/connect/webhooks/test-and-history.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
