Selectors
Selectors identify which device and which session an HTTP request or WebSocket command targets.
Device selector — URL path
Used in all device-level HTTP routes as /{device_type}/{id_or_index}/….
| Route example | Selector meaning |
|---|---|
inverse3/0 | First Inverse3 by index (0-based) |
inverse3/A14 | Inverse3 with device ID A14 |
inverse3/* | All Inverse3 devices (wildcard) |
*inverse/* | All Inverse-family devices (Inverse3, Inverse3x, Minverse) |
verse_grip/0 | First wired VerseGrip by index |
wireless_verse_grip/* | All Wireless VerseGrips |
*verse_grip/* | All VerseGrip-family devices (wired, wireless, custom) |
Rules:
GETrejects wildcard selectors (ambiguous) →400POSTandDELETEaccept wildcards — operation applied to all matches
Supported {device_type} values: inverse3, verse_grip, wireless_verse_grip,
or family wildcards *inverse, *verse_grip.
Session selector — ?session=<expr> query parameter
Session-scoped HTTP endpoints (basis, mount, preset, filters, navigation, SDF)
require a ?session=<expr> query parameter to identify which session's context
to operate in.
| Expression | Meaning |
|---|---|
| (omitted) | All sessions (allowed on DELETE only) |
#123 or 123 | Session with numeric ID 123 |
:0 | First session by index |
:-1 | Last session by index |
profile_name | First session with this profile (may be ambiguous) |
profile_name:0 | First session with profile + index 0 |
:default:0 | First session with profile default at index 0 |
Example:
GET /inverse3/0/config/navigation?session=:default:0
WebSocket sessions don't need selectors
On a WebSocket connection, you are the session — your configure and
commands entries automatically target the current session's devices. Session
selectors are only needed for HTTP requests (including cross-session
remote control — see Sessions).