Just starting with the .net api, able to query say BID or ASK via the realtime:
Services.Realtime.Request("AMZN.O", "BID", DataReceived);
How would I get market cap for the above?
In general, is there someplace I can find out all the possible fieldnames (like bid and ask) that are available?
The API you're using is only capable of retrieving data from real-time datafeed and from timeseries service. It cannot retrieve fundamental & reference data. In other words none of the fields that start with TR. can be retrieved using this API.
The list of fields available through the interface you're using varies by RIC. For a given RIC it can be viewed using Quote app in Eikon. Type in the RIC into the Quote app, then right-click within the app and from the right-click menu select Template - Display All Fields. This will give you a view of the real-time data record as a vector of field name/value pairs.
If you need to retrieve TR. fields into a .NET application you can use DEX2 library of Eikon COM APIs or the community owned .NET implementation of Eikon Data APIs.