Consider the likelihood of recovery and the burden on API users.
When designing an API, decide based on whether the user of the API can reasonably be expected to recover from the exception. If so, a checked exception might be appropriate. If an exception represents a programmer error or an unlikely condition that is not recoverable, an unchecked exception can be used to keep the API simpler. For example, a method that validates input might throw IllegalArgumentException (unchecked) for invalid data, as it's a programming error, while a network call might throw IOException (checked).
Additional Notes
How do you decide between checked and unchecked exceptions for a new API?
Track: Java
Topic: Exceptions
Focus: Checked vs Unchecked Exceptions
Topics:Checked vs Unchecked ExceptionsExceptionsJava