Is custom exception is better to throw from java client?

I have a microservices architecutre and few microservices have its own customer all together for different administrations to effortlessly utilize the
administration API

In the event that when we have to return reaction to some administration from our customer we likewise can expect that something incorrectly may happens while customer demand and customer could restore some http status (for instance 404(not found) on the off chance that if information isn’t exist for a such demand or 500(internal server mistake) if there should be an occurrence of sudden administration blunder).

My inquiry is which approach we should use for tossing special case from customer? Do we have to make a custom special cases on customer side and handle these in fitting way? For instance MyServiceBasicException, MyServiceResourceNotFoundException, MyServiceInternalServiceErrorException et cetera? Or then again we have to utilize officially existing special cases (for instance from Spring ResourceNotFoundException that can be tossed in the event that if information isn’t exist for a such demand) or different libraries? Which benefits have one and another approach?