I'm using reqMatchingSymbols to get symbols. You send in a string pattern (e.g., 'A' or 'AA') and you will get back a list of about 16 contract_descriptions in the symbolSamples callback for symbols that start with the pattern. Each description includes the symbol, conId, secType, primaryExchange, currency, and a list of derivative types. So, no way to get all of them at once, nor a way to get them by exchange, but at least a way to get all of them a few at a time. From there, you can reqContractDetails to get more information such as the exchanges.?? ?