ibf/mt4-manager-api

dev-main 2024-03-31 18:35 UTC

This package is auto-updated.

Last update: 2024-05-01 00:17:40 UTC


README

MetaTrader microservice. Call /init/ to get token, which is required in other methods.

This PHP package is automatically generated by the Swagger Codegen project:

  • API version: 1.0.0
  • Build package: io.swagger.codegen.languages.PhpClientCodegen

Requirements

PHP 5.5 and later

Installation & Usage

Composer

To install the bindings via Composer, add the following to composer.json:

{
  "repositories": [
    {
      "type": "git",
      "url": "https://github.com/dev4traders/mt4-manager-api.git"
    }
  ],
  "require": {
    "dev4traders/mt4-manager-api": "*@dev"
  }
}

Then run composer install

Manual Installation

Download the files and include autoload.php:

    require_once('/path/to/mt4-manager-api/vendor/autoload.php');

Tests

To run the unit tests:

composer install
./vendor/bin/phpunit

Getting Started

Please follow the installation procedure and then run the following:

<?php
require_once(__DIR__ . '/vendor/autoload.php');

$apiInstance = new D4T\MT4Sdk\Api\DefaultApi(
    // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
    // This is optional, `GuzzleHttp\Client` will be used as default.
    new GuzzleHttp\Client()
);
$server = "server_example"; // string | MetaTrader server IP with port. Example: 127.0.0.1:443
$login = "login_example"; // string | MetaTrader manager login
$password = "password_example"; // string | MetaTrader manager password
$ping_seconds = 8.14; // float | Ping every. Default is 30 seconds

try {
    $result = $apiInstance->initGet($server, $login, $password, $ping_seconds);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling DefaultApi->initGet: ', $e->getMessage(), PHP_EOL;
}

?>

Documentation for API Endpoints

All URIs are relative to http://localhost:6542/v1

Class Method HTTP request Description
DefaultApi initGet GET /init/ Init manager
DefaultApi pingGet GET /ping/ Ping manager
GroupApi groupGroupNameGet GET /group/{group_name} Get group by name
GroupApi groupsGet GET /groups/ Get list of groups
JournalApi journalHistoryGet GET /journal/history Get list of journal records
OldApi tradesReportPost POST /trades/report Get trade details for specified closed orders
OldApi usersReportPost POST /users/report Get list of user trades for specified logins
OnlineApi tradesOnlineUserLoginGet GET /trades/online/{user_login} Get list of live trades for the user
OnlineApi usersOnlineGet GET /users/online Get list of online users
ReportApi reportTradesPost POST /report/trades Get trade details for specified closed orders
SymbolApi symbolsGet GET /symbols/ Get list of market symbols
SymbolApi symgroupsGet GET /symgroups/ Get list of symbol groups
SymbolApi updateSymbol POST /symbol/update Update symbol
TradeApi tradeClosePost POST /trade/close Close order
TradeApi tradeOpenPost POST /trade/open Open order
TradeApi tradeUpdatePost POST /trade/update Update order
TradeApi tradesCancelPost POST /trades/cancel Cancel pending order
TradeApi tradesHistoryUserLoginGet GET /trades/history/{user_login} Get list of history trades for the user
TradeApi tradesOnlineUserLoginGet GET /trades/online/{user_login} Get list of live trades for the user
UserApi checkUser POST /user/check Check user exists
UserApi deleteUser DELETE /user/{user_login} Delete user
UserApi updateUser POST /user/update/{user_login} Update user
UserApi userAddPost POST /user/add Create user
UserApi userAuthPost POST /user/auth Get user by credentials
UserApi userDepositPost POST /user/deposit Deposit account
UserApi userMarginUserLoginGet GET /user/margin/{user_login} Get margin by user login
UserApi userResetPwdPost POST /user/reset_pwd Reset password
UserApi userUserLoginGet GET /user/{user_login} Get user by user login
UserApi userWithdrawPost POST /user/withdraw Withdraw account
UserApi usersBulkAddPost POST /users/bulk_add Create users
UserApi usersGet GET /users/ Get list of all users
UserApi usersOnlineGet GET /users/online Get list of online users

Documentation For Models

Documentation For Authorization

All endpoints do not require authorization.