Skip to main content
POST
/
custom-templates
/
email
curl --request POST \ --url https://api-{dc}.moengage.com/v1.0/custom-templates/email \ --header 'Authorization: Basic <encoded-value>' \ --header 'Content-Type: application/json' \ --data ' { "basic_details": { "subject": "Email_Subject", "email_content": "<!DOCTYPE html><html><head><title>My Short HTML</title></head><body><h1>Hello, World!</h1><p>This is a simple HTML example.</p></body></html>", "thumbnail_url": "{{template_thumbnail_thumbnail_url}}", "sender_name": "Sender_Name", "preview_text": "Preview_text", "attachments": [] }, "meta_info": { "created_by": "john.doe@example.com", "template_id": "{{template_id_1}}", "template_name": "{{template_name}}", "template_version": "{{template_version}}", "locale": "{{Locale_name}}", "variation": 1 } } '
{ "external_template_id": "d05a44f0-a7cf-471a-bcb6-63054800a367" }

Documentation Index

Fetch the complete documentation index at: https://moengage-ios-release-notes-breaking-changes-doc-1961.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Rate Limit

The rate limit is 100 RPM. You can upload a maximum of 10000 templates per channel.

Authorizations

Authorization
string
header
required

Authentication is done via Basic Auth. This requires a base64-encoded string of your credentials in the format 'username:password'.

  • Username: Use your MoEngage workspace ID (also known as the App ID). You can find it in the MoEngage dashboard at Settings > Account > APIs > Workspace ID (earlier app id).
  • Password: Use your API Key, which you can find within the Data tile.

For more information on authentication and getting your credentials, refer here.

Body

application/json
basic_details
object
required

This field contains the email content. This is where you define the email template being created.

meta_info
object
required

This field contains information about the template being created, such as the name, version, and ID of the template and the creator's details.

Response

This response is returned when the request is processed successfully.

external_template_id
string

This field contains the unique template id corresponding to a successful template creation request and needs to be stored by you. This template id would be used for searching a specific template and updating it. For a parent (default) template, the generated "external_template_id" acts as its group ID.