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
This is what I'd want to wire up: a documented REST endpoint plus an SMTP relay with ports, key types and limits spelled out, official maintained libraries for PHP among seven languages, stored templates with parameters, batch sending up to 1,000 messages, attachments, scheduled sending, idempotency and a sandbox mode. The developer docs go deep — rate limits per plan, an API playground making live calls, inbound parsing of replies, and specific error codes for domain failures. What keeps it short of the top band for me: we found no public information on a Laravel-specific driver, an OpenAPI specification, or template versioning, so I'd be integrating the PHP library myself rather than dropping in a driver. 1 4 11 12