pitchero / reseller-club
A PHP SDK for the ResellerClub API.
Installs: 14 312
Dependents: 1
Suggesters: 0
Security: 0
Stars: 13
Watchers: 8
Forks: 5
Open Issues: 6
Requires
- php: >=7.0.0
- guzzlehttp/guzzle: ~6.0
- moneyphp/money: ~3.0
- nesbot/carbon: ~1.20 || ~2.0
Requires (Dev)
- phpunit/phpunit: ^6.4 || ^8.0
- symfony/var-dumper: ^3.3
README
A PHP SDK for ResellerClub’s API.
Requirements
- PHP >= 7.0
Installation
This package is available through Packagist. To install in your project via Composer:
$ composer require pitchero/reseller-club
Example Usages
Business Emails
Creating a order
try { $api = new ResellerClub\Api( new ResellerClub\Config(123, 'api_key', true), new GuzzleHttp\Client() ) $request = new ResellerClub\Orders\BusinessEmails\Requests\BusinessEmailOrderRequest( $customerId = 123, $domain = 'some-domain.co.uk', $numberOfAccount = 5, $forNumberOfMonths = 1, ResellerClub\Orders\InvoiceOption::noInvoice() ); $response = $api->businessEmailOrder()->create($request); // @todo - Handle a successful response within your codebase. } catch(ResellerClub\Exceptions\ApiException $e) { // @todo - Handle the exception within your codebase. }
Deleting an order
try { $api = new ResellerClub\Api( new ResellerClub\Config(123, 'api_key', true), new GuzzleHttp\Client() ); $request = new ResellerClub\Orders\Order( $orderId = 123 ); $response = $api->businessEmailOrder()->delete($request); // @todo - Handle the successful response within your codebase. } catch(ResellerClub\Exceptions\ApiException $e) { // @todo - Handle the exception within your codebase. }
Getting an order
try { $api = new ResellerClub\Api( new ResellerClub\Config(123, 'api_key', true), new GuzzleHttp\Client() ); $request = new ResellerClub\Orders\Order( $orderId = 123 ); $response = $api->businessEmailOrder()->get($request); // @todo - Handle the successful response within your codebase. } catch(ResellerClub\Exceptions\ApiException $e) { // @todo - Handle the exception within your codebase. }
Renewing an order
try { $api = new ResellerClub\Api( new ResellerClub\Config(123, 'api_key', true), new GuzzleHttp\Client() ); $request = new ResellerClub\Orders\BusinessEmails\Requests\RenewRequest( new ResellerClub\Orders\Order( $orderId = 123 ), $months = 1, $numberOfAccounts = 1, ResellerClub\Orders\InvoiceOption::noInvoice() ); $response = $api->businessEmailOrder()->renew($request); // @todo - Handle the successful response within your codebase. } catch(ResellerClub\Exceptions\ApiException $e) { // @todo - Handle the exception within your codebase. }
Add email account to a business email order
try { $api = new ResellerClub\Api( new ResellerClub\Config(123, 'api_key', true), new GuzzleHttp\Client() ); $request = new ResellerClub\Orders\BusinessEmails\Requests\AddEmailAccountRequest( new ResellerClub\Orders\Order( $orderId = 123 ), $numberOfAccounts = 1, ResellerClub\Orders\InvoiceOption::noInvoice() ); $response = $api->businessEmailOrder()->addEmailAccounts($request); // @todo - Handle the successful response within your codebase. } catch(ResellerClub\Exceptions\ApiException $e) { // @todo - Handle the exception within your codebase. }
Delete email account from an existing business email order
try { $api = new ResellerClub\Api( new ResellerClub\Config(123, 'api_key', true), new GuzzleHttp\Client() ); $request = new ResellerClub\Orders\BusinessEmails\Requests\DeleteEmailAccountRequest( new ResellerClub\Orders\Order( $orderId = 123 ), $numberOfAccounts = 1 ); $response = $api->businessEmailOrder()->deleteEmailAccounts($request); // @todo - Handle the successful response within your codebase. } catch(ResellerClub\Exceptions\ApiException $e) { // @todo - Handle the exception within your codebase. }
Email Accounts
Creating an email account
try { $api = new ResellerClub\Api( new ResellerClub\Config(123, 'api_key', true), new GuzzleHttp\Client() ); $request = ResellerClub\Orders\EmailAccounts\Requests\CreateRequest( ResellerClub\Orders\Order( $orderId = 123 ), ResellerClub\EmailAddress( $email = 'john.doe@some-domain.co.uk' ), string $password, ResellerClub\EmailAddress( $notificationsEmail = 'john.doe@backup-email.co.uk' ), $firstName = 'John', $lastName = 'Doe', $countryCode = 'UK', $languageCode = 'en' ); $response = $api->emailAccount()->create($request); // @todo - Handle the successful response within your codebase. } catch(ResellerClub\Exceptions\ApiException $e) { // @todo - Handle the exception within your codebase. }
Deleting an email account
try { $api = new ResellerClub\Api( new ResellerClub\Config(123, 'api_key', true), new GuzzleHttp\Client() ); $request = ResellerClub\Orders\EmailAccounts\Requests\DeleteRequest( ResellerClub\Orders\Order( $orderId = 123 ), ResellerClub\EmailAddress( $email = 'john.doe@some-domain.co.uk' ) ); $response = $api->emailAccount()->delete($request); // @todo - Handle the successful response within your codebase. } catch(ResellerClub\Exceptions\ApiException $e) { // @todo - Handle the exception within your codebase. }
Email forwarders
Create an email forwarder
try { $api = new ResellerClub\Api( new ResellerClub\Config(123, 'api_key', true), new GuzzleHttp\Client() ); $request = ResellerClub\Orders\EmailForwarders\Requests\CreateRequest( ResellerClub\Orders\Order( $orderId = 123 ), ResellerClub\EmailAddress( $email = 'john.doe@some-domain.co.uk' ) ); $response = $api->emailForwarder()->create($request); // @todo - Handle the successful response within your codebase. } catch(ResellerClub\Exceptions\ApiException $e) { // @todo - Handle the exception within your codebase. }
Deleting an email forwarder
try { $api = new ResellerClub\Api( new ResellerClub\Config(123, 'api_key', true), new GuzzleHttp\Client() ); $request = ResellerClub\Orders\EmailAccounts\Requests\DeleteRequest( ResellerClub\Orders\Order( $orderId = 123 ), ResellerClub\EmailAddress( $email = 'john.doe@some-domain.co.uk' ) ); $response = $api->emailForwarder()->delete($request); // @todo - Handle the successful response within your codebase. } catch(ResellerClub\Exceptions\ApiException $e) { // @todo - Handle the exception within your codebase. }
Helpful articles from the ResellerClub knowledge base
Add an A record
try { $ttl = new ResellerClub\TimeToLive(86400); $request = new ResellerClub\Dns\A\Requests\AddRequest( $domain = 'another-testing-domain.com', $record = 'test', new ResellerClub\IPv4Address('127.0.0.1'), $ttl ); $response = $api->aRecord()->add($request); // @todo - Handle the successful response within your codebase. } catch(ResellerClub\Exceptions\ApiException $e) { // @todo - Handle the exception within your codebase. }
Update a CNAME record
try { $ttl = new ResellerClub\TimeToLive(86400); $request = new ResellerClub\Dns\Cname\Requests\UpdateRequest( $domain = 'your.com', $record = 'www', $currentValue = 'cname.oldservice.com', $newValue = 'cname.newservice.com', $ttl ); $response = $api->cnameRecord()->update($request); // @todo - Handle the successful response within your codebase. } catch(ResellerClub\Exceptions\ApiException $e) { // @todo - Handle the exception within your codebase. }
License
Licensed under the MIT License.
Issues
If you find an issue with this package, please open a GitHub Issue.