import { createAdminClient } from '@spree/admin-sdk'
const client = createAdminClient({
baseUrl: 'https://your-store.com',
secretKey: 'sk_xxx',
})
const preview = await client.emailTemplates.preview('spree.order_mailer.confirm_email', {
body: '<mj-section><mj-column><mj-text>Thanks, {{ order.customer_name }}!</mj-text></mj-column></mj-section>',
record_id: 'or_m3Rp9wXz',
})spree api post /email_templates/{email_template_id}/preview -d '{"body":"<mj-section><mj-column><mj-text>Thanks, {{ order.customer_name }}!</mj-text></mj-column></mj-section>","record_id":"or_m3Rp9wXz"}'{
"id": null,
"subject": "Order R123456789 confirmed",
"html": "<!doctype html><html lang=\"en\" dir=\"auto\" xmlns=\"http://www.w3.org/1999/xhtml\" xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\"><head><title>Order R123456789 confirmed</title><!--[if !mso]><!--><meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\"><!--<![endif]--><meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n<style type=\"text/css\">\n#outlook a { padding: 0; }\nbody { margin: 0; padding: 0; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }\ntable, td { border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; }\nimg { border: 0; height: auto; line-height: 100%; outline: none; text-decoration: none; -ms-interpolation-mode: bicubic; }\np { display: block; margin: 13px 0; }\n</style>\n<!--[if mso]>\n<noscript>\n<xml>\n<o:OfficeDocumentSettings>\n <o:AllowPNG/>\n <o:PixelsPerInch>96</o:PixelsPerInch>\n</o:OfficeDocumentSettings>\n</xml>\n</noscript>\n<![endif]-->\n<!--[if lte mso 11]>\n<style type=\"text/css\">\n.mj-outlook-group-fix { width:100% !important; }\n</style>\n<![endif]-->\n<style type=\"text/css\">@media only screen and (min-width:480px) { .mj-column-per-100 { width:100% !important; max-width:100%; } }</style><style media=\"screen and (min-width:480px)\">.moz-text-html .mj-column-per-100 { width:100% !important; max-width:100%; } </style><style type=\"text/css\">@font-face { font-family: \"Geist\"; font-style: normal; font-weight: 500 700; src: url(\"https://fonts.gstatic.com/s/geist/v4/gyByhwUxId8gMEwcGFU.woff2\") format(\"woff2\"); }\n @font-face { font-family: \"Inter\"; font-style: normal; font-weight: 400 450; src: url(\"https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuOKfMZg.ttf\") format(\"truetype\"); }\n @font-face { font-family: \"Inter\"; font-style: normal; font-weight: 500; src: url(\"https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuI6fMZg.ttf\") format(\"truetype\"); }\n @font-face { font-family: \"Inter\"; font-style: normal; font-weight: 600; src: url(\"https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuGKYMZg.ttf\") format(\"truetype\"); }\n \n a { color: #332C2C; }\n .hero > table { max-width: 420px; margin: 0 auto; }\n .note a { color: #726A6A; word-break: break-all; }\n .footer a { color: #726A6A; }\n .item { width: 100%; background-color: #F0F0F0; border-radius: 16px; margin: 0 0 8px; }\n .item_image { padding: 8px; width: 96px; }\n .item_thumb { display: block; width: 80px; height: auto; border-radius: 12px; }\n .item_thumb_placeholder { width: 80px; height: 80px; background-color: #E4E4E4; border-radius: 12px; }\n .item_info { padding: 8px 16px 8px 8px; }\n .item_name { font-size: 15px; line-height: 1.5; font-weight: 500; color: #332C2C; text-decoration: none; }\n .item_meta { margin: 2px 0 0; font-size: 13px; line-height: 1.5; color: #726A6A; }\n .item_amount { padding: 8px 16px 8px 8px; text-align: right; white-space: nowrap; }\n .item_qty { margin: 0; font-size: 13px; line-height: 1.5; color: #726A6A; }\n .item_price { margin: 2px 0 0; font-size: 15px; line-height: 1.5; font-weight: 500; color: #332C2C; }\n .summary td { padding: 6px 0; font-size: 14px; line-height: 1.6; color: #726A6A; }\n .summary_value { font-size: 15px; font-weight: 500; text-align: right; white-space: nowrap; color: #332C2C; }\n .summary_sub { display: block; font-size: 13px; line-height: 1.5; }\n .summary_total td { padding: 14px 0 0; border-top: 1px solid #E8E9E9; font-weight: 500; color: #332C2C; }\n .summary_total .summary_value { font-weight: 600; }\n .mailer_hero h1 { margin: 0; font-family: Geist, Inter, Helvetica, Arial, sans-serif; font-size: 40px; line-height: 1.2; letter-spacing: -0.8px; font-weight: 700; color: #332C2C; }\n .mailer_hero p { margin: 12px 0 0; }\n .mailer_hero .greeting { margin-top: 24px; font-size: 15px; font-weight: 500; color: #332C2C; }\n .mailer_hero .sub { margin-top: 24px; font-size: 13px; }\n @media only screen and (max-width: 600px) {\n .heading div { font-size: 32px !important; letter-spacing: -0.64px !important; }\n }</style></head><body style=\"word-spacing:normal;background-color:#FFFFFF;\"><div lang=\"en\" dir=\"auto\" style=\"background-color:#FFFFFF;\"><!--[if mso | IE]><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" bgcolor=\"#F6F6F6\" align=\"center\" width=\"640\" style=\"width:640px;\"><tr><td style=\"line-height:0px;font-size:0px;mso-line-height-rule:exactly;\"><![endif]--><div style=\"background:#F6F6F6;background-color:#F6F6F6;margin:0px auto;max-width:640px;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" align=\"center\" style=\"background:#F6F6F6;background-color:#F6F6F6;width:100%;\"><tbody><tr><td style=\"direction:ltr;font-size:0px;padding:56px 24px;text-align:center;\"><!--[if mso | IE]><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\"><tr><td width=\"640px\"><![endif]--><!--[if mso | IE]><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" align=\"center\" width=\"592\" style=\"width:592px;\"><tr><td style=\"line-height:0px;font-size:0px;mso-line-height-rule:exactly;\"><![endif]--><div style=\"margin:0px auto;max-width:592px;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" align=\"center\" style=\"width:100%;\"><tbody><tr><td style=\"direction:ltr;font-size:0px;padding:0 0 32px;text-align:center;\"><!--[if mso | IE]><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\"><tr><![endif]--><!--[if mso | IE]><td style=\"vertical-align:top;width:592px;\"><![endif]--><div class=\"mj-outlook-group-fix mj-column-per-100\" style=\"font-size:0px;text-align:left;direction:ltr;display:inline-block;vertical-align:top;width:100%;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\"><tbody><tr><td style=\"vertical-align:top;padding:0;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\"><tbody><tr><td align=\"center\" style=\"font-size:0px;padding:0;word-break:break-word;\"><div style=\"font-family:Inter, Helvetica, Arial, sans-serif;font-size:22px;font-weight:700;line-height:1.6;text-align:center;text-transform:uppercase;color:#332C2C;\"><a href=\"http://www.example.com:3000\" style=\"color: #332C2C; text-decoration: none;\">Spree Test Store</a></div></td></tr></tbody></table></td></tr></tbody></table></div><!--[if mso | IE]></td><![endif]--><!--[if mso | IE]></tr></table><![endif]--></td></tr></tbody></table></div><!--[if mso | IE]></td></tr></table><![endif]--><!--[if mso | IE]></td></tr><tr><td width=\"640px\"><![endif]--><!--[if mso | IE]><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" align=\"center\" width=\"592\" style=\"width:592px;\"><tr><td style=\"line-height:0px;font-size:0px;mso-line-height-rule:exactly;\"><![endif]--><div style=\"margin:0px auto;max-width:592px;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" align=\"center\" style=\"width:100%;\"><tbody><tr><td style=\"direction:ltr;font-size:0px;padding:0;text-align:center;\"><!--[if mso | IE]><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\"><tr><![endif]--><!--[if mso | IE]><td style=\"vertical-align:top;width:592px;\"><![endif]--><div class=\"mj-outlook-group-fix mj-column-per-100\" style=\"font-size:0px;text-align:left;direction:ltr;display:inline-block;vertical-align:top;width:100%;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\"><tbody><tr><td style=\"vertical-align:top;padding:0;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\"><tbody><tr><td align=\"center\" style=\"font-size:0px;padding:0;word-break:break-word;\"><div style=\"font-family:Inter, Helvetica, Arial, sans-serif;font-size:14px;line-height:1.6;text-align:center;color:#726A6A;\">Thanks, Ann Lee!</div></td></tr></tbody></table></td></tr></tbody></table></div><!--[if mso | IE]></td><![endif]--><!--[if mso | IE]></tr></table><![endif]--></td></tr></tbody></table></div><!--[if mso | IE]></td></tr></table><![endif]--><!--[if mso | IE]></td></tr></table><![endif]--></td></tr></tbody></table></div><!--[if mso | IE]></td></tr></table><![endif]--><!--[if mso | IE]><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" align=\"center\" width=\"640\" style=\"width:640px;\"><tr><td style=\"line-height:0px;font-size:0px;mso-line-height-rule:exactly;\"><![endif]--><div style=\"margin:0px auto;max-width:640px;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" align=\"center\" style=\"width:100%;\"><tbody><tr><td style=\"direction:ltr;font-size:0px;padding:64px 24px;text-align:center;\"><!--[if mso | IE]><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\"><tr><![endif]--><!--[if mso | IE]><td style=\"vertical-align:top;width:640px;\"><![endif]--><div class=\"mj-outlook-group-fix mj-column-per-100\" style=\"font-size:0px;text-align:left;direction:ltr;display:inline-block;vertical-align:top;width:100%;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\"><tbody><tr><td style=\"vertical-align:top;padding:0;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\"><tbody><tr><td align=\"center\" class=\"footer\" style=\"font-size:0px;padding:0;word-break:break-word;\"><div style=\"font-family:Inter, Helvetica, Arial, sans-serif;font-size:13px;line-height:1.5;text-align:center;color:#726A6A;\"><a href=\"http://www.example.com:3000\" style=\"font-weight: 500; text-decoration: none;\">Spree Test Store</a></div></td></tr><tr><td align=\"center\" class=\"footer\" style=\"font-size:0px;padding:12px 0 0;word-break:break-word;\"><div style=\"font-family:Inter, Helvetica, Arial, sans-serif;font-size:11px;line-height:1.5;text-align:center;color:#726A6A;\"><a href=\"mailto:support@example.com\">support@example.com</a></div></td></tr><tr><td align=\"center\" style=\"font-size:0px;padding:20px 0 0;word-break:break-word;\"><div style=\"font-family:Inter, Helvetica, Arial, sans-serif;font-size:11px;line-height:1.5;text-align:center;color:#726A6A;\">© 2026 Spree Test Store</div></td></tr></tbody></table></td></tr></tbody></table></div><!--[if mso | IE]></td><![endif]--><!--[if mso | IE]></tr></table><![endif]--></td></tr></tbody></table></div><!--[if mso | IE]></td></tr></table><![endif]--></div></body></html>",
"text": "Spree Test Store (http://www.example.com:3000)\n\nThanks, Ann Lee!\n\nSpree Test Store (http://www.example.com:3000)\n\nsupport@example.com\n\n© 2026 Spree Test Store\n",
"email_key": "spree.order_mailer.confirm_email",
"variables": {
"store": {
"id": "store_UkLWZg9DAJ",
"name": "Spree Test Store",
"address": null,
"mail_from_address": "no-reply@example.com",
"default_currency": "USD",
"default_locale": "en",
"url": "http://www.example.com:3000",
"support_email": "support@example.com",
"logo_url": null,
"logo_width": null,
"branding": {
"background_color": "#FFFFFF",
"card_color": "#F6F6F6",
"text_color": "#726A6A",
"heading_color": "#332C2C",
"accent_color": null,
"link_color": "#332C2C",
"button_color": "#FFFFFF",
"button_text_color": "#1F2222",
"button_border": "1px solid #E8E9E9",
"font": "inter",
"font_family": "Inter, Helvetica, Arial, sans-serif",
"heading_font_family": "Geist, Inter, Helvetica, Arial, sans-serif",
"font_url": null
}
},
"locale": "en",
"user": {
"first_name": "Ann",
"email": "ann@example.com"
},
"order": {
"number": "R123456789",
"customer_name": "Ann Lee"
},
"reset_url": "http://www.example.com:3000/reset-password?token=preview"
}
}Preview an email template
Renders the template with sample data built from the store’s latest
matching record, or the one record_id names, and returns the email
with the variables it was rendered with. An unsaved subject and
body take the place of the current version. The layout and partials
render inside an email, email_key or the first one. branding
previews colors and a font before they are saved to the store.
Required scope: write_email_templates (for API-key authentication).
import { createAdminClient } from '@spree/admin-sdk'
const client = createAdminClient({
baseUrl: 'https://your-store.com',
secretKey: 'sk_xxx',
})
const preview = await client.emailTemplates.preview('spree.order_mailer.confirm_email', {
body: '<mj-section><mj-column><mj-text>Thanks, {{ order.customer_name }}!</mj-text></mj-column></mj-section>',
record_id: 'or_m3Rp9wXz',
})spree api post /email_templates/{email_template_id}/preview -d '{"body":"<mj-section><mj-column><mj-text>Thanks, {{ order.customer_name }}!</mj-text></mj-column></mj-section>","record_id":"or_m3Rp9wXz"}'{
"id": null,
"subject": "Order R123456789 confirmed",
"html": "<!doctype html><html lang=\"en\" dir=\"auto\" xmlns=\"http://www.w3.org/1999/xhtml\" xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\"><head><title>Order R123456789 confirmed</title><!--[if !mso]><!--><meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\"><!--<![endif]--><meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n<style type=\"text/css\">\n#outlook a { padding: 0; }\nbody { margin: 0; padding: 0; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }\ntable, td { border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; }\nimg { border: 0; height: auto; line-height: 100%; outline: none; text-decoration: none; -ms-interpolation-mode: bicubic; }\np { display: block; margin: 13px 0; }\n</style>\n<!--[if mso]>\n<noscript>\n<xml>\n<o:OfficeDocumentSettings>\n <o:AllowPNG/>\n <o:PixelsPerInch>96</o:PixelsPerInch>\n</o:OfficeDocumentSettings>\n</xml>\n</noscript>\n<![endif]-->\n<!--[if lte mso 11]>\n<style type=\"text/css\">\n.mj-outlook-group-fix { width:100% !important; }\n</style>\n<![endif]-->\n<style type=\"text/css\">@media only screen and (min-width:480px) { .mj-column-per-100 { width:100% !important; max-width:100%; } }</style><style media=\"screen and (min-width:480px)\">.moz-text-html .mj-column-per-100 { width:100% !important; max-width:100%; } </style><style type=\"text/css\">@font-face { font-family: \"Geist\"; font-style: normal; font-weight: 500 700; src: url(\"https://fonts.gstatic.com/s/geist/v4/gyByhwUxId8gMEwcGFU.woff2\") format(\"woff2\"); }\n @font-face { font-family: \"Inter\"; font-style: normal; font-weight: 400 450; src: url(\"https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuOKfMZg.ttf\") format(\"truetype\"); }\n @font-face { font-family: \"Inter\"; font-style: normal; font-weight: 500; src: url(\"https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuI6fMZg.ttf\") format(\"truetype\"); }\n @font-face { font-family: \"Inter\"; font-style: normal; font-weight: 600; src: url(\"https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuGKYMZg.ttf\") format(\"truetype\"); }\n \n a { color: #332C2C; }\n .hero > table { max-width: 420px; margin: 0 auto; }\n .note a { color: #726A6A; word-break: break-all; }\n .footer a { color: #726A6A; }\n .item { width: 100%; background-color: #F0F0F0; border-radius: 16px; margin: 0 0 8px; }\n .item_image { padding: 8px; width: 96px; }\n .item_thumb { display: block; width: 80px; height: auto; border-radius: 12px; }\n .item_thumb_placeholder { width: 80px; height: 80px; background-color: #E4E4E4; border-radius: 12px; }\n .item_info { padding: 8px 16px 8px 8px; }\n .item_name { font-size: 15px; line-height: 1.5; font-weight: 500; color: #332C2C; text-decoration: none; }\n .item_meta { margin: 2px 0 0; font-size: 13px; line-height: 1.5; color: #726A6A; }\n .item_amount { padding: 8px 16px 8px 8px; text-align: right; white-space: nowrap; }\n .item_qty { margin: 0; font-size: 13px; line-height: 1.5; color: #726A6A; }\n .item_price { margin: 2px 0 0; font-size: 15px; line-height: 1.5; font-weight: 500; color: #332C2C; }\n .summary td { padding: 6px 0; font-size: 14px; line-height: 1.6; color: #726A6A; }\n .summary_value { font-size: 15px; font-weight: 500; text-align: right; white-space: nowrap; color: #332C2C; }\n .summary_sub { display: block; font-size: 13px; line-height: 1.5; }\n .summary_total td { padding: 14px 0 0; border-top: 1px solid #E8E9E9; font-weight: 500; color: #332C2C; }\n .summary_total .summary_value { font-weight: 600; }\n .mailer_hero h1 { margin: 0; font-family: Geist, Inter, Helvetica, Arial, sans-serif; font-size: 40px; line-height: 1.2; letter-spacing: -0.8px; font-weight: 700; color: #332C2C; }\n .mailer_hero p { margin: 12px 0 0; }\n .mailer_hero .greeting { margin-top: 24px; font-size: 15px; font-weight: 500; color: #332C2C; }\n .mailer_hero .sub { margin-top: 24px; font-size: 13px; }\n @media only screen and (max-width: 600px) {\n .heading div { font-size: 32px !important; letter-spacing: -0.64px !important; }\n }</style></head><body style=\"word-spacing:normal;background-color:#FFFFFF;\"><div lang=\"en\" dir=\"auto\" style=\"background-color:#FFFFFF;\"><!--[if mso | IE]><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" bgcolor=\"#F6F6F6\" align=\"center\" width=\"640\" style=\"width:640px;\"><tr><td style=\"line-height:0px;font-size:0px;mso-line-height-rule:exactly;\"><![endif]--><div style=\"background:#F6F6F6;background-color:#F6F6F6;margin:0px auto;max-width:640px;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" align=\"center\" style=\"background:#F6F6F6;background-color:#F6F6F6;width:100%;\"><tbody><tr><td style=\"direction:ltr;font-size:0px;padding:56px 24px;text-align:center;\"><!--[if mso | IE]><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\"><tr><td width=\"640px\"><![endif]--><!--[if mso | IE]><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" align=\"center\" width=\"592\" style=\"width:592px;\"><tr><td style=\"line-height:0px;font-size:0px;mso-line-height-rule:exactly;\"><![endif]--><div style=\"margin:0px auto;max-width:592px;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" align=\"center\" style=\"width:100%;\"><tbody><tr><td style=\"direction:ltr;font-size:0px;padding:0 0 32px;text-align:center;\"><!--[if mso | IE]><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\"><tr><![endif]--><!--[if mso | IE]><td style=\"vertical-align:top;width:592px;\"><![endif]--><div class=\"mj-outlook-group-fix mj-column-per-100\" style=\"font-size:0px;text-align:left;direction:ltr;display:inline-block;vertical-align:top;width:100%;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\"><tbody><tr><td style=\"vertical-align:top;padding:0;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\"><tbody><tr><td align=\"center\" style=\"font-size:0px;padding:0;word-break:break-word;\"><div style=\"font-family:Inter, Helvetica, Arial, sans-serif;font-size:22px;font-weight:700;line-height:1.6;text-align:center;text-transform:uppercase;color:#332C2C;\"><a href=\"http://www.example.com:3000\" style=\"color: #332C2C; text-decoration: none;\">Spree Test Store</a></div></td></tr></tbody></table></td></tr></tbody></table></div><!--[if mso | IE]></td><![endif]--><!--[if mso | IE]></tr></table><![endif]--></td></tr></tbody></table></div><!--[if mso | IE]></td></tr></table><![endif]--><!--[if mso | IE]></td></tr><tr><td width=\"640px\"><![endif]--><!--[if mso | IE]><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" align=\"center\" width=\"592\" style=\"width:592px;\"><tr><td style=\"line-height:0px;font-size:0px;mso-line-height-rule:exactly;\"><![endif]--><div style=\"margin:0px auto;max-width:592px;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" align=\"center\" style=\"width:100%;\"><tbody><tr><td style=\"direction:ltr;font-size:0px;padding:0;text-align:center;\"><!--[if mso | IE]><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\"><tr><![endif]--><!--[if mso | IE]><td style=\"vertical-align:top;width:592px;\"><![endif]--><div class=\"mj-outlook-group-fix mj-column-per-100\" style=\"font-size:0px;text-align:left;direction:ltr;display:inline-block;vertical-align:top;width:100%;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\"><tbody><tr><td style=\"vertical-align:top;padding:0;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\"><tbody><tr><td align=\"center\" style=\"font-size:0px;padding:0;word-break:break-word;\"><div style=\"font-family:Inter, Helvetica, Arial, sans-serif;font-size:14px;line-height:1.6;text-align:center;color:#726A6A;\">Thanks, Ann Lee!</div></td></tr></tbody></table></td></tr></tbody></table></div><!--[if mso | IE]></td><![endif]--><!--[if mso | IE]></tr></table><![endif]--></td></tr></tbody></table></div><!--[if mso | IE]></td></tr></table><![endif]--><!--[if mso | IE]></td></tr></table><![endif]--></td></tr></tbody></table></div><!--[if mso | IE]></td></tr></table><![endif]--><!--[if mso | IE]><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" align=\"center\" width=\"640\" style=\"width:640px;\"><tr><td style=\"line-height:0px;font-size:0px;mso-line-height-rule:exactly;\"><![endif]--><div style=\"margin:0px auto;max-width:640px;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" align=\"center\" style=\"width:100%;\"><tbody><tr><td style=\"direction:ltr;font-size:0px;padding:64px 24px;text-align:center;\"><!--[if mso | IE]><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\"><tr><![endif]--><!--[if mso | IE]><td style=\"vertical-align:top;width:640px;\"><![endif]--><div class=\"mj-outlook-group-fix mj-column-per-100\" style=\"font-size:0px;text-align:left;direction:ltr;display:inline-block;vertical-align:top;width:100%;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\"><tbody><tr><td style=\"vertical-align:top;padding:0;\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" width=\"100%\"><tbody><tr><td align=\"center\" class=\"footer\" style=\"font-size:0px;padding:0;word-break:break-word;\"><div style=\"font-family:Inter, Helvetica, Arial, sans-serif;font-size:13px;line-height:1.5;text-align:center;color:#726A6A;\"><a href=\"http://www.example.com:3000\" style=\"font-weight: 500; text-decoration: none;\">Spree Test Store</a></div></td></tr><tr><td align=\"center\" class=\"footer\" style=\"font-size:0px;padding:12px 0 0;word-break:break-word;\"><div style=\"font-family:Inter, Helvetica, Arial, sans-serif;font-size:11px;line-height:1.5;text-align:center;color:#726A6A;\"><a href=\"mailto:support@example.com\">support@example.com</a></div></td></tr><tr><td align=\"center\" style=\"font-size:0px;padding:20px 0 0;word-break:break-word;\"><div style=\"font-family:Inter, Helvetica, Arial, sans-serif;font-size:11px;line-height:1.5;text-align:center;color:#726A6A;\">© 2026 Spree Test Store</div></td></tr></tbody></table></td></tr></tbody></table></div><!--[if mso | IE]></td><![endif]--><!--[if mso | IE]></tr></table><![endif]--></td></tr></tbody></table></div><!--[if mso | IE]></td></tr></table><![endif]--></div></body></html>",
"text": "Spree Test Store (http://www.example.com:3000)\n\nThanks, Ann Lee!\n\nSpree Test Store (http://www.example.com:3000)\n\nsupport@example.com\n\n© 2026 Spree Test Store\n",
"email_key": "spree.order_mailer.confirm_email",
"variables": {
"store": {
"id": "store_UkLWZg9DAJ",
"name": "Spree Test Store",
"address": null,
"mail_from_address": "no-reply@example.com",
"default_currency": "USD",
"default_locale": "en",
"url": "http://www.example.com:3000",
"support_email": "support@example.com",
"logo_url": null,
"logo_width": null,
"branding": {
"background_color": "#FFFFFF",
"card_color": "#F6F6F6",
"text_color": "#726A6A",
"heading_color": "#332C2C",
"accent_color": null,
"link_color": "#332C2C",
"button_color": "#FFFFFF",
"button_text_color": "#1F2222",
"button_border": "1px solid #E8E9E9",
"font": "inter",
"font_family": "Inter, Helvetica, Arial, sans-serif",
"heading_font_family": "Geist, Inter, Helvetica, Arial, sans-serif",
"font_url": null
}
},
"locale": "en",
"user": {
"first_name": "Ann",
"email": "ann@example.com"
},
"order": {
"number": "R123456789",
"customer_name": "Ann Lee"
},
"reset_url": "http://www.example.com:3000/reset-password?token=preview"
}
}Authorizations
Secret API key for admin access
JWT token for admin user authentication
Headers
Bearer token for admin authentication
Path Parameters
The template key with dots
Body
A language code, or any (the default) for the version every language uses.
"any"
An unsaved subject, in place of the current one.
"Your order {{ order.number }} is confirmed"
An unsaved body, in place of the current one.
"<mj-section><mj-column><mj-text>Thanks, {{ order.customer_name }}!</mj-text></mj-column></mj-section>"
The record to build sample data from; the store's latest matching record otherwise.
"or_m3Rp9wXz"
For the layout or a partial, the email to show it in.
"spree.order_mailer.confirm_email"
Unsaved colors and font to preview, named like the store's email_* settings.
Show child attributes
Show child attributes
An unsaved email logo: the signed id of an uploaded image, or null to preview without one.
Was this page helpful?

