Skip to content

Text

Available Properties

PropertyDescription
payloadText content. See Payload
colorText color. See Color
background_colorSame as color, adds a background behind the text
background_paddingPadding around the background color. See Background Padding
font_sizeNumber. Force font size in pixels (must be > 1)
font / font_weightSee Font
line_heightNumber. Force line height in percentage (must be > 1). Only applied on multiline text
skew_yNumber: -20 to 20. Slant text on the y axis
alignmentSee Alignment
stroke_width / stroke_colorSee Stroke
shadow_color / shadow_blur / shadow_offset_x / shadow_offset_ySee Shadow
auto_resizeBoolean. Automatically adjusts text size to fit its container. Requires min_font_size
min_font_sizeNumber. Minimum font size when auto_resize is true
text_transform"uppercase", "lowercase", "titlecase" (every word capitalised), or "capitalize" (first letter of the first word only)
side_border / side_border_thickness / side_border_padding / side_border_color / side_border_roundedSee Text Side Border
max_linesNumber > 0. Maximum number of lines allowed
text_harmonyBoolean. Balances line lengths with max 20% variance between lines
text_truncationBoolean. If text doesn't fit, truncates with ellipsis

Color

color: Text color. Can be:

  • Monochrome: 6–8 digit hex color (see Root)
  • Gradient: linear-gradient (see Root)
  • Cmyka: print only (see Root)
ValueResult
"color": "#1A47FF"Text color hex
"color": "linear-gradient(0% 0% 100% 0%,0% #0a68ff 1,100% #ff0000 1)"Text gradient color

Payload

payload is the text content.

Constraints:

  • Cannot be empty
  • 2048 characters maximum

Line Breaks

Line breaks are computed automatically from available space. Force a line break with \n.

ValueResult
"payload": "Lorem Ipsum\nis simply dummy text"Text payload line break

INFO

External integrations (Zapier, Integromat, Airtable) may not interpret \n — they support multi-line inputs natively.

Partial Text Decorations

Markups can be added to style specific parts of the text. They work like HTML but are not HTML.

WARNING

Text markups override global text decoration settings. Use global properties if you want to change the whole element's style.

TypeMarkupPreview
Color<c=#FF0000>colored part</c>Text color partial
Font weight<w=700>bold part</w> — values 100–900Text font weight partial
Underline<u>underlined part</u>Text underline
Underline with color<u=#FF0000>colored underline</u>Text underline colored
Strike through<s>strikethrough</s>Text strikethrough
Strike through with color<s=#FF0000>colored strike</s>Text strikethrough colored
Background color<bg=#f6aeb8>text with bg</bg>Text background color partial
Diagonal strike through<d>diagonal strike</d>Text diagonal strikethrough
Diagonal strike with color<d=#FF0000>colored diagonal strike</d>Text diagonal strikethrough colored
Font size<f=60%>smaller text</f> or <f=110>absolute px</f>Text font size partial
Superscript<sup>superscript</sup>Text superscript
Subscript<sub>subscript</sub>Text subscript
Kerning<k=-20%>Spac<k=100%>ingText kerning

{hexaColor}: 6 or 8-digit hex color starting with # (e.g. #EAEAEA or #00000080)

INFO

All markups can be combined. Pay attention to opening and closing tags.

Background Padding

background_padding: Padding of the background color around the text.

  • Two numbers separated by a space: "0 10" → 0px vertical, 10px horizontal
  • One number: uniform padding in pixels
ValueResult
"background_padding": "0 10"Background padding small
"background_padding": "5 10"Background padding big

INFO

Only applies when a background_color is defined.

Stroke

  • stroke_width: Number 0–40. Width of the stroke
  • stroke_color: 6–8 digit hex color, or cmyka for print

If the design has no stroke, both properties are required and stroke_width must be > 0.

ValueResult
stroke_width: 8, stroke_color: "#1A47FF"Text stroke

Text Alignment

alignment overrides the default text alignment.

  • One string: top, middle, bottom, left, center, right
  • Two strings (vertical + horizontal): e.g. "top left", "middle right"
ValueResult
"alignment": "center"Text align center
"alignment": "right"Text align right

Font

  • font: String. Force a font by ID. Available via GET /fonts
  • font_weight: Number. 100, 200, 300, 400, 500, 600, 700, 800, 900

WARNING

If the font doesn't contain the requested weight, the nearest weight will be used.

ValueResult
Podkova Medium (font_weight: 500)Text font Podkova
Poppins Extra Bold (font_weight: 800)Text font Poppins

Text Side Border

A border on one side of the text element.

PropertyDescription
side_border"left", "right", "top", "bottom", or "none"
side_border_thicknessNumber in px > 0
side_border_color6–8 digit hex or cmyka (print)
side_border_roundedBoolean. Rounded (true) or square (false) corners
side_border_paddingNumber in px. Distance between text and border
side_border_offsetNumber in px. Shifts the border along its perpendicular axis
side_border_spreadNumber in px. Extends border length beyond text bounding box

Text side border example

Using Variables Inside Text Content

Variables are placeholders in your design text, defined with curly braces: {title}.

Include variables in your design's text, then pass a vars object in your API call:

json
{
  "elements": {
    "vars": {
      "username": "Alice"
    }
  }
}

Original text: Welcome, {username}! → Result: Welcome, Alice!