insufficient_scope
HTTP status: 403 · Code: insufficient_scope
The API key lacks the scope this operation needs.
Why it happens
Section titled “Why it happens”The API key works, but it lacks the scope this operation needs. Each server operation’s page in the API reference names its scope.
How to fix
Section titled “How to fix”Create a key with the scope in the console under API keys (for example users.read and users.write), and replace the old key in your server’s environment.
Catch it in your code
Section titled “Catch it in your code”Every SDK throws one error type for a failed call. Match on its code, which is always insufficient_scope for this error, never on the message.
import { ErrorCode, OrvanoError } from '@orvano/js'
try { // your Orvano call} catch (error) { if (error instanceof OrvanoError && error.code === ErrorCode.insufficientScope) { // handle insufficient_scope } else { throw error }}import 'package:orvano_flutter/orvano_flutter.dart'; // or orvano_dart on a server
try { // your Orvano call} on OrvanoException catch (error) { if (error.code != ErrorCode.insufficientScope) rethrow; // handle insufficient_scope}using Orvano;
try{ // your Orvano call}catch (OrvanoException error) when (error.Code == ErrorCode.InsufficientScope){ // handle insufficient_scope}The error also carries the HTTP status (403), a message, and a request ID. Quote the request ID when you report a problem: the server logs it with the failure. See Errors for how errors work in every SDK, or every error code.