PHP email API
Send email from PHP in one HTTP call.
No SDK to install and no mail server to run. Aslio is a plain REST endpoint, so cURL, which every PHP install already has, is all you need — no Composer package required. You pay ₹0.02 a message — about $0.21 per 1,000 emails, with no monthly platform fee, no per-seat charge and no minimum commitment.
In short
To send transactional email from PHP, POST to `https://aslio.asli.one/v1/email/send` with an Authorization: Bearer API key and a JSON body containing from, to, subject and html. Aslio charges ₹0.02 a message — about $0.21 per 1,000 — with no monthly fee. Add an Idempotency-Key header and the request is safe to retry.
- $0.21
- per 1,000 emails
- ₹0
- monthly platform fee
- 0
- seats to buy
- EU
- app hosted in Frankfurt
Code
Sending one email from PHP
This uses plain cURL so it drops into any PHP application, including legacy ones with no Composer autoloader. The from address must be on a domain you have verified, so the message is signed with your own DKIM rather than a shared pool.
<?php
$ch = curl_init('https://aslio.asli.one/v1/email/send');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . getenv('ASLIO_API_KEY'),
'Content-Type: application/json',
// Retrying with the same key replays the original response.
'Idempotency-Key: invoice-' . $invoiceId,
],
CURLOPT_POSTFIELDS => json_encode([
'from' => 'Acme <billing@acme.com>',
'to' => ['customer@example.com'],
'subject' => 'Your invoice is ready',
'html' => '<p>Hello — your invoice is attached.</p>',
'statusCallbackUrl' => 'https://acme.com/hooks/aslio',
]),
]);
$body = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($status >= 300) {
throw new RuntimeException("Aslio {$status}: {$body}");
}
$message = json_decode($body, true);Code
Sending to a list
The same key and the same wallet. Merge variables are per recipient.
POST /v1/email/send-batch
{
"from": "Acme <news@acme.com>",
"subject": "Hi {{firstName}}, your invoice is due",
"html": "<p>Hi {{firstName}} — {{plan}}</p>",
"recipients": [
{ "email": "priya@example.com",
"variables": { "firstName": "Priya", "plan": "Pro" } }
]
}
// Up to 1,000 recipients per call. Each gets its own message
// row, its own charge and its own unsubscribe link. Suppressed
// addresses are skipped and reported, never silently dropped.What you get
What the API does for you
The parts you would otherwise build yourself, and then maintain.
Idempotency that holds
Send with an Idempotency-Key and retry as often as you like. A duplicate replays the original response instead of sending twice — enforced by a unique index, not a check-then-write race.
Refunded when we fail
If a message is charged and then permanently fails, the wallet is credited back automatically and the key is released so your retry can succeed.
Suppression before billing
Hard bounces and complaints go on your do-not-mail list. Later sends to that address are rejected before you are charged, which protects your sender reputation and ours.
One-click unsubscribe
Marketing sends carry RFC 8058 headers, so Gmail and Yahoo show a native Unsubscribe button — required for bulk senders since 2024.
Delivery pushed to you
Sent, delivered, bounced and complained events arrive on your statusCallbackUrl webhook, on every account from the first message.
Your own sending domain
You verify your domain and sign with your own DKIM, so your reputation stays yours instead of being pooled with every other sender on a shared IP.
Honestly
Before you pick this
- We hold no SOC 2 report and no ISO 27001 certification. If your procurement requires one, we will not pass it today and would rather say so now.
- SMS and WhatsApp are still in build. Email is the channel that ships today. Do not pick Aslio this week for a multi-channel launch next week.
- Support runs 09:30–18:30 IST (UTC+5:30). That overlaps European and Gulf afternoons and the edges of the North American day. There is no 24/7 desk.
- We are a young, small company — Asli One Global was incorporated in February 2026. That is a legitimate thing to weigh for a critical dependency.
FAQ
Frequently asked questions
How do I send an email from PHP?
POST to https://aslio.asli.one/v1/email/send with an Authorization: Bearer header carrying your API key, and a JSON body of from, to, subject and html. This uses plain cURL so it drops into any PHP application, including legacy ones with no Composer autoloader. The full example is above.
Do I need to install a package?
No. Aslio is a plain REST API, so cURL, which every PHP install already has, is all you need — no Composer package required. There is no SDK to keep up to date and no dependency to audit.
Can I use SMTP instead?
Yes. Point your application at aslio.asli.one on port 587 with STARTTLS, using any username and your API key as the password. It is the same pipeline as the REST API — the same per-message price, sender verification, suppression list, delivery events and logs — so switching is a credential change rather than a code change.
How much does it cost?
₹0.02 per email, which is roughly $0.21 per 1,000 messages, with no monthly platform fee, no per-seat charge and no minimum commitment. You top up a prepaid wallet and spend it down. An optional Pro plan at ₹999 a month raises the API rate limit to 100 requests a second and adds priority support.
Is it safe to retry a failed request?
Yes, if you send an Idempotency-Key. A duplicate replays the original response instead of sending a second copy, and it is enforced by a unique index rather than a check-then-write race. If a charged message later fails permanently, the wallet is credited back automatically.
How do I know whether the email arrived?
Set statusCallbackUrl on the send and Aslio posts sent, delivered, bounced and complained events to it. Delivery data is on every account from the first message, not gated behind a higher plan.
Send your first PHP email in ten minutes.
Top up a wallet and send. No monthly platform fee, no seat charge, no minimum commitment — a hundred test emails costs about one rupee.
Asli One Global Private Limited · CIN U62011TN2026PTC190105