Web MIDI API
Required for web-based music production tools, DAWs, visualizers, and MIDI controller integration. SysEx access requires explicit user permission due to the ability to reprogram devices.
What It Defines
Defines navigator.requestMIDIAccess() for communicating with MIDI instruments and controllers. Supports input/output port enumeration, MIDI message send/receive (note on/off, control change, program change, sysex), and the midimessage event.
Canonical (Normative)
Convenient (Practical)
Publishes web platform specs including CSS, accessibility, security policies, Service Workers, Web App Manifest, and many browser APIs. Also maintains some versioned HTML/DOM specs.
Related Specs
The gating mechanism for every sensitive browser API. Check permission state before requesting access to avoid unexpected prompt dialogs. The change event lets you react when users revoke permissions in browser settings.