PHP code example of rndwiga / deriv_apis

1. Go to this page and download the library: Download rndwiga/deriv_apis library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

rndwiga / deriv_apis example snippets




ndwiga\DerivApis\DerivAPI;

// Replace with your app ID from Deriv
$appId = 'YOUR_APP_ID';

// Create a new instance of the Deriv API
$api = new DerivAPI($appId);

try {
    // Get server time
    $serverTime = $api->utilities()->getServerTime();
    echo "Server time: " . json_encode($serverTime, JSON_PRETTY_PRINT) . "\n";

    // Get tick data for a symbol
    $tickData = $api->marketData()->getTicks('R_100');
    echo "Tick data for R_100: " . json_encode($tickData, JSON_PRETTY_PRINT) . "\n";
} catch (Exception $e) {
    echo "Error: " . $e->getMessage() . "\n";
} finally {
    // Always disconnect when done
    $api->disconnect();
}

// Create an authenticated API instance
$api = new DerivAPI($appId, 'YOUR_API_TOKEN');

// Get account balance (

$api->account()->getAccountInfo();
$api->account()->getSettings();
$api->account()->setSettings($settings);
$api->account()->getLimits();
$api->account()->getBalance($account);
$api->account()->getSelfExclusion();
$api->account()->setSelfExclusion($params);
$api->account()->authorize($token);
$api->account()->logout();

$api->marketData()->getTicks($symbol, $count);
$api->marketData()->subscribeTicks($symbol);
$api->marketData()->getCandles($symbol, $count, $granularity);
$api->marketData()->subscribeCandles($symbol, $granularity);
$api->marketData()->getPriceProposal($contractParams);
$api->marketData()->subscribePriceProposal($contractParams);
$api->marketData()->getActiveSymbols($productType);
$api->marketData()->getSymbolDetails($symbol);
$api->marketData()->getTradingTimes($date);
$api->marketData()->getServerTime();
$api->marketData()->cancelSubscription($id);
$api->marketData()->cancelAllSubscriptions($type);

$api->trading()->buyContract($contractParams);
$api->trading()->sellContract($contractId, $price);
$api->trading()->getContractInfo($contractId);
$api->trading()->subscribeContractInfo($contractId);
$api->trading()->getPriceProposal($contractParams);
$api->trading()->subscribePriceProposal($contractParams);
$api->trading()->cancelContract($contractId);
$api->trading()->getPayoutCurrencies();
$api->trading()->getContractTypes($symbol);
$api->trading()->getPriceForPayout($params);
$api->trading()->updateContract($contractId, $params);
$api->trading()->getProfitTable($params);
$api->trading()->getPortfolio($params);

$api->cashier()->getCashierInfo($verificationCode);
$api->cashier()->getDepositInfo($verificationCode);
$api->cashier()->getWithdrawalInfo($verificationCode);
$api->cashier()->getPaymentAgents($countryCode, $currency);
$api->cashier()->paymentAgentTransfer($params);
$api->cashier()->paymentAgentWithdraw($params);
$api->cashier()->transferBetweenAccounts($params);
$api->cashier()->getAccountTransferHistory($params);
$api->cashier()->getCryptoCurrenciesConfig();
$api->cashier()->getPaymentMethods($countryCode);

$api->economicCalendar()->getEconomicCalendar($params);
$api->economicCalendar()->getEconomicEvent($eventId);
$api->economicCalendar()->subscribeEconomicCalendar($params);

$api->copyTrading()->getCopyTradingList($params);
$api->copyTrading()->startCopyTrading($traderId, $params);
$api->copyTrading()->stopCopyTrading($traderId);
$api->copyTrading()->getCopyTradingStatistics($traderId);
$api->copyTrading()->getCopyTradingHistory($params);

// Account Management
$api->mt5()->getAccountDetails($loginId);
$api->mt5()->getAccountTypes();
$api->mt5()->createAccount($params);
$api->mt5()->getAccountBalance($loginId);
$api->mt5()->setAccountSettings($loginId, $settings);

// Funds Management
$api->mt5()->deposit($loginId, $amount);
$api->mt5()->withdraw($loginId, $amount);
$api->mt5()->getTransactionHistory($params);

// Password Management
$api->mt5()->passwordReset($loginId, $passwordType);
$api->mt5()->passwordChange($loginId, $passwordType, $oldPassword, $newPassword);

// Trading Operations
$api->mt5()->getMT5TradeHistory($params);
$api->mt5()->getMT5OpenPositions($params);
$api->mt5()->placeMT5Order($params);
$api->mt5()->modifyMT5Order($orderId, $params);
$api->mt5()->closeMT5Position($positionId, $params);

$api->copyTrading()->getCopyTradingList($params);
$api->copyTrading()->startCopyTrading($traderId, $params);
$api->copyTrading()->stopCopyTrading($traderId);
$api->copyTrading()->getCopyTradingStatistics($traderId);
$api->copyTrading()->getCopyTradingHistory($params);

$api->wallet()->getWalletAccounts();
$api->wallet()->createWalletAccount($params);
$api->wallet()->getWalletTransactions($walletId, $params);
$api->wallet()->transferBetweenWallets($params);

$api->paymentAgent()->getPaymentAgents($countryCode, $currency);
$api->paymentAgent()->paymentAgentTransfer($params);
$api->paymentAgent()->paymentAgentWithdraw($params);

// Initialize with payment agent token
$api = new DerivAPI($appId, 'YOUR_PAYMENT_AGENT_TOKEN');

$transferResult = $api->cashier()->paymentAgentTransfer([
    'amount' => 100.50,              // Amount to transfer (nt ID/username (

try {
    $transferResult = $api->cashier()->paymentAgentTransfer([
        'amount' => 100.50,
        'currency' => 'USD',
        'transfer_to' => 'CR12345'
    ]);
    // Process successful transfer
} catch (Exception $e) {
    // Handle error
    echo "Transfer failed: " . $e->getMessage();
}

$transferHistory = $api->reports()->getStatement([
    'action_type' => 'paymentagent_transfer',
    'limit' => 5
]);