Can it be done via PowerShell to grant permission at site level, web level or list level?
⚠Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
Thank you for reporting this issue. We will be triaging your incoming issue as soon as possible.
Unfortunately no, permissions are applied at the site collection level.
@andrewconnell As per this article https://docs.microsoft.com/en-us/sharepoint/dev/sp-add-ins/add-in-permissions-in-sharepoint; SharePoint add-in permission scope can be set to a List through UI. So, permission can be applied at list level as well?? Can we do it via PowerShell?

In On-Premise environment, the permission in appinv.aspx can be set with Set-SPAppPrincipalPermission"
set a SharePoint-hosted app's permissions via PowerShell
But for SharePoint Online, there is no PowerShell equal with it, please check the similiar question here:
Set-SPAppPrincipalPermission equivalent in SharePoint Online
Closing this issue as "answered". If you encounter a similar issue(s), please open up a new issue. See our wiki for more details: Issue-List: Our approach to closed issues
Most helpful comment
In On-Premise environment, the permission in appinv.aspx can be set with Set-SPAppPrincipalPermission"
set a SharePoint-hosted app's permissions via PowerShell
But for SharePoint Online, there is no PowerShell equal with it, please check the similiar question here:
Set-SPAppPrincipalPermission equivalent in SharePoint Online