Sign inGet Started

Get an SMS template version

GET
/v1/sms/templates/{template_ref}/versions/{version_id}
const version = await bird.smsTemplates.versions.get(
  "bird_otp_verification",
  "smv_01ky4x8e4genzb7way45txfkm1",
);
console.log(version.id, Object.keys(version.languages));
Response200
{
  "id": "smv_01krdgeqcxet5s7t44vh8rt9mg",
  "template_id": "smt_01krdgeqcxet5s7t44vh8rt9mg",
  "version_number": 1,
  "status": "published",
  "revision": 1,
  "variables": [
    {
      "key": "order_number",
      "type": "text",
      "required": true,
      "constraint": "A string, number, or boolean."
    }
  ],
  "languages": {
    "en": {
      "text": "Your order {{ order_number }} is on its way.",
      "revision": 1,
      "content_hash": "sha256:3d948846f5f773fb7bed8ab81b57f3d0ff2cbff24cb549718f4d389f1ab0300a",
      "updated_at": "2026-09-10T09:00:00Z"
    }
  },
  "default_language": "en",
  "created_at": "2026-09-10T09:00:00Z",
  "published_at": "2026-09-10T09:00:00Z"
}

Returns one version with its variables and text in every language. A workspace draft is editable, while published workspace versions are immutable. A built-in template exposes its current catalogue content through a synthetic published version.

Parameters

template_refstring

The template's ID (smt_…) or slug.

version_idstring

The version to read or reset.

Response Payload

id
string
required

Template version ID.

template_id
string
required

The template this version belongs to.

version_number
nullable integer
required

Sequential publication number. Null for the draft; a built-in template reports 1.

status
string
required

Whether the version is the editable draft or published. Published workspace versions are immutable and remain published after a later version goes live. A built-in template's synthetic published version projects the current catalogue entry.

Possible values: draft, published

revision
integer
required

The version revision. A draft revision advances with each metadata or content change. Published workspace versions are frozen; a built-in template's synthetic version reports 0.

variables
array of object
required

Variables inferred from the version's text. Every language in a publishable SMS version uses the same set. Built-in templates may apply additional typed constraints described by each variable.

Show child attributes
languages
object
required

Full content for each language, keyed by canonical BCP-47 tag.

default_language
string
required

The language this version treats as its default.

created_at
nullable string
required

When the version was created. Null for a built-in template's synthetic version.

published_at
nullable string
required

When the version was published. Null for the draft and for a built-in template's synthetic version.

Continue with the documentation, guides and examples for this topic.