SMS Notification Node
The SMS Notification node sends text messages via Twilio. Use it to deliver trading alerts, order confirmations, and status updates directly to a phone number.
Configuration
General
Give this node a custom name to identify it in your workflow
Continue workflow if this node fails
Twilio Credentials
Add your Twilio Account SID, Auth Token, and phone number
Get your credentials from the Twilio Console
Message Content
Configure the recipient and message
Recipient phone number in E.164 format (e.g., +15551234567)
Use {edgeLabel.field} for dynamic values
Advanced Options
Optional configuration overrides
Override the from number configured in your Twilio credential. E.164 format.
Configuration
| Field | Description |
|---|---|
| Twilio Credential | Your Twilio Account SID and Auth Token, stored as an encrypted credential. Get them from the Twilio Console ↗. |
| To Number | Recipient phone number in E.164 format (e.g., +15551234567). Supports the f(x) toggle for dynamic values. |
| Message | The SMS body. Supports {edgeLabel.field} interpolation for dynamic data. Maximum 1,600 characters (auto-truncated if longer). |
| From Number Override | Optional. Overrides the from number set in your Twilio credential. E.164 format. Supports the f(x) toggle for dynamic values. |
+ followed by the country code and number with no spaces or dashes. Example: +15551234567, not +1 555 123 4567.Dynamic Fields
The To Number and From Number Override fields support the f(x) toggle. Click the f(x) button next to a field to switch from a static value to an expression that resolves at runtime using the output of a connected upstream node:
{my_function.phoneNumber}
This lets you build workflows where the recipient is determined dynamically — for example, looking up a phone number from a database or passing it from an earlier Function node.
Twilio Setup
Before you can send SMS, you need a Twilio account and phone number.
Step 1: Create a Twilio Account
- Sign up at twilio.com ↗ (free trial available).
- From the Console Dashboard, copy your Account SID and Auth Token.
Step 2: Get a Twilio Phone Number
- In the Twilio Console, go to Phone Numbers > Manage > Buy a Number.
- Search for a number with SMS capability enabled.
- Purchase the number and copy it (e.g.,
+15551234567).
Step 3: Save Credentials in NickAI
- Go to Credentials in NickAI (or use the credential selector in the SMS node).
- Click Add Credential and select Twilio SMS.
- Enter your Account SID, Auth Token, and optionally your From Phone Number.
- Click Save. All values are encrypted at rest.
Step 4: Verify Recipients (Trial Accounts Only)
Template Interpolation
Use curly braces to inject live data from upstream nodes into the message and phone number fields.
Trading Alert Example
BTC/USD Alert
Price: ${price_data.data.prices[0].current}
24h Change: {price_data.data.prices[0].changePercent24h}%
Signal: {llm.output}
Order Confirmation Example
Order Executed
Action: {exchange.side}
Symbol: {exchange.symbol}
Quantity: {exchange.quantity}
Price: ${exchange.price}
Workflow Example
A common pattern is to monitor prices, check a condition, and send an SMS alert:
In this workflow:
- Price Data fetches live BTC/USD market data.
- LLM analyzes the price, volume, and indicators to produce a signal.
- Conditional checks if confidence exceeds 80%.
- SMS Notification texts you the alert -- only when the signal is strong.
Output
After execution, the node produces the following data that downstream nodes can reference:
| Path | Description |
|---|---|
| {sms.success} | true if the message was sent, false if it failed. |
| {sms.message} | A status string -- "SMS sent successfully" on success, or an error description on failure. |
| {sms.messageSid} | The Twilio message SID (only present on success). Useful for tracking delivery status. |
sms with your node's edge label. If the edge connecting this node to the next is labeled alert, use {alert.success}.Common Errors
| Error | Cause | Fix |
|---|---|---|
| Invalid phone number format | Number has spaces, dashes, or missing + | Use E.164 format: +15551234567 |
| Authentication failed | Wrong Account SID or Auth Token | Re-check credentials in Twilio Console ↗ |
| Message blocked by carrier | US local number without A2P 10DLC registration | Register at Messaging > Compliance or use a toll-free number |
| Permission denied for region | Twilio account can't send to the recipient's country | Enable the country in Messaging > Settings > Geo permissions |
| Recipient opted out | Recipient replied STOP to your number | Recipient must reply START to opt back in |
| Trial account restriction | Sending to an unverified number on a trial account | Verify the number in Phone Numbers > Verified Caller IDs |
Next Steps
- Telegram Notification Node -- Send alerts via Telegram as an alternative channel.
- Email Notification Node -- Send alerts via email.
- Discord Notification Node -- Post alerts to Discord servers.
- Slack Notification Node -- Send alerts to Slack channels.
- Conditional Node -- Route workflows based on conditions before sending notifications.
- Credentials -- Manage your Twilio credentials and other API keys.