Skip to main content

MIDI Remote API v1.1
Programmer's Guide

Welcome to the Steinberg MIDI Remote API.

The primary purpose of the MIDI Remote API is to give developers the ability to create software solutions that bridge the gap between MIDI controller hardware and the Cubase / Nuendo environment.

This document will guide you through the steps of writing a MIDI Remote API Script for a specific MIDI controller hardware.


The MIDI Remote API Script acts as a mediator between a Hardware Controller and Cubase / Nuendo.

MIDI Remote API Scripts are written in the ES5 version of JavaScript.

A MIDI Remote API Script emulates the hardware surface and This improves usability and recognizability.


The MIDI Remote API Script consists of three building blocks.

  1. Driver Setup

    • create driver object
    • define driver ports to be associated with existing hardware midi ports
    • specify all possible port namings for automatic device detection
  2. Surface Layout

    • visualize the hardware's surface elements (e.g. knobs, faders, buttons)
    • bind surface elements to midi messages
  3. Host Mapping

    • create mapping pages for each user workflow (e.g. mixing, playing instruments, track navigation)
The following image illustrates the three building block and how they are related: