balance method

  1. @override
Future<Balance> balance(
  1. SecurityIdentifier id, {
  2. String? currency,
  3. Freq mode = Freq.annual,
})
override

The balance method is used to get the balance sheet for a given stock symbol. By default, the balance sheet is returned in EUR. You can specify a different currency by passing the currency argument.

The mode argument is used to specify the mode of the balance sheet. The id argument is used to specify the stock id. The currency argument is used to specify the currency.

// Get balance sheet for Apple in EUR
final client = BavestRestClient(api_key);
final balance = client.balance(SecurityIdentifier(symbol: "AAPL"), currency: 'EUR', mode: FinancialsMode.annual);

Implementation

@override
Future<Balance> balance(SecurityIdentifier id,
    {String? currency, Freq mode = Freq.annual}) async {
  const url = '$_baseUrl/stock/financials';
  final freq = mode == Freq.annual ? "annual" : "quarterly";
  final params = {
    "statement": "bs",
    "currency": currency ?? "EUR",
    "freq": freq
  }..addAll(id.toJson());

  var response = await _post(url, params);
  if (_isSuccess(response)) {
    return Balance.fromJson(jsonDecode(response!.data));
  }

  throw Exception("could not receive data for $id");
}