{"id":23672,"date":"2026-09-16T06:17:13","date_gmt":"2026-09-16T06:17:13","guid":{"rendered":"https:\/\/www.mailgun.com\/blog\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks-2\/"},"modified":"2026-09-16T06:17:13","modified_gmt":"2026-09-16T06:17:13","slug":"same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks","status":"publish","type":"blog","link":"https:\/\/www.mailgun.com\/es\/blog\/product\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\/","title":{"rendered":"Misma API, nuevos trucos: recibe notificaciones de eventos al momento con los webhooks"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Al trabajar en esta actualizaci\u00f3n de la API, se nos ocurrieron algunas cosas que tal vez t\u00fa tambi\u00e9n hayas pensado:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u00a1Los webhooks son geniales! Todo el mundo deber\u00eda usarlos.<\/li>\n\n\n\n<li>Extraer los datos de env\u00edo directamente de mis mensajes ahorra tiempo.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Sinceramente, la API de webhooks de Mailgun lleva ya mucho tiempo entre nosotros. Pero con esta actualizaci\u00f3n, tienes m\u00e1s opciones para comunicarte con nosotros y ver en detalle qu\u00e9 ocurre con tus mensajes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Veamos los detalles.<\/p>\n\n\n\r\n    <nav data-content-type=\"longform\" class=\"toc-block longform-spacings px-5 py-6 px-md-6 px-lg-7 py-md-7 bg-light fs-sm rounded-lg\" aria-labelledby=\"toc-title-7719\"><p class=\"h5 m-0\" id=\"toc-title-7719\">\u00cdndice<\/p><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">01<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#novedades\">Novedades<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">02<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#como-puedo-usar-la-api\">\u00bfC\u00f3mo puedo usar la API?<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">03<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#puedo-enviar-eventos-a-multiples-puntos-de-conexion\">\u00bfPuedo enviar eventos a m\u00faltiples puntos de conexi\u00f3n?<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">04<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#soy-usuario-de-mailgun-puedo-migrar-facilmente-a-la-nueva-api\">Soy usuario de Mailgun, \u00bfpuedo migrar f\u00e1cilmente a la nueva API?<\/a><\/div><\/div><\/nav>\n\n\n<h2 class=\"wp-block-heading\">Novedades<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Entonces, \u00bfen qu\u00e9 consiste esta actualizaci\u00f3n?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Mailgun puede ayudarte a recibir notificaciones al momento para que sepas cu\u00e1ndo ha ocurrido algo con tu mensaje. Tienes la opci\u00f3n de usar <a href=\"https:\/\/documentation.mailgun.com\/en\/latest\/api-events.html\" target=\"_tabs\" rel=\"noopener noreferrer\">el sondeo de eventos a trav\u00e9s de la Events API<\/a>, o dejar que nosotros <a href=\"https:\/\/documentation.mailgun.com\/en\/latest\/api-webhooks.html\" target=\"_tabs\" rel=\"noopener noreferrer\">te enviemos los eventos a trav\u00e9s de la API de webhooks<\/a>. Estas alertas tienen los <a href=\"https:\/\/documentation.mailgun.com\/en\/latest\/api-events.html\" target=\"_tabs\" rel=\"noopener noreferrer\">mismos datos que la Events API<\/a> y se env\u00edan a tus URL mediante HTTP POST.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ahora, obtienes<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Una carga \u00fatil de \u201cApplication\/JSON\u201d<\/li>\n\n\n\n<li>Hasta 3 URL por evento<\/li>\n\n\n\n<li>Datos sobre el siguiente tipo de eventos:\n<ul class=\"wp-block-list\">\n<li><b>opened<\/b>\u00a0\u2013 cada vez que un usuario abre uno de tus mensajes<\/li>\n\n\n\n<li><b>clicked<\/b>\u00a0\u2013 cada vez que un usuario hace clic en un enlace de tus mensajes<\/li>\n\n\n\n<li><b>unsubscribed<\/b>\u00a0<b>\u2013<\/b>\u00a0cuando un usuario se da de baja, ya sea de todos los mensajes, de una etiqueta espec\u00edfica o de una lista de correo<\/li>\n\n\n\n<li><b>complained<\/b>\u00a0\u2013 cuando un usuario marca uno de tus emails como spam. Ten en cuenta que no todos los ESP proporcionan esta informaci\u00f3n.<\/li>\n\n\n\n<li><b>delivered<\/b>\u00a0\u2013\u00a0cuando el servidor de email del destinatario responde que ha aceptado el mensaje.\u00a0<\/li>\n\n\n\n<li><b>permanent_fail<\/b>\u00a0\u2013 hay varias razones por las que Mailgun deja de intentar entregar mensajes y los descarta, lo que incluye rebotes definitivos, mensajes que han alcanzado su l\u00edmite de reintentos, direcciones que previamente se han dado de baja, rebotado o marcado como spam, o direcciones rechazadas por un ESP.<\/li>\n\n\n\n<li><b>temporary_fail<\/b>\u00a0\u2013 cuando un ESP rechaza un mensaje temporalmente<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Lo bueno de esto es que tu c\u00f3digo de l\u00f3gica de negocio se puede utilizar para cualquiera de las dos opciones. La diferencia radica en c\u00f3mo te conectas a Mailgun. Y dado que cada evento tiene su propio ID \u00fanico, si resulta que tu punto de conexi\u00f3n <code>http<\/code> ha fallado por alguna raz\u00f3n, puedes extraer los eventos f\u00e1cilmente y ordenarlos usando este ID \u00fanico. Por supuesto, siempre recomendamos gestionar los webhooks de forma as\u00edncrona para que los picos de eventos no supongan un problema.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00bfC\u00f3mo puedo usar la API?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ahora veamos c\u00f3mo configurar un dominio con el webhook \u201cclicked\u201d. En realidad, es un proceso de un solo paso que puedes completar configurando tus URL con <code>curl<\/code> o tu lenguaje de programaci\u00f3n preferido a trav\u00e9s de nuestra API HTTP.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Por ejemplo, utilizando el comando <code>curl<\/code>:<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                Shell                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"Copia al portapapeles\" data-clipboard-success-label=\"\u00a1Copiado!\" data-clipboard-error-label=\"No se ha podido copiar\" data-tooltip=\"Copia al portapapeles\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"Copia al portapapeles\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-shell\">\r\n                                <code id=\"code_0_content\" class=\"language-shell\">\r\n\r\n                                    curl -s --user \u2018api:YOUR_API_KEY\u2019\r\nhttps:\/\/api.mailgun.net\/v3\/domains\/YOUR_DOMAIN_NAME\/webhooks\r\n-X POST\r\n-F id=clicked\r\n-F url=&quot;https:\/\/api.your.domain.com\/v1\/mg\/clicked&quot;\r\n-F url=&quot;https:\/\/api.your.domain.com\/v2\/mg\/clicked&quot;\r\n-F url=&quot;https:\/\/api.partner.com\/v1\/you\/clicked&quot;\r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<p class=\"wp-block-paragraph\">Aqu\u00ed, <code>\u201cid\u201d<\/code> debe ser\u00a0el nombre del webhook (solo un webhook por petici\u00f3n) y <code>\u201curl\u201d <\/code>debe indicar tu URL (hasta 3 URL por petici\u00f3n).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Y el mensaje de respuesta:<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                Java                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"Copia al portapapeles\" data-clipboard-success-label=\"\u00a1Copiado!\" data-clipboard-error-label=\"No se ha podido copiar\" data-tooltip=\"Copia al portapapeles\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"Copia al portapapeles\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-Java\">\r\n                                <code id=\"code_0_content\" class=\"language-Java\">\r\n\r\n                                    {\r\n\r\n&quot;message&quot;: &quot;Webhook has been created&quot;,\r\n\r\n&quot;webhook&quot;: {\r\n\r\n    &quot;urls&quot;: [\r\n\r\n         &quot;https:\/\/api.your.domain.com\/v1\/mg\/clicked&quot;,\r\n\r\n         &quot;https:\/\/api.your.domain.com\/v2\/mg\/clicked&quot;,\r\n\r\n         &quot;https:\/\/api.partner.com\/v1\/you\/clicked&quot;\r\n\r\n     ]\r\n\r\n }\r\n\r\n}\r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<p class=\"wp-block-paragraph\">Los datos recibidos en tus URL deber\u00edan ser:<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                Java                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"Copia al portapapeles\" data-clipboard-success-label=\"\u00a1Copiado!\" data-clipboard-error-label=\"No se ha podido copiar\" data-tooltip=\"Copia al portapapeles\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"Copia al portapapeles\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-Java\">\r\n                                <code id=\"code_0_content\" class=\"language-Java\">\r\n\r\n                                    {\r\n\r\n  \u201csignature\u201d:    \r\n\r\n  {\r\n\r\n    &quot;timestamp&quot;: &quot;1529006854&quot;,\r\n\r\n    &quot;token&quot;: &quot;a8ce0edb2dd8301dee6c2405235584e45aa91d1e9f979f3de0&quot;,\r\n\r\n    &quot;signature&quot;: &quot;d2271d12299f6592d9d44cd9d250f0704e4674c30d79d07c47a66f95ce71cf55&quot;\r\n\r\n  }\r\n\r\n  \u201cevent-data\u201d:    \r\n\r\n  {\r\n\r\n    &quot;timestamp&quot;: 1529006854.329574,\r\n\r\n    &quot;id&quot;: &quot;DACSsAdVSeGpLid7TN03WA&quot;,\r\n\r\n    &quot;event&quot;: &quot;delivered&quot;,\r\n\r\n    &quot;tags&quot;: [...],\r\n\r\n    &quot;user-variables&quot;: {...},\r\n\r\n    &quot;message&quot;: {\r\n\r\n         &quot;headers&quot;: {\r\n\r\n             &quot;message-id&quot;: &quot;20180618211821.example.org&quot;\r\n\r\n          }\r\n\r\n    },\r\n\r\n    \u2026\r\n\r\n  }\r\n\r\n}\r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<p class=\"wp-block-paragraph\">La parte de <code>\u201cevent-data\u201d<\/code> es la misma que devuelve la Events API y contiene: la marca de tiempo del evento, el id \u00fanico del evento, el nombre del evento, el message-id, tus etiquetas y variables, etc. Como mejor pr\u00e1ctica, no olvides verificar la parte de la <code>\u201csignature\u201d<\/code> (consulta\u00a0<a href=\"https:\/\/documentation.mailgun.com\/en\/latest\/api-webhooks.html\" target=\"_tabs\" rel=\"noopener noreferrer\">aqu\u00ed<\/a>\u00a0c\u00f3mo se hace).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Y eso es todo. F\u00e1cil, \u00bfverdad?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00bfPuedo enviar eventos a m\u00faltiples puntos de conexi\u00f3n?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">S\u00ed que puedes. Si necesitas migrar tu aplicaci\u00f3n a una nueva versi\u00f3n o enviar eventos al sitio de tu socio, se puede hacer para un m\u00e1ximo de 3 puntos de conexi\u00f3n.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Si quieres ver qu\u00e9 aspecto tiene tu evento o si tienes alguna pregunta para nuestro equipo de asistencia, es f\u00e1cil configurar un webhook con una URL temporal a nuestro contenedor de peticiones (request bin) en \u00a0<a href=\"http:\/\/bin.mailgun.net\/\" target=\"_tabs\" rel=\"noopener noreferrer\">http:\/\/bin.mailgun.net<\/a>\u00a0y consumir eventos al mismo tiempo.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Aqu\u00ed tienes un ejemplo de lo que ocurre al usar\u00a0una API de prueba tambi\u00e9n, utilizando el siguiente comando <code>curl<\/code>:<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                Shell                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"Copia al portapapeles\" data-clipboard-success-label=\"\u00a1Copiado!\" data-clipboard-error-label=\"No se ha podido copiar\" data-tooltip=\"Copia al portapapeles\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"Copia al portapapeles\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-shell\">\r\n                                <code id=\"code_0_content\" class=\"language-shell\">\r\n\r\n                                    curl -s --user \u2018api:YOUR_API_KEY\u2019 \\\r\n\r\nhttps:\/\/api.mailgun.net\/v3\/domains\/YOUR_DOMAIN_NAME\/webhooks\/HOOK_NAME\/test \\\r\n\r\n-X PUT \\\r\n\r\n-F url=YOUR_URL\r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<p class=\"wp-block-paragraph\">Aqu\u00ed, <code>\u201curl\u201d<\/code> es tu URL (una por petici\u00f3n) y <code>\u201cHOOK_NAME\u201d<\/code> \u00a0es un nombre de webhook (consulta la lista anterior; tambi\u00e9n uno por petici\u00f3n).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Y el mensaje de respuesta:<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"code-snippet longform-spacings rounded-lg overflow-hidden shadow \" data-count=\"1\">\r\n        <ul class=\"nav nav-buttons code-snippet__tabs longform-except position-relative d-flex gap-2 flex-wrap p-3\" role=\"tablist\">\r\n\r\n                            \r\n                    \r\n                        <li class=\"nav-item\" role=\"presentation\">\r\n                            <button class=\"nav-link active\" data-bs-toggle=\"tab\" data-bs-target=\"#code_0\" type=\"button\" role=\"tab\" aria-controls=\"code_0\" aria-selected=\"true\">\r\n                                Shell                            <\/button>\r\n                        <\/li>\r\n\r\n                    \r\n                            \r\n        <\/ul>\r\n        <div class=\"code-snippet__tab-content tab-content\">\r\n\r\n                            \r\n                    <div class=\"tab-pane show active\" id=\"code_0\" role=\"tabpanel\" aria-labelledby=\"code_0\">\r\n                        <div class=\"code-snippet__code-wrapper\">\r\n                            <div class=\"nav nav-buttons code-snippet__copy-wrapper\">\r\n                                <button type=\"button\" class=\"nav-link code-snippet__copy\" data-clipboard-target=\"#code_0_content\" data-clipboard-label=\"Copia al portapapeles\" data-clipboard-success-label=\"\u00a1Copiado!\" data-clipboard-error-label=\"No se ha podido copiar\" data-tooltip=\"Copia al portapapeles\" data-tooltip-placement=\"left\" role=\"tooltip\" aria-label=\"Copia al portapapeles\">\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--default\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/file-stack.svg\"><\/svg>\r\n                                    <svg class=\"code-snippet__copy-icon code-snippet__copy-icon--success\" width=\"24\" height=\"24\" aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/sinch\/badge-check.svg\"><\/svg>\r\n                                <\/button>\r\n                            <\/div>\r\n                            <pre class=\"w-100 h-100 m-0 line-numbers language-shell\">\r\n                                <code id=\"code_0_content\" class=\"language-shell\">\r\n\r\n                                        {\r\n    &quot;code&quot;   : null,\r\n    &quot;message&quot;: &quot;{\\&quot;message\\&quot;:\\&quot;Post received. Thanks!\\&quot;\r\n    }\r\n                                <\/code>\r\n                            <\/pre>\r\n                        <\/div>\r\n                    <\/div>\r\n                                    <\/div>\r\n    <\/div>\r\n\n\n\n<p class=\"wp-block-paragraph\">Aqu\u00ed, <code>\u201ccode\u201d<\/code> indica el c\u00f3digo HTTP recibido por tu parte (null significa 200 OK) y <code>\u201cmessage\u201d <\/code>muestra el cuerpo HTTP recibido por tu parte o el mensaje de error<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Soy usuario de Mailgun, \u00bfpuedo migrar f\u00e1cilmente a la nueva API?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">S\u00ed. Y todos los webhooks antiguos tendr\u00e1n que migrarse a esta nueva versi\u00f3n. El punto de conexi\u00f3n de la API de webhooks antigua pas\u00f3 a ser de <b>solo lectura <\/b>a partir del 15 de abril de 2023, lo que concluye un proceso de obsolescencia que comenz\u00f3 en marzo de 2022.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Las actualizaciones de productos son importantes y, como somos una empresa de email, se nos da bastante bien enviar actualizaciones para mantenerte al d\u00eda. \u00bfQuieres explorar el porqu\u00e9 y el c\u00f3mo detr\u00e1s de nuestras decisiones? Suscr\u00edbete a nuestra newsletter para obtener m\u00e1s contenido como este.<\/p>\n\n\n    <div data-content-type=\"longform\" class=\"longform-spacings\">\r\n        <div class=\"cta bg-primary rounded-lg px-5 py-6 p-md-7 px-md-6\">\r\n                    <div class=\"form-subscription\">\r\n                            <div class=\"h4 mb-3\">\r\n                    \u00a1Mantenme informado\/a! Recibe excelentes recursos en tu bandeja de entrada cada semana.                <\/div>\r\n                                    <form accept-charset=\"UTF-8\" action=\"\" enctype=\"multipart\/form-data\" data-form-subscription method=\"POST\" style=\"max-width: 400px;\">\r\n                <div class=\"row justify-content-between align-items-top g-2\">\r\n                    <div class=\"col-10\">\r\n                        <input type=\"email\" name=\"email\" class=\"form-control\" placeholder=\"Email\" autocomplete=\"email\" required>\r\n                        <div data-fs=\"error\" role=\"alert\" class=\"invalid-feedback\">\r\n                            Please complete this required field.                        <\/div>\r\n                    <\/div>\r\n                                            <div class=\"col-12 order-last mt-3 fs-xxs\" data-fs=\"acceptance\" style=\"display:none;\">\r\n                            \r\n                                <div class=\"form-check\">\r\n                                    <input id=\"formSubscriptionAcceptance-terms-5679\" class=\"form-check-input\"\r\n                                        type=\"checkbox\" name=\"terms\">\r\n                                    <label for=\"formSubscriptionAcceptance-terms-5679\" class=\"form-check-label text-body-color\">\r\n                                        He le\u00eddo y acepto los T\u00e9rminos de Servicio.                                        <span class=\"hs-form-required\">*<\/span>\r\n                                    <\/label>\r\n                                <\/div>\r\n\r\n                            \r\n                                <div class=\"form-check\">\r\n                                    <input id=\"formSubscriptionAcceptance-privacy-5804\" class=\"form-check-input\"\r\n                                        type=\"checkbox\" name=\"privacy\">\r\n                                    <label for=\"formSubscriptionAcceptance-privacy-5804\" class=\"form-check-label text-body-color\">\r\n                                        He le\u00eddo y acepto la Pol\u00edtica de Privacidad.                                        <span class=\"hs-form-required\">*<\/span>\r\n                                    <\/label>\r\n                                <\/div>\r\n\r\n                                                    <\/div>\r\n                    \r\n                                            <div class=\"col-12 order-last fs-xxs mb-0 mt-2 text-body-color\">\r\n                            Env\u00edame la newsletter de Mailjet. Acepto expresamente recibir la newsletter y s\u00e9 que puedo darme de baja f\u00e1cilmente en cualquier momento.                        <\/div>\r\n                    \r\n                    <div class=\"col-2\">\r\n                        <button type=\"submit\" value=\"Submit\" aria-label=\"Submit\" class=\"btn btn-secondary btn-icon\">\r\n                            <svg aria-hidden=\"true\" data-url=\"https:\/\/www.mailgun.com\/wp-content\/plugins\/sinch-core\/assets\/icons\/layout\/chevron-right.svg\"><\/svg>\r\n                        <\/button>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <input type=\"hidden\" name=\"formSubscriptionRecaptchaToken\" data-fs=\"recaptcha-token\">\r\n                <input type=\"hidden\" name=\"customListID\" value=\"\">\r\n\r\n            <\/form>\r\n            <div data-fs=\"message-success\" style=\"display: none;\">\r\n                <p class=\"mb-0 mt-2 text-body-color\">\r\n                    \u00a1Consulta mensualmente tu bandeja de entrada para recibir la newsletter de Mailjet!                <\/p>\r\n            <\/div>\r\n        <\/div>\r\n        <\/div>\r\n    <\/div>\r\n","protected":false},"excerpt":{"rendered":"<p>Hemos actualizado nuestra API de webhooks para ofrecerte m\u00e1s opciones de comunicaci\u00f3n con Mailgun y que veas al detalle qu\u00e9 ocurre con tus mensajes.<\/p>\n","protected":false},"author":13,"featured_media":4555,"menu_order":0,"template":"","meta":{"_acf_changed":true,"footnotes":""},"blog_category":[22],"class_list":["post-23672","blog","type-blog","status-publish","has-post-thumbnail","hentry","blog_category-product"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Misma API, nuevos trucos: recibe notificaciones de eventos al momento con los webhooks - Transactional Email API Service For Developers | Mailgun<\/title>\n<meta name=\"description\" content=\"Con esta actualizaci\u00f3n de los webhooks, tienes m\u00e1s opciones para comunicarte con Mailgun y ver en detalle qu\u00e9 ocurre con tus mensajes.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.mailgun.com\/es\/blog\/product\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Misma API, nuevos trucos: recibe notificaciones de eventos al momento con los webhooks - Transactional Email API Service For Developers | Mailgun\" \/>\n<meta property=\"og:description\" content=\"Con esta actualizaci\u00f3n de los webhooks, tienes m\u00e1s opciones para comunicarte con Mailgun y ver en detalle qu\u00e9 ocurre con tus mensajes.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.mailgun.com\/es\/blog\/product\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\/\" \/>\n<meta property=\"og:site_name\" content=\"Transactional Email API Service For Developers | Mailgun\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Product.png\" \/>\n\t<meta property=\"og:image:width\" content=\"720\" \/>\n\t<meta property=\"og:image:height\" content=\"448\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/product\\\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\\\/\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/product\\\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\\\/\",\"name\":\"Misma API, nuevos trucos: recibe notificaciones de eventos al momento con los webhooks - Transactional Email API Service For Developers | Mailgun\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/product\\\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/product\\\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/MG-Blog-Product.png\",\"datePublished\":\"2026-09-16T06:17:13+00:00\",\"description\":\"Con esta actualizaci\u00f3n de los webhooks, tienes m\u00e1s opciones para comunicarte con Mailgun y ver en detalle qu\u00e9 ocurre con tus mensajes.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/product\\\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/product\\\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/product\\\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/MG-Blog-Product.png\",\"contentUrl\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/MG-Blog-Product.png\",\"width\":720,\"height\":448},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/product\\\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Misma API, nuevos trucos: recibe notificaciones de eventos al momento con los webhooks\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#website\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/\",\"name\":\"Transactional Email API Service For Developers | Mailgun\",\"description\":\"Potentes API de email transaccional que te permiten enviar, recibir y hacer seguimiento de emails, creadas pensando en los desarrolladores. \u00a1Descubre m\u00e1s!\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#organization\",\"name\":\"Transactional Email API Service For Developers | Mailgun\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/cropped-android-chrome-512x512-1.png\",\"contentUrl\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/cropped-android-chrome-512x512-1.png\",\"width\":512,\"height\":512,\"caption\":\"Transactional Email API Service For Developers | Mailgun\"},\"image\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Misma API, nuevos trucos: recibe notificaciones de eventos al momento con los webhooks - Transactional Email API Service For Developers | Mailgun","description":"Con esta actualizaci\u00f3n de los webhooks, tienes m\u00e1s opciones para comunicarte con Mailgun y ver en detalle qu\u00e9 ocurre con tus mensajes.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.mailgun.com\/es\/blog\/product\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\/","og_locale":"es_ES","og_type":"article","og_title":"Misma API, nuevos trucos: recibe notificaciones de eventos al momento con los webhooks - Transactional Email API Service For Developers | Mailgun","og_description":"Con esta actualizaci\u00f3n de los webhooks, tienes m\u00e1s opciones para comunicarte con Mailgun y ver en detalle qu\u00e9 ocurre con tus mensajes.","og_url":"https:\/\/www.mailgun.com\/es\/blog\/product\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\/","og_site_name":"Transactional Email API Service For Developers | Mailgun","og_image":[{"width":720,"height":448,"url":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Product.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.mailgun.com\/es\/blog\/product\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\/","url":"https:\/\/www.mailgun.com\/es\/blog\/product\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\/","name":"Misma API, nuevos trucos: recibe notificaciones de eventos al momento con los webhooks - Transactional Email API Service For Developers | Mailgun","isPartOf":{"@id":"https:\/\/www.mailgun.com\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.mailgun.com\/es\/blog\/product\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\/#primaryimage"},"image":{"@id":"https:\/\/www.mailgun.com\/es\/blog\/product\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\/#primaryimage"},"thumbnailUrl":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Product.png","datePublished":"2026-09-16T06:17:13+00:00","description":"Con esta actualizaci\u00f3n de los webhooks, tienes m\u00e1s opciones para comunicarte con Mailgun y ver en detalle qu\u00e9 ocurre con tus mensajes.","breadcrumb":{"@id":"https:\/\/www.mailgun.com\/es\/blog\/product\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.mailgun.com\/es\/blog\/product\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.mailgun.com\/es\/blog\/product\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\/#primaryimage","url":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Product.png","contentUrl":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Product.png","width":720,"height":448},{"@type":"BreadcrumbList","@id":"https:\/\/www.mailgun.com\/es\/blog\/product\/same-api-new-tricks-get-event-notifications-just-in-time-with-webhooks\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.mailgun.com\/es\/"},{"@type":"ListItem","position":2,"name":"Blog","item":"https:\/\/www.mailgun.com\/es\/blog\/"},{"@type":"ListItem","position":3,"name":"Misma API, nuevos trucos: recibe notificaciones de eventos al momento con los webhooks"}]},{"@type":"WebSite","@id":"https:\/\/www.mailgun.com\/es\/#website","url":"https:\/\/www.mailgun.com\/es\/","name":"Transactional Email API Service For Developers | Mailgun","description":"Potentes API de email transaccional que te permiten enviar, recibir y hacer seguimiento de emails, creadas pensando en los desarrolladores. \u00a1Descubre m\u00e1s!","publisher":{"@id":"https:\/\/www.mailgun.com\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.mailgun.com\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/www.mailgun.com\/es\/#organization","name":"Transactional Email API Service For Developers | Mailgun","url":"https:\/\/www.mailgun.com\/es\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.mailgun.com\/es\/#\/schema\/logo\/image\/","url":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/06\/cropped-android-chrome-512x512-1.png","contentUrl":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/06\/cropped-android-chrome-512x512-1.png","width":512,"height":512,"caption":"Transactional Email API Service For Developers | Mailgun"},"image":{"@id":"https:\/\/www.mailgun.com\/es\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog\/23672","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/users\/13"}],"version-history":[{"count":0,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog\/23672\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/media\/4555"}],"wp:attachment":[{"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/media?parent=23672"}],"wp:term":[{"taxonomy":"blog_category","embeddable":true,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog_category?post=23672"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}