Lists the organization's email templates, most recently updated first, paginated by cursor: name, subject, description, preview text, editor (legacy rich text or builder), format (always: html with the brand layout, or text for a personal-style email), category and labels. Filter by label_id (the page is completed up to limit). The content and design are not included: use email_marketing.templates.get. Requires view access to Email Marketing.
Escopo
email_marketing:read
Permissão
Ver o módulo
Tool do MCP
email_marketing_templates_listNa superfície completa; na compacta, mb_execute_operation com id: "email_marketing.templates.list".
Custo declarado: até 601 leituras e 0 escritas por chamada (contam na cota diária).
Parâmetros
limitintegerqueryopcional
How many items this page brings at most (see the maximum and the default in the schema).
Padrão: 50
cursorstringqueryopcional
The next_cursor of the previous page, exactly as it came (only for the same list and filters); without it, the first page.
Returns a template with its content: content (the rich-text HTML of the legacy editor) and html_content (the complete email HTML, present for builder templates). design (the builder document, keys kept as the builder writes them; it repeats the HTML inside its blocks) comes only with include_design: true. Use html_content (or content) as a campaign's html_content. Not found (email_template_not_found) if it is not a template of this organization. Requires view access to Email Marketing.
Escopo
email_marketing:read
Permissão
Ver o módulo
Tool do MCP
email_marketing_templates_getNa superfície completa; na compacta, mb_execute_operation com id: "email_marketing.templates.get".
Custo declarado: até 1 leituras e 0 escritas por chamada (contam na cota diária).
Parâmetros
template_idstringrotaobrigatório
The template's id (from email_marketing.templates.list).
include_designbooleanqueryopcional
Also return the visual editor's document (design). Default false through the API: html_content already has the email.
Creates a template with a name, subject and content: HTML in content (and optionally a complete email in html_content), or a builder document in design (its HTML is generated on the server when html_content is not sent). format text sends it as a personal-style email without the brand layout. Variables available when sending: {{nombre}}, {{email}}, {{unsubscribe_url}}, {{unsubscribe_text}}, {{company_name}}, {{email_footer_address}}. Returns template_id. Error: design_invalid. Requires full access to Email Marketing.
Escopo
email_marketing:write
Permissão
Editar no módulo
Tool do MCP
email_marketing_templates_createNa superfície completa; na compacta, mb_execute_operation com id: "email_marketing.templates.create".
Custo declarado: até 0 leituras e 1 escritas por chamada (contam na cota diária).
Parâmetros
namestringcorpoobrigatório
The template's name.
subjectstringcorpoobrigatório
The default subject of the emails that use it.
contentstringcorpoopcional
The HTML (legacy editor).
Padrão: ""
descriptionstringcorpoopcional
Internal description.
preview_textstringcorpoopcional
The preview line after the subject.
variablesarray<string>corpoopcional
The merge variables it uses, e.g. first_name.
designobjectcorpoopcional
The visual editor's document (settings and sections of blocks): the server renders the HTML from it and the template becomes a builder one.
html_contentstringcorpoopcional
The rendered HTML (with design, the server renders it).
editor_versionenumcorpoopcional
legacy (HTML editor) or builder (visual editor).
Valores: legacy, builder
content_categoryenumcorpoopcional
marketing (default; with unsubscribe link) or transactional.
Valores: marketing, transactional
formatenumcorpoopcional
html (default; the brand layout) or text (a personal-style email).
Updates one or more fields of a template: name, description, subject, preview text, content, html_content, format, category or labels. Sending design (the builder document) saves it, regenerates html_content on the server and marks the template as a builder template. Campaigns already created keep their own copy of the HTML; flow steps use the template as it is when each email is sent. Returns the updated template. Error: design_invalid. Requires full access to Email Marketing.
Escopo
email_marketing:write
Permissão
Editar no módulo
Tool do MCP
email_marketing_templates_updateNa superfície completa; na compacta, mb_execute_operation com id: "email_marketing.templates.update".
Custo declarado: até 1 leituras e 1 escritas por chamada (contam na cota diária).
Parâmetros
template_idstringrotaobrigatório
The template's id (from email_marketing.templates.list).
Copies a template (content, design, format and labels) into a new one named '<name> (copia)'. Returns the new template_id. Requires full access to Email Marketing.
Escopo
email_marketing:write
Permissão
Editar no módulo
Tool do MCP
email_marketing_templates_duplicateNa superfície completa; na compacta, mb_execute_operation com id: "email_marketing.templates.duplicate".
Custo declarado: até 1 leituras e 1 escritas por chamada (contam na cota diária).
Parâmetros
template_idstringrotaobrigatório
The template's id (from email_marketing.templates.list).
curl-X POST "https://api.mb-suite.com/v1/email-marketing/templates/{template_id}/duplicate" \
-H"Authorization: Bearer $MB_API_KEY"
Testar com a sua API key de teste
Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.
curl-X POST "https://api.mb-suite.com/v1/email-marketing/templates/{template_id}/duplicate" \
-H"Authorization: Bearer $MB_TEST_KEY"
DELETE/v1/email-marketing/templates/{template_id}
Delete an email template
email_marketing.templates.delete
IrreversívelDesde 2026-11-01
Deletes a template unless a step of an active, draft or paused flow uses it (email_template_in_use, with the flow name: change that step first). Campaigns keep their own copy of the HTML. It goes to the 30-day trash. Outside the screen it requires a dry run and a confirm_token, or a REST DELETE. Requires full access to Email Marketing.
Com uma API key, este DELETE roda direto: o registro fica 30 dias na lixeira e a resposta traz o seu trash_item_id. Com um token OAuth, e pelo MCP, pede dry_run → confirm_token.
Escopo
email_marketing:writee «Permitir exclusões» (email_marketing:delete no OAuth)
Permissão
Editar no módulo
Tool do MCP
email_marketing_templates_deleteNa superfície completa; na compacta, mb_execute_operation com id: "email_marketing.templates.delete".
Custo declarado: até 502 leituras e 2 escritas por chamada (contam na cota diária).
Parâmetros
template_idstringrotaobrigatório
The template's id (from email_marketing.templates.list).
Resposta
oktrue
trash_item_idstring
The trash item this deletion left: the item_id of platform.trash.restore (POST /trash/{item_id}/restore). Missing if nothing went to the trash.
trash_item_idsarray<string>
Only when the deletion left more than one copy: all of them, the first being trash_item_id.
trash_expires_atnumber
When the copy leaves the trash for good (epoch ms): 30 days after the deletion.
Send a test of an email template (a real email through Amazon SES)
email_marketing.templates.send_test
EscritaDesde 2026-11-01
Sends ONE real test email of a template to one address (subject prefixed with [TEST], test values for {{nombre}} and the other variables, an unsubscribe link that does nothing) through Amazon SES. With an API key or an app it needs the account's verified sending domain and a sender on it (email_domain_not_verified, email_sender_missing). Outside the app it always runs in two steps: dry_run=true runs the same checks and says to whom, from which sender and with which subject it would go, with a confirm_token (10 minutes); then call it again with the confirm_token. Not idempotent: every call sends another email. Returns sent and to. Errors: email_invalid, email_template_empty, email_sending_paused (MB Suite paused the account's email sending: not even a test goes out until it is resumed). Requires full access to Email Marketing.
Pede confirmação: primeiro dry_run: true (prévia e confirm_token, válido por 10 minutos e por uma única execução), depois o mesmo corpo com confirm_token. Em algumas poucas, só com certos dados: a descrição diz quando. Por que e como: Prévia e confirmação.
Escopo
email_marketing:write
Permissão
Editar no módulo
Tool do MCP
email_marketing_templates_send_testNa superfície completa; na compacta, mb_execute_operation com id: "email_marketing.templates.send_test".
Custo declarado: até 2 leituras e 0 escritas por chamada (contam na cota diária). Usa uma plataforma externa (ses): conta na cota de operações externas.
Parâmetros
template_idstringrotaobrigatório
The template's id (from email_marketing.templates.list).
Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.Na prática esta operação não é simulada (usa outra plataforma): responde 409 sandbox_external_unavailable.