Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

98
Vistas
Solicitud POST de la página en la nube de Salesforce Marketing Cloud a Twilio mediante SSJS

Estoy tratando de enviar una solicitud POST a la API de SMS de Twilio desde la página en la nube de Marketing Cloud usando SSJS. Recibo un acceso no autorizado 401 a pesar de que agregué ACCOUNT_SID Y AUTH_TOKEN en la URL.

 <script type="text/javascript" runat="server"> Platform.Load("core", "1"); var config = { endpoint: "https://XXXX:XXXX@api.twilio.com/2010-04-01/Accounts/XXXX/Messages.json", contentType: "application/x-www-form-urlencoded", payload : "From=+0000&To=+0000&Body=Test1" } try { var httpResult = HTTP.Post(config.endpoint, config.contentType, config.payload); var result = JSON.parse(httpResult.response); Write(httpResult.StatusCode); Write('result' + result); } catch(error) { Write(Stringify(error)); } </script>

Recibo este error: {"mensaje":"Se produjo un error al intentar evaluar una llamada a la función HTTPPost. Consulte la excepción interna para obtener más detalles.","description":"ExactTarget.OMM.FunctionExecutionException: se produjo un error al intentar evaluar una Llamada a la función HTTPPost. Consulte la excepción interna para obtener más detalles.\r\n Código de error: OMM_FUNC_EXEC_ERROR\r\n - de Jint --> \r\n\r\n --- excepción interna 1---\r\n\ r\nSystem.Net.WebException: el servidor remoto devolvió un error: (401) No autorizado. - del sistema\r\n\r\n\r\n\r\n"}

Intenté usar JavaScript del lado del cliente, pero obtengo el mismo error.

 <script> const url = 'https://XXXX:XXXX@api.twilio.com/2010-04-01/Accounts/XXXX/Messages.json'; var xhr = new XMLHttpRequest(); xhr.open("POST", url); xhr.setRequestHeader("Accept", "application/x-www-form-urlencoded"); xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); var data = 'From=+0000&To=+0000&Body=Test1'; xhr.send(data); </script>

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Desarrollador evangelista de Twilio aquí.

No estoy familiarizado con SSJS y me resulta difícil conectar la documentación (?) con lo que ha escrito. Si esta documentación se refiere al mismo método HTTP.Post que está utilizando, intente algo como esto:

 <script type="text/javascript" runat="server"> Platform.Load("core", "1"); var accountSid = YOUR_ACCOUNT_SID; var authToken = YOUR_AUTH_TOKEN; var auth = btoa(accountSid + ":" + authToken); var config = { endpoint: "https://api.twilio.com/2010-04-01/Accounts/XXXX/Messages.json", contentType: "application/x-www-form-urlencoded", payload : "From=+0000&To=+0000&Body=Test1" }; try { var httpResult = HTTP.Post( config.endpoint, config.contentType, config.payload, ["Authorization"], ["Basic " + auth] ); var result = JSON.parse(httpResult.response); Write(httpResult.StatusCode); Write('result' + result); } catch(error) { Write(Stringify(error)); } </script>

En este caso, concatené el accountSid y el authToken separados por un ":" y luego codifiqué el resultado en base 64. Luego agregué un encabezado de Authorization a la solicitud HTTP y establecí el valor en Basic más las credenciales codificadas en base64.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda