I still see scopes as a problematic point. If I have to look up the scopes needed for certain information in the provider's documentation, then it's pretty easy to look up the name of the field containing the required information too. And looking up stuff in the provider's documentation is exactly what this library should try to handle for the user, no?