Skip to content

radiens_core

Radiens Python client for neuroscience data acquisition and analysis.

Classes

AllegoClient

Bases: BaseClient

Client for real-time data acquisition and streaming.

Auto-discovers running servers. Falls back to well-known allego ports if server discovery is unavailable (no radiensserver running).

Usage::

with AllegoClient() as client:
    params = client.get_stim_params()

Functions

close
close()

Close all gRPC channels managed by this client.

disable_all_triggers
disable_all_triggers()

Disable all trigger channels simultaneously.

Sends the T_NONE sentinel to the hardware, which instructs it to clear all active trigger channel assignments.

Raises:

Type Description
RadiensError

On communication failure or server error.

disable_trigger
disable_trigger(*, channel, port=None)

Disable a specific digital trigger channel.

Parameters:

Name Type Description Default
channel FlexTriggerChannel

The digital input/output channel to disable. Accepts TriggerChannel enum, string name with or without T_ prefix (e.g. "din_0"), or int value. Must not resolve to TriggerChannel.T_NONE — use :meth:disable_all_triggers to disable all triggers at once.

required
port FlexPort | None

Hardware port the channel belongs to. Only meaningful in split-ports mode. See :meth:enable_trigger for details.

None

Raises:

Type Description
ValueError

If channel resolves to TriggerChannel.T_NONE.

RadiensError

On communication failure or server error.

enable_trigger
enable_trigger(*, channel, port=None)

Enable a digital trigger channel to start or stop recording.

When enabled, a voltage transition on channel will automatically start or stop recording on the hardware.

Parameters:

Name Type Description Default
channel FlexTriggerChannel

The digital input/output channel to use as a trigger. Accepts TriggerChannel enum, string name with or without T_ prefix (e.g. "din_0", "T_DIN_0"), or int value. Must not resolve to TriggerChannel.T_NONE — use :meth:disable_all_triggers to disable all triggers at once.

required
port FlexPort | None

Hardware port the channel belongs to. Accepts Port enum, single-letter string ("a"-"h"), or int. Only meaningful in split-ports mode; None is the correct default otherwise.

None

Raises:

Type Description
ValueError

If channel resolves to TriggerChannel.T_NONE.

RadiensError

On communication failure or server error.

flash_sinaps
flash_sinaps(bitfile)

Flash new firmware to the Sinaps probe FPGA.

Parameters:

Name Type Description Default
bitfile str

Path to the FPGA bitfile to flash.

required

Raises:

Type Description
RadiensError

On communication failure or server error.

get_channel_metadata
get_channel_metadata()

Get current channel metadata for all connected channels.

Returns:

Type Description
ChannelMetadata

Complete channel metadata including probe geometry, signal types,

ChannelMetadata

channel indices, and site positions for all channels.

Raises:

Type Description
RadiensError

On communication failure or server error

get_core_config
get_core_config()

Get core hardware configuration settings.

Returns:

Type Description
CoreConfig

Current core hardware configuration including sampling frequency,

CoreConfig

loop duration, and cable delays.

Raises:

Type Description
RadiensError

On communication failure or server error

get_dac_reg
get_dac_reg()

Get current DAC (Analog Output) register settings.

Returns:

Type Description
AnalogOutRegister

The complete DAC register state, including gain, high-pass

AnalogOutRegister

filter configuration, and channel mappings.

Raises:

Type Description
RadiensError

On communication failure or server error

get_default_spike_sorter_id
get_default_spike_sorter_id()

Return the active spike sorter ID.

Allego runs a single sorter at a time. This is a convenience wrapper around get_spike_sorter_ids() that returns the first (and typically only) ID.

Returns:

Type Description
str

The active spike sorter ID.

Raises:

Type Description
RadiensError

If no spike sorter is currently active.

get_detect_params
get_detect_params(spike_sorter_id, channels=None)

Fetch active detection configurations per channel.

Parameters:

Name Type Description Default
spike_sorter_id str

Unique ID of the spike sorter.

required
channels list[int] | None

Optional list of native channel indices. If None, returns params for all configured channels.

None

Returns:

Type Description
dict[int, SpikeDetectParams]

Map from native channel index to its SpikeDetectParams.

get_dio_reg
get_dio_reg()

Get current DIO (Digital Output) register settings.

Returns:

Type Description
DigitalOutRegister

The complete DIO register state, including current mode and

DigitalOutRegister

per-channel configurations.

Raises:

Type Description
RadiensError

On communication failure or server error

get_dsp_group
get_dsp_group(
    stream_group_id=PRIMARY_CACHE_STREAM_GROUP_ID,
)

Get current DSP filter configurations.

Parameters:

Name Type Description Default
stream_group_id str

The stream group to query (default "default").

PRIMARY_CACHE_STREAM_GROUP_ID

Returns:

Type Description
DSPGroup

The current hardware and software filter parameters.

Raises:

Type Description
RadiensError

On communication failure or server error.

get_intan_impedance
get_intan_impedance(port)

Measure impedance for all channels on a specific port.

Parameters:

Name Type Description Default
port FlexPort

The hardware port to measure. Accepts Port enum, single-letter string ("a"-"h"), or int (0-7).

required

Returns:

Type Description
Impedance

Impedance measurements for all channels on the specified port.

Raises:

Type Description
RadiensError

On communication failure or server error

get_kpi_metrics
get_kpi_metrics(
    metrics,
    channel_indices=None,
    time_range=None,
    signal_type=SignalType.AMP,
    stream_group_id=PRIMARY_CACHE_STREAM_GROUP_ID,
)

Retrieve computed KPI signal metrics from the live cache.

Parameters:

Name Type Description Default
metrics list[FlexKpiMetricId]

List of KPI metric identifiers. Accepts KpiMetricId objects, metric name strings (default KpiMode.BASE), or (mode, name) tuples.

required
channel_indices list[int] | None

Native channel indices (ntvIdxs) to query. None returns metrics for all channels.

None
time_range FlexTimeRange | None

Time range spec. Use [duration, float('nan')] for a lookback window or [start, end] for an absolute range. None defaults to a 5-second lookback window.

None
signal_type FlexSignalType

Signal type to query. Accepts SignalType enum or string name (e.g. "amp", "din"). Defaults to AMP.

AMP
stream_group_id str

Stream group to query (default "default").

PRIMARY_CACHE_STREAM_GROUP_ID

Returns:

Type Description
KpiMetricsResult

Metric values as a (n_channels, n_metrics) numpy array

KpiMetricsResult

with row/column labels.

Raises:

Type Description
RadiensError

On communication failure or server error.

get_kpi_status
get_kpi_status(
    stream_group_id=PRIMARY_CACHE_STREAM_GROUP_ID,
)

Get the current KPI cache status.

Parameters:

Name Type Description Default
stream_group_id str

Stream group to query (default "default").

PRIMARY_CACHE_STREAM_GROUP_ID

Returns:

Type Description
KpiStatus

Number of packets in cache, packet duration, update period,

KpiStatus

memory usage, and tracking state.

Raises:

Type Description
RadiensError

On communication failure or server error.

get_recording_config
get_recording_config()

Get current recording configuration settings.

Returns:

Type Description
RecordingConfig

Current recording configuration including file paths, naming,

RecordingConfig

and recording type settings

Raises:

Type Description
RadiensError

On communication failure or server error

get_signals
get_signals(time_range, signals=None)

Retrieve signal data from the primary live cache.

Parameters:

Name Type Description Default
time_range FlexTimeRange

Time range spec. Most common: TimeRangeSpec.lookback(5.0) or shorthand [duration, float('nan')]. Also accepts [start, end] for absolute SUBSET requests.

required
signals FlexSignalSpec | None

Channel selection — list of amp indices, SignalSpec.amp([...]), or dict for multi-type. None returns all amplifier channels.

None

Returns:

Type Description
SignalArrays

Signal data as numpy arrays (channels x samples).

Raises:

Type Description
RadiensError

On communication failure or server error.

get_sinaps_status_registers
get_sinaps_status_registers()

Get the current Sinaps probe status registers.

Returns:

Type Description
SinapsStatusRegisters

Current status registers including calibration state, active pixel

SinapsStatusRegisters

counts per shank, reference voltages, error flags, and probe

SinapsStatusRegisters

identification information.

Raises:

Type Description
RadiensError

On communication failure or server error.

get_spike_sorter_dashboard
get_spike_sorter_dashboard(spike_sorter_id, elements=None)

Get the spike sorter dashboard for real-time monitoring.

Parameters:

Name Type Description Default
spike_sorter_id str

Unique ID of the spike sorter to query.

required
elements list[FlexDashElement] | None

Optional list of dashboard elements to include. Each element can be a DashElement enum, string name (e.g. "general"), or int value (1-8). If None, returns all default elements.

None

Returns:

Type Description
SpikeSorterDashboard

Comprehensive dashboard data including summary metrics and port status.

get_spike_sorter_ids
get_spike_sorter_ids()

Get the IDs of all active spike sorters.

Returns:

Type Description
list[str]

List of active spike sorter IDs.

get_spike_sorter_state
get_spike_sorter_state(spike_sorter_id)

Get the current state and progress of a spike sorter.

Parameters:

Name Type Description Default
spike_sorter_id str

Unique ID of the spike sorter to query.

required

Returns:

Type Description
SpikeSorterState

Current state including system status, progress, and messages.

get_status
get_status()

Get comprehensive system status.

Returns:

Type Description
BackboneStatus

Current streaming status, recording status, port information,

BackboneStatus

connection state, and GPIO channel counts.

Raises:

Type Description
RadiensError

On communication failure or server error.

get_stim_params
get_stim_params()

Get stimulation parameters for all configured channels.

Returns:

Type Description
dict[int, StimParams]

Stimulation parameters keyed by system channel index (ntvAbsKeyIdx).

Raises:

Type Description
RadiensError

On communication failure or server error.

get_stim_step
get_stim_step()

Get current stimulation step size setting.

Returns:

Type Description
StimStepState

Current stimulation step configuration

Raises:

Type Description
RadiensError

On communication failure or server error

get_trigger_state
get_trigger_state()

Get current trigger channel configuration.

Returns:

Type Description
TriggerState

Current trigger state showing enabled channels and ports

Raises:

Type Description
RadiensError

On communication failure or server error

healthcheck
healthcheck(service=ServiceEndpoint.ALLEGO_LIFECYCLE)

Perform lightweight system health verification.

Parameters:

Name Type Description Default
service ServiceEndpoint

Which gRPC service to probe. Defaults to ALLEGO_LIFECYCLE; ALLEGO_CORE is also supported.

ALLEGO_LIFECYCLE

Raises:

Type Description
RadiensError

If the health check fails or the server is unresponsive.

load_all_mosi
load_all_mosi(register_vals)

Load all MOSI register values into the Sinaps probe.

Parameters:

Name Type Description Default
register_vals list[int]

List of 32-bit register values to load.

required

Raises:

Type Description
RadiensError

On communication failure or server error.

manual_stim_trigger
manual_stim_trigger(request)

Manually trigger stimulation.

Deprecated

Use set_stim_trigger() instead.

Parameters:

Name Type Description Default
request ManualStimTriggerRequest

Manual trigger configuration

required

Raises:

Type Description
RadiensError

On communication failure or server error

manual_stim_trigger_toggle
manual_stim_trigger_toggle(request)

Toggle manual stimulation trigger.

Deprecated

Use toggle_stim_trigger() instead.

Parameters:

Name Type Description Default
request ManualStimTriggerToggleRequest

Manual trigger toggle configuration

required

Raises:

Type Description
RadiensError

On communication failure or server error

read_wire_out
read_wire_out(wire_out_address)

Read a wire-out register value from the Sinaps FPGA.

Parameters:

Name Type Description Default
wire_out_address int

Address of the wire-out register to read.

required

Returns:

Type Description
int

Integer value read from the specified wire-out register.

Raises:

Type Description
RadiensError

On communication failure or server error.

restart
restart(*, mode)

Restart the system with the specified backbone mode.

Parameters:

Name Type Description Default
mode FlexBackboneMode

The backbone hardware mode to restart with. Accepts BackboneMode enum or a case-insensitive string (e.g. "smartbox_pro", "xdaq_core_stim").

required

Raises:

Type Description
RadiensError

If the restart fails.

scan_ports
scan_ports()

Scan all hardware ports to determine connected headstages and probes.

Returns:

Type Description
ChannelMetadata

Updated channel metadata based on the newly discovered hardware.

Raises:

Type Description
RadiensError

On communication failure or server error

set_core_config
set_core_config(request)

Update core hardware configuration settings.

Deprecated

Use update_core_config() instead.

Parameters:

Name Type Description Default
request SetCoreConfigRequest

Configuration parameters to update.

required

Raises:

Type Description
RadiensError

On communication failure or server error.

set_dac_gain
set_dac_gain(gain)

Set DAC (Analog Output) gain.

Parameters:

Name Type Description Default
gain int

The gain value to set.

required

Raises:

Type Description
RadiensError

On communication failure or server error

set_dac_highpass
set_dac_highpass(enable, cutoff_freq)

Configure DAC (Analog Output) high-pass filter.

Parameters:

Name Type Description Default
enable bool

Whether to enable the high-pass filter.

required
cutoff_freq float

The cutoff frequency in Hz.

required

Raises:

Type Description
RadiensError

On communication failure or server error

set_dac_off
set_dac_off()

Turn off all DAC (Analog Output) streams.

Raises:

Type Description
RadiensError

On communication failure or server error

set_dac_stream
set_dac_stream(dac_idx, ntv_chan_idx)

Map a source channel to a DAC (Analog Output) channel.

Parameters:

Name Type Description Default
dac_idx int

The DAC channel index to configure.

required
ntv_chan_idx int

The source channel index to output.

required

Raises:

Type Description
RadiensError

On communication failure or server error

set_detect_params
set_detect_params(spike_sorter_id, params, channels)

Bulk-apply threshold, shadow, and window updates to targeted channels.

Fields in params that are None will not be modified.

Parameters:

Name Type Description Default
spike_sorter_id str

Unique ID of the spike sorter.

required
params SpikeDetectParams

The detection parameters to apply.

required
channels list[int]

List of native channel indices to apply the parameters to.

required
set_dio_events
set_dio_events(chan_idx, threshold, polarity)

Configure DIO channel to trigger on analog threshold crossings.

Parameters:

Name Type Description Default
chan_idx int

Native channel index.

required
threshold float

Event threshold in microvolts (μV).

required
polarity bool

Event polarity (True for positive-going, False for negative-going).

required

Raises:

Type Description
RadiensError

On communication failure or server error

set_dio_gated
set_dio_gated(polarity)

Set DIO gated mode polarity.

Parameters:

Name Type Description Default
polarity bool

Gated polarity (True for high-active, False for low-active).

required

Raises:

Type Description
RadiensError

On communication failure or server error

set_dio_manual
set_dio_manual(chan_idx, state)

Set DIO channel state manually.

Note

The DIO mode must be set to MANUAL for this to take effect.

Parameters:

Name Type Description Default
chan_idx int

Native channel index.

required
state bool

Desired state (True for high, False for low).

required

Raises:

Type Description
RadiensError

On communication failure or server error

set_dio_pulse
set_dio_pulse(interval_sec, duration_sec, chan_idx=-1)

Configure DIO channel(s) for pulse mode.

Parameters:

Name Type Description Default
interval_sec float

Pulse interval in seconds.

required
duration_sec float

Pulse duration in seconds.

required
chan_idx int

Native channel index (-1 for all channels).

-1

Raises:

Type Description
RadiensError

On communication failure or server error

set_dsp_group
set_dsp_group(
    *,
    stage,
    params,
    stream_group_id=PRIMARY_CACHE_STREAM_GROUP_ID,
)

Update DSP filter configuration for a specific stage.

The server applies per-stage partial updates rather than replacing the full DSPGroup. Use get_dsp_group() to read the current state before making targeted changes.

Parameters:

Name Type Description Default
stage FlexFilterStage

The filter stage to update. Accepts FilterStage enum, string name ("stage1", "hardware"), or int index (0-3).

required
params list[FlexDSPParams]

Filter parameters for this stage. Each item can be a DSPParams object or a DSPParamsDict typed dict (stage is injected from stage if omitted).

required
stream_group_id str

The stream group to update (default "default").

PRIMARY_CACHE_STREAM_GROUP_ID
set_kpi_packet_dur
set_kpi_packet_dur(
    packet_dur,
    stream_group_id=PRIMARY_CACHE_STREAM_GROUP_ID,
)

Set the KPI packet duration (integration window).

Parameters:

Name Type Description Default
packet_dur float

Duration of each KPI packet in seconds.

required
stream_group_id str

Stream group to configure (default "default").

PRIMARY_CACHE_STREAM_GROUP_ID

Raises:

Type Description
RadiensError

On communication failure or server error.

set_kpi_update_period
set_kpi_update_period(
    update_period,
    stream_group_id=PRIMARY_CACHE_STREAM_GROUP_ID,
)

Set how often the KPI cache is refreshed from the live signal stream.

Parameters:

Name Type Description Default
update_period float

Update interval in seconds.

required
stream_group_id str

Stream group to configure (default "default").

PRIMARY_CACHE_STREAM_GROUP_ID

Raises:

Type Description
RadiensError

On communication failure or server error.

set_record_state
set_record_state(request)

Set data recording state.

Deprecated

Use start_recording() or stop_recording() instead.

Parameters:

Name Type Description Default
request RecordStateRequest

Record state configuration specifying the desired mode and optional port

required

Raises:

Type Description
RadiensError

If the record state change fails

set_recording_config
set_recording_config(config)

Set recording configuration settings.

Deprecated

Use update_recording_config() instead.

Parameters:

Name Type Description Default
config RecordingConfig

Recording configuration.

required

Raises:

Type Description
RadiensError

On communication failure or server error.

set_stim_params
set_stim_params(params)

Update stimulation parameters for specified channels.

Parameters:

Name Type Description Default
params dict[int, StimParams]

Map from system channel indices to their new stimulation parameters. Each StimParams defines waveform shape, timing, amplitudes, trigger settings, pulse trains, and recovery parameters for that channel.

required

Raises:

Type Description
RadiensError

On communication failure or server error

Note

The underlying gRPC API sets parameters for one channel at a time. This method calls SetStimParams once per channel in the provided dictionary.

Usage

Update stimulation parameters for multiple channels::

# Define stimulation parameters
stim_params = StimParams(
    stim_shape=StimShape.BIPHASIC,
    stim_polarity=StimPolarity.CATHODIC_FIRST,
    first_phase_duration=100.0,  # 100 µs
    second_phase_duration=100.0,  # 100 µs
    interphase_delay=50.0,  # 50 µs
    first_phase_amplitude=100.0,  # 100 µA
    second_phase_amplitude=-100.0,  # 100 µA (opposite polarity)
    baseline_voltage=0.0,
    trigger_edge_or_level=StimTriggerEdge.EDGE,
    trigger_high_or_low=StimTriggerLevel.HIGH,
    enabled=True,
    post_trigger_delay=1000.0,  # 1 ms = 1000 µs
    pulse_or_train=StimPulseMode.SINGLE_PULSE,
    number_of_stim_pulses=1,
    pulse_train_period=20000.0,  # 20 ms = 50 Hz
    refractory_period=10000.0,  # 10 ms
    pre_stim_amp_settle=1000.0,  # 1 ms
    post_stim_amp_settle=1000.0,  # 1 ms
    maintain_amp_settle=False,
    enable_amp_settle=True,
    post_stim_charge_recov_on=1000.0,  # 1 ms
    post_stim_charge_recov_off=0.0,
    enable_charge_recovery=True,
    trigger_source_is_keypress=False,
    trigger_source_idx=0,
    stim_sys_chan_idx=42,
)

# Update channels 42 and 43
client.set_stim_params({
    42: stim_params,
    43: stim_params.model_copy(update={'first_phase_amplitude': 150.0}),
})
set_stim_step
set_stim_step(*, step)

Set the stimulation step size.

Parameters:

Name Type Description Default
step StimStep

The stimulation step size to set.

required

Raises:

Type Description
RadiensError

On communication failure or server error.

set_stim_trigger
set_stim_trigger(*, trigger, on)

Set the state of a stimulation keypress trigger.

Parameters:

Name Type Description Default
trigger FlexStimKeypressIndex

The keypress trigger index (1-8). Accepts StimKeypressIndex enum or a plain int.

required
on bool

True to activate the trigger, False to deactivate.

required

Raises:

Type Description
RadiensError

On communication failure or server error.

set_stream_state
set_stream_state(request)

Set data streaming state.

Deprecated

Use start_streaming() or stop_streaming() instead.

Parameters:

Name Type Description Default
request StreamStateRequest

Stream state configuration specifying the desired mode

required

Raises:

Type Description
RadiensError

If the stream state change fails

set_trigger_state
set_trigger_state(*, channel, enabled, port)

Set trigger channel state for stimulation control.

.. deprecated:: Use :meth:enable_trigger, :meth:disable_trigger, or :meth:disable_all_triggers instead.

Parameters:

Name Type Description Default
channel TriggerChannel

Trigger channel identifier.

required
enabled bool

Whether the channel should be enabled.

required
port Port

Hardware port identifier.

required

Raises:

Type Description
RadiensError

On communication failure or server error.

spike_sorter_command
spike_sorter_command(
    spike_sorter_id,
    cmd,
    *,
    sub_cmd=SpikeSorterSubCommand.NULL,
    clusterer_params=None,
    feature_params=None,
)

Send a command to an active spike sorter.

Parameters:

Name Type Description Default
spike_sorter_id str

Unique ID of the spike sorter to control.

required
cmd FlexSpikeSorterCommand

The command to execute. Accepts SpikeSorterCommand enum or string (e.g. "on", "off", "rebase").

required
sub_cmd FlexSpikeSorterSubCommand

Optional sub-command. Accepts SpikeSorterSubCommand enum or string ("null", "detect_only").

NULL
clusterer_params SpikeSorterClustererParams | None

Optional parameters for the clustering algorithm.

None
feature_params SpikeSorterFeatureParams | None

Optional parameters for feature extraction.

None
start_recording
start_recording(*, port=None)

Start recording data to disk.

Parameters:

Name Type Description Default
port FlexPort | None

Optional port to start recording on. Accepts Port enum, single-letter string ("a"-"h"), or int (0-7). If omitted, applies system-level control.

None

Raises:

Type Description
RadiensError

If the record state change fails.

start_streaming
start_streaming()

Start data streaming from the hardware.

Raises:

Type Description
RadiensError

If the stream state change fails.

stop_recording
stop_recording(*, port=None)

Stop recording data to disk.

Parameters:

Name Type Description Default
port FlexPort | None

Optional port to stop recording on. Accepts Port enum, single-letter string ("a"-"h"), or int (0-7). If omitted, applies system-level control.

None

Raises:

Type Description
RadiensError

If the record state change fails.

stop_streaming
stop_streaming()

Stop data streaming from the hardware.

Raises:

Type Description
RadiensError

If the stream state change fails.

toggle_stim_trigger
toggle_stim_trigger(*, trigger)

Toggle a stimulation keypress trigger.

Parameters:

Name Type Description Default
trigger FlexStimKeypressIndex

The keypress trigger index (1-8) to toggle. Accepts StimKeypressIndex enum or a plain int.

required

Raises:

Type Description
RadiensError

On communication failure or server error.

transmit_mosi
transmit_mosi()

Transmit the loaded MOSI registers to the Sinaps probe.

Raises:

Type Description
RadiensError

On communication failure or server error.

update_core_config
update_core_config(
    *,
    samp_freq=None,
    loop_dur=None,
    pcache_persistence=None,
    cable_delay=None,
)

Update core hardware configuration settings.

All parameters are optional — only the fields you supply are changed. Fields left as None are not sent to the server and remain unchanged.

Parameters:

Name Type Description Default
samp_freq float | None

Target sampling frequency in Hz.

None
loop_dur float | None

Target stream loop duration in milliseconds.

None
pcache_persistence float | None

PCache persistence duration.

None
cable_delay CableDelay | None

Cable delay configuration for a specific port.

None

Raises:

Type Description
RadiensError

On communication failure or server error.

update_recording_config
update_recording_config(config)

Update recording configuration settings.

The server applies the provided config as a partial update — only the fields present in config are changed. Retrieve the current config with get_recording_config(), modify the fields you need, and pass it back here.

Parameters:

Name Type Description Default
config RecordingConfig

Recording configuration specifying file paths, naming, and recording type (continuous/spikes/both).

required

Raises:

Type Description
RadiensError

On communication failure or server error.

Example

Update the output directory while keeping other settings::

config = client.get_recording_config()
config = config.model_copy(update={"base_file_path": "/new/path"})
client.update_recording_config(config)

CurateClient

Bases: BaseFileClient

Client for data curation operations.

Auto-discovers a running radiensserver on the local machine.

Usage::

with CurateClient() as client:
    meta = client.link_data_file("/path/to/recording.xdat")
    new_meta = client.slice_time(meta, 0, 10, "sliced.xdat")

Functions

apply_protocol
apply_protocol(protocol_id)

Re-apply a previously registered protocol by ID.

Parameters:

Name Type Description Default
protocol_id str

The ID of a protocol already registered with the server (e.g., returned from a previous transform call).

required
bandpass
bandpass(
    dataset, low_freq, high_freq, output_path, *, order=None
)

Apply a band-pass filter to a dataset.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to filter (metadata or ID).

required
low_freq float

Lower cutoff frequency in Hz.

required
high_freq float

Upper cutoff frequency in Hz.

required
output_path str | Path

Where to save the result.

required
order int | None

Filter order. If None, the server default is used.

None

Returns:

Type Description
DatasetMetadata

Metadata for the new (filtered) dataset.

bandstop
bandstop(
    dataset, low_freq, high_freq, output_path, *, order=None
)

Apply a band-stop (band-reject) filter to a dataset.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to filter (metadata or ID).

required
low_freq float

Lower cutoff frequency in Hz.

required
high_freq float

Upper cutoff frequency in Hz.

required
output_path str | Path

Where to save the result.

required
order int | None

Filter order. If None, the server default is used.

None

Returns:

Type Description
DatasetMetadata

Metadata for the new (filtered) dataset.

bulk_bandpass
bulk_bandpass(
    sources,
    low_freq,
    high_freq,
    output_dir,
    output_suffix,
    *,
    order=None,
)

Apply band-pass filter to multiple datasets at once.

Parameters:

Name Type Description Default
sources Sequence[FlexDataset]

Datasets to filter (metadata or IDs).

required
low_freq float

Lower cutoff frequency in Hz.

required
high_freq float

Upper cutoff frequency in Hz.

required
output_dir str | Path

Directory where output files will be written.

required
output_suffix str

Suffix appended to each output file's base name.

required
order int | None

Filter order. If None, the server default is used.

None
bulk_bandstop
bulk_bandstop(
    sources,
    low_freq,
    high_freq,
    output_dir,
    output_suffix,
    *,
    order=None,
)

Apply band-stop filter to multiple datasets at once.

Parameters:

Name Type Description Default
sources Sequence[FlexDataset]

Datasets to filter (metadata or IDs).

required
low_freq float

Lower cutoff frequency in Hz.

required
high_freq float

Upper cutoff frequency in Hz.

required
output_dir str | Path

Directory where output files will be written.

required
output_suffix str

Suffix appended to each output file's base name.

required
order int | None

Filter order. If None, the server default is used.

None
bulk_downsample
bulk_downsample(sources, factor, output_dir, output_suffix)

Downsample multiple datasets at once.

Parameters:

Name Type Description Default
sources Sequence[FlexDataset]

Datasets to downsample (metadata or IDs).

required
factor int

Downsampling factor (e.g., 2, 4, 10).

required
output_dir str | Path

Directory where output files will be written.

required
output_suffix str

Suffix appended to each output file's base name.

required
bulk_highpass
bulk_highpass(
    sources,
    frequency,
    output_dir,
    output_suffix,
    *,
    order=None,
)

Apply high-pass filter to multiple datasets at once.

Parameters:

Name Type Description Default
sources Sequence[FlexDataset]

Datasets to filter (metadata or IDs).

required
frequency float

Cutoff frequency in Hz.

required
output_dir str | Path

Directory where output files will be written.

required
output_suffix str

Suffix appended to each output file's base name.

required
order int | None

Filter order. If None, the server default is used.

None
bulk_lowpass
bulk_lowpass(
    sources,
    frequency,
    output_dir,
    output_suffix,
    *,
    order=None,
)

Apply low-pass filter to multiple datasets at once.

Parameters:

Name Type Description Default
sources Sequence[FlexDataset]

Datasets to filter (metadata or IDs).

required
frequency float

Cutoff frequency in Hz.

required
output_dir str | Path

Directory where output files will be written.

required
output_suffix str

Suffix appended to each output file's base name.

required
order int | None

Filter order. If None, the server default is used.

None
bulk_notch
bulk_notch(
    sources,
    notch_freq,
    bandwidth,
    output_dir,
    output_suffix,
)

Apply notch filter to multiple datasets at once.

The notch filter is always second-order (scipy.signal.iirnotch). Unlike other IIR filters, it does not accept a custom order.

Parameters:

Name Type Description Default
sources Sequence[FlexDataset]

Datasets to filter (metadata or IDs).

required
notch_freq float

Center frequency to reject in Hz.

required
bandwidth float

Width of the rejection band in Hz.

required
output_dir str | Path

Directory where output files will be written.

required
output_suffix str

Suffix appended to each output file's base name.

required
bulk_slice_time
bulk_slice_time(
    sources, start_sec, end_sec, output_dir, output_suffix
)

Slice multiple datasets in time at once.

Parameters:

Name Type Description Default
sources Sequence[FlexDataset]

Datasets to slice (metadata or IDs).

required
start_sec float

Start time in seconds.

required
end_sec float

End time in seconds.

required
output_dir str | Path

Directory where output files will be written.

required
output_suffix str

Suffix appended to each output file's base name.

required
car
car(dataset, output_path)

Apply Common Average Reference (CAR) re-referencing to a dataset.

Subtracts the mean signal across all channels from each channel. This is the most widely used reference scheme in LFP and spike analysis.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to re-reference (metadata or ID).

required
output_path str | Path

Where to save the result.

required

Returns:

Type Description
DatasetMetadata

Metadata for the new (re-referenced) dataset.

clear_data_sources
clear_data_sources(dsource_ids)

Clear (unlink) data sources from the server.

Parameters:

Name Type Description Default
dsource_ids list[str] | str

List of IDs (or a single ID) to clear.

required

Returns:

Type Description
list[str]

List of successfully cleared IDs.

close
close()

Close all gRPC channels managed by this client.

copy_data_source_file
copy_data_source_file(src_path, dest_path, *, force=False)

Copy a server-side data source file to a new location.

Parameters:

Name Type Description Default
src_path str | Path

Source file path on the server.

required
dest_path str | Path

Destination file path on the server.

required
force bool

If True, overwrite existing destination file.

False
downsample
downsample(dataset, factor, output_path)

Downsample a dataset.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to downsample (metadata or ID).

required
factor int

Downsampling factor (e.g., 2, 4, 10).

required
output_path str | Path

Where to save the result.

required

Returns:

Type Description
DatasetMetadata

Metadata for the new (downsampled) dataset.

export_data_source
export_data_source(dsource, dest_path, force=False)

Export a data source to a new file.

Parameters:

Name Type Description Default
dsource FlexDataset

The data source to export (ID or metadata object).

required
dest_path str | Path

Destination file path.

required
force bool

If True, overwrite existing destination file.

False
get_all_protocols
get_all_protocols()

List all saved protocols on the server.

Returns:

Type Description
list[ProtocolSpec]

Summary of every protocol currently registered.

get_protocol
get_protocol(protocol_id)

Retrieve a saved protocol by ID.

Parameters:

Name Type Description Default
protocol_id str

ID of the protocol to retrieve.

required

Returns:

Type Description
ProtocolSpec

Minimal summary of the protocol.

healthcheck
healthcheck(service=ServiceEndpoint.RADIENS_LIFECYCLE)

Verify the radiensserver is responsive.

Parameters:

Name Type Description Default
service ServiceEndpoint

Which gRPC service to probe (default RADIENS_LIFECYCLE). RADIENS_CORE is also supported.

RADIENS_LIFECYCLE

Raises:

Type Description
RadiensError

If the health check fails or the server is unresponsive.

highpass
highpass(dataset, frequency, output_path, *, order=None)

Apply a high-pass filter to a dataset.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to filter (metadata or ID).

required
frequency float

Cutoff frequency in Hz.

required
output_path str | Path

Where to save the result.

required
order int | None

Filter order. If None, the server default is used.

None

Returns:

Type Description
DatasetMetadata

Metadata for the new (filtered) dataset.

link_data_file(fpath, file_type=None)

Link a recording file and return its metadata.

Also discovers and registers any associated .spikes file found alongside the recording. If found, the returned DatasetMetadata will have associated_spikes_ids populated, enabling the spike data methods on VidereClient.

Parameters:

Name Type Description Default
path

Path to the recording file (e.g. .xdat, .rhd).

required

Returns:

Type Description
DatasetMetadata

Metadata for the linked dataset.

Raises:

Type Description
RadiensError

On communication failure or server error.

list_data_source_ids
list_data_source_ids()

List IDs of all currently linked data sources.

Returns:

Type Description
list[str]

List of data source IDs.

list_data_sources
list_data_sources(dsource_ids=None)

List linked data sources and their metadata.

Parameters:

Name Type Description Default
dsource_ids list[str] | str | None

Optional list of specific IDs to query. If None, lists all.

None

Returns:

Type Description
dict[str, DatasetMetadata]

Map of data source ID to metadata.

list_directory
list_directory(directory)

List files in a remote server-side directory.

Parameters:

Name Type Description Default
directory str | Path

Server-side directory path to list.

required

Returns:

Type Description
list[FileInfo]

Metadata for each file found in the directory.

lowpass
lowpass(dataset, frequency, output_path, *, order=None)

Apply a low-pass filter to a dataset.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to filter (metadata or ID).

required
frequency float

Cutoff frequency in Hz.

required
output_path str | Path

Where to save the result.

required
order int | None

Filter order. If None, the server default is used.

None

Returns:

Type Description
DatasetMetadata

Metadata for the new (filtered) dataset.

move_data_source_file
move_data_source_file(src_path, dest_path, *, force=False)

Move a server-side data source file to a new location.

Parameters:

Name Type Description Default
src_path str | Path

Source file path on the server.

required
dest_path str | Path

Destination file path on the server.

required
force bool

If True, overwrite existing destination file.

False
notch
notch(dataset, frequency, bandwidth, output_path)

Apply a notch filter to a dataset.

The notch filter is always second-order (scipy.signal.iirnotch). Unlike other IIR filters, it does not accept a custom order.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to filter (metadata or ID).

required
frequency float

Center frequency to reject, in Hz (e.g., 60.0 for line noise).

required
bandwidth float

Width of the rejection band in Hz.

required
output_path str | Path

Where to save the result.

required

Returns:

Type Description
DatasetMetadata

Metadata for the new (filtered) dataset.

paired_ref
paired_ref(
    dataset, ref_channel, target_channel, output_path
)

Apply paired re-referencing between two specific channels.

References one target channel against one reference channel.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to re-reference (metadata or ID).

required
ref_channel int

Native channel index of the reference electrode.

required
target_channel int

Native channel index of the channel to re-reference.

required
output_path str | Path

Where to save the result.

required

Returns:

Type Description
DatasetMetadata

Metadata for the new (re-referenced) dataset.

remove_data_source_file
remove_data_source_file(path, *, force=False)

Remove a server-side data source file.

Parameters:

Name Type Description Default
path str | Path

File path on the server to remove.

required
force bool

If True, force removal even if the file is in use.

False
set_protocol
set_protocol(nodes, edges, *, protocol_id=None)

Register a custom protocol with the server.

Build a directed acyclic graph of transform nodes and register it for later execution with apply_protocol(). The server validates the graph and returns a summary.

Use TransformNode factory methods to construct nodes, and TransformEdge to wire them together::

src  = TransformNode.source(meta)
hp   = TransformNode.highpass(300.0)
car  = TransformNode.car()
snk  = TransformNode.sink("result", "/output", RadiensFileType.XDAT)

edges = [
    TransformEdge(source=src.id, target=hp.id),
    TransformEdge(source=hp.id, target=car.id),
    TransformEdge(source=car.id, target=snk.id),
]

spec = client.set_protocol([src, hp, car, snk], edges)
client.apply_protocol(spec.id)

Parameters:

Name Type Description Default
nodes list[TransformNode]

Ordered list of transform nodes forming the graph.

required
edges list[TransformEdge]

Directed edges connecting the nodes by ID.

required
protocol_id str | None

Optional protocol ID. A UUID is generated if not provided.

None

Returns:

Type Description
ProtocolSpec

Summary of the validated (server-registered) protocol.

Raises:

Type Description
RadiensError

If the server marks one or more nodes as invalid.

slice_channels
slice_channels(dataset, channels, output_path)

Select a subset of channels from a dataset.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to slice (metadata or ID).

required
channels Sequence[int]

System-wide channel indices to keep.

required
output_path str | Path

Where to save the result.

required

Returns:

Type Description
DatasetMetadata

Metadata for the new dataset containing only the selected channels.

slice_time
slice_time(dataset, start_sec, end_sec, output_path)

Slice a dataset in time.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to slice (metadata or ID).

required
start_sec float

Start time in seconds.

required
end_sec float

End time in seconds.

required
output_path str | Path

Where to save the result.

required

Returns:

Type Description
DatasetMetadata

Metadata for the new (sliced) dataset.

virtual_ref
virtual_ref(dataset, ref_channel, output_path)

Apply virtual reference re-referencing to a dataset.

References all channels against a single nominated electrode.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to re-reference (metadata or ID).

required
ref_channel int

Native channel index of the reference electrode.

required
output_path str | Path

Where to save the result.

required

Returns:

Type Description
DatasetMetadata

Metadata for the new (re-referenced) dataset.

VidereClient

Bases: BaseFileClient

Client for offline file-based analysis.

Auto-discovers a running radiensserver on the local machine.

Usage::

with VidereClient() as client:
    meta = client.link_data_file("/path/to/recording.xdat")
    sigs = client.get_signals(meta, time_range=[0, 1], signals=[0, 1, 2])

Functions

clear_data_sources
clear_data_sources(dsource_ids)

Clear (unlink) data sources from the server.

Parameters:

Name Type Description Default
dsource_ids list[str] | str

List of IDs (or a single ID) to clear.

required

Returns:

Type Description
list[str]

List of successfully cleared IDs.

close
close()

Close all gRPC channels managed by this client.

copy_data_source_file
copy_data_source_file(src_path, dest_path, *, force=False)

Copy a server-side data source file to a new location.

Parameters:

Name Type Description Default
src_path str | Path

Source file path on the server.

required
dest_path str | Path

Destination file path on the server.

required
force bool

If True, overwrite existing destination file.

False
export_data_source
export_data_source(dsource, dest_path, force=False)

Export a data source to a new file.

Parameters:

Name Type Description Default
dsource FlexDataset

The data source to export (ID or metadata object).

required
dest_path str | Path

Destination file path.

required
force bool

If True, overwrite existing destination file.

False
get_detect_params
get_detect_params(spike_sorter_id, channels=None)

Fetch active detection configurations per channel.

Parameters:

Name Type Description Default
spike_sorter_id str

Unique ID of the spike sorter.

required
channels list[int] | None

Optional list of native channel indices. If None, returns params for all configured channels.

None

Returns:

Type Description
dict[int, SpikeDetectParams]

Map from native channel index to its SpikeDetectParams.

get_dsp_group
get_dsp_group(dataset)

Get DSP filter configuration for a dataset.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to query (metadata object, ID string, or file path).

required

Returns:

Type Description
DSPGroup

The current hardware and software filter parameters.

get_kpi_metrics
get_kpi_metrics(
    dataset,
    metrics,
    channel_indices=None,
    time_range=None,
    signal_type=SignalType.AMP,
)

Retrieve computed KPI signal metrics for a linked dataset.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to query (metadata object, ID string, or file path).

required
metrics list[FlexKpiMetricId]

List of KPI metric identifiers. Accepts KpiMetricId objects, metric name strings (default KpiMode.BASE), or (mode, name) tuples.

required
channel_indices list[int] | None

Native channel indices (ntvIdxs) to query. None returns metrics for all channels.

None
time_range FlexTimeRange | None

Time range within the dataset (e.g. [start, end] in seconds). None returns metrics over the full recording. Lookback mode is not supported for offline files.

None
signal_type FlexSignalType

Signal type to query. Accepts SignalType enum or string name (e.g. "amp"). Defaults to AMP.

AMP

Returns:

Type Description
KpiMetricsResult

Metric values as a (n_channels, n_metrics) numpy array with row/column labels.

Raises:

Type Description
ValueError

If lookback time range mode is used (not supported offline).

RadiensError

On communication failure or server error.

get_kpi_status
get_kpi_status(dataset)

Get the current KPI cache status for a dataset.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to query (metadata object, ID string, or file path).

required

Returns:

Type Description
KpiStatus

Number of packets in cache, packet duration, memory usage, and availability state.

get_neurons
get_neurons(
    dataset,
    channels=None,
    time_range=None,
    *,
    spikes_id=None,
)

Retrieve neuron descriptors for a linked dataset.

Returns spike count, rate, SNR, waveform peak amplitude, and probe position for each sorted neuron, organized by recording channel.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to query (metadata object, ID string, or file path).

required
channels FlexSignalSpec | None

Channels to include. Accepts a list[int] of amplifier channel indices, a SignalSpec, "all", or None. None returns all amplifier channels.

None
time_range FlexTimeRange | None

Time range within the dataset (e.g. [start, end] in seconds). None returns neurons over the full recording. Lookback mode is not supported for offline files.

None
spikes_id str | None

Explicit spikes datasource ID. When None (the default), uses the first entry from DatasetMetadata.associated_spikes_ids.

None

Returns:

Type Description
NeuronsResult

Neuron descriptors grouped by native channel index.

Raises:

Type Description
ValueError

If lookback time range mode is used (not supported offline).

RadiensError

On communication failure or server error.

get_signals
get_signals(dataset, time_range=None, signals=None)

Retrieve signal data for a specific time range and channel selection.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to query (metadata object, ID string, or file path).

required
time_range FlexTimeRange | None

Time range specification (e.g. [start, end] in seconds). None returns the full recording. Lookback mode is not supported for offline files.

None
signals FlexSignalSpec | None

Signal selection (e.g. list of amplifier channel indices). None returns all amplifier channels.

None

Returns:

Type Description
SignalArrays

The requested signal data as numpy arrays.

Raises:

Type Description
ValueError

If lookback time range mode is used (not supported offline).

RadiensError

On communication failure or server error.

get_spike_sorter_dashboard
get_spike_sorter_dashboard(spike_sorter_id, elements=None)

Get the spike sorter dashboard for monitoring sorting progress.

Parameters:

Name Type Description Default
spike_sorter_id str

Unique ID of the spike sorter to query.

required
elements list[FlexDashElement] | None

Optional list of dashboard elements to include. Each element can be a DashElement enum, string name (e.g. "general"), or int value (1-8). If None, returns all default elements.

None

Returns:

Type Description
SpikeSorterDashboard

Comprehensive dashboard data including summary metrics and port status.

get_spike_sorter_ids
get_spike_sorter_ids(dataset)

Get the IDs of all active spike sorters for a dataset.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to query (metadata object, ID string, or file path).

required

Returns:

Type Description
list[str]

List of active spike sorter IDs.

get_spike_sorter_state
get_spike_sorter_state(spike_sorter_id)

Get the current state and progress of a spike sorter.

Parameters:

Name Type Description Default
spike_sorter_id str

Unique ID of the spike sorter to query.

required

Returns:

Type Description
SpikeSorterState

Current state including system status, progress, and messages.

get_spikes_by_channel
get_spikes_by_channel(
    dataset,
    channels=None,
    time_range=None,
    include_waveforms=False,
    *,
    spikes_id=None,
)

Retrieve spike timestamps and neuron labels per recording channel.

Returns one ChannelSpikeData entry per channel that has spikes in the requested time range.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to query (metadata object, ID string, or file path).

required
channels FlexSignalSpec | None

Channels to include. Accepts a list[int] of amplifier channel indices, a SignalSpec, "all", or None. None returns all amplifier channels.

None
time_range FlexTimeRange | None

Time range within the dataset (e.g. [start, end] in seconds). None returns spikes over the full recording. Lookback mode is not supported for offline files.

None
include_waveforms bool

If True, also fetch waveform snippets for each spike. Adds a second RPC call. Default False.

False
spikes_id str | None

Explicit spikes datasource ID. When None (the default), uses the first entry from DatasetMetadata.associated_spikes_ids.

None

Returns:

Type Description
dict[int, ChannelSpikeData]

Map from native channel index to spike data.

Raises:

Type Description
ValueError

If lookback time range mode is used (not supported offline).

RadiensError

On communication failure or server error.

get_spikes_by_neuron
get_spikes_by_neuron(
    dataset,
    channels=None,
    time_range=None,
    include_waveforms=False,
    *,
    spikes_id=None,
)

Retrieve spike timestamps per sorted neuron.

Same data as get_spikes_by_channel() but regrouped by neuron identity rather than by channel.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to query (metadata object, ID string, or file path).

required
channels FlexSignalSpec | None

Channels to include. Accepts a list[int] of amplifier channel indices, a SignalSpec, "all", or None. None returns all amplifier channels.

None
time_range FlexTimeRange | None

Time range within the dataset (e.g. [start, end] in seconds). None returns spikes over the full recording. Lookback mode is not supported for offline files.

None
include_waveforms bool

If True, also fetch waveform snippets for each spike. Adds a second RPC call. Default False.

False
spikes_id str | None

Explicit spikes datasource ID. When None (the default), uses the first entry from DatasetMetadata.associated_spikes_ids.

None

Returns:

Type Description
dict[int, NeuronSpikeData]

Map from integer neuron label to spike data.

Raises:

Type Description
ValueError

If lookback time range mode is used (not supported offline).

RadiensError

On communication failure or server error.

get_spikes_spec
get_spikes_spec(dataset, *, spikes_id=None)

Retrieve spike interface metadata for a linked dataset.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to query (metadata object, ID string, or file path).

required
spikes_id str | None

Explicit spikes datasource ID. When None (the default), uses the first entry from DatasetMetadata.associated_spikes_ids.

None

Returns:

Type Description
SpikesSpec

Spike metadata including the biointerface ID, enabled channel indices, and spike time range.

Raises:

Type Description
RadiensError

On communication failure or server error.

healthcheck
healthcheck(service=ServiceEndpoint.RADIENS_LIFECYCLE)

Verify the radiensserver is responsive.

Parameters:

Name Type Description Default
service ServiceEndpoint

Which gRPC service to probe (default RADIENS_LIFECYCLE). RADIENS_CORE is also supported.

RADIENS_LIFECYCLE

Raises:

Type Description
RadiensError

If the health check fails or the server is unresponsive.

kpi_calculate
kpi_calculate(dataset)

Trigger KPI computation for a linked dataset.

Must be called before get_kpi_metrics returns useful data on a freshly linked file.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to compute KPIs for (metadata object, ID string, or file path).

required

Raises:

Type Description
RadiensError

On communication failure or server error.

kpi_clear
kpi_clear(dataset)

Clear the KPI cache for a dataset.

Resets accumulated KPI state. Useful before rerunning with changed parameters.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to clear KPI state for (metadata object, ID string, or file path).

required

Raises:

Type Description
RadiensError

On communication failure or server error.

link_data_file(fpath, file_type=None)

Link a recording file and return its metadata.

Also discovers and registers any associated .spikes file found alongside the recording. If found, the returned DatasetMetadata will have associated_spikes_ids populated, enabling the spike data methods on VidereClient.

Parameters:

Name Type Description Default
path

Path to the recording file (e.g. .xdat, .rhd).

required

Returns:

Type Description
DatasetMetadata

Metadata for the linked dataset.

Raises:

Type Description
RadiensError

On communication failure or server error.

list_data_source_ids
list_data_source_ids()

List IDs of all currently linked data sources.

Returns:

Type Description
list[str]

List of data source IDs.

list_data_sources
list_data_sources(dsource_ids=None)

List linked data sources and their metadata.

Parameters:

Name Type Description Default
dsource_ids list[str] | str | None

Optional list of specific IDs to query. If None, lists all.

None

Returns:

Type Description
dict[str, DatasetMetadata]

Map of data source ID to metadata.

list_directory
list_directory(directory)

List files in a remote server-side directory.

Parameters:

Name Type Description Default
directory str | Path

Server-side directory path to list.

required

Returns:

Type Description
list[FileInfo]

Metadata for each file found in the directory.

move_data_source_file
move_data_source_file(src_path, dest_path, *, force=False)

Move a server-side data source file to a new location.

Parameters:

Name Type Description Default
src_path str | Path

Source file path on the server.

required
dest_path str | Path

Destination file path on the server.

required
force bool

If True, overwrite existing destination file.

False
remove_data_source_file
remove_data_source_file(path, *, force=False)

Remove a server-side data source file.

Parameters:

Name Type Description Default
path str | Path

File path on the server to remove.

required
force bool

If True, force removal even if the file is in use.

False
set_detect_params
set_detect_params(spike_sorter_id, params, channels)

Bulk-apply threshold, shadow, and window updates to targeted channels.

Fields in params that are None will not be modified.

Parameters:

Name Type Description Default
spike_sorter_id str

Unique ID of the spike sorter.

required
params SpikeDetectParams

The detection parameters to apply.

required
channels list[int]

List of native channel indices to apply the parameters to.

required
set_dsp_group
set_dsp_group(dataset, *, stage, params)

Update DSP filter configuration for a specific dataset and stage.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to update (metadata object, ID string, or file path).

required
stage FlexFilterStage

The filter stage to update. Accepts FilterStage enum, string alias ("stage1", "hw"), or int index (0-3).

required
params list[FlexDSPParams]

List of filter parameters for this stage. Each item can be a DSPParams object or a dict (stage is injected from stage if omitted).

required
set_kpi_packet_dur
set_kpi_packet_dur(dataset, packet_dur)

Set the KPI packet duration (integration window) for a dataset.

Parameters:

Name Type Description Default
dataset FlexDataset

Dataset to configure (metadata object, ID string, or file path).

required
packet_dur float

Duration of each KPI packet in seconds.

required

Raises:

Type Description
RadiensError

On communication failure or server error.

spike_sorter_cancel
spike_sorter_cancel(spike_sorter_id)

Cancel a running spike sorter.

Sends an OFF command. After this call, the server removes the sorter immediately — subsequent calls to get_spike_sorter_state or get_spike_sorter_dashboard with the same ID will raise ServerCommunicationError ("not found"). Use spike_sorter_delete() afterward only if auto-cleanup did not occur.

Equivalent to spike_sorter_command(id, SpikeSorterCommand.OFF).

Parameters:

Name Type Description Default
spike_sorter_id str

Unique ID of the spike sorter to cancel.

required
spike_sorter_command
spike_sorter_command(
    spike_sorter_id,
    cmd,
    *,
    sub_cmd=SpikeSorterSubCommand.NULL,
)

Send a command to a running spike sorter.

Parameters:

Name Type Description Default
spike_sorter_id str

Unique ID of the spike sorter to control.

required
cmd FlexSpikeSorterCommand

The command to execute. Accepts SpikeSorterCommand enum or string (e.g. "off", "rebase", "clear_sort").

required
sub_cmd FlexSpikeSorterSubCommand

Optional sub-command modifier. Accepts SpikeSorterSubCommand enum or string ("null", "detect_only").

NULL
spike_sorter_delete
spike_sorter_delete(spike_sorter_id)

Delete a spike sorter and release its resources.

Parameters:

Name Type Description Default
spike_sorter_id str

Unique ID of the spike sorter to delete.

required

Raises:

Type Description
RadiensError

On communication failure or server error.

spike_sorter_launch
spike_sorter_launch(params)

Launch a new spike sorter on a dataset.

Parameters:

Name Type Description Default
params SpikeSorterLaunchParams

Parameters for the sorter launch, including the target dataset ID, optional clustering/feature parameters, and noise discovery settings.

required

Returns:

Type Description
SpikeSorterLaunchResult

The unique ID and type of the launched sorter.

Raises:

Type Description
RadiensError

On communication failure or server error.