TL;DR: All other application considerations aside, performing a single call would be faster than performing multiple calls. Running the calls asynchronously may cut down the overall time needed to complete a given operation from the perspective of your user (which might well be all you need), but in aggregate, the time taken would still be longer for multiple calls.
In your case however, i'm not sure that's the full story.
REST APIs are a slightly ambiguous term, due to various interpretations of the paper that made the idea popular. By even the most liberal interpretation of what constitutes a REST API however, what you have doesn't really fit.
The core principle is that you have a resource on which you want to perform an action. The URI identifies the resource you are interested in, and you would normally use the HTTP verbs to indicate what you want to do to that resource.
In your specific case, all of your methods have the word 'get' in their name. You should be changing the verb used in the HTTP request to indicate that you want to 'get' the resource available at that location.
Your URI scheme should represent the logical hierarchy of the resources you want to make available to the users of your API, so in your case i would consider using something like
/api/products?category=sliders to filter down your collection of products. This means that when clients want to get all of your products, they can simply omit the query string.