Search transients through widget

A. This is a good idea in general? I’m quite new to transients.

No, not really. If your data is for display and search then it’s not really ‘transient’, is it?

You should store the data properly in a more permanent place and periodically sync it. If the data from this API makes sense as a ‘post’, then storing it in custom post types might be the way to go, but you’ll probably need a custom table.

How to create a custom table, store data from an API in it, sync it with the API and search it is far too much to cover in a single answer on this site, however there are dozens of tutorials online about working with custom tables. Start from there, then introduce the external API and syncing later.

B. Is there a better ( already existing ) way to accomplish this? I’ve
searched for already existing plugins but i could not find one that
had what I needed ( which led me to think that it might not be a good
idea at all ).

If the API is public and well-known then it’s possible someone has already built something, but you’d need to search. This is not the place to look for plugin recommendations.

If an existing solution doesn’t exist, you’d need to build it yourself, but there’s a lot of components involved, as I mentioned above. I would give up on the idea of transients immediately though. They are not appropriate for this use.