HTTP API reference

The routes the NetAudio daemon serves in netaudio 0.4.2, released .

This page is generated from the published source. Each route lists the request fields its handler reads. Response formats are not documented here yet; request a route and read the JSON it returns.

Connecting

Start the daemon with netaudio daemon start. It listens on port 4780 by default, and netaudio daemon web prints its addresses. Send POST bodies as a JSON object. Responses are JSON, except the live event stream.

curl http://HOST:4780/devices

Preset, Dante Domain Manager account, device lock key, and monitoring settings requests are refused when a browser sends them from a page on another origin. Routes marked loopback only answer requests from the same computer.

Live events

GET /events

Server-sent events. The first event is a snapshot of the daemon’s devices. Later events report changes as they happen.

Query

telemetry: telemetry=0 leaves clock frequency offset, last seen time, interface traffic, and receiver flow health out of device records.

patches: patches=1 sends a device_patch event with only the changed and removed fields after the first record for each device.

meters

Routing

POST /subscribe

Body

rx_device, subscriptions

POST /subscriptions/apply

Body

routes

POST /unsubscribe

Body

rx_channels, rx_device, rx_channel

Devices

GET /devices

Query

clock

receiver_history

history

GET /devices/{server_name}

Query

clock

receiver_history

history

GET /interfaces/{device_name}

Query

clock

receiver_history

history

GET /redundancy/{device_name}

Query

clock

receiver_history

history

GET /lock-status/{device_name}

Query

clock

receiver_history

history

DELETE /devices

Query

selection

DELETE /devices/{device_name}

POST /identify

Body

device

POST /rename-device

Body

name, device

POST /rename-channel

Body

name, channel_type, channel_number, device

POST /store-current-configuration

Body

device

POST /lock

Body

pin, device

POST /unlock

Body

pin, device

POST /refresh

Body

device

The body is optional.

POST /reboot

Body

device

POST /interface

Body

mode, interface, ip, netmask, dns, gateway, device

POST /redundancy

Body

device, mode

POST /report-unresponsive

Body

device

Audio and clock settings

POST /set-latency

Body

latency, device

POST /set-receive-flow-performance

Body

device, latency_microseconds, frames_per_packet

POST /set-transmit-flow-performance

Body

device, latency_microseconds, frames_per_packet

POST /set-unicast-performance

Body

device, latency_microseconds, frames_per_packet

POST /set-receive-flow-default-slots

Body

device, default_slots

POST /set-sample-rate

Body

sample_rate, confirm_destructive, device

POST /set-encoding

Body

encoding, device

POST /set-gain

Body

channel_number, gain_level, device_type, device

POST /set-aes67

Body

enabled, device

POST /set-aes67-multicast-prefix

Body

prefix, device

POST /set-sample-rate-pullup

Body

raw_value, device, value

POST /set-preferred-leader

Body

preferred, device

POST /set-clock-source

Body

clock_source, device

POST /set-clock-configuration

Body

record_revision, changes, device, control_profile

POST /set-clock-subdomain

Body

subdomain, device

POST /refresh-clock

Body

record_revision, device, control_profile

Flows

GET /external-flows

Query

clock

receiver_history

history

GET /external-flows/diagnostics

Query

clock

receiver_history

history

GET /transmit-flows/{device_name}

Query

clock

receiver_history

history

POST /transmit-flows/plan

Body

device, specification

POST /transmit-flows/create

Body

confirmed, device, specification

POST /transmit-flows/delete

Body

confirmed, device, flow_id

POST /external-flows/subscribe

Body

content_sha256, session_id, rx_device, source_ipv4, receiver_channel_ids, flow_slot_assignments

Metering

GET /metering/status

Query

clock

receiver_history

history

GET /metering/cache

Query

clock

receiver_history

history

GET /metering/snapshot/{name}

Query

clock

receiver_history

history

POST /metering/start

Body

client_id, device

POST /metering/stop

Body

client_id, device

Presets

POST /presets/save

Body

name, sections, devices

POST /presets/preview

Body

devices

POST /presets/load

Body

confirm_destructive, store_current_configuration, targets, excluded, confirmed, digest

Dante Domain Manager

GET /ddm/connections

Query

clock

receiver_history

history

GET /ddm/devices

Query

clock

receiver_history

history

GET /ddm/domains

Query

clock

receiver_history

history

GET /ddm/status

Query

clock

receiver_history

history

POST /ddm/graphql

Body

query, variables, operation_name, context

POST /ddm/refresh

Body

context

The body is optional.

POST /ddm/login

Body

server, method, url, api_key, username, password

POST /ddm/logout

Body

server

POST /ddm/enrollment

Body

server, device_id, action, domain_id

POST /ddm/domains

Body

server, name

POST /ddm/context

Body

context, domain_id, server

POST /ddm/profile

Body

server, action, name, url

POST /ddm/domains/update

Body

server, domain_id, action, name

Shure wireless

GET /shure/devices

Query

clock

receiver_history

history

GET /shure/devices/{mac}

Query

clock

receiver_history

history

POST /shure/set

Body

device, channel, value, setting, key, slot

Daemon

GET /server-info

Query

clock

receiver_history

history

GET /api

Query

clock

receiver_history

history

GET /settings

Query

clock

receiver_history

history

GET /host-audio

Query

clock

receiver_history

history

GET /host-audio/trace

Query

clock

receiver_history

history

GET /event-journal

Query

clock

receiver_history

history

GET /diagnostics/{name}

Query

clock

receiver_history

history

GET /issues

DELETE /event-journal

POST /discovery/refresh

Body

address

POST /device-controls

Body

action, device, category, requested, confirm_clear

POST /clear-configuration

Body

mode, reboot, device

POST /factory-reset

Body

device

POST /device-lock-key

POST /settings/monitoring

Body

port

POST /diagnostics/reset

POST /diagnostics/policy

POST /event-journal/operations

Loopback only.

POST /host-audio/levels

Body

points, seconds

POST /host-audio/meter

Body

targets, seconds

POST /host-audio/history

Body

targets, start, end

POST /host-audio/jack/connect

Loopback only.

POST /host-audio/jack/disconnect

Loopback only.

POST /host-audio/pulse/volume

Loopback only.

POST /host-audio/pulse/mute

Loopback only.

POST /host-audio/pulse/default

Loopback only.

POST /host-audio/pulse/move

Loopback only.

POST /host-audio/cards

Loopback only.

POST /shutdown

The body is optional. Loopback only.

Generated from the source of netaudio 0.4.2 on PyPI. Report a missing or wrong route as a GitHub issue.

NetAudio is unofficial and is not affiliated with or endorsed by Audinate.