- Can I use sendinblue/api-bundle in a Laravel application?
- Technically it can be installed, but it adds no runtime value. The package is a Symfony bundle whose only job is registering sendinblue/api-v3-sdk services in a Symfony dependency injection container, and Laravel has no bundle registration mechanism, so its extension and services configuration would never execute. In a Laravel app it becomes dead weight plus a transitive dependency, so depend on the SDK directly instead.
- How do I install sendinblue/api-bundle with Composer?
- The package is installed with composer require sendinblue/api-bundle and was intended for Symfony projects that auto-register bundles in AppKernel or bundles.php. On a modern Laravel or Symfony 5+ project the install typically fails on symfony/* and php version constraints because the last release was September 2017. Needing --ignore-platform-reqs to get it in is the signal to stop and use a maintained client.
- Does sendinblue/api-bundle support Laravel 10, 11, or 12?
- No. The bundle was last released in September 2017 and targets Symfony 2.x/3.x and PHP 5.6/7.x, which predates Laravel 8 through 12 and PHP 8+. The repository was also archived by the vendor. There is no supported combination of this bundle with a current Laravel version.
- What is the maintained alternative to sendinblue/api-bundle for Laravel?
- Use getbrevo/brevo-php, the official successor SDK from Brevo (formerly Sendinblue), wrapped in a small Laravel service provider. Bind the API client as a singleton, expose BREVO_API_KEY through config/services.php and .env, and inject it where needed. That gives you the same capability with current API coverage and active maintenance.
- How do I send transactional email, SMS, or manage contacts with Brevo in Laravel?
- For plain transactional email, Brevo's SMTP relay configured in Laravel's mail settings is usually enough: host smtp-relay.brevo.com with your Brevo SMTP credentials. If you need templates, tags, scheduled sends, SMS, or contact list management, use the getbrevo/brevo-php SDK behind a thin internal wrapper interface. None of those use cases require this Symfony bundle.
- Why does composer require sendinblue/api-bundle fail with dependency conflicts?
- The bundle pins Symfony framework components to 2.x/3.x lines and PHP to pre-8.0, so Composer cannot resolve it alongside a modern Laravel install and its symfony/* dependencies. Inspect the package composer.json before evaluating further, because the constraint graph is where the real decision is made. If the only path forward is --ignore-platform-reqs, pivot to the maintained SDK.
- Is sendinblue/api-bundle safe to use in production?
- No. The repository is archived, the last release was 2017, and no security or bug patches are coming, although the MIT license itself is clean. The larger risk is API drift: Sendinblue rebranded to Brevo and the v3 request schemas, contact models, and auth conventions have changed since the SDK was frozen. Silent mis-serialization of a request against the live API is exactly the failure that lands on your on-call rotation.
- How do I migrate from sendinblue/api-bundle to a supported Brevo client?
- Do it in two steps. First freeze and audit current usage by enumerating every call site of the bundle-injected SDK and every config key it consumes. Then replace the bundle with getbrevo/brevo-php plus a small internal wrapper interface that preserves existing call signatures so consumers do not change, which also gives you a seam to swap SDK versions or drop to raw HTTP later.
- What configuration does sendinblue/api-bundle need compared to native Laravel config?
- The bundle exposes a small config surface, primarily the Sendinblue API key, loaded through Symfony's extension and services YAML/XML. Laravel has no equivalent bundle config loader, so you would recreate the same thing with config/services.php and a BREVO_API_KEY environment variable in a few dozen lines. That is essentially the bundle's entire contribution, which is why reimplementing it idiomatically beats inheriting an unmaintained artifact.
- How do I test a Brevo API integration in Laravel?
- Keep the SDK behind your own interface and bind a fake implementation in the test container so unit tests never hit the network. For contract tests, use Laravel's Http::fake or a dedicated Brevo sandbox with a separate API key. Never point the test suite at live transactional sending, and assert on the request payload shape you produce so API drift is caught early.