What I am trying to do is to retrieve all the pulses from the Metabase application database and get all the associated questions of those pulses. Basically I am trying to replicate what the MMetabase APIs are doing. The to APIs that I am interested in are /api/pulse/:id and /api/card/:id. I don’t know Clojure so is difficult to understand what is there. But what I have managed to understand so far is that the questions are placed into the report_card table and the pulses are in the pulse table. Now the pulse_card table has two important columns: pulse_id and card_id. Technically the card_id should be a foreign key to the card_report table. The think is in the pulse_card table I have entries with ids like 4000 and in the report card_collection I have ids up to 2000. The strange thing is when I am putting that id in the /api/card/:id api it works just fine. Also a pulse can have multiple questions, and when I call the /api/pulse/ API that is obvious because the cards attribute is an array.
So if someone knows how this apis work and is kind enough I would like to know what tables are used and how the data is retrieved because I want to replicate that process. This would help me very much, otherwise i have to learn Clojure and do reverse engineering.