Mailgun's Official SDK for PHP

Overview

Mailgun PHP client

This is the Mailgun PHP SDK. This SDK contains methods for easily interacting with the Mailgun API. Below are examples to get you started. For additional examples, please see our official documentation at http://documentation.mailgun.com

Latest Version Code Coverage Quality Score Total Downloads Join the chat at https://gitter.im/mailgun/mailgun-php

Installation

To install the SDK, you will need to be using Composer in your project. If you aren't using Composer yet, it's really simple! Here's how to install composer:

curl -sS https://getcomposer.org/installer | php

The Mailgun API Client is not hard coupled to Guzzle, Buzz or any other library that sends HTTP messages. Instead, it uses the PSR-18 client abstraction. This will give you the flexibility to choose what PSR-7 implementation and HTTP client you want to use.

If you just want to get started quickly you should run the following command:

composer require mailgun/mailgun-php kriswallsmith/buzz nyholm/psr7

Usage

You should always use Composer autoloader in your application to automatically load your dependencies. All the examples below assume you've already included this in your file:

require 'vendor/autoload.php';
use Mailgun\Mailgun;

Here's how to send a message using the SDK:

// First, instantiate the SDK with your API credentials
$mg = Mailgun::create('key-example'); // For US servers
$mg = Mailgun::create('key-example', 'https://api.eu.mailgun.net'); // For EU servers

// Now, compose and send your message.
// $mg->messages()->send($domain, $params);
$mg->messages()->send('example.com', [
  'from'    => '[email protected]',
  'to'      => '[email protected]',
  'subject' => 'The PHP SDK is awesome!',
  'text'    => 'It is so simple to send a message.'
]);

Attention: $domain must match to the domain you have configured on app.mailgun.com.

All usage examples

You will find more detailed documentation at /doc and on https://documentation.mailgun.com.

Response

The result of an API call is, by default, a domain object. This will make it easy to understand the response without reading the documentation. One can just read the doc blocks on the response classes. This provides an excellent IDE integration.

$mg = Mailgun::create('key-example');
$dns = $mg->domains()->show('example.com')->getInboundDNSRecords();

foreach ($dns as $record) {
  echo $record->getType();
}

If you'd rather work with an array than an object you can inject the ArrayHydrator to the Mailgun class.

use Mailgun\Hydrator\ArrayHydrator;

$configurator = new HttpClientConfigurator();
$configurator->setApiKey('key-example');

$mg = new Mailgun($configurator, new ArrayHydrator());
$data = $mg->domains()->show('example.com');

foreach ($data['receiving_dns_records'] as $record) {
  echo isset($record['record_type']) ? $record['record_type'] : null;
}

You can also use the NoopHydrator to get a PSR7 Response returned from the API calls.

Warning: When using NoopHydrator there will be no exceptions on a non-200 response.

Debugging

Debugging the PHP SDK can be helpful when things aren't working quite right. To debug the SDK, here are some suggestions:

Set the endpoint to Mailgun's Postbin. A Postbin is a web service that allows you to post data, which then you can display it through a browser. Using Postbin is an easy way to quickly determine what data you're transmitting to Mailgun's API.

Step 1 - Create a new Postbin. Go to http://bin.mailgun.net. The Postbin will generate a special URL. Save that URL.

Step 2 - Instantiate the Mailgun client using Postbin.

Tip: The bin id will be the URL part after bin.mailgun.net. It will be random generated letters and numbers. For example, the bin id in this URL (http://bin.mailgun.net/aecf68de) is aecf68de.

use Mailgun\HttpClient\HttpClientConfigurator;
use Mailgun\Hydrator\NoopHydrator;

$configurator = new HttpClientConfigurator();
$configurator->setEndpoint('http://bin.mailgun.net/aecf68de');
$configurator->setApiKey('key-example');
$configurator->setDebug(true);

$mg = new Mailgun($configurator, new NoopHydrator());

# Now, compose and send your message.
$mg->messages()->send('example.com', [
  'from'    => '[email protected]',
  'to'      => '[email protected]',
  'subject' => 'The PHP SDK is awesome!',
  'text'    => 'It is so simple to send a message.'
]);

Additional Info

For usage examples on each API endpoint, head over to our official documentation pages.

This SDK includes a Message Builder, Batch Message and Opt-In Handler component.

Message Builder allows you to quickly create the array of parameters, required to send a message, by calling a methods for each parameter. Batch Message is an extension of Message Builder, and allows you to easily send a batch message job within a few seconds. The complexity of batch messaging is eliminated!

Framework integration

If you are using a framework you might consider these composer packages to make the framework integration easier.

Contribute

This SDK is an Open Source under the MIT license. It is, thus, maintained by collaborators and contributors.

Feel free to contribute in any way. As an example you may:

  • Trying out the dev-master code
  • Create issues if you find problems
  • Reply to other people's issues
  • Review PRs

Running the test code

If you want to run the tests you should run the following commands:

git clone [email protected]:mailgun/mailgun-php.git
cd mailgun-php
composer update
composer test

Support and Feedback

Be sure to visit the Mailgun official documentation website for additional information about our API.

If you find a bug, please submit the issue in Github directly. Mailgun-PHP Issues

As always, if you need additional assistance, drop us a note through your account at https://app.mailgun.com/app/support/list.

Comments
  • unable to use mailgun php 2.1.1

    unable to use mailgun php 2.1.1

    when i am trying to send a mail using the 2.1.1 version of mailgun api i get this particular error :- : No stream factories found. To use Guzzle or Diactoros factories install php-http/message and the chosen message implementation. please tell me if any one has a solution for this .

    waiting-for-feedback 
    opened by dfrozenprogrammer 36
  • Fatal error

    Fatal error

    Fatal error: Uncaught TypeError: Argument 1 passed to Mailgun\Mailgun::__construct() must be an instance of Mailgun\HttpClient\HttpClientConfigurator, string given, called in C:\xampp\htdocs\mailgun\mailgun-php\sendemail.php on line 7 and defined in C:\xampp\htdocs\mailgun\mailgun-php\src\Mailgun.php:55 Stack trace: #0 C:\xampp\htdocs\mailgun\mailgun-php\sendemail.php(7): Mailgun\Mailgun->__construct('262d28e84766e72...') #1 {main} thrown in C:\xampp\htdocs\mailgun\mailgun-php\src\Mailgun.php on line 55

    waiting-for-feedback 
    opened by sandeshpaudyal 33
  • unable to get local issuer certificate

    unable to get local issuer certificate

    I am getting below error : GuzzleHttp\Exception\RequestException cURL error 60: SSL certificate problem: unable to get local issuer certificate ↵ Caused by: GuzzleHttp\Ring\Exception\RingException

    how to fix this ? what parameters i am missing during configuration ? i set up as shown in doc but still it throws error. i am on window localhost.

    opened by mits-techreceptives 30
  • localhost development - SSL certificate problem

    localhost development - SSL certificate problem

    I'm running my dev site on PHP's built-in development server (php -S localhost:8000).

    The basic code I'm using to send e-mail is as follows:

    function email_pdf($pdf, $recipient)
    {
        $client = new \Http\Adapter\Guzzle6\Client();
        $mgClient = new Mailgun\Mailgun('my-api-key', $client);
    
        $result = $mgClient->sendMessage(
            'my-domain',
            [
                'from'    => 'e-mail server <mailgun@my-domain>',
                'to'      => $recipient,
                'subject' => 'subject',
                'html'    => 'html content'
            ],
            [
                'attachment' => [
                    // this structure is documented as "backwards compatibility" in code,
                    // even though your documentation offers no other way - WTF?
                    'filePath' => $pdf,
                    'remoteName' => 'bill.pdf',
                ]
        );
    
        return $result;
    }
    

    I've downloaded the libraries today, so the versions are mailgun/mailgun-php v2.0, php-http/guzzle6-adapter 1.1.1.

    This code throws a Http\Client\Exception\RequestException with the message cURL error 60: SSL certificate problem: unable to get local issuer certificate (see http://curl.haxx.se/libcurl/c/libcurl-errors.html).

    What can be done to make this work?

    opened by jurchiks 27
  • Remove dependency on Guzzle

    Remove dependency on Guzzle

    In order to not be dependent on any version of Guzzle I've implemented PHP-HTTP. This PR will replace #88 and #86. Please try and review carefully.

    _Don't merge this PR until ´php-http` is stable._ It is stable now (2016-02-28)

    I use Guzzle's psr7 package to properly encode the multipart.

    Ping @auro1, @RubenKruiswijk and @farmani any


    Question: What is the story behind CURLOPT_FORBID_REUSE? I can't find anything about it. Answer: it was used because we wanted to help the load balancers to distribute the load. The load balancers used today are more clever and this setting is not needed.

    opened by Nyholm 24
  • fix(#642) HttpApi: Expect client to be of type ClientInterface|PluginClient

    fix(#642) HttpApi: Expect client to be of type ClientInterface|PluginClient

    Rest of the software assumes that $httpClient could be an instance of both ClientInterface|PluginClient. The issue was raising exceptions on the latest versions as per:

    composer require mailgun/mailgun-php kriswallsmith/buzz nyholm/psr7
    

    Thrown exceptions were similar to the one you see in the bug report.

    Happens with buzz adapter, btw.

    opened by tonythomas01 23
  • Can't send binary attachments through cURL

    Can't send binary attachments through cURL

    Hello, I've been trying to send mails with PDF or JPG attachments but it fails in the cURL command formatter because escapeshellarg receives the file binary contents:

    Stacktrace:

    Symfony\Component\Debug\Exception\FatalErrorException:
    Error: escapeshellarg(): Input string contains NULL bytes
    at vendor/php-http/message/src/Formatter/CurlCommandFormatter.php:43
    

    CurlCommandFormatter:

    $body = $request->getBody();
    if ($body->getSize() > 0) {
        if (!$body->isSeekable()) {
            return 'Cant format Request as cUrl command if body stream is not seekable.';
        }
    
        $command .= sprintf(' --data %s', escapeshellarg($body->__toString()));
        
        $body->rewind();
    }
    

    This is how I initialize the attachment parameter:

    $param['attachment'] = array();
    foreach ($attachments as $attachment) {
        $filename = $attachment['fileName'];
        $fileContent = $attachment['content']; // file_get_contents of PDF file made with wkhtmltopdf
        $tmpPath = '/tmp/' .$filename;
        file_put_contents($tmpPath, $fileContent);
            
        array_push($param['attachment'], array(
            'filePath' => $tmpPath,
            'filename' => $filename,
        ));
    }
    

    When the call to escapeshellarg is removed, it works as expected and my files are attached.

    opened by michaeldk 19
  • Fatal error: Uncaught exception 'Mailgun\Connection\Exceptions\MissingEndpoint' with message 'The endpoint you've tried to access does not exist. Check your URL

    Fatal error: Uncaught exception 'Mailgun\Connection\Exceptions\MissingEndpoint' with message 'The endpoint you've tried to access does not exist. Check your URL

    I'm not using any frameworks plain PHP only, just trying to integrate the official package.

    I'm getting the following error:

    Fatal error: Uncaught exception 'Mailgun\Connection\Exceptions\MissingEndpoint' with message 'The endpoint you've tried to access does not exist. Check your URL

    I had tried:

    1. Updating the package via Composer
    2. Checked the API credentials

    But in vain.

    I'm running it in my localhost on a Windows 7 x64 machine using XAMPP

    Here is my code:

    
    require 'vendor/autoload.php';
    
    use Mailgun\Mailgun;
    
    $mg = new Mailgun("key-mykey");
    $mg->setApiVersion('v3');
    $mg->setSslEnabled(false);
    $domain = "mydomain.com";
    
    # Now, compose and send your message.
    $mg->sendMessage($domain, array('from' => '[email protected]',
        'to' => '[email protected]',
        'subject' => 'The PHP SDK is awesome!',
        'text' => 'It is so simple to send a message.'));
    
    

    Please help. Thanks in advance

    opened by mithunjj 19
  • Uncaught TypeError: Argument 1 passed to Mailgun\Api\HttpApi::__construct() must implement interface Psr\Http\Client\ClientInterface

    Uncaught TypeError: Argument 1 passed to Mailgun\Api\HttpApi::__construct() must implement interface Psr\Http\Client\ClientInterface

    Hello, just updated Mailgun API (using composer).

    then I try to send an e-mail after following documentation. Test code is:

    $mg = Mailgun::create(MAILGUN_API_KEY, "https://api.eu.mailgun.net");
    $mg->messages()->send(DOMAIN, [
    	"from" => "[email protected]",
    	"to" => "[email protected]",
    	"subject" => "TEST",
    	"text" => "Testing mailgun"
    ]);
    

    while running the code I get the following error:

    Uncaught TypeError: Argument 1 passed to Mailgun\Api\HttpApi::__construct() must implement interface Psr\Http\Client\ClientInterface, instance of Http\Client\Common\PluginClient given, called in /.../vendor/mailgun/mailgun-php/src/Mailgun.php on line 114 and defined in /.../vendor/mailgun/mailgun-php/src/Api/HttpApi.php:46
    --
      | Stack trace:
      | #0 /..../vendor/mailgun/mailgun-php/src/Mailgun.php(114): Mailgun\Api\HttpApi->__construct(Object(Http\Client\Common\PluginClient), Object(Mailgun\HttpClient\RequestBuilder), Object(Mailgun\Hydrator\ModelHydrator))
    #1 /..../testMail.php(24): Mailgun\Mailgun->messages()
    #2 {main}
      thrown in /..../vendor/mailgun/mailgun-php/src/Api/HttpApi.php on line 46
    

    Is there any update or fix or something?

    Quick update: even without setting the european server, the issue persists

    opened by ZioCain 16
  • Uncaught InvalidArgumentException: First argument to

    Uncaught InvalidArgumentException: First argument to "Http\Message\MultipartStream\MultipartStreamBuilder::createStream()" must be a string, resource or StreamInterface

    <?php
    
    declare(strict_types=1);
    
    require_once './vendor/autoload.php';
    
    use Mailgun\Mailgun;
    
    define("API_KEY", "");
    define("API_DOMAIN", "");
    define("SUBLIST", "");
    define("EMAIL", "");
    
    $mailgun = Mailgun::create(API_KEY);
    $mailgun->mailingList()->member()->create(
        SUBLIST,
        EMAIL,
        null, // name
        [],
        false,
        true
    );
    
    $parameters = [
        'name' => null, // name
        'subscribed' => 'yes',
    ];
    
    $mailgun->mailingList()->member()->update(
        SUBLIST,
        EMAIL,
        $parameters
    );
    

    Null name will cause error:

    PHP Fatal error: Uncaught InvalidArgumentException: First argument to "Http\Message\MultipartStream\MultipartStreamBuilder::createStream()" must be a string, resource or StreamInterface. in /home/zolotukhin/Projects/github/test-mailgun/vendor/php-http/multipart-stream-builder/src/MultipartStreamBuilder.php:332

    opened by indapublic 16
  • Your credentials are incorrect

    Your credentials are incorrect

    i have problem when load this code ten mb browser give me error like this "Your credentials are incorrect"

    this is my code

    
    use Mailgun\Mailgun;
    require '../vendor/autoload.php';
    
    $mg = Mailgun::create('key-xxx');
    
    $mg->messages()->send('sandboxxxx.mailgun.org', [
      'from'    => '[email protected]',
      'to'      => '[email protected]',
      'subject' => 'The PHP SDK is awesome!',
      'text'    => 'It is so simple to send a message.'
    ]);
    
    opened by billyanto 16
  • Mailgun - Mailing list sends a message to one of my routes but not delivered

    Mailgun - Mailing list sends a message to one of my routes but not delivered

    I have created a route in Mailgun (using the UI):

    match_recipient("[email protected]")
    forward("[email protected]")
    store()
    stop()
    

    And the following mailing list:

    Alias address
    [email protected]
    
    Access level
    members
    
    Reply preference
    list
    
    Recipients: 2
    [email protected]
    [email protected]
    

    Now I am trying to send an email from '[email protected]' (which is subscribed to the mailing list) to the mailing list '[email protected]'.

    When I do it, I do not receive any email in '[email protected]', to which the message is supposed to be forwarded (because of the route).

    Any ideas?

    opened by VictorioMolina 1
  • Getting this error when trying to fetch events like deliver, open, click data

    Getting this error when trying to fetch events like deliver, open, click data

    <p>Type: Mailgun\Exception\HttpServerException</p>
    <p>Message: An unexpected error occurred at Mailgun's servers. Try again later and contact support if the error still exists.</p>
    <p>Filename: /var/www/vhosts/app.neumails.com/httpdocs/vendor/mailgun/mailgun-php/src/Exception/HttpServerException.php</p>
    <p>Line Number: 23</p>
    
    opened by heysushil 5
  • Mailinglist members pagination

    Mailinglist members pagination

    The response for /lists/<address>/members/pages supports pagination, the class however did not.

    By added the use of the Pagination trait it's now possible to use pagination.

    Usage example:

    $mailgun = Mailgun::create($apiKey, $endpoint);
    $mailingListMembers = $mailgun->mailingList()->member();
    
    $response = $mailingListMembers->index($address, 1000);
    
    while ($response && count($response->getItems()) > 0) {
        $result = [...$result, ...$response->getItems()];
    
        $response = $mailingListMembers->nextPage($response);
    }
    

    Additionally the readme references composer test, composer.json however no longer contained that script. Restored it accordingly.

    opened by aisnoek 3
  • Use webhook signing key instead of API key for webhook signature verification

    Use webhook signing key instead of API key for webhook signature verification

    When instantiating a Mailgun instance you are expected to provide an API key that is used to authenticate requests to the REST API.

    // First, instantiate the SDK with your API credentials
    $mg = Mailgun::create('key-example');
    

    This API key was passed to the Api\Webhook instance that is instantiated via $mg->webhooks().

    public function webhooks(): Api\Webhook
    {
        return new Api\Webhook($this->httpClient, $this->requestBuilder, $this->hydrator, $this->apiKey);
    }
    

    https://github.com/mailgun/mailgun-php/blob/master/src/Mailgun.php#L142

    This passed API key is used in the verifyWebhookSignature function.

    This will result in improper verification results as the account webhook signing key should be used to compute the signature, not the REST API key.

    As is, you must manually instantiate an Api\Webhook instance to provide a webhook signing key and properly validate webhook signatures using this library.

    $webhook = new Webhook((new HttpClientConfigurator)->createConfiguredClient(), new RequestBuilder, new ModelHydrator,  'signing-key');
            
    $webhook->verifyWebhookSignature($timestamp, $token, $signature); // This will work
    

    This PR allows for passing a webhook signing key using the $mg->webhooks('signing-key') function.

    opened by damiantw 0
  • Bugfix: Email Validations v3 / Add Email Validations to documentation.

    Bugfix: Email Validations v3 / Add Email Validations to documentation.

    We received some tickets asking how to perform a email validation with the mailgun-php library due to lack of documentation. Added some examples to the documentation for user convenience :)

    While testing the classes out, I discovered the v3 class was broken due to an API url change. (Must include v3 in the url now for email validation v3)

    I made the correction. Thanks for reviewing! <3

    • Always open to feedback.
    opened by michaelhyattdev 4
Releases(v3.5.5)
  • v3.5.2(Jul 23, 2022)

  • v3.5.1(Aug 16, 2021)

  • 3.5.0(Mar 8, 2021)

  • 3.4.1(Feb 28, 2021)

  • 3.4.0(Feb 1, 2021)

    Added

    • Email Validation (#726 by @uavn)
      • Please note the Email Validation requires always to use the US servers. The Mailgun Team didn't enable this service on the European endpoints.
    Source code(tar.gz)
    Source code(zip)
  • 3.3.0(Jan 30, 2021)

    Added

    • Support for PHP 8 (#727 by @DavidGarciaCat)
    • Added opened, clicked, unsubscribed and stored to the TotalResponseItem (#739 by @Arkitecht)

    Removed

    • Support for PHP 7.1 and 7.2 as they both have reached their end of life (#727 by @DavidGarciaCat)
    Source code(tar.gz)
    Source code(zip)
  • 3.2.0(Nov 25, 2020)

    Introducing GitHub Actions as part of the CI process for this repository.

    This release has changed the CI process from Travis CI to GitHub Actions. The reasons for this decision are:

    • For some reason, Travis CI queues the job but takes ages before it starts running it
    • Travis CI doesn't provide (yet) the support we need to start testing for PHP 8.x

    Changelog

    Added

    • Domain tracking implementation (#711 by @uavn)
    • Mailing list validation (#712 by @uavn)
    • Suppression Whitelists (#713 by @uavn)

    Fixed

    • Added pagination to tags (#717 by @uavn)

    Changed

    • Expect Client to be of type ClientInterface or PluginClient (#660 by @tonythomas01)
    Source code(tar.gz)
    Source code(zip)
  • 3.1.0(Oct 8, 2020)

    Added

    • Suppressions allow now deleting an address passing an optional tag (#643 by @iwahara)
    • Allow both ^1.0 and ^2.0 for php-http/guzzle6-adapter (#680 by @boboldehampsink)
    • Add support for Mailing List reply_preference parameter (#684 by @twoonesixdigital)
    • Add support for Force DKIM Authority when creating a Domain (#686 by @Tiboonn)
    • Add support for PHP 7.4 (#698 by @snapshotpl)
    • Allow assigning a domain to a list of ips during creation (#703 by @josephshanak)
    • Add unmapped log-level property for Events (#704 by @uavn)

    Fixed

    • Provide the Member's name just when it's not null (#639 by @indapublic)
    • Fix typehint for Message ShowResponse::getContentIdMap() (#664 by @lvdhoorn)
    • Fix endpoint for Domain's API (#668 by @tomschlick)
    • Webhook support for array handling (#675 by @martin-sanjuan)
    • Fix parameter name when assigning an IP to the specified Domain (#702 by @josephshanak)
    • Ip::index() now returns all IPs instead of the shared IPs (#707 by @josephshanak)

    Changed

    • Updated examples for Debugging and Hydrator usage (#634 by @tonybolzan and #681 by @Jiia)
    • Updated link to the Mailgun Documentation page (#688 by @Casmo)
    • Remove deprecated Laravel package due to it is archived (#695 by @tomschlick)

    Removed

    • Remove method for non-existing Stats URL (#705 by @uavn)
    Source code(tar.gz)
    Source code(zip)
  • 3.0.0(Sep 13, 2019)

    Added

    • Support for PSR-4
    • All classes Mailgun\Model are final or abstract.

    Changed

    • Dropped PHP5 support
    • Removed deprecated code
    • Moved RequestBuilder and HttpClientConfigurator to Mailgun\HttpClient namespace
    • Updated signature of Mailgun::__construct()

    Removed

    • Dependency on php-http/message.

    [Unreleased]

    • API v4 Email Validation; please use US Servers with your public key instead (please check the Issues 617 and 619 for further details)
    Source code(tar.gz)
    Source code(zip)
  • 3.0.0-beta2(Aug 29, 2019)

  • 3.0.0-beta1(Apr 9, 2019)

  • 2.8.1(Feb 2, 2019)

  • 2.8.0(Jan 6, 2019)

  • 2.7.0(Jan 5, 2019)

  • 2.6.0(Aug 4, 2018)

  • 2.5.0(Apr 8, 2018)

  • v2.4.0(Dec 7, 2017)

  • 2.3.4(Jun 20, 2017)

  • v2.3.3(Jun 3, 2017)

  • v2.3.2(May 16, 2017)

  • v2.3.1(May 11, 2017)

  • v2.3.0(Apr 14, 2017)

  • v2.2.0(Apr 8, 2017)

  • v2.1.2(Aug 10, 2016)

  • v2.1.1(Jul 21, 2016)

  • v2.1.0(Jul 20, 2016)

    • [Security] Strict comparison of hash (#117) Thank you @gaomd
    • No dependency on Guzzle/PSR7 (#139)
    • Build URL string form an array (#138)
    • Docblock update (#134)
    • Minor fixes (#90, #121, #98)
    Source code(tar.gz)
    Source code(zip)
  • v2.0(Apr 2, 2016)

    Changes:

    • Migrated to PHP-HTTP (#94: @Nyholm)
    • Dropped support for PHP 5.4.

    Note: the way Mailgun-php is initialized has changed; please view the README.

    Source code(tar.gz)
    Source code(zip)
  • v1.8(May 9, 2015)

    Changes:

    • Updated to Guzzle5 (#79: @Nyholm)
    • Updated default API version from v2 to v3 (#75: @Ezo)
    • Show response message on 400, 401 and 404. (#72: @CupOfTea696)
    • PHP DocBlocks, Constants Changes, and Minor Refactors (#66: @cerealean)
    • Added PHP 7.0 support for Travis-CI, removed PHP 5.3 support (#79: @Nyholm)

    Thanks for the contributions, everybody!

    Source code(tar.gz)
    Source code(zip)
The official PHP SDK for Webmarketer (app.webmarketer.io)

PHP SDK for Webmarketer The official PHP SDK for Webmarketer (app.webmarketer.io). Install To add this package, your project must meet several require

Webmarketer 5 Dec 13, 2021
Official PHP SDK for interacting with the Knock API.

Knock PHP library Documentation See the documentation for PHP usage examples

Knock 4 Dec 16, 2022
AltiriaSmsPhpClient, the official PHP client of Altiria

Altiria, cliente SMS PHP Altiria SMS PHP es un cliente que simplifica al máximo la integración de nuestro API para PHP. Por el momento, esta librería

Altiria 3 Dec 22, 2022
PHP Telegram Bot based on the official Telegram Bot API with iTelegram Class.

iTelegram PHP Telegram Bot based on the official Telegram Bot API Bots: An introduction for developers Bots are special Telegram accounts designed to

iNeoTeam | آی نئو 5 Nov 9, 2022
Upload Vimeo video with CodeIgniter, Official PHP library for the Vimeo API

Upload Vimeo video with CodeIgniter, Official PHP library for the Vimeo API. Vimeo Video upload with API using Official PHP library for the Vimeo API.

WordPress theme and Plugins developers 2 Oct 10, 2021
A PHP client for the official Kizeo Forms API V3+. 📌

Kizeo Forms API V3+ - PHP This is a Swagger generated doc for Kizeo REST API 3. You can find additionnal documentation here : Online documentation. Th

siapepfrance 1 Oct 26, 2021
The official Previewify.app PHP Client

Previewify for PHP This is the official Previewify client for PHP. Support us Like our work? You can support us by purchasing one of our products. Ins

Flowframe 6 Jan 19, 2022
PHP Telegram Bot based on the official Telegram Bot API

PHP Telegram Bot based on the official Telegram Bot API

null 4 Dec 8, 2021
The Official Vultr API PHP Wrapper

WIP - This is not the final API Client. Unstable release use with caution. Vultr API PHP Client. Getting Started Must have a PSR7, PSR17, and PSR18 Co

Vultr 10 Dec 20, 2022
Official International Name days API library

Official International Name days API library Name day API library for nameday.abalin.net This library makes it easy to send requests towards nameday.a

VojtaN 5 Feb 25, 2022
It's a PHP Application to simplify working with Google Sheets SDK for php.

About GoogleSheetsPHP It's a PHP Application to simplify working with Google Sheets SDK for php. Note: i used Slim 3 to construct the application but

Sami Alateya 5 Dec 20, 2022
A Laravel package to help integrate Shopware PHP SDK much more easier

Shopware 6 Laravel SDK A Laravel package to help integrate Shopware PHP SDK much more easier Installation Install with Composer composer require sas/s

Shape & Shift 16 Nov 3, 2022
Minter Blockchain PHP SDK

About This is a pure PHP SDK for working with Minter blockchain Installation Minter Api Methods: getBalance getNonce send getAddresses getStatus getVa

Minter 24 Nov 21, 2022
A PHP SDK for the GlobalSmartOTP API.

GlobalSmartOTP PHP SDK A PHP SDK for the GlobalSmartOTP API. Requirements PHP 7.4 or higher cURL Installation $ git clone [email protected]:GlobalSmartOT

GlobalSmartOTP 4 Oct 2, 2022
Fatture in Cloud SDK (Software Development Kit) for PHP

FattureInCloud PHP SDK Request informations In every request description you will be able to find some additional informations about context, permissi

Fatture in Cloud 25 Dec 5, 2022
🤖 Telegram Bot API PHP SDK. Lets you build Telegram Bots easily! Supports Laravel out of the box.

Telegram Bot API - PHP SDK Telegram Bot PHP SDK lets you develop Telegram Bots in PHP easily! Supports Laravel out of the box. Telegram Bot API is an

Irfaq Syed 2.5k Jan 6, 2023
Explicador e2Payments PHP SDK

This package seeks to help php developers implement the e2Payments APIs without much hustle. It is based on the REST API whose documentation

Explicador 5 Oct 26, 2022
Laravel wrapper for the Facebook Graph PHP 8 SDK

Laravel Facebook Graph SDK Installation Getting started with Laravel Facebook Graph is easy - first, install the package via composer composer require

Joel Butcher 44 Dec 8, 2022
OneSignal PHP SDK

OneSignal SDK for PHP developers with fluent API and supports Laravel / Lumen out of the box.

Lawrence Onah 4 Nov 8, 2022