An API that connects multiple Microsoft services, enabling data access and automation across platforms
Yes, that is correct. Though this is more of a "design" question, as application permissions are usually leveraged when you want to perform non-interactive/automated tasks, whereas apps with delegate permissions usually rely on user's input. So try to answer the "how the app will be used" question first.
When it comes to Sites.Selected permissions, both variants can be considered (almost) equally restrictive. The biggest issues customers have with application permissions is that they are tenant-wide, unconstrained. SItes.Selected addresses that, in both the delegate and application permission variants. But with the application variant, there is no user element in the equation, so the app gets access to any site you've granted it permissions for, without any other factors in play.
Delegate permissions are instead "doubly constrained" as both the app and the user must have sufficient permissions to access the site. That said, it's not uncommon to have SPO sites provisioned to "everyone" or "everyone without external users", resulting in each user getting access by default. So you can consider them more restrictive than application permissions, so if your app will be performing actions on behalf of a given user, you must ensure both the user and the app have permissions.