bfgasparin/independent-reserve

PHP Client for Independent Reserve API

dev-master 2023-10-18 13:01 UTC

This package is auto-updated.

Last update: 2024-05-30 00:59:50 UTC


README

THIS LIBRARY IS IN BETA RELEASE, SOME API ENDPOINTS ARE NOT SUPPORTED YET.

This library requires a minimum PHP version of 7.2

This is a PHP client library to interact with Independent Reserve's API. To use this, you'll need an Independent Reserve account and an API Key. Create an account and generate an API Key in the Settings menu. This is currently a beta release.

Installation

To install the PHP client library to your project, I recommend using Composer.

composer require bfgasparin/independent-reserve

You don't need to clone this repository to use this library in your own projects. Use Composer to install it from Packagist.

If you're new to Composer, here are some resources that you may find useful:

TO use the private methods of Independent Reserve API, you'll need to have created an Independent Reserve account.

Usage

If you're using Composer, make sure the autoloader is included in your project's bootstrap file:

require_once "vendor/autoload.php";

To interact with only public methods, you do need any API KEY, so you just need to create a client:

$client = IndependentReserve\IndependentReserve::instance();

If you need to interact with private methods, you must create the client with the API KEY and API SECRET:

Create a client with your API key and secret:

$client = IndependentReserve\IndependentReserve::instance(API_KEY, API_SECRET);

For testing purposes you may want to change the URL that nexmo-php makes requests to from api.independentreserve.com to something else. You can do this by providing a base uri as the third parameter when creating a IndependentReserve\IndependentReserve instance.

$client = IndependentReserve\IndependentReserve::instance(API_KEY, API_KEY, 'https://example.com');

Examples

To call the API methods, you usually just need to call the method as in documentation. If the method requires parameters, you must pass the parameter in the same order of the documentation.

If the API response is an object in the documentation, the response will be a \StdClass instance, otherwise, the response will be a primitive type response.

See the available public and private functions in the docs

Some Public Methods Examples

$codes = $client->getValidPrimaryCurrencyCodes();
$codes = $client->getValidSecondaryCurrencyCodes();
$codes = $client->getValidSecondaryCurrencyCodes();
$summary = $client->getMarketSummary(
    'Xbt' // primary currency code
    'Usd' // secondary currency code
);

Some Private Methods Examples

$fees = $client->getBrokerageFees();
$order = $client->PlaceMarketOrder(
    'Xbt' // primary currency code
    'Usd' // secondary currency code
    'MarketBid' // order type,
    '0.012' // volume
)

Contributing

To contribute to the library or docs, create an issue or a pull request.

License

This library is released under the MIT License