Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Ses Laravel Package

async-aws/ses

AsyncAws SES is a lightweight PHP client for Amazon Simple Email Service. Install via Composer and send emails or manage SES resources with a modern, typed API and async-friendly design. Full docs available at async-aws.com/clients/ses.html.

View on GitHub
Deep Wiki
Context7

SES client, part of the AWS SDK provided by AsyncAws.

Frequently asked questions about Ses
How do I install async-aws/ses in a Laravel app?
Run composer require async-aws/ses and make sure your application meets the PHP 8.2+ requirement. You can then instantiate AsyncAws\Ses\SesClient in Laravel code or queue jobs; the package is a standalone SES client, so wire it into your existing mail and queue setup.
Does async-aws/ses work with Laravel's Mail facade and queues?
Yes, it can be used in Laravel mail workflows by instantiating SesClient inside a Mailable or queued job, or by dispatching Mailables to Laravel queue workers for async processing. Because it is a standalone SES client, you connect it to your app's mail and queue configuration rather than expecting a drop-in Laravel mail transport.
What PHP and Laravel versions are supported by async-aws/ses?
async-aws/ses requires PHP 8.2 or newer, so your Laravel app must run on a compatible PHP version. Legacy Laravel apps on older PHP can either upgrade PHP or pin to an older async-aws/ses release such as 1.13.0.
How do I send an email with async-aws/ses in Laravel?
Create a SesClient, build a SendEmailRequest with FromEmailAddress, Destination, and Content fields, then call sendEmail. The typed request objects help catch missing required fields early. Ensure your AWS IAM permissions allow SES sending before testing in Laravel.
Is async-aws/ses asynchronous or synchronous?
It is built on async-aws/core, which supports non-blocking HTTP requests and is designed for async-friendly workflows. In Laravel, the usual pattern is to send through queued jobs so email delivery does not block web requests. For time-sensitive emails such as OTPs, benchmark latency or consider a synchronous path or dedicated service.
How do I handle Amazon SES sandbox limits in Laravel?
New SES accounts start in sandbox mode, which restricts recipients to verified email addresses. Production access requires AWS approval, often taking around 24 to 48 hours, so plan that delay during testing. A staging SES account helps verify Laravel mail flows before production approval.
What IAM permissions does async-aws/ses need for sending email?
Your AWS credentials generally need permissions such as ses:SendEmail and ses:SendRawEmail, depending on the SES request type. You should also configure DKIM and SPF for the sending domain. In Laravel deployments, provide these credentials through your normal environment and secrets management.
Does async-aws/ses include retry logic or Laravel Horizon monitoring?
No, async-aws/ses does not include built-in retry logic; it relies on Laravel queue retries configurable through max_attempts. Custom retry policies such as exponential backoff must be implemented manually. There is also no native Horizon or Prometheus integration, so SES metrics like bounces and delivery delays need custom logging.
How does async-aws/ses compare to the full AWS SDK for PHP?
async-aws/ses is a micro-package that pulls in only SES-specific dependencies, making it much smaller than the full AWS SDK for PHP. It also provides typed inputs and outputs with an async-friendly design. Choose the full AWS SDK if your Laravel app needs many AWS services in one dependency.
Can async-aws/ses use SESv2 features like templates and attachments?
Yes, the client covers modern SES features such as email templates, attachments, and custom headers, which can reduce preprocessing of emails in PHP. You still need to build the appropriate typed request objects and confirm the exact request shape in the async-aws SES documentation. This is useful for Laravel apps that need richer transactional email without a larger AWS SDK.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
skyraptor/chatter
edlugz/sasapay
abbasudo/artisan-route
mirvan/ippanel
ignibyte/aic-framework
glavweb/data-schema-bundle
glavweb/datagrid-bundle
tacticmedia/scim-server
uni-method/frame
neika-ai/sdk
adachsoft/php-code-style
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
adachsoft/api-version-bundle
cgv/localized-resource