SpotOption API Client.
API Client for binary options platform SpotOption., (*1)
Installation
Install using Composer, doubtless., (*2)
$ composer require resnext/spotoption-api-client
General API Client usage.
$apiClient = new SpotOption\ApiClient(<URL>, <USERNAME>, <PASSWORD>);
Error handling
Each method of \SpotOption\ApiClient can return response object (instance of \SpotOption\Response) or
throws two kind of exceptions., (*3)
- \SpotOption\ServerException Server-side exception assigned with invalid data received of impossible operation is requested.
- \SpotOption\ClientException Client-side exception means API Client cannot connect to SpotOption servers or receive invalid
response with any reasons.
Configuration and customization
Your can configure used HTTP client using $options param of ApiClient constructor., (*4)
Example:, (*5)
$httpClient = new GuzzleHttp\Client([
GuzzleHttp\RequestOptions::CONNECT_TIMEOUT => 2,
]);
$apiClient = new \SpotOption\ApiClient(<API_URL>, <API_USERNAME>, <API_PASSWORD>, [
'httpClient' => $httpClient,
]);
Countries retrieving
/** @var \SpotOption\Responses\GetCountriesResponse $response */
$response = $this->apiClient->getCountries();
/** @var \SpotOption\Entities\Country[] $countries */
$countries = $response->getData();
Campaigns retrieving
This example retrieves all campaign with type CPA., (*6)
/** @var \SpotOption\Responses\GetCampaigns $response */
$response = $this->apiClient->getCampaigns(\SpotOption\Entities\Campaign::TYPE_CPA);
/** @var \SpotOption\Entities\Campaign[] $countries */
$countries = $response->getData();
Customer validation
/** @var \SpotOption\Responses\ValidateCustomerResponse
$response = $apiClient->validateCustomer('email@domain.com', 'password');