Download the PHP package fabiotech/laravel-elasticemail without Composer

On this page you can find all versions of the php package fabiotech/laravel-elasticemail. 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 laravel-elasticemail

Laravel Elastic Email

A Laravel Mail transport for the Elastic Email transactional HTTP API, powered by the official elasticemail/elasticemail-php SDK. It does not use SMTP.

Requirements

Installation

Laravel discovers the package automatically. Configure the mailer and API key:

No application service-provider code and no manual config/mail.php entry are required.

Usage

Use Laravel Mailables and Notifications normally:

The transport supports HTML and plain-text bodies, To/CC/BCC, multiple Reply-To addresses, envelope senders, inline and regular attachments, queued mail, and provider message identifiers. Laravel-generated Email and TemplatedEmail messages are supported; arbitrary raw MIME messages are rejected before conversion so they cannot bypass resource limits.

Production configuration

The secure defaults are:

Environment variable Default Hard ceiling Purpose
ELASTIC_EMAIL_CONNECT_TIMEOUT 5 60 TCP/TLS connection timeout in seconds
ELASTIC_EMAIL_TIMEOUT 15 600 Complete HTTP request timeout in seconds
ELASTIC_EMAIL_MAX_BODY_BYTES 2000000 20000000 Maximum bytes in each HTML or text body
ELASTIC_EMAIL_MAX_ATTACHMENTS 10 100 Maximum attachment count
ELASTIC_EMAIL_MAX_ATTACHMENT_BYTES 10000000 20000000 Maximum raw bytes in one attachment
ELASTIC_EMAIL_MAX_MESSAGE_BYTES 15000000 20000000 Maximum aggregate raw body and attachment bytes
ELASTIC_EMAIL_MAX_PAYLOAD_BYTES 20000000 20000000 Maximum encoded JSON request bytes
ELASTIC_EMAIL_MAX_RECIPIENTS 1000 10000 Maximum combined From/Reply-To/To/CC/BCC addresses
ELASTIC_EMAIL_MAX_HEADER_BYTES 16384 65536 Maximum bytes in one subject/address/filename metadata value
ELASTIC_EMAIL_MAX_METADATA_BYTES 262144 1000000 Maximum aggregate address/header/filename metadata bytes
ELASTIC_EMAIL_MAX_RESPONSE_BYTES 65536 1000000 Maximum decoded provider response bytes

Size/count limits must be plain positive decimal integers and cannot exceed the hard ceilings. Timeouts may be positive decimals within their ceilings. The payload ceiling follows Elastic Email's documented 20 MB message limit; the other ceilings keep all size arithmetic bounded. Set lower application-specific limits when users can influence outgoing content. The package limits transport-side amplification, but it cannot protect memory already consumed while an application uploads, builds, or serializes a queued message.

Publish the configuration only when you need a checked-in override:

Values in config/mail.php override package defaults. Keep the same finite limits when overriding the mailer:

Body resources must be local and seekable. Symfony's normal attachment APIs use base64 transfer encoding and are supported for in-memory, resource-backed, storage, file, and inline attachments. Custom non-base64 attachment encodings are rejected.

Security and privacy

See SECURITY.md for private vulnerability reporting and supported versions.

Failures and retries

Provider and network failures become safe Symfony TransportException instances. The exception message distinguishes HTTP, timeout, DNS, TLS, connection, provider-response, response-read, and response-limit failures without exposing provider-controlled data. Local policy failures use MessageRejectedException, a permanent transport failure that applications can catch separately.

Failure logs include failure_kind (api, connect, dns, http, provider_response, request, response_limit, response_read, timeout, or tls) and non-negative elapsed_ms fields. Connection failures, HTTP 408, 425, 429, and 5xx responses are marked retryable; a response-limit failure is not. The transport does not retry automatically: a timeout can happen after the provider accepted the email, so blind retries can create duplicate deliveries. Configure finite queue attempts, exponential backoff, and an application idempotency strategy appropriate to the message. Do not endlessly retry MessageRejectedException jobs.

Deployment checklist

  1. Use a least-privilege SendHttp key and confirm it is absent from code, logs, images, and shell history.
  2. Set application upload/content limits at or below the package limits.
  3. Cache production configuration, restart long-lived workers, and send a canary email.
  4. Configure finite queue attempts/backoff, worker memory limits, monitoring, and failed-job alerts.
  5. Run composer audit --locked, the test suite, and your application's mail tests before deployment.
  6. Monitor delivery failures by status/count, without adding recipient or provider-response data to logs.

Development

The CI matrix covers supported Laravel, PHP, and Symfony combinations, including the minimum direct production dependencies. CodeQL, dependency review, Dependabot, and exact GitHub Action commit pins protect the release workflow.

License

Laravel Elastic Email is open-source software licensed under the MIT license.


All versions of laravel-elasticemail with dependencies

PHP Build Version
Package Version
Requires ext-ctype Version *
ext-curl Version *
ext-json Version *
php Version ^8.3
elasticemail/elasticemail-php Version ^4.2
guzzlehttp/guzzle Version ^7.15.2
guzzlehttp/psr7 Version ^2.13.0
illuminate/mail Version ^12.61.1 || ^13.12.0
illuminate/support Version ^12.61.1 || ^13.12.0
psr/log Version ^1.0 || ^2.0 || ^3.0
psr/http-message Version ^1.0 || ^2.0
symfony/mailer Version ^7.4.13 || ^8.0.13
symfony/mime Version ^7.4.13 || ^8.0.13
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 fabiotech/laravel-elasticemail contains the following files

Loading the files please wait ...