What it means
The access token is valid and matches a real user, but it wasn’t issued
with the scope this endpoint requires.
The detail always names the scope the endpoint needs and lists the scopes
the token actually carries. The WWW-Authenticate header on the response
also carries the needed scope per
RFC 6750 §3.1.
Required scopes by endpoint
What to do
Send the user back through the authorize flow with the missing scope
included in the scope parameter. We’ll prompt them to consent to the
additional scope — they don’t need to redo the whole connection.
Refresh cannot widen scope — there’s no shortcut. Calling
/oauth/token with a broader scope than the user originally granted
returns invalid_scope. The user has to re-consent.