summaryrefslogtreecommitdiff
path: root/Postman/Postman-Mail/mailgun/vendor/mailgun/mailgun-php/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'Postman/Postman-Mail/mailgun/vendor/mailgun/mailgun-php/README.md')
-rw-r--r--Postman/Postman-Mail/mailgun/vendor/mailgun/mailgun-php/README.md197
1 files changed, 197 insertions, 0 deletions
diff --git a/Postman/Postman-Mail/mailgun/vendor/mailgun/mailgun-php/README.md b/Postman/Postman-Mail/mailgun/vendor/mailgun/mailgun-php/README.md
new file mode 100644
index 0000000..d5bd5ed
--- /dev/null
+++ b/Postman/Postman-Mail/mailgun/vendor/mailgun/mailgun-php/README.md
@@ -0,0 +1,197 @@
+# 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](https://img.shields.io/github/release/mailgun/mailgun-php.svg?style=flat-square)](https://github.com/mailgun/mailgun-php/releases)
+[![Build Status](https://img.shields.io/travis/mailgun/mailgun-php/master.svg?style=flat-square)](https://travis-ci.org/mailgun/mailgun-php)
+[![StyleCI](https://styleci.io/repos/11654443/shield?branch=master)](https://styleci.io/repos/11654443)
+[![Code Coverage](https://img.shields.io/scrutinizer/coverage/g/mailgun/mailgun-php.svg?style=flat-square)](https://scrutinizer-ci.com/g/mailgun/mailgun-php)
+[![Quality Score](https://img.shields.io/scrutinizer/g/mailgun/mailgun-php.svg?style=flat-square)](https://scrutinizer-ci.com/g/mailgun/mailgun-php)
+[![Total Downloads](https://img.shields.io/packagist/dt/mailgun/mailgun-php.svg?style=flat-square)](https://packagist.org/packages/mailgun/mailgun-php)
+[![Join the chat at https://gitter.im/mailgun/mailgun-php](https://badges.gitter.im/mailgun/mailgun-php.svg)](https://gitter.im/mailgun/mailgun-php?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
+
+**This is the documentation for dev-master. You find documentation for the latest stable
+release [here](https://github.com/mailgun/mailgun-php/tree/v2.1.2).**
+
+## Installation
+
+To install the SDK, you will need to be using [Composer](http://getcomposer.org/)
+in your project.
+If you aren't using Composer yet, it's really simple! Here's how to install
+composer:
+
+```bash
+curl -sS https://getcomposer.org/installer | php
+```
+
+The Mailgun api client is not hard coupled to Guzzle or any other library that sends HTTP messages. It uses an abstraction
+called HTTPlug. This will give you the flexibilty to choose what PSR-7 implementation and HTTP client to use.
+
+If you just want to get started quickly you should run the following command:
+
+```bash
+php composer.phar require mailgun/mailgun-php php-http/curl-client guzzlehttp/psr7
+```
+
+### Why requiring so many packages?
+
+Mailgun has a dependency on the virtual package
+[php-http/client-implementation](https://packagist.org/providers/php-http/client-implementation) which requires to you install **an** adapter, but we do not care which one. That is an implementation detail in your application. We also need **a** PSR-7 implementation and **a** message factory.
+
+You do not have to use the `php-http/curl-client` if you do not want to. You may use the `php-http/guzzle6-adapter`. Read more about the virtual packages, why this is a good idea and about the flexibility it brings at the [HTTPlug docs](http://docs.php-http.org/en/latest/httplug/users.html).
+
+## Usage
+
+You should always use Composer's autoloader in your application to automatically load the your dependencies. All examples below assumes you've already included this in your file:
+
+```php
+require 'vendor/autoload.php';
+use Mailgun\Mailgun;
+```
+
+Here's how to send a message using the SDK:
+
+```php
+# First, instantiate the SDK with your API credentials
+$mg = Mailgun::create('key-example');
+
+# Now, compose and send your message.
+$mg->messages()->send('example.com', [
+ 'from' => 'bob@example.com',
+ 'to' => 'sally@example.com',
+ 'subject' => 'The PHP SDK is awesome!',
+ 'text' => 'It is so simple to send a message.'
+]);
+```
+
+### All usage examples
+
+You find more detailed documentation at in [/doc](doc/index.md) and on
+[https://documentation.mailgun.com](https://documentation.mailgun.com/api_reference.html).
+
+### Response
+
+The results of a 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 provide an excellent IDE integration.
+
+```php
+$mg = Mailgun::create('key-example');
+$dns = $mg->domains()->show('example.com')->getInboundDNSRecords();
+
+foreach ($dns as $record) {
+ echo $record->getType();
+}
+```
+
+If you rather be working with array then object you can inject the `ArrayHydrator`
+to the Mailgun class.
+
+```php
+use Mailgun\Hydrator\ArrayHydrator;
+
+$configurator = new HttpClientConfigurator();
+$configurator->setApiKey('key-example');
+
+$mg = Mailgun::configure($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 could 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 really 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 is then displayed through a browser. This allows you to quickly determine
+what is actually being transmitted 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".*
+
+```php
+$configurator = new HttpClientConfigurator();
+$configurator->setEndpoint('http://bin.mailgun.net/aecf68de');
+$configurator->setDebug(true);
+$mg = Mailgun::configure($configurator);
+
+# Now, compose and send your message.
+$mg->messages()->send('example.com', [
+ 'from' => 'bob@example.com',
+ 'to' => 'sally@example.com',
+ '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](src/Mailgun/Messages/README.md),
+[Batch Message](src/Mailgun/Messages/README.md) and [Opt-In Handler](src/Mailgun/Lists/README.md) 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.
+
+* [tehplague/swiftmailer-mailgun-bundle](https://github.com/tehplague/swiftmailer-mailgun-bundle) for Symfony
+* [Bogardo/Mailgun](https://github.com/Bogardo/Mailgun) for Laravel
+* [katanyoo/yii2-mailgun-mailer](https://github.com/katanyoo/yii2-mailgun-mailer) for Yii2
+
+## Contribute
+
+We are currently building a new object oriented API client. Feel free to contribute in any way. As an example you may:
+* Trying out dev-master the code
+* Create issues if you find problems
+* Reply to other people's issues
+* Review PRs
+* Write PR. You find our current milestone [here](https://github.com/mailgun/mailgun-php/milestone/1)
+
+### Running the test code
+
+If you want to run the tests you should run the following commands:
+
+```terminal
+git clone git@github.com:mailgun/mailgun-php.git
+cd mailgun-php
+composer update
+composer test
+```
+
+## Support and Feedback
+
+Be sure to visit the Mailgun official
+[documentation website](http://documentation.mailgun.com/) for additional
+information about our API.
+
+If you find a bug, please submit the issue in Github directly.
+[Mailgun-PHP Issues](https://github.com/mailgun/mailgun-php/issues)
+
+As always, if you need additional assistance, drop us a note through your Control Panel at
+[https://mailgun.com/cp/support](https://mailgun.com/cp/support).
+