Apidog

Plataforma de desarrollo de API colaborativa todo en uno

Diseño de API

Documentación de API

Depuración de API

Simulación de API

Prueba automatizada de API

Cómo enviar SMS con la API de Twilio y Node.js

Ya sea que desarrolles notificaciones, un chatbot de soporte o incorpores SMS a tu app, este tutorial te guiará paso a paso.

Daniel Costa

Daniel Costa

Updated on April 15, 2025

En el mundo interconectado de hoy, la comunicación es clave, y una de las formas de comunicación más ubicuas sigue siendo el humilde mensaje de texto. Ya sea para enviar notificaciones, alertas o mensajes promocionales, la capacidad de enviar mensajes SMS (Servicio de Mensajes Cortos) de forma programática abre un mundo de posibilidades para los desarrolladores. Presentamos Twilio, una plataforma de comunicaciones en la nube que permite a los desarrolladores integrar la funcionalidad SMS sin problemas en sus aplicaciones.

Introducción:

En este tutorial, exploraremos cómo aprovechar el poder de Twilio junto con la flexibilidad de Node.js para enviar mensajes SMS sin esfuerzo. Node.js, con su modelo de E/S sin bloqueo y su rico ecosistema de paquetes, proporciona un entorno ideal para construir aplicaciones escalables y eficientes, mientras que Twilio simplifica el envío y la recepción de mensajes SMS, el manejo de la entrega y la gestión de números de teléfono.

Ya sea que esté desarrollando un sistema de notificación, construyendo un chatbot de atención al cliente o simplemente desee incorporar la funcionalidad SMS en su aplicación, este tutorial lo guiará a través del proceso paso a paso. Al final, tendrá una sólida comprensión de cómo aprovechar la API de Twilio con Node.js para enviar mensajes SMS de manera confiable y segura.

¡Así que, vamos a sumergirnos y aprender cómo potenciar sus aplicaciones Node.js con las capacidades SMS de Twilio!

Configurar una cuenta de Twilio:

Antes de enviar mensajes SMS con Twilio y Node.js, el primer paso es configurar una cuenta de Twilio.

Twilio ofrece una prueba gratuita que puede usar para probar todos sus servicios, como enviar SMS con un número gratuito que le asignarían.

Sin embargo, para comenzar, regístrese para obtener una cuenta gratuita.

Regístrese para obtener una cuenta gratuita de Twilio:

Navegue al sitio web de Twilio (https://www.twilio.com/) y regístrese para obtener una nueva cuenta si aún no lo ha hecho. El proceso de registro es sencillo y solo requiere información básica como su dirección de correo electrónico, nombre completo y contraseña.

Verifique su dirección de correo electrónico:

Según Twilio

Esta verificación ayuda a prevenir el uso indebido de la plataforma Twilio y garantiza el cumplimiento de las regulaciones de telecomunicaciones.

Después de registrarse, Twilio enviará un correo electrónico de verificación a la dirección que proporcionó durante el registro. Haga clic en el enlace de verificación en el correo electrónico para confirmar su dirección de correo electrónico y activar su cuenta de Twilio.

Verificación del número de teléfono:

Esto ayuda a Twilio a verificar su identidad y también le permite enviar mensajes de prueba a su teléfono desde su cuenta de Twilio mientras está en modo de prueba.

Después de verificar su correo electrónico, se le pedirá que verifique su número de teléfono. Twilio detecta automáticamente su ubicación utilizando su I.P. Asegúrese de crear su cuenta utilizando un número que pueda verificar dentro de su país.

Acceda a su panel de control de Twilio:

Una vez que su cuenta esté verificada, inicie sesión en su cuenta de Twilio para acceder a la Consola de Twilio. La Consola es donde administrará sus servicios de Twilio, números de teléfono y credenciales de API.

Obtenga las credenciales de la API de Twilio:

En la Consola de Twilio, navegue a la sección "Panel de control" o "Configuración" para encontrar su SID de cuenta y token de autenticación. Estas credenciales son esenciales para autenticar sus solicitudes al interactuar con la API de Twilio.

  • SID de cuenta (Identificador de cuenta): Este es un identificador único para su cuenta de Twilio. Actúa como un nombre de usuario al realizar solicitudes a la API.
  • Token de autenticación: Este token servirá como contraseña para autenticar sus solicitudes a la API. Manténgalo seguro y nunca lo comparta públicamente.
  • Número de teléfono de Twilio: Este teléfono es crucial, esto es lo que usará para enviar SMS y no su número de teléfono.

Al completar estos pasos, habrá configurado con éxito su cuenta de Twilio, obtenido sus credenciales de API y obtenido su(s) número(s) de teléfono para la mensajería SMS. Ahora está listo para integrar Twilio con su aplicación Node.js y comenzar a enviar mensajes SMS de forma programática.

N.B: Si su cuenta de prueba gratuita caduca, deberá comprar un número de teléfono que utilizará para enviar un SMS.

An Image showing Twilio Buy phone number page

Si no quiere comprar un número de teléfono para las pruebas, asegúrese de crear su cuenta solo cuando esté listo para enviar su SMS.

Instalación de dependencias:

Para integrar la funcionalidad SMS de Twilio en su aplicación Node.js, deberá configurar un nuevo proyecto Node.js e instalar el SDK de Twilio Node.js.

Antes de continuar con las instalaciones de dependencias, tenga en cuenta que no utilizaremos ninguna interfaz de usuario ni construiremos una aplicación front-end para probar esto. Sin embargo, para probar esto, utilizaremos Apidog, una mejor alternativa a Postman.

Apidog es una plataforma integrada para el diseño, la depuración, el desarrollo, la simulación y las pruebas de API.

Aquí hay una guía útil para obtener una comprensión completa de qué es Apidog y cómo usarlo al máximo. Cree una cuenta para prepararse para la etapa de prueba de API de este artículo.

button

Ahora, volvamos a la configuración de Node.Js y Twilio. Siga estos pasos para comenzar:

Configuración de un nuevo proyecto Node.js:

Si aún no lo ha hecho, cree un nuevo directorio para su proyecto Node.js y navegue a él utilizando su terminal o símbolo del sistema.

mkdir twilio-sms-demo
cd twilio-sms-demo

Inicialización de un proyecto Node.js:

Utilice el siguiente comando para inicializar un nuevo proyecto Node.js. Este comando creará un archivo package.json que rastreará las dependencias de su proyecto.

npm init -y

Este comando crea un archivo package.json con valores predeterminados. Puede personalizar estos valores según sea necesario.

Instalación del SDK de Twilio Node.js:

Ahora, deberá instalar el SDK de Twilio Node.js, que proporciona una interfaz conveniente para interactuar con la API de Twilio desde sus aplicaciones Node.js. Puede usar npm o yarn para instalar el SDK.

Usando npm:
Ejecute el siguiente comando para instalar el SDK de Twilio Node.js junto con el framework Express usando npm:

npm install express twilio

Usando yarn:
Si prefiere usar yarn, ejecute el siguiente comando en su lugar:

yarn add express twilio

Este comando descargará el SDK de Twilio Node.js junto con el framework Express y lo agregará como una dependencia en su archivo package.json.

Si no lo sabe, Express es un framework de node.js que facilita la creación de API.

Verificación de la instalación:

Después de instalar el SDK de Twilio, asegúrese de que se haya agregado a su archivo package.json. Debería ver "twilio": "^x.x.x" listado en la sección dependencies.

Además, puede verificar que la instalación se realizó correctamente comprobando la presencia del directorio node_modules en su proyecto. Este directorio contiene todas las dependencias instaladas, incluido el SDK de Twilio.

Siguiendo estos pasos, ha configurado con éxito un nuevo proyecto Node.js e instalado el SDK de Twilio Node.js, allanando el camino para integrar la funcionalidad SMS de Twilio en su aplicación. Ahora, está listo para comenzar a escribir el código para enviar mensajes SMS con Twilio en su aplicación Node.js.

Escribir el código de Node.js:

Ahora que ha configurado su proyecto Node.js e instalado el SDK de Twilio, escribamos el código para enviar un mensaje SMS usando Twilio en combinación con Express.

Creación de un nuevo archivo JavaScript:
En el directorio de su proyecto, cree un nuevo archivo JavaScript llamado index.js (o cualquier otro nombre que prefiera) donde escribirá el código para enviar mensajes SMS.

touch index.js

Una vez que haya terminado, abra el directorio/carpeta del proyecto en cualquier IDE de su elección. Si usted es una de las personas a las que les gusta la simplicidad, probablemente tenga VsCode instalado. Abra el proyecto init y debería ver algo similar a lo que tengo a continuación;

VsCode page showing the project folder.

Abra el archivo index.js y comencemos a escribir algo de código. Pegue el siguiente código en el archivo index.js.

const express = require('express');

const accountSid = "your_account_sid;
const authToken = "your_auth_token";
const client = require('twilio')(accountSid, authToken);

En el código anterior, importamos el módulo express al principio del archivo. También creamos dos constantes ( const) que contienen nuestro accountSid y authToken. Por último, definimos otra constante donde importamos el módulo Twilio y le pasamos el accountSid y el authToken.

Algunas personas podrían argumentar que es mejor si envolvemos el accountSid y el AuthToken en un archivo .env. Puede hacer eso si lo desea, pero voy a mantener las cosas simples aquí.

Escribir el código para enviar un mensaje SMS:

Ahora, escribamos el código para enviar un mensaje SMS usando el método messages.create() de Twilio.

En ese mismo archivo index.js, agregue los siguientes códigos debajo de lo que teníamos primero.


const app = express()

app.post('/send-sms', (req, res) => {
    

    client.messages
        .create({
            body: 'Así es como se siente recibir SMS de prueba de Twilio. ¿Init?',
            from: '+122345678', // Reemplace con su número de teléfono de Twilio incluyendo el código de país.
            to: '+123456789'    // el número de teléfono con el que verificó su cuenta.
        })
        .then(message => {
            console.log('Mensaje enviado:', message.sid);
            res.send('¡SMS enviado con éxito!');
        })
        .catch(error => {
            console.error('Error al enviar SMS:', error);
            res.status(500).send('Error al enviar SMS');
        });
});

const PORT = 3000;
app.listen(PORT, () => {
    console.log(`El servidor se está ejecutando en el puerto ${PORT}`);
});

En este código:

  • Creamos una aplicación Express y definimos una ruta POST /send-sms para manejar el envío de mensajes SMS.
  • Luego inicializamos un cliente Twilio con nuestras credenciales de Twilio.
  • Usando el cliente Twilio, enviamos un mensaje SMS al número de teléfono del destinatario especificado (to) con el cuerpo del mensaje proporcionado (body).

¡Eso es todo! Ahora ha escrito el código de Node.js para enviar mensajes SMS usando Twilio y Express. No olvide reemplazar 'from' y 'to' con su número de teléfono de Twilio y el número de teléfono verificado.

Guarde el archivo, abra su terminal y escriba node index.js y haga clic en enter. Si todo va bien, debería ver algo similar a;

Terminal window showing "Server running on port 3000"

Probando nuestra API:

Si puede recordar, mencioné que usaremos Apidog para probar nuestras API para ver si funcionan como se espera. Por lo tanto, descargue o use la versión web de Apidog para probar la API que acabamos de crear.

Una vez más, aquí hay una guía que le mostrará cómo comenzar con Apidog.

button

Ahora que está familiarizado con Apidog, inicie sesión y cree su primer proyecto, o use el predeterminado creado automáticamente para usted. Después de eso, haga clic en "Nueva solicitud"

Image showing Apidog's Project page

Después de eso, se le mostrará una página para enviar una solicitud.

Apidog request page

Puede ver que estoy enviando una solicitud POST a localhost:3000/send-sms y eso es porque la ruta que definimos en nuestra aplicación web es /send-sms y estamos usando nuestra máquina local.

Si escribe la ruta correcta y presiona el botón de enviar en la parte superior derecha, recibirá una respuesta. En mi caso, obtuve un error, y el error se registró en mi terminal.

El error fue simple, el número de teléfono al que intenté enviar el SMS no está verificado, porque estoy usando una cuenta de prueba, necesito verificar mi número o actualizar para enviar SMS a cualquier número de teléfono.

Una de las características interesantes de Twilio es que puede ver sus registros e historial. Vi el mío y obtuve la siguiente respuesta;

Todas las API de mis pruebas fallaron. ¿Puede adivinar por qué?
Mi número de teléfono no fue verificado;

Una vez que verifique o actualice su cuenta a una cuenta paga, podrá recibir un SMS.

Mejora de la aplicación (opcional):

Una vez que haya implementado con éxito el envío de mensajes SMS con Twilio y Node.js, es posible que desee explorar características adicionales y mejorar la confiabilidad de su aplicación. Aquí hay algunas mejoras opcionales que puede considerar:

Exploración de características adicionales de Twilio:

Twilio ofrece una amplia gama de características más allá de la simple mensajería SMS. Puede explorar capacidades como:

Conclusión:

En este tutorial, hemos explorado cómo integrar la funcionalidad SMS de Twilio con Node.js, lo que le permite enviar mensajes SMS de forma programática desde sus aplicaciones. Recapitulémos los pasos clave involucrados:

Configuración de la cuenta de Twilio: Regístrese para obtener una cuenta de Twilio, obtenga sus credenciales de API (SID de cuenta y token de autenticación) y verifique los números de teléfono para la mensajería SMS.

Instalación de dependencias: Configure un nuevo proyecto Node.js, instale el SDK de Twilio Node.js y configure Twilio con sus credenciales.

Escribir el código de Node.js: Cree un nuevo archivo JavaScript para enviar mensajes SMS, importe Express y el módulo Twilio, y escriba código para enviar mensajes SMS usando el método messages.create() de Twilio.

Probar el código usando Apidog: Vimos cómo podemos usar una herramienta de desarrollo como Apidog para probar nuestras API de Node.js fácilmente sin estrés.

Siguiendo estos pasos, ha aprendido cómo aprovechar la poderosa API de Twilio junto con la flexibilidad de Node.js para incorporar la funcionalidad SMS en sus aplicaciones. A medida que continúe desarrollando sus proyectos, no dude en explorar más características de Twilio y personalizar sus aplicaciones para satisfacer las necesidades específicas de sus usuarios.

¡Feliz codificación!

Cómo usar Lovable AI (Alternativa a Cursor para desarrolladores web)Tutoriales

Cómo usar Lovable AI (Alternativa a Cursor para desarrolladores web)

Aprende a crear cualquier web con Lovable en esta guía completa. Descubre procesos paso a paso, funciones innovadoras e integra herramientas gratuitas como Apidog para gestión API.

Daniel Costa

April 15, 2025

Cómo usar n8n con servidores MCPTutoriales

Cómo usar n8n con servidores MCP

Automatiza flujos con n8n y servidores MCP para IA. Guía técnica: configuración, APIs, nodo "MCP Server Trigger" y Apidog para pruebas.

Daniel Costa

April 14, 2025

Cómo añadir claves API personalizadas a Cursor: Una guía completaTutoriales

Cómo añadir claves API personalizadas a Cursor: Una guía completa

Este tutorial te guiará para configurar y gestionar claves API personalizadas en Cursor (OpenAI, Anthropic, Google y Azure).

Daniel Costa

April 11, 2025