Error webhook 415 en TradingView.
Tu alerta salta, no se abre nada en MT5 y el log del servidor muestra HTTP 415 Unsupported Media Type. La buena noticia: un 415 nunca llega a tu bróker — es un problema de formato entre TradingView y el endpoint del webhook, y se arregla en minutos cuando sabes dónde mirar.
Un error 415 significa que el servidor recibió tu alerta pero no entiende su formato. Pega solo el JSON crudo en el campo Message de la alerta — sin texto extra ni comillas curvas de Word o Telegram — y verifica que la URL del webhook apunta al endpoint de API.
El diagnóstico de 60 segundos
EMPAREJA TU SÍNTOMA CON LA CAUSA ANTES DE TOCAR NADA
/wh/ o pegada desde el sitio equivocado.El 415 lo responde el servidor del webhook, no MetaTrader 5. Si además ves errores de trade dentro de MT5 (stops inválidos, sin fondos, mercado cerrado), esos son del lado del bróker y tienen otros códigos; esta guía solo cubre el 415.
Las soluciones, en orden de frecuencia
EMPIEZA POR LA 1 — RESUELVE LA MAYORÍA DE LOS 415 QUE VEMOS EN SOPORTE
1. Deja el campo Message como JSON crudo (la más común)
TradingView envía la alerta con Content-Type: application/json solo cuando el cuerpo del Message se interpreta como JSON. En cuanto algo lo invalida — una comilla curva, una línea de saludo, un comentario al final — sale como texto plano y un endpoint estricto responde 415. Word, Google Docs, Notas y Telegram convierten en silencio las comillas rectas " en curvas, y JSON no las acepta.
- En TradingView, abre el panel de alertas (icono del reloj), clic derecho sobre tu alerta y elige Editar (o Configuración).
- Selecciona todo el campo Message y bórralo — incluidos los espacios invisibles antes de la primera
{y después de la última}. - Pega el JSON copiado directamente desde una fuente de texto plano (nuestras docs, tu editor de código o el propio Pine Script), nunca desde un chat o un procesador de textos.
- Comprueba que cada comilla es recta
". Un payload válido de SignalForge tiene esta forma:{"action":"buy","symbol":"EURUSD","lot":0.10,"sl":1.0820,"tp":1.0890}. - Guarda la alerta y lanza una de prueba. Si usas
alert()en Pine, recuerda que hay que volver a guardar el diálogo y ponerlo en “Cualquier llamada a la función alert()” tras editar el script.
2. Apunta la URL al endpoint de API, no a una página web
Si todas las alertas han fallado con 415 desde que lo configuraste, sospecha de la URL antes que del mensaje. Una URL de webhook debe golpear el endpoint de API: si al pegarla en el navegador ves una página web, una pantalla de login o un artículo de documentación, es la dirección equivocada. El desliz habitual es perder el segmento /wh/ (o tu token) al copiarla.
- Copia la URL del webhook de nuevo desde tu dashboard de SignalForge o desde las docs: debe contener
/wh/y tu token personal. - Pégala en el campo URL del webhook de la alerta sin espacios ni saltos de línea alrededor.
- Mantén el
https://y el dominio completo exactamente como se te dieron; no la “limpies” a mano. - Guarda y envía una alerta de prueba. Un endpoint correcto con JSON válido responde 200, no 415.
3. Descarta que un proxy, VPN o WAF reescriba la petición
Raro, pero real: los proxies corporativos, las VPN y los antivirus con “protección web” inspeccionan y a veces reescriben las peticiones HTTPS, cambiando cabeceras o el cuerpo por el camino. La alerta sale de TradingView perfectamente válida y llega corrupta: 415.
- Envía el mismo payload por el tester de webhooks gratuito. Si el tester pasa pero TradingView en tu red falla, el problema está entre tú y el servidor.
- Desactiva temporalmente la VPN o el filtro web del antivirus y repite la prueba.
- En una red de oficina gestionada, pide a IT que ponga
api.signalforge-ai.comen la lista blanca. - Si tienes tu propio endpoint detrás de Cloudflare u otro WAF, revisa sus reglas de transformación y el registro de eventos del WAF buscando las peticiones bloqueadas.
Un 415 se decide antes de que se ejecute cualquier lógica de trading: el servidor rechazó el formato de la petición, así que ninguna orden llegó a MetaTrader 5 y tu bróker no vio nada. Los inputs del EA (F7), el botón de AutoTrading (Ctrl+E) y el mapeo de símbolos (Ctrl+U) son todos irrelevantes para este error: no los toques. La solución vive en el mensaje de la alerta o en la URL del webhook. El esquema completo del payload, campo a campo, está en las docs, y puedes validar tu mensaje exacto en el tester de webhooks antes de activarlo.
Preguntas frecuentes
QUÉ ES EL 415, QUÉ NO ES, Y CÓMO PREVENIRLO
¿Qué es el error 415 en un webhook de TradingView?
HTTP 415 (Unsupported Media Type) significa que el servidor recibió tu alerta pero no puede leer su formato. En la práctica, el mensaje de la alerta no se envió como JSON válido: normalmente por comillas curvas, texto extra alrededor del JSON, o una URL de webhook que apunta a una página web en vez del endpoint de API.
¿El error 415 significa que mi bróker o MT5 rechazó la operación?
No. Un 415 ocurre antes de que se ejecute cualquier lógica de trading: el servidor rechazó el cuerpo de la petición, así que ninguna orden llegó a tu MetaTrader 5 ni a tu bróker. Los ajustes del EA, el AutoTrading y el mapeo de símbolos son irrelevantes para este error; la solución está en el mensaje de la alerta o en la URL del webhook.
¿Por qué me da error 415 solo después de copiar la alerta desde Word, Notas o Telegram?
Esas apps sustituyen las comillas rectas por comillas curvas (smart quotes), y JSON solo acepta comillas rectas. El mensaje deja de ser JSON válido, TradingView lo envía como texto plano y el endpoint responde 415. Pega siempre el JSON desde una fuente de texto plano como la documentación.
¿Cómo compruebo mi payload del webhook antes de activarlo?
Pega tu mensaje de alerta exacto en el tester de webhooks gratuito de SignalForge. Te muestra si el JSON se interpreta bien y qué recibiría el servidor, para que detectes los problemas tipo 415 antes de que haya una señal real en juego.
Más troubleshooting: ¿PineConnector no funciona? 12 soluciones (y cuándo cambiar). Recetario de payloads: 15 ejemplos JSON de webhook para TradingView.
Benjamin SF es el fundador de SignalForge y experto en automatización de algoritmos de trading. Construye y opera el puente SignalForge para traders de prop firms y mantiene su benchmark público de latencia.
Alertas que llegan listas para operar
SignalForge interpreta los formatos de alerta habituales de forma nativa y te dice exactamente qué recibió. 14 días gratis, sin tarjeta.
SignalForge AI es una herramienta de ejecución de órdenes. No ofrecemos asesoramiento de inversión. Operar conlleva riesgo de pérdida.