DigiCalls Developers / Message templates
Write once. Personalize each message.
Use DigiCalls starter texts or publish your business’s own templates. Your application supplies the values for each customer interaction.
Explore the template library
Permission: sms:templates:read. The API returns published company templates and DigiCalls starter examples; it does not expose drafts.
curl --fail-with-body \
"https://digicalls.com/api/v1/sms/templates" \
--header "Authorization: Bearer $DIGICALLS_API_KEY"Each template has id, version, name, category, language, body, variables and source. Use the returned ID and version, not the display name.
| Starter | Variables |
|---|---|
Request receivedbuiltin:request_received | business_name, reference |
Appointment confirmedbuiltin:appointment_confirmed | business_name, date, time, phone |
Appointment reminderbuiltin:appointment_reminder | business_name, date, time, phone |
Schedule changedbuiltin:schedule_changed | business_name, reference, date, time, phone |
Ready notificationbuiltin:ready_notification | business_name, reference, instructions |
Business addressbuiltin:business_address | business_name, address, link |
Business hoursbuiltin:business_hours | business_name, hours, phone |
Please contact usbuiltin:callback_request | business_name, phone, reference |
These are editable starting points for many kinds of businesses. A starter is not an approval of a messaging campaign or evidence of recipient consent.
Publish your business’s text
- In DigiCalls, open Messages → Templates.
- Create a template or start from an example. Give it a clear name and prepare the text for the language your customers need.
- Add named variables such as
{{business_name}}and{{reference}}. Preview it with realistic values. - An owner or administrator publishes the version. Your integration can then discover it through the API.
Template editing and publishing happen in the dashboard. The public API lists, previews and sends published templates; it does not create or edit them. Templates do not automatically translate your text.
Render the exact text
curl --fail-with-body --request POST \
"https://digicalls.com/api/v1/sms/templates/preview" \
--header "Authorization: Bearer $DIGICALLS_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"id": "builtin:request_received",
"version": 1,
"values": {
"business_name": "Example Business",
"reference": "REQUEST-001"
}
}'The returned data.body is the rendered message. Review encoding and segment count as well as the words. A long message or a different character set may use more segments.
| Variable type | Expected value |
|---|---|
text | A non-empty string, up to 500 characters. |
date | A real calendar date in YYYY-MM-DD format. |
time | 24-hour HH:MM format. |
url | An http or https URL without embedded credentials. |
Provide every declared variable and no unexpected variables. Variable names start with a lowercase letter, use lowercase letters/digits/underscores and are at most 40 characters. Up to 20 variables are supported. Rendered SMS text must fit the shared 1600-character limit.
Pin a published version
Send the same id and integer version you previewed. Published versions are immutable, so editing a draft does not silently change an existing integration. When you adopt a newly published version, review its variable requirements and test it again.
Archiving prevents new use. A matching retry of a previously accepted message retrieves the original reservation rather than sending it again. Scheduled work can still be blocked if its template is archived before reservation.