Get the best-in-industry API solutions for your transactional and marketing Emails. Gain full control over the entire Email delivery process, allowing you to optimize and customize your Email sending for maximum impact. Say goodbye to spam folders and hello to higher engagement rates as you harness the power of our advanced Email infrastructure.
World-class Email API & SMTP
Transactional Emails
actually reaching the inbox
Battle-tested by over 63k demanding brands:
Stay connected with your clients
MessageFlow delivers password resets, shipping updates, and any other essential Emails to your customers precisely when they need them without any delay.
- Brand Indicators for Message Identification (BIMI) protect your brand against spoofing and phishing
- Dedicated IP addresses authenticate your Emails with SPF, DKIM, and DMARC
- Strategic partnerships with global and local mailbox providers ensure maximum deliverability rates
Lightning-fast integration with API & SMTP
Integrate and deliver seamlessly within minutes using our RESTful APIs and SMTP, supported by libraries tailored to your programming language and interactive documentation.
var client = new RestClient("https://api.messageflow.com/v2.1/email");
var request = new RestRequest(Method.POST);
request.AddHeader("content-type", "application/json");
request.AddHeader("authorization", "REPLACE_KEY_VALUE");
request.AddParameter("application/json", "{\"subject\":\"Test email subject\",\"smtpAccount\":\"1.test.smtp\",\"tags\":[\"test-tag\"],\"content\":{\"html\":\"<h1>Hello world</h1>\",\"text\":\"Hello world\",\"templateId\":\"as2sCwq\"},\"bcc\":[{\"email\":\"string\",\"name\":\"string\"}],\"cc\":[{\"email\":\"string\",\"name\":\"string\"}],\"from\":{\"email\":\"string\",\"name\":\"string\"},\"replyTo\":{\"email\":\"string\",\"name\":\"string\"},\"headers\":{\"X-TEST-HEADER\":\"val\"},\"to\":[{\"email\":\"\",\"name\":\"Test sender\",\"messageId\":\"\",\"vars\":{\"test-var\":\"var-value\"}}],\"attachments\":[{\"fileName\":\"report.txt\",\"fileMime\":\"text/plain\",\"fileContent\":\"c29tZSBmaWxlIGNvbnRlbnQ=\"}]}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.messageflow.com/v2.1/email"
payload := strings.NewReader("{\"subject\":\"Test email subject\",\"smtpAccount\":\"1.test.smtp\",\"tags\":[\"test-tag\"],\"content\":{\"html\":\"<h1>Hello world</h1>\",\"text\":\"Hello world\",\"templateId\":\"as2sCwq\"},\"bcc\":[{\"email\":\"string\",\"name\":\"string\"}],\"cc\":[{\"email\":\"string\",\"name\":\"string\"}],\"from\":{\"email\":\"string\",\"name\":\"string\"},\"replyTo\":{\"email\":\"string\",\"name\":\"string\"},\"headers\":{\"X-TEST-HEADER\":\"val\"},\"to\":[{\"email\":\"\",\"name\":\"Test sender\",\"messageId\":\"\",\"vars\":{\"test-var\":\"var-value\"}}],\"attachments\":[{\"fileName\":\"report.txt\",\"fileMime\":\"text/plain\",\"fileContent\":\"c29tZSBmaWxlIGNvbnRlbnQ=\"}]}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("content-type", "application/json")
req.Header.Add("authorization", "REPLACE_KEY_VALUE")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
HttpResponse<String> response = Unirest.post("https://api.messageflow.com/v2.1/email")
.header("content-type", "application/json")
.header("authorization", "REPLACE_KEY_VALUE")
.header("application-key", "REPLACE_KEY_VALUE")
.body("{\"subject\":\"Test email subject\",\"smtpAccount\":\"1.test.smtp\",\"tags\":[\"test-
tag\"],\"content\":{\"html\":\"<h1>Hello world</h1>\",\"text\":\"Hello
world\",\"templateId\":\"as2sCwq\"},\"bcc\":[{\"email\":\"string\",\"name\":\"string\"}],\"c
c\":[{\"email\":\"string\",\"name\":\"string\"}],\"from\":{\"email\":\"string\",\"name\":\"stri
ng\"},\"replyTo\":{\"email\":\"string\",\"name\":\"string\"},\"headers\":{\"X-TEST-
HEADER\":\"val\"},\"to\":[{\"email\":\"\",\"name\":\"Test
sender\",\"messageId\":\"\",\"vars\":{\"test-var\":\"var-
value\"}}],\"attachments\":[{\"fileName\":\"report.txt\",\"fileMime\":\"text/plain\",\"fileCon
tent\":\"c29tZSBmaWxlIGNvbnRlbnQ=\"}]}")
.asString();
var request = require("request");
var options = {
method: 'POST',
url: 'https://api.messageflow.com/v2.1/email',
headers: {'content-type': 'application/json', authorization: 'REPLACE_KEY_VALUE'},
body: {
subject: 'Test email subject',
smtpAccount: '1.test.smtp',
tags: ['test-tag'],
content: {html: '<h1>Hello world</h1>', text: 'Hello world', templateId: 'as2sCwq'},
bcc: [{email: 'string', name: 'string'}],
cc: [{email: 'string', name: 'string'}],
from: {email: 'string', name: 'string'},
replyTo: {email: 'string', name: 'string'},
headers: {'X-TEST-HEADER': 'val'},
to: [
{
email: '',
name: 'Test sender',
messageId: '',
vars: {'test-var': 'var-value'}
}
],
attachments: [
{
fileName: 'report.txt',
fileMime: 'text/plain',
fileContent: 'c29tZSBmaWxlIGNvbnRlbnQ='
}
]
},
json: true
};
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.messageflow.com/v2.1/email",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\"subject\":\"Test email subject\",\"smtpAccount\":\"1.test.smtp\",\"tags\":[\"test-tag\"],\"content\":{\"html\":\"<h1>Hello world</h1>\",\"text\":\"Hello world\",\"templateId\":\"as2sCwq\"},\"bcc\":[{\"email\":\"string\",\"name\":\"string\"}],\"cc\":[{\"email\":\"string\",\"name\":\"string\"}],\"from\":{\"email\":\"string\",\"name\":\"string\"},\"replyTo\":{\"email\":\"string\",\"name\":\"string\"},\"headers\":{\"X-TEST-HEADER\":\"val\"},\"to\":[{\"email\":\"\",\"name\":\"Test sender\",\"messageId\":\"\",\"vars\":{\"test-var\":\"var-value\"}}],\"attachments\":[{\"fileName\":\"report.txt\",\"fileMime\":\"text/plain\",\"fileContent\":\"c29tZSBmaWxlIGNvbnRlbnQ=\"}]}",
CURLOPT_HTTPHEADER => array(
"authorization: REPLACE_KEY_VALUE",
"content-type: application/json"
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
import requests
url = "https://api.messageflow.com/v2.1/email"
payload = "{\"subject\":\"Test email subject\",\"smtpAccount\":\"1.test.smtp\",\"tags\":[\"test-tag\"],\"content\":{\"html\":\"<h1>Hello world</h1>\",\"text\":\"Hello world\",\"templateId\":\"as2sCwq\"},\"bcc\":[{\"email\":\"string\",\"name\":\"string\"}],\"cc\":[{\"email\":\"string\",\"name\":\"string\"}],\"from\":{\"email\":\"string\",\"name\":\"string\"},\"replyTo\":{\"email\":\"string\",\"name\":\"string\"},\"headers\":{\"X-TEST-HEADER\":\"val\"},\"to\":[{\"email\":\"\",\"name\":\"Test sender\",\"messageId\":\"\",\"vars\":{\"test-var\":\"var-value\"}}],\"attachments\":[{\"fileName\":\"report.txt\",\"fileMime\":\"text/plain\",\"fileContent\":\"c29tZSBmaWxlIGNvbnRlbnQ=\"}]}"
headers = {
'content-type': "application/json",
'authorization': "REPLACE_KEY_VALUE"
}
response = requests.request("POST", url, data=payload, headers=headers)
print(response.text)
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://api.messageflow.com/v2.1/email")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/json'
request["authorization"] = 'REPLACE_KEY_VALUE'
request.body = "{\"subject\":\"Test email subject\",\"smtpAccount\":\"1.test.smtp\",\"tags\":[\"test-tag\"],\"content\":{\"html\":\"<h1>Hello world</h1>\",\"text\":\"Hello world\",\"templateId\":\"as2sCwq\"},\"bcc\":[{\"email\":\"string\",\"name\":\"string\"}],\"cc\":[{\"email\":\"string\",\"name\":\"string\"}],\"from\":{\"email\":\"string\",\"name\":\"string\"},\"replyTo\":{\"email\":\"string\",\"name\":\"string\"},\"headers\":{\"X-TEST-HEADER\":\"val\"},\"to\":[{\"email\":\"\",\"name\":\"Test sender\",\"messageId\":\"\",\"vars\":{\"test-var\":\"var-value\"}}],\"attachments\":[{\"fileName\":\"report.txt\",\"fileMime\":\"text/plain\",\"fileContent\":\"c29tZSBmaWxlIGNvbnRlbnQ=\"}]}"
response = http.request(request)
puts response.read_body
echo '{"subject":"Test email subject","smtpAccount":"1.test.smtp","tags":["test-tag"],"content":{"html":"<h1>Hello world</h1>","text":"Hello world","templateId":"as2sCwq"},"bcc":[{"email":"string","name":"string"}],"cc":[{"email":"string","name":"string"}],"from":{"email":"string","name":"string"},"replyTo":{"email":"string","name":"string"},"headers":{"X-TEST-HEADER":"val"},"to":[{"email":"","name":"Test sender","messageId":"","vars":{"test-var":"var-value"}}],"attachments":[{"fileName":"report.txt","fileMime":"text/plain","fileContent":"c29tZSBmaWxlIGNvbnRlbnQ="}]}' | \
http POST https://api.messageflow.com/v2.1/email \
authorization:REPLACE_KEY_VALUE \
content-type:application/jsonfileContent":"c29tZSBmaWxlIGNvbnRlbnQ="}]}'
Unlock the power of real-time analytics
Our comprehensive Email analytics platform offers a range of features designed to give you a deep understanding of your Email deliverability performance. From open rates and click-through rates to bounce rates and detailed Email logs, we offer a detailed breakdown of how your Emails are performing across various metrics.
Efficiency in theory and
practice
Throughput that makes a difference.
Your clients are only 0.16 s away from their messages.
Choose a solution that is unparalleled in quality.
Taking care of your business at every step
Global experience
Local knowledge
Glocal approach
Experience the seamless integration capabilities of MessageFlow as you explore our expertly-crafted API documentation. Our libraries are thoughtfully designed to support various programming languages, ensuring a perfect fit for your needs. With our comprehensive API documentation, setting up and initiating Email campaigns becomes a remarkably effortless and time-efficient process. Start your journey with MessageFlow by delving into our API docs and discover the full potential of our platform.
var client = new RestClient("https://api.messageflow.com/v2.1/contact");
var request = new RestRequest(Method.POST);
request.AddHeader("content-type", "application/json");
request.AddHeader("authorization", "REPLACE_KEY_VALUE");
request.AddHeader("application-key", "REPLACE_KEY_VALUE");
request.AddParameter("application/json", "[{\"companyName\":\"Example company\",\"createdAt\":\"2019-02-01 20:12:12\",\"email\":\"\",\"externalId\":\"XXX-XXX-XXX\",\"firstName\":\"First name\",\"lastName\":\"Last name\",\"phoneNumber\":\"123123123\",\"externalData\":{\"test\":\"test\",\"createdAt\":\"1989-09-28\",\"isClient\":false},\"addToGroup\":[0]}]", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.messageflow.com/v2.1/contact"
payload := strings.NewReader("[{\"companyName\":\"Example company\",\"createdAt\":\"2019-02-01 20:12:12\",\"email\":\"\",\"externalId\":\"XXX-XXX-XXX\",\"firstName\":\"First name\",\"lastName\":\"Last name\",\"phoneNumber\":\"123123123\",\"externalData\":{\"test\":\"test\",\"createdAt\":\"1989-09-28\",\"isClient\":false},\"addToGroup\":[0]}]")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("content-type", "application/json")
req.Header.Add("authorization", "REPLACE_KEY_VALUE")
req.Header.Add("application-key", "REPLACE_KEY_VALUE")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
Lightning-fast
integration
Get up and running in minutes with our lightning-fast solution. Our RESTful APIs and SMTP seamlessly integrate with your app, while our programming language libraries and interactive documentation make integration a breeze. With our transactional and marketing Emails solution, you’ll be delivering emails with speed and ease.
Powerful cloud-based SMTP server
MessageFlow offers robust services based on the widely supported SMTP protocol, seamlessly integrating with various applications and systems that your company relies on, including ecommerce platforms, CRMs, marketing automation platforms and CMSs.
Simply update the SMTP credentials/parameters in your application, and you’re all set to start sending.
We make security our top priority
At MessageFlow, we understand the paramount importance of safeguarding your data. That’s why we prioritize security as our topmost concern. With enterprise-grade security and compliance measures recognized globally, we ensure the highest level of protection.
Sending millions of Emails monthly requires exceptional diligence for optimal deliverability and performance. Rest assured that your data is in safe hands. Properly implemented protocols and our proactive monitoring systems ensure that your information remains protected at all times.
We adhere to the highest industry standards, providing you with peace of mind and enabling you to focus on what matters most – growing your business.
Beyond Email communication
Harness the power of MessageFlow and unlock the full potential of cross-channel communication to enhance the effectiveness of your messaging and achieve your sales goals.
Leverage our cross-channel API to effortlessly manage all your communication needs, including triggered marketing Emails, email marketing campaigns, push notifications, and SMS, all from a single, unified platform.
Don’t just take our words
If you really want to know why you should choose MessageFlow, don’t take it from us – hear straight from our customers.