Feature Request: Expand Roon’s API for Better Remote-Control Integrations

I am currently testing a third-party Roon driver for RTI control systems. It allows Roon to be browsed and controlled from a conventional RTI handheld remote or touchscreen rather than requiring the Roon app for every interaction.

This type of integration may not yet be widely known within the Roon community, but I believe it represents a valuable use case for Roon and could become even more useful if additional information and browsing functions were exposed through the third-party API.

The objective is not to recreate or replace the full Roon application. Roon remains the right interface for detailed discovery, credits, editorial content, library management and system configuration. A remote-control integration serves a different purpose: convenient and immediate access to the functions people use most frequently.

Making Roon accessible to the whole household

In many households, only one person may be deeply familiar with Roon. A partner, family member, flatmate or guest may not know Roon at all and will probably not have the application installed on their own phone.

Without another control option, these people may struggle to use the music system independently. They may need the main Roon user to start the music, hand them a configured device or explain how the system works.

An RTI integration removes much of that barrier. Anyone can pick up the normal system remote and perform essential actions such as:

  • browsing artists, albums, tracks or playlists;

  • selecting music;

  • viewing and changing the queue;

  • carrying out a basic search;

  • changing tracks or albums;

  • starting and stopping playback.

They do not need to install Roon, understand its complete structure or use someone else’s smartphone. From their perspective, Roon simply becomes part of the household music system.

Greater convenience for experienced Roon users

The same integration also has value for enthusiasts who know Roon very well.

Even an experienced user may not want to reach for a phone or tablet whenever they want to change an album, select a playlist, check the queue or perform a quick search. When sitting on the sofa, the normal system remote is often the fastest and most natural interface.

For this audience, however, basic playback controls are not always enough. A few additional pieces of information would make the remote substantially more useful without turning it into a replacement for the full Roon app.

Information and functions that would improve the API

1. Album release date

Many albums are available in several versions:

  • original releases;

  • remasters;

  • anniversary editions;

  • deluxe editions;

  • alternative digital masterings.

For music and hi-fi enthusiasts, the release date or edition date is often important when choosing which version to play. On a compact remote interface, two versions of the same album may otherwise be almost impossible to distinguish.

Making this information available through the API would allow integrations to display a simple release year or date beside the album title.

2. Audio format and resolution

It would also be valuable to expose information such as:

  • sample rate;

  • bit depth;

  • file or stream format;

  • potentially the content source.

Examples might include:

44.1 kHz / 16-bit FLAC

96 kHz / 24-bit FLAC

DSD64

The same album may be available in several resolutions or masterings, including multiple versions from the same streaming service. For Roon’s core audience, this is often relevant information rather than merely a technical detail.

Ideally, the information could be available both for the currently playing track and when browsing albums or individual tracks.

3. Complete artist discographies across all available sources

Another major improvement would be the ability to select an artist and browse the complete available discography across:

  • the local Roon Library;

  • Qobuz;

  • TIDAL;

  • other connected services supported by Roon.

At present, an integration may be able to find an artist and even start playback, while the artist view itself shows only albums already contained in the local Library.

At the same time, a general album search for that artist may display many albums available through Qobuz or TIDAL. From a user perspective, Roon already knows that these albums belong to the selected artist. It would therefore be extremely useful if that relationship could also be accessed through the third-party API.

Ideally, an artist discography could:

  • combine local and streaming albums;

  • optionally separate them by source;

  • sort them by release date;

  • display release year and available resolution.

This would make artist browsing far more natural and would allow a remote-control integration to provide meaningful music selection rather than only basic transport commands.

Not a replacement for the Roon app

A handheld remote will never provide the depth of the full Roon experience, nor should it.

The purpose is to create a complementary interface with two clear levels of use:

  • a simple and accessible way for family members and guests to listen to music;

  • a convenient but still informative everyday interface for experienced Roon users.

The Roon app would remain the complete experience. The remote would provide immediate access to the most useful functions without requiring a phone or tablet for every small interaction.

Why this could benefit Roon

A music platform is not judged only by the person who originally selected and configured it. Its long-term acceptance within a household also depends on whether other people can use it easily.

Better integration with professional control systems would make Roon:

  • easier to share;

  • more convenient in everyday use;

  • more deeply integrated into the home;

  • more attractive beyond the established hi-fi community.

It could also differentiate Roon from competing platforms that remain closely tied to their own mobile applications.

A broader browse and metadata API would therefore improve more than one specific RTI driver. It could support future integrations with remote controls, smart-home systems and other third-party interfaces, while strengthening Roon’s position as a whole-home music platform.

The full Roon application would remain central. But allowing complementary interfaces to access release dates, audio formats and complete cross-service artist discographies could make Roon substantially more useful to both enthusiasts and everyone else living with the system.

I’d love Roon to expand on its API.

Alas, this has been requested for years with nothing so far.

In all honesty, whilst this would make my life so much easier with my Roon extension, from experience I can completely understand why expanding the API may not be a great idea.

My extension prior to recent changes had a negative effect on Roon by the quantity of API calls.

I’ve resolved many of these for the extensions current version, but I’m continuing development and this has seen a rise in API calls which ultimately increase Roon’s memory use.

For dates, formats and more you’ll need to look at workarounds like I have. The workarounds are fun to implement and can improve performance.

I am not the developer of the RTI driver, but just one of the users testing it. Any hints regarding your proposed workarounds that I could share with the developer?

Quite simply I use my own database and pull missing data from local files and external sources.

I don’t display format data within my extension yet but its easy enough to implement.

One major drawack with the RTI Driver (API related) is that you cant sort the order in which the Albums are being sorted. It is strictly Alphabetical. My wish is to be able to choose sorting between Alphabetical/ Recently Added/ Recently played. But according to the programmer, the ROON API doesnt support this function, which is a pity. So if anyone at the ROON team is reading this, that is on the wishlist.

1 Like

Thanks for the idea, but I think this is not really a feasible workaround, if you have to run your own database. I mean, that’s the whole purpose of roon, not?

Yes, but folks want Roon to update their API (which hasn’t been touched for 7 years IIRC) so features like what you mention then work.

Until then, geniuses like me :face_with_peeking_eye::rofl: have a choice to stick with what Roon ships, use their limited API or find alternative ways that stay within the confines of Roon’s ToS.

I like the latter approach (just use their API and workaround its shortfalls) because it might spark Roon’s interest towards potential new features.

My Remote extension development builds have features Roon doesn’t have and I’d welcome them to implement them natively should they see a benefit.