headless_lms_models/library/oauth/scopes.rs
1//! Well-known OAuth scope identifiers used across the provider.
2//!
3//! Scopes are validated per client against `oauth_clients.scopes`; there is no
4//! central registry to register into. These constants exist so the scope
5//! strings that carry cross-cutting meaning are spelled exactly once.
6
7/// Scope carried by device-flow tokens issued to native/editor clients (e.g.
8/// the TMC CLI / VSCode extension). It gates access to the exercise-services
9/// client API and is also checked by tmc-server when it introspects
10/// courses.mooc.fi tokens.
11pub const EXERCISE_SERVICES_SCOPE: &str = "exercise-services";