# API reference


**Site index:** [https://email.2plot.dev/llms.txt](https://email.2plot.dev/llms.txt) — every page on this site, as Markdown.  
**Network index:** [https://2plot.dev/llms.txt](https://2plot.dev/llms.txt) — The 2plot network; start here to discover sibling sites.  
**Sibling sites:** 13 more in The 2plot network — listed in the site index above.  
**Sitemap:** https://email.2plot.dev/sitemap.xml  

## dash_email

### Email

Email is the root wrapper component for email templates.
Renders as an HTML document structure suitable for email preview.

| prop | type | default | description |
|---|---|---|---|
| `id` | string |  | The ID used to identify this component in Dash callbacks. |
| `children` | node |  | The children of this component (EmailHead, EmailPreview, EmailBody, etc.) |
| `dir` | one of 'ltr', 'rtl' | 'ltr' | Text direction of the email content. |
| `lang` | string | 'en' | Language of the email content. |
| `style` | object | {} | Inline styles for the html element. |

### EmailBody

EmailBody wraps the main content of the email.

| prop | type | default | description |
|---|---|---|---|
| `id` | string |  | The ID used to identify this component in Dash callbacks. |
| `children` | node |  | The children of this component (EmailContainer, EmailSection, etc.) |
| `style` | object | {} | Inline styles for the body element. |

### EmailButton

EmailButton renders a styled link that looks like a button.

| prop | type | default | description |
|---|---|---|---|
| `id` | string |  | The ID used to identify this component in Dash callbacks. |
| `children` | node |  | The button label/content. |
| `href` * | string |  | The URL to navigate to when clicked. |
| `style` | object | {} | Inline styles for the button. |
| `target` | string | '_blank' | Where to open the link (_blank, _self, etc.) |

### EmailColumn

EmailColumn creates a column within an EmailRow.
Uses table cell for email client compatibility.

| prop | type | default | description |
|---|---|---|---|
| `id` | string |  | The ID used to identify this component in Dash callbacks. |
| `children` | node |  | The children of this component. |
| `style` | object | {} | Inline styles for the column. |

### EmailContainer

EmailContainer centers content horizontally with a max-width.

| prop | type | default | description |
|---|---|---|---|
| `id` | string |  | The ID used to identify this component in Dash callbacks. |
| `children` | node |  | The children of this component. |
| `style` | object | {} | Inline styles for the container. |

### EmailDivider

EmailDivider renders a horizontal line/divider.

| prop | type | default | description |
|---|---|---|---|
| `id` | string |  | The ID used to identify this component in Dash callbacks. |
| `style` | object | {} | Inline styles for the divider. |

### EmailFont

EmailFont loads a custom font for use in the email.
In preview mode, this adds a style tag with @font-face.

| prop | type | default | description |
|---|---|---|---|
| `id` | string |  | The ID used to identify this component in Dash callbacks. |
| `fallbackFontFamily` | string \| list of string | 'Helvetica' | Fallback font family if the web font fails to load. |
| `fontFamily` * | string |  | The font family name. |
| `fontStyle` | string | 'normal' | Font style (normal, italic). |
| `fontWeight` | number \| string | 400 | Font weight (400, 700, bold, etc.) |
| `webFont` | dict |  | Web font configuration object with url and format properties. |

### EmailHead

EmailHead contains metadata for the email such as fonts.
In preview mode, this renders as a hidden container.

| prop | type | default | description |
|---|---|---|---|
| `id` | string |  | The ID used to identify this component in Dash callbacks. |
| `children` | node |  | The children of this component (EmailFont, style elements, etc.) |

### EmailHeading

EmailHeading renders heading text (h1-h6).

| prop | type | default | description |
|---|---|---|---|
| `id` | string |  | The ID used to identify this component in Dash callbacks. |
| `as_` | one of 'h1', 'h2', 'h3', 'h4', 'h5', 'h6' | 'h1' | The heading level (h1, h2, h3, h4, h5, h6). |
| `children` | node |  | The heading text content. |
| `style` | object | {} | Inline styles for the heading. |

### EmailImage

EmailImage renders an image in the email.

| prop | type | default | description |
|---|---|---|---|
| `id` | string |  | The ID used to identify this component in Dash callbacks. |
| `alt` | string | '' | Alternative text for the image. |
| `height` | number \| string |  | The height of the image (number or string). |
| `src` * | string |  | The image source URL. Should be an absolute URL for production. |
| `style` | object | {} | Inline styles for the image. |
| `width` | number \| string |  | The width of the image (number or string like "100%"). |

### EmailLink

EmailLink renders a hyperlink in the email.

| prop | type | default | description |
|---|---|---|---|
| `id` | string |  | The ID used to identify this component in Dash callbacks. |
| `children` | node |  | The link text/content. |
| `href` * | string |  | The URL to navigate to when clicked. |
| `style` | object | {} | Inline styles for the link. |
| `target` | string | '_blank' | Where to open the link (_blank, _self, etc.) |

### EmailPreview

EmailPreview renders preview text that appears in the inbox
before the email is opened. Hidden in the actual email body.

| prop | type | default | description |
|---|---|---|---|
| `id` | string |  | The ID used to identify this component in Dash callbacks. |
| `children` | node |  | The preview text to display in email client inboxes. |

### EmailRow

EmailRow creates a horizontal row for layout purposes.
Uses table-based layout for email client compatibility.

| prop | type | default | description |
|---|---|---|---|
| `id` | string |  | The ID used to identify this component in Dash callbacks. |
| `children` | node |  | The children of this component (typically EmailColumn components). |
| `style` | object | {} | Inline styles for the row. |

### EmailSection

EmailSection groups related content together.

| prop | type | default | description |
|---|---|---|---|
| `id` | string |  | The ID used to identify this component in Dash callbacks. |
| `children` | node |  | The children of this component. |
| `style` | object | {} | Inline styles for the section. |

### EmailText

EmailText renders paragraph text with proper spacing.

| prop | type | default | description |
|---|---|---|---|
| `id` | string |  | The ID used to identify this component in Dash callbacks. |
| `children` | node |  | The text content. |
| `style` | object | {} | Inline styles for the text. |
