Skip to content

SMS Configuration

SMS notifications deliver short text alerts to team members' mobile phones when critical events occur in your SetGet workspace. SMS is the most direct notification channel and is designed for time-sensitive alerts that require immediate attention.

SMS configuration is managed at the workspace level under Workspace Settings > Reminders > SMS.

Supported providers

SetGet supports two SMS delivery methods:

ProviderDescriptionBest for
TwilioIndustry-standard SMS API with global delivery, delivery receipts, and detailed analyticsTeams that need reliable, scalable SMS with full delivery tracking
Generic HTTP webhookCustom HTTP endpoint that accepts SMS delivery requestsTeams that use a different SMS provider, an internal gateway, or want to route through a custom service

Provider comparison

FeatureTwilioGeneric HTTP webhook
Setup complexityLow (API credentials only)Medium (requires webhook endpoint)
Delivery receiptsYes (native)Depends on your endpoint
Global coverage180+ countriesDepends on your provider
Cost modelPer-message pricing via TwilioDepends on your provider
Phone number provisioningTwilio provides sender numbersYou provide your own sender
Retry on failureAutomatic (Twilio-managed)Must be implemented in your webhook
MonitoringTwilio dashboard + SetGet historySetGet history only
Message lengthAutomatic multi-part for long messagesDepends on your endpoint

Setting up Twilio

Prerequisites

Before configuring Twilio in SetGet, you need:

  1. A Twilio account (sign up at twilio.com).
  2. A Twilio phone number capable of sending SMS.
  3. Your Twilio Account SID and Auth Token from the Twilio Console dashboard.

Configuration steps

  1. Navigate to Workspace Settings > Reminders > SMS.
  2. Select Twilio as the provider.
  3. Enter the following credentials:
FieldDescriptionWhere to find it
Account SIDYour Twilio account identifierTwilio Console > Dashboard > Account Info
Auth TokenYour Twilio authentication secretTwilio Console > Dashboard > Account Info
From numberThe Twilio phone number to send SMS fromTwilio Console > Phone Numbers > Manage > Active Numbers
  1. Click Save.

WARNING

The Auth Token is a sensitive credential. It is stored encrypted on the server and is never exposed in the frontend or API responses. Do not share it in screenshots, logs, or support tickets.

From number format

The "From number" must be in E.164 format:

FormatExampleValid
E.164 with country code+14155551234Yes
Without plus sign14155551234No
Local format(415) 555-1234No
Short code12345Yes (if provisioned as a Twilio short code)

Twilio trial account limitations

If you are using a Twilio trial account:

  • SMS can only be sent to verified phone numbers.
  • Messages include a "Sent from your Twilio trial account" prefix.
  • You have a limited balance.

For production use, upgrade to a paid Twilio account and verify your sender number.

Setting up a generic HTTP webhook

The generic HTTP webhook allows you to route SMS delivery through any HTTP endpoint. This is useful if your organization uses a different SMS provider, an internal SMS gateway, or a service like AWS SNS, MessageBird, or Vonage.

Configuration steps

  1. Navigate to Workspace Settings > Reminders > SMS.
  2. Select Generic HTTP Webhook as the provider.
  3. Enter the webhook URL:
FieldDescription
Webhook URLThe HTTP(S) endpoint that will receive SMS delivery requests
  1. Click Save.

Webhook request format

When SetGet needs to send an SMS, it sends a POST request to your webhook URL with the following JSON body:

json
{
  "to": "+14155551234",
  "body": "SetGet: Issue ENG-142 priority changed to Urgent. View: https://app.setget.io/...",
  "workspace_id": "ws_abc123",
  "event_type": "priority_changed",
  "timestamp": "2026-03-29T14:30:00Z"
}
FieldTypeDescription
tostringRecipient phone number in E.164 format
bodystringSMS message body (plain text)
workspace_idstringWorkspace identifier for context
event_typestringThe event type that triggered this SMS
timestampstringISO 8601 timestamp of the event

Expected response

Your webhook should return:

Status codeMeaning
200 or 201SMS accepted for delivery (SetGet marks as "sent")
4xxClient error (SetGet marks as "failed" with error message)
5xxServer error (SetGet marks as "failed" and may retry)

Webhook security

To verify that requests are coming from your SetGet instance:

  • Use HTTPS for your webhook URL.
  • Optionally include a secret token in the webhook URL as a query parameter (e.g., https://your-gateway.com/sms?token=your_secret).
  • Validate the workspace_id field against your known workspace identifiers.

Testing SMS delivery

After configuring either provider, send a test message to verify the setup.

Sending a test SMS

  1. Navigate to Workspace Settings > Reminders > SMS.
  2. Click Send Test SMS.
  3. Enter a phone number (defaults to your registered number).
  4. Click Send.
  5. Verify that the test message arrives on the target phone.

The test message contains a sample alert body so you can evaluate message formatting and length.

Test message example

SetGet Alert: [Test] Work item ENG-42 "Fix login redirect"
priority changed to Urgent.
View: https://app.setget.io/engineering/issues/ENG-42

TIP

Always test SMS after initial setup and after any credential changes. A successful test confirms that the full delivery pipeline is working: SetGet backend to SMS provider to mobile carrier to handset.

SMS template body

SMS messages use a plain-text body derived from the email template. The SMS body is a condensed version of the email template that includes:

  • The event description (e.g., "State changed from In Progress to In Review")
  • The work item identifier and title
  • A direct URL to the work item in SetGet

SMS bodies are automatically truncated to fit within carrier limits:

EncodingCharacter limitNotes
GSM-7 (standard)160 characters per segmentMost Latin-alphabet messages
UCS-2 (Unicode)70 characters per segmentMessages with non-Latin characters

Long messages are automatically split into multiple segments by the carrier. Twilio handles multi-segment assembly automatically. For generic webhooks, your provider is responsible for multi-segment handling.

Phone number registration

For a user to receive SMS notifications, they must register a phone number on their profile.

  1. Go to Profile Settings.
  2. Enter your phone number in E.164 format (e.g., +14155551234).
  3. Save your profile.

Users without a registered phone number will not receive SMS notifications even if SMS is enabled in their notification preferences.

WARNING

Phone numbers are stored on the server and are not exposed in the frontend to other workspace members. Only the user and workspace administrators can see a member's registered phone number.

Troubleshooting SMS delivery

Common issues

SymptomLikely causeResolution
Test SMS not receivedIncorrect phone number formatVerify E.164 format with country code
Test SMS not receivedTwilio trial account limitationVerify the recipient number in the Twilio console
Test SMS not receivedWebhook endpoint unreachableCheck that the webhook URL is accessible from the SetGet server
"Failed" status in historyInvalid Twilio credentialsRe-enter Account SID and Auth Token
"Failed" status in historyTwilio balance exhaustedAdd funds to your Twilio account
"Failed" status in historyWebhook returning 4xx/5xxCheck your webhook endpoint logs
Messages delayedCarrier queue congestionNormal for some carriers; typically resolves within minutes
Messages truncatedLong message bodyExpected behavior for SMS; check multi-segment handling
Unicode characters garbledCarrier encoding mismatchVerify carrier supports UCS-2 encoding

Checking delivery status

  1. Navigate to Workspace Settings > Reminders > History.
  2. Filter by Channel: SMS.
  3. Review the Status column for each SMS send.
  4. Click on a failed send to see the error message.

For Twilio, you can also check the Twilio Console > Messaging > Logs for detailed carrier-level delivery information.

Security considerations

SMS delivery involves sensitive data and credentials. Follow these practices:

PracticeDetails
Credential storageTwilio Auth Token is encrypted at rest and never returned in API responses
Phone number privacyUser phone numbers are server-side only and not exposed to other members
Webhook HTTPSAlways use HTTPS for generic webhook URLs to protect message content in transit
Minimal message contentSMS bodies include a link to SetGet rather than full work item details, limiting data exposure
Access controlOnly workspace administrators can configure SMS provider settings
Audit trailAll SMS sends are logged in History with sender, recipient, and status

WARNING

Do not include sensitive project details in SMS messages. The default templates include only the work item identifier, a brief description, and a link. Full context is available in-app via the link.

Cost management

SMS incurs per-message costs depending on your provider and destination country. To manage costs:

  • Reserve SMS for truly urgent events (overdue deadlines, blocker states, critical priority changes).
  • Use notification preferences to limit which events trigger SMS.
  • Monitor SMS send volume in the History page and the stats dashboard.
  • Set up Twilio spending alerts to avoid unexpected charges.