code: def get_spot_value(self, assets, field, dt, data_frequency):
          
          assets_is_scalar = False
          if isinstance(assets, (AssetConvertible, PricingDataAssociable)):
              assets_is_scalar = True
          else:
              # If 'assets' was not one of the expected types then it should be
              # an iterable.
              try:
                  iter(assets)
              except TypeError:
                  raise TypeError(
                      "Unexpected 'assets' value of type {}."
                      .format(type(assets))
                  )
  
          session_label = self.trading_calendar.minute_to_session_label(dt)
  
          if assets_is_scalar:
              return self._get_single_asset_value(
                  session_label,
                  assets,
                  field,
                  dt,
                  data_frequency,
              )
          else:
              get_single_asset_value = self._get_single_asset_value
              return [
                  get_single_asset_value(
                      session_label,
                      asset,
                      field,
                      dt,
                      data_frequency,
                  )
                  for asset in assets
              ]
docs: Public API method that returns a scalar value representing the value
          of the desired asset's field at either the given dt.
  
          Parameters
          ----------
          assets : Asset, ContinuousFuture, or iterable of same.
              The asset or assets whose data is desired.
          field : {'open', 'high', 'low', 'close', 'volume',
                   'price', 'last_traded'}
              The desired field of the asset.
          dt : pd.Timestamp
              The timestamp for the desired value.
          data_frequency : str
              The frequency of the data to query; i.e. whether the data is
              'daily' or 'minute' bars
  
          Returns
          -------
          value : float, int, or pd.Timestamp
              The spot value of ``field`` for ``asset`` The return type is based
              on the ``field`` requested. If the field is one of 'open', 'high',
              'low', 'close', or 'price', the value will be a float. If the
              ``field`` is 'volume' the value will be a int. If the ``field`` is
              'last_traded' the value will be a Timestamp.