resnext / solaris-api-client
PHP Client for Solaris platform
v0.1.6
2016-10-03 22:40 UTC
Requires
- php: >=5.5
- guzzlehttp/guzzle: ~6.0
- psr/log: ^1.0
Requires (Dev)
- fzaninotto/faker: ~1.4
- monolog/monolog: ^1.18
- phpunit/phpunit: ^5.1
This package is not auto-updated.
Last update: 2024-11-09 20:33:42 UTC
README
API Client for binary options platform Solaris.
Installation
Install using Composer, doubtless.
$ composer require resnext/solaris-api-client
General API Client usage.
Your can configure used HTTP client using $options param of ApiClient constructor.
Error handling
Each method of \Solaris\ApiClient can return response object (instance of \Solaris\Response) or throws two kind of exceptions.
- \Solaris\ServerException Server-side exception assigned with invalid data received of impossible operation is requested.
- \Solaris\ClientException Client-side exception means API Client cannot connect to Solaris servers or receive valid response with any reasons.
Configuration and customization
Example:
$httpClient = new GuzzleHttp\Client([ GuzzleHttp\RequestOptions::CONNECT_TIMEOUT => 2, ]); $apiClient = new \Solaris\ApiClient(<API_URL>, <API_USERNAME>, <API_PASSWORD>, [ 'httpClient' => $httpClient, ]);
Get available countries list
For customer adding you need specify countryISO 3166-1 code (ex.: en, us, gb). You can get available for registration countries list as bellow:
/** @var \Solaris\Responses\GetCountriesResponse $response */ $response = $apiClient->getCountries(); /** @var \Solaris\Entities\Country[] $countries */ $countries = $response->getCountries();
Add customer
Customer's adding is main method of any trade platform...
$request = new \Solaris\Requests\AddCustomerRequest([ 'firstName' => 'John', 'lastName' => 'Smith', 'email' => 'john.smith@domain.com', 'phone' => '123456789', 'country' => 'cz', 'currency' => 'USD', 'password' => 'qwerty', ]); /** @var \Solaris\Responses\AddCustomerResponse $response */ $response = $apiClient->addCustomer($request);
Get customer auto-login URL and auth key.
It is really easy:
$request = new \Solaris\Requests\GetCustomerAuthKeyRequest(['email' => 'john.smith@domain.com']); /** * @var \Solaris\Responses\GetCustomerAuthKeyResponse $response */ $response = $apiClient->getCustomerAuthKey($request); echo $response->getAuthUrl();
Deposits retrieving
/** @var \Solaris\Responses\GetDepositsResponse $response */ $response = $apiClient->getDeposits(); /** @var \Solaris\Entities\Deposit[] $deposits */ $deposits = $response->getDeposits();