Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

97
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!