This level of detail isn't covered in documentation, so I figured it was worth raising (especially in case I'm wrong!).
I know that generally speaking this license type is restricted to API only work. But the Named Credentials
metadata type is directly relevant to API integration. Yet when we attempt to make a callout with a user with an Integration only license, we get an error suggesting the named credential doesn't exist.
Error message: The callout couldn't access the endpoint. You might not have the required permissions, or the named credential "{XXX}" might not exist
We got this despite assigning the permission set granting access to the named credential to the user. This seems to be sufficient to get another fully-licensed user to be able to make the callout.
We're going to transition off of the Named Credential to creating a Custom Setting to hold the API endpoint / auth info instead.