Weave Code
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
Managesend Php

Managesend Php Laravel Package

dreamcampaigns/managesend-php

PHP client library for the DreamCampaigns (Managesend) API. Authenticate with API key/secret and send transactional “Smart” emails via the REST client. Install with Composer or manually with the included autoloader. Supports PHP 5.3–7.4.

View on GitHub
Deep Wiki
Context7

A php library which implements the complete functionality of the DreamCampaigns API.

Frequently asked questions about Managesend Php
How do I install the `dreamcampaigns/managesend-php` package in a Laravel project?
Use Composer to install the package by running `composer require dreamcampaigns/managesend-php` in your Laravel project directory. The package supports PHP 5.3–7.4, but ensure your Laravel environment meets these requirements. After installation, include the autoloader if not using Composer’s autoloading.
Does this package support Laravel’s service container for dependency injection?
Yes, you can manually register the `RestClient` as a singleton or context-bound service in Laravel’s `AppServiceProvider`. This allows you to leverage Laravel’s dependency injection system for cleaner and more maintainable code. Example: Bind the client in the `register` method of your service provider.
Can I use Laravel’s HTTP client instead of the package’s `RestClient`?
Absolutely. Laravel’s `Http` facade provides more flexibility, including middleware, retries, and caching. You can replace the package’s `RestClient` with `Http::withBasicAuth()` or a custom service that wraps the API calls, making it easier to integrate with Laravel’s ecosystem.
How do I authenticate with the DreamCampaigns API in Laravel?
The package uses Basic authentication with an API key and secret. Store these credentials in your `.env` file (e.g., `MANAGESEND_API_KEY`, `MANAGESEND_API_SECRET`) and retrieve them in Laravel’s config. Pass these values to the `RestClient` constructor or use Laravel’s `Http` facade with `withBasicAuth()` for a more Laravel-native approach.
Is there built-in support for Laravel Queues to send emails asynchronously?
No, the package does not natively support Laravel Queues. However, you can wrap the package’s methods in a Laravel Job class (e.g., `SendSmartEmailJob`) and dispatch it to a queue. This allows you to send emails asynchronously without blocking HTTP requests.
What Laravel versions are compatible with this package?
The package supports PHP 5.3–7.4, but Laravel requires PHP 8.0+. You may need to use polyfills or adjust your Laravel configuration to ensure compatibility. Test thoroughly, as some modern Laravel features (e.g., type hints) may not work seamlessly with older PHP versions.
How do I handle errors or failed API requests in Laravel?
The package returns a `Result` object for responses, but you should layer Laravel’s exception handling (e.g., `throw_if`) or use try-catch blocks to manage errors. Log errors using Laravel’s `Log` facade or integrate with monitoring tools like Sentry for observability.
Are there any alternatives to this package for Laravel?
Yes, you can use Laravel’s built-in `Http` client to interact directly with the DreamCampaigns API, bypassing this package entirely. Alternatively, consider Guzzle HTTP client, which offers more customization and is widely used in Laravel projects for API integrations.
How frequently is the package updated to match DreamCampaigns API changes?
The package lacks a visible changelog or versioning system, so updates may not reflect API changes promptly. Monitor the [GitHub repository](https://github.com/dreamcampaigns/managesend-php) for updates or consider forking the package to maintain compatibility with DreamCampaigns’ API evolution.
Can I cache API responses in Laravel to improve performance?
Yes, you can cache API responses using Laravel’s `Cache::remember` or `Cache::forever` methods. Wrap the package’s API calls in a cached closure to reduce redundant requests, especially for read-heavy operations like fetching subscriber lists or campaign analytics.
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.
babenkoivan/elastic-client
innmind/static-analysis
innmind/coding-standard
datacore/hub-sdk
alengo/sulu-http-cache-bundle
develia/commons
cuci/prototurk-sdk
cuci/prototurk-sdk-symfony
develia/geo-bundle
dreamzy/livewire-charts
touchestate-sdk/php-sdk
22h/doctrine-garbage-collection-bundle
agtp/agtp-php
agtp/mod-php
splash/sonata-admin
splash/metadata
splash/openapi
splash/scopes
splash/toolkit
testo/output-teamcity