Download the PHP package orboto/mail without Composer

On this page you can find all versions of the php package orboto/mail. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package mail

@orboto/mail - PHP SDK

Official PHP SDK for the Orboto Mail Service. Drop-in transactional-mail client with auto-quota-tracking, retry-with-backoff, quota lifecycle events, typed DTOs, and a Laravel Service-Provider out of the box. EU-hosted, GDPR-compliant.

Same API surface as the TypeScript SDK @orboto/mail - release versions stay in lockstep.

Install

Requires PHP 8.2+ and any PSR-18 HTTP client (Guzzle is auto-discovered if present; see HTTP client below if you want to plug in a different one).

Quick start

Get an API key at account.orboto.io/mail/api-keys.

Send with CC + BCC

Max 50 entries each. cc recipients show in the recipient's headers; bcc recipients receive the mail but never appear in any header (envelope-only per RFC 2822). One quota decrement per call regardless of recipient count.

Send with attachments

Up to 20 attachments per send; total decoded size capped at 30 MB. Pass an optional contentId to reference an attachment inline from your HTML (<img src="cid:logo-1">).

Send a batch

Capped at 100 messages per call. Per-item processing - the call as a whole always returns 200; inspect $batch->summary and per-item ok flags to decide whether to retry indices.

Templates

Quota lifecycle events

Each threshold event fires once per quota-reset period - a customer who lingers at 81 % doesn't get a quota-warning for every send.

Errors

Every non-2xx response surfaces as a typed exception:

Overage billing (wallet). Once the monthly included quota is used up, above-quota sends draw on the account wallet. A successful overage send returns overage = true; an empty wallet throws PaymentRequiredException (402) and a brief billing outage throws WalletUnavailableException (503, fail-closed - the send is not dispatched). Both extend OrbotoMailException. Catch the specific classes BEFORE QuotaExhaustedException / OrbotoMailException (PHP matches the first compatible catch).

HTTP status reason value Exception
400 recipient_suppressed SuppressedRecipientException
400 from_domain_not_authorized OrbotoMailException - add domain at account.orboto.io/mail/sender-domains
401 connection_revoked ConnectionRevokedException
402 payment_required PaymentRequiredException - top up at account.orboto.io/mail/billing
402 base_quota / quota_exhausted_daily / etc. QuotaExhaustedException
503 wallet_unavailable WalletUnavailableException (auto-retried first)
502 / 503 / 504 any other OrbotoMailException (auto-retried with backoff)

Configuration

Constructor options (all optional except apiKey):

Environment variables (used when the corresponding option is omitted):

Variable Default
OMS_API_KEY (required)
OMS_BASE_URL https://mail.orboto.io/api

HTTP client

The SDK uses PSR-18 + PSR-17. By default it auto-discovers an installed client via php-http/discovery. If you have Guzzle installed (composer require guzzlehttp/guzzle) it picks Guzzle. If you prefer Symfony's HTTP client or anything else PSR-18-compatible, install that package and discovery routes to it - or inject explicitly via the httpClient / requestFactory / streamFactory options.

Laravel

The SDK ships a Service-Provider + Facade + Notification Channel for Laravel 11+. Auto-discovery wires them in on composer require.

Publish the config:

Then in code:

Or as a Notification Channel:

API reference

All resources are accessible as public properties on the OrbotoMail instance:

Resource Methods
$mail->suppression check, add, remove, list
$mail->templates list, get, create, update, remove
$mail->webhooks list, get, create, update, remove, rotateSecret
$mail->sends list, get
$mail->inbound list, get
$mail->senderDomains cloudflareDetect, cloudflareAutoSetup
$mail->apiKeys list, get, create, revoke, rotate

Plus top-level send methods: send, sendBatch, sendTemplate, getQuota.

Full DTO list in src/Dto/. Every type is a readonly class with a fromArray() constructor for round-tripping over the wire.

Versioning

Releases stay in lockstep with the TypeScript SDK and the API backend - same vX.Y.Z tag bumps @orboto/mail (npm) + orboto/mail (Packagist) + the API container together. Patch releases are pure bug-fix / docs; minor releases add API surface; major releases imply a breaking change to the public method signatures (none yet).

License

MIT (see LICENSE.md). The PHP SDK is open-source; the OMS API backend it talks to is under the Sustainable Use License (see the repo root).

Support


All versions of mail with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
psr/http-client Version ^1.0
psr/http-factory Version ^1.0
psr/http-message Version ^1.1 || ^2.0
php-http/discovery Version ^1.19
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package orboto/mail contains the following files

Loading the files please wait ...