In the post-CData era, getting data from Salesforce using the Enhanced REST connector is quite painful:
- set up the Objects call to get the list of tables Salesforce contains, especially custom tables
- for each table call the describe endpoint in a REST endpoint to get the list of field (and their types)
- use table flattening to make the output as easy to parse as possible
- use local file cache to get the output you need
- use your favourite data-mangling tool to get the list of fields, I went with a regular expression to create what I needed
- turn your field XML into SOQL
- make REST endpoints for each table
- deal with pagination and any other complexity
- use data type overrides to deal with type scanning shortcomings
It would be nice if there could be an Enhanced connector that does this for Salesforce, I imagine a large number of implementations need to deal with Salesforce after all. I get that at some point Blueprints could be useful for this, but custom tables and fields and some lacking functionality would still make for a painful process in my opinion. Automating the metadata fetching would be much better.