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
]);