Documentation Index
Fetch the complete documentation index at: https://docs.mailglyph.com/llms.txt
Use this file to discover all available pages before exploring further.
Use a secret key client for all email methods.
<?php
use MailGlyph\MailGlyph;
$client = new MailGlyph($_ENV['MAILGLYPH_SECRET_KEY']);
Send with basic HTML (emails->send)
<?php
$result = $client->emails->send([
'to' => 'user@example.com',
'from' => [
'name' => 'MailGlyph Demo',
'email' => 'hello@your-verified-domain.com',
],
'subject' => 'Welcome',
'body' => '<h1>Hello</h1><p>Your SDK setup is working.</p>',
]);
echo $result->timestamp . PHP_EOL;
echo $result->emails[0]['email'] . PHP_EOL;
Send to multiple recipients
to supports strings, recipient objects, or both:
<?php
$client->emails->send([
'to' => [
'one@example.com',
['name' => 'Two', 'email' => 'two@example.com'],
],
'from' => 'hello@your-verified-domain.com',
'subject' => 'Product update',
'body' => '<p>New features are live.</p>',
]);
Send with template and data
<?php
$client->emails->send([
'to' => 'user@example.com',
'from' => 'hello@your-verified-domain.com',
'template' => 'tmpl_123',
'data' => [
'firstName' => 'John',
'plan' => 'premium',
],
]);
Send with attachments
Attachment content should be Base64-encoded:
<?php
$client->emails->send([
'to' => 'user@example.com',
'from' => 'billing@your-verified-domain.com',
'subject' => 'Your invoice',
'body' => '<p>Invoice attached.</p>',
'attachments' => [
[
'filename' => 'invoice.pdf',
'content' => 'JVBERi0xLjQKJ...',
'contentType' => 'application/pdf',
],
],
]);
Send with advanced options
<?php
$client->emails->send([
'to' => ['name' => 'Jane Doe', 'email' => 'jane@example.com'],
'from' => ['name' => 'Growth Team', 'email' => 'hello@your-verified-domain.com'],
'subject' => 'Release notes',
'body' => '<p>Monthly update.</p>',
'reply' => 'support@your-verified-domain.com',
'name' => 'Monthly newsletter',
'subscribed' => true,
'headers' => [
'X-Campaign-Id' => 'monthly-2026-03',
],
]);
Verify an email address (emails->verify)
<?php
$verification = $client->emails->verify('user@gmail.com');
var_dump($verification->valid);
var_dump($verification->isRandomInput);
var_dump($verification->reasons);
Handle typo suggestions
<?php
$verification = $client->emails->verify('user@gmial.com');
if ($verification->isTypo && $verification->suggestedEmail !== null) {
echo 'Did you mean: ' . $verification->suggestedEmail . PHP_EOL;
}
See full endpoint details in the Send email API reference and Verify email API reference.