Sending API, SMTP & developer experience
How this is scored
How an application sends mail: a REST API and an SMTP relay with their limits stated, official SDKs and drivers for named languages and frameworks (PHP and Laravel, Node, Python, Ruby and Rails, Java, Go, .NET), stored templates with variables and versions, batch sending, attachments, idempotency keys, scheduled sending, a test or sandbox mode that does not deliver, inbound email parsed into a webhook, and the quality of the API reference and guides.
0 — Not a sending service; an application cannot send email through it by API or SMTP.
3 — An API or SMTP credentials to send a message; SDKs, templates, limits and a test mode are basic or not described.
5 — A documented REST API and SMTP relay, official SDKs for several named languages, stored templates with variables, attachments and batch sending, rate limits stated, a sandbox or test mode, and quick-start guides for named frameworks.
8 — An API reference with every endpoint and error code, idempotency keys, scheduled sending, template versions and a template language documented, inbound email parsed to a webhook, an OpenAPI specification or official CLI, framework drivers maintained by the vendor, and a migration guide from named competitors.
10 — An API a team builds its product on: versioning and deprecation policy published, backward compatibility stated, full parity between API and SMTP features, local or staging test tooling that mirrors production, and every limit, timeout and retry behaviour documented.
The SaaS Developer
A REST endpoint and an SMTP relay with the host, port and credentials documented, official libraries for PHP, Node, Python, Ruby,.NET and Java maintained by Postmark's own developers, quick-starts for Laravel, Rails, Express and Django, stored templates with a templates API, attachments, batch sending up to 500 messages and 50 MB, a sandbox test token, inbound mail parsed into JSON and posted to a webhook, an official CLI, and migration guides from SendGrid, Mailgun, SES, SparkPost and others — that covers almost everything my application needs. We found no public information on idempotency keys or scheduled sending, which keeps it below the top level. 1 3 6 13 14 22