> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://partner.ninjatrader.com/eval/api/rest-api-endpoints/accounting/cash-balance-log-item/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://partner.ninjatrader.com/_mcp/server. # Cash Balance Log Item GET https://live.tradovateapi.com/v1/cashBalanceLog/item Fetches CashBalanceLog entity by `id` field Reference: https://partner.ninjatrader.com/eval/api/rest-api-endpoints/accounting/cash-balance-log-item ## Authentication - `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer `, where token is your auth token. ## Request ### Query parameters - `id` (long, required) ## Response ### 200 CashBalanceLog - `accountId` (long, required) - `timestamp` (datetime, required) - `tradeDate` (TradeDate, required) - `currencyId` (long, required) - `amount` (double, required) - `cashChangeType` (enum, required) — AccountClosureFee, AddUserFee, AutomaticReconciliation, BrokerageFee, CancelledPairedTrade, CashSettlement, ChallengePayout, ClearingFee, Commission, Courtesy, CurrencyConversion, CurrencyConversionFee, Debit, DepositFee, DeskFee, DormantFee, EntitlementSubscription, Escheatment, ExchangeFee, FundTransaction, FundTransactionFee, FundingRate, GoodwillCredit, IPFee, InactivityFee, LiquidationFee, LiquidationFee2, ManualAdjustment, ManualCashSettlement, MarketDataSubscription, NewSession, NfaFee, NsfCheckFee, OptionsTrade, OrderRoutingFee, PROMO, RithmicFee, SeatLeasePayment, StopPaymentFee, SwapTrade, ThirdPartyFee, TradePaired, TradovateSubscription - Allowed values: `AccountClosureFee`, `AddUserFee`, `AutomaticReconciliation`, `BrokerageFee`, `CancelledPairedTrade`, `CashSettlement`, `ChallengePayout`, `ClearingFee`, `Commission`, `Courtesy`, `CurrencyConversion`, `CurrencyConversionFee`, `Debit`, `DepositFee`, `DeskFee`, `DormantFee`, `EntitlementSubscription`, `Escheatment`, `ExchangeFee`, `FundTransaction`, `FundTransactionFee`, `FundingRate`, `GoodwillCredit`, `IPFee`, `InactivityFee`, `LiquidationFee`, `LiquidationFee2`, `ManualAdjustment`, `ManualCashSettlement`, `MarketDataSubscription`, `NewSession`, `NfaFee`, `NsfCheckFee`, `OptionsTrade`, `OrderRoutingFee`, `PROMO`, `RithmicFee`, `SeatLeasePayment`, `StopPaymentFee`, `SwapTrade`, `ThirdPartyFee`, `TradePaired`, `TradovateSubscription` - `delta` (double, required) - `id` (long, optional) - `realizedPnL` (double, optional) - `weekRealizedPnL` (double, optional) - `fillPairId` (long, optional) - `fillId` (long, optional) - `fundTransactionId` (long, optional) - `comment` (string, optional) - `senderId` (long, optional) ## Types ### TradeDate - `year` (integer, required) - `month` (integer, required) - `day` (integer, required) ## Examples **Response** ```json { "accountId": 1, "timestamp": "2024-01-15T09:30:00Z", "tradeDate": { "year": 1, "month": 1, "day": 1 }, "currencyId": 1, "amount": 1.1, "cashChangeType": "AccountClosureFee", "delta": 1.1, "id": 1, "realizedPnL": 1.1, "weekRealizedPnL": 1.1, "fillPairId": 1, "fillId": 1, "fundTransactionId": 1, "comment": "string", "senderId": 1 } ``` **SDK Code** ```python import requests url = "https://live.tradovateapi.com/v1/cashBalanceLog/item" querystring = {"id":"1"} headers = {"Authorization": "Bearer "} response = requests.get(url, headers=headers, params=querystring) print(response.json()) ``` ```javascript const url = 'https://live.tradovateapi.com/v1/cashBalanceLog/item?id=1'; const options = {method: 'GET', headers: {Authorization: 'Bearer '}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go package main import ( "fmt" "net/http" "io" ) func main() { url := "https://live.tradovateapi.com/v1/cashBalanceLog/item?id=1" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("Authorization", "Bearer ") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby require 'uri' require 'net/http' url = URI("https://live.tradovateapi.com/v1/cashBalanceLog/item?id=1") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer ' response = http.request(request) puts response.read_body ``` ```java import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.get("https://live.tradovateapi.com/v1/cashBalanceLog/item?id=1") .header("Authorization", "Bearer ") .asString(); ``` ```php request('GET', 'https://live.tradovateapi.com/v1/cashBalanceLog/item?id=1', [ 'headers' => [ 'Authorization' => 'Bearer ', ], ]); echo $response->getBody(); ``` ```csharp using RestSharp; var client = new RestClient("https://live.tradovateapi.com/v1/cashBalanceLog/item?id=1"); var request = new RestRequest(Method.GET); request.AddHeader("Authorization", "Bearer "); IRestResponse response = client.Execute(request); ``` ```swift import Foundation let headers = ["Authorization": "Bearer "] let request = NSMutableURLRequest(url: NSURL(string: "https://live.tradovateapi.com/v1/cashBalanceLog/item?id=1")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "GET" request.allHTTPHeaderFields = headers let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ```