This reference contains every protobuf message and enum reachable from the public SynapseDevice RPCs. Expand a type to inspect its fields or values.
Protobuf JSON
The schema tables show the field names used by protobuf JSON:
- Message fields use the lower camel-case JSON field shown in each table.
- Enum values use their symbolic names, such as
kStopped. bytesvalues are base64-encoded strings.- 64-bit integer values are encoded as decimal strings in protobuf JSON.
- A
repeatedfield is a JSON array. - A
map<K, V>field is a JSON object. - Fields in the same
oneofgroup are mutually exclusive. - Fields omitted from protobuf JSON use their protobuf default value.
The field number is part of the binary protobuf wire format; JSON clients use the field name instead.
Messages
google.protobuf.Empty
A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
This message has no fields.
google.protobuf.ListValue
`ListValue` is a wrapper around a repeated field of values. The JSON representation for `ListValue` is JSON array.
| JSON field | Type | Rules | Description |
|---|---|---|---|
values | Value | repeated | Repeated field of dynamically typed values. |
google.protobuf.Struct
`Struct` represents a structured data value, consisting of fields which map to dynamically typed values. In some languages, `Struct` might be supported by a native representation. For example, in scripting languages like JS a struct is represented as an object. The details of that representation are described together with the proto support for the language. The JSON representation for `Struct` is JSON object.
| JSON field | Type | Rules | Description |
|---|---|---|---|
fields | map<string, Value> | singular | Unordered map of dynamically typed values. |
google.protobuf.Value
`Value` represents a dynamically typed value which can be either null, a number, a string, a boolean, a recursive struct value, or a list of values. A producer of value is expected to set one of these variants. Absence of any variant indicates an error. The JSON representation for `Value` is JSON value.
| JSON field | Type | Rules | Description |
|---|---|---|---|
nullValueprotobuf: null_value | NullValue | oneof kind | Represents a null value. |
numberValueprotobuf: number_value | double | oneof kind | Represents a double value. |
stringValueprotobuf: string_value | string | oneof kind | Represents a string value. |
boolValueprotobuf: bool_value | bool | oneof kind | Represents a boolean value. |
structValueprotobuf: struct_value | Struct | oneof kind | Represents a structured value. |
listValueprotobuf: list_value | ListValue | oneof kind | Represents a repeated `Value`. |
synapse.AppDeployResponse
| JSON field | Type | Rules | Description |
|---|---|---|---|
status | StatusCode | singular | — |
message | string | singular | Informational messages |
synapse.AppInfo
Information about an installed application
| JSON field | Type | Rules | Description |
|---|---|---|---|
name | string | singular | Application name (e.g., "synapse-example-app") |
version | string | singular | Installed version |
synapse.AppPackageChunk
| JSON field | Type | Rules |
|---|---|---|
metadata | PackageMetadata | oneof data |
fileChunkprotobuf: file_chunk | bytes | oneof data |
synapse.ApplicationNodeConfig
| JSON field | Type | Rules | Description |
|---|---|---|---|
name | string | singular | Your application name, it should match what is deployed |
parameters | map<string, Value> | singular | Application specific configuration, will be loaded by the custom application during runtime |
synapse.ApplicationNodeStatus
| JSON field | Type | Rules | Description |
|---|---|---|---|
name | string | singular | — |
running | bool | singular | Is the application started and running? |
errorLogsprotobuf: error_logs | string | singular | If the application failed to start, what were the logs |
synapse.BroadbandSourceConfig
| JSON field | Type | Rules | Description |
|---|---|---|---|
peripheralIdprotobuf: peripheral_id | uint32 | singular | — |
bitWidthprotobuf: bit_width | uint32 | singular | — |
sampleRateHzprotobuf: sample_rate_hz | uint32 | singular | — |
gain | float | singular | — |
signal | SignalConfig | singular | Implementation specific configurations |
synapse.BroadbandSourceStatus
| JSON field | Type | Rules |
|---|---|---|
status | SignalStatus | singular |
synapse.Channel
| JSON field | Type | Rules |
|---|---|---|
id | uint32 | singular |
electrodeIdprotobuf: electrode_id | uint32 | singular |
referenceIdprotobuf: reference_id | uint32 | singular |
type | ChannelType | singular |
synapse.DeleteFileRequest
| JSON field | Type | Rules |
|---|---|---|
name | string | singular |
synapse.DeleteFileResponse
| JSON field | Type | Rules |
|---|---|---|
name | string | singular |
statusCodeprotobuf: status_code | StatusCode | singular |
synapse.DeviceConfiguration
| JSON field | Type | Rules |
|---|---|---|
nodes | NodeConfig | repeated |
connections | NodeConnection | repeated |
synapse.DeviceInfo
| JSON field | Type | Rules |
|---|---|---|
name | string | singular |
serial | string | singular |
synapseVersionprotobuf: synapse_version | uint32 | singular |
firmwareVersionprotobuf: firmware_version | uint32 | singular |
status | Status | singular |
peripherals | Peripheral | repeated |
configuration | DeviceConfiguration | singular |
synapse.DevicePower
| JSON field | Type | Rules |
|---|---|---|
batteryLevelPercentprotobuf: battery_level_percent | float | singular |
isChargingprotobuf: is_charging | bool | singular |
synapse.DeviceSettings
Device settings that are configurable by the user. Keys and value types are defined by the device and advertised via GetSettingsResponse.schema.
| JSON field | Type | Rules |
|---|---|---|
values | Struct | singular |
synapse.DeviceStorage
| JSON field | Type | Rules |
|---|---|---|
storageDevicesprotobuf: storage_devices | StorageDevice | repeated |
synapse.DiskWriterConfig
| JSON field | Type | Rules |
|---|---|---|
filename | string | singular |
storageDeviceIdprotobuf: storage_device_id | uint32 | singular |
synapse.DiskWriterStatus
| JSON field | Type | Rules | Description |
|---|---|---|---|
outputPathprotobuf: output_path | string | singular | The output path of the file on the path of the sftp directory |
bytesWrittenprotobuf: bytes_written | uint64 | singular | How many bytes has been written for this file? |
isWritingprotobuf: is_writing | bool | singular | Are we currently writing or are we stopped? |
availableDiskSpaceBytesprotobuf: available_disk_space_bytes | uint64 | singular | How many bytes are available for us to use |
currentBitrateMbpsprotobuf: current_bitrate_mbps | float | singular | Current write performance for this node, megabits/sec |
synapse.ElectricalStimulationConfig
| JSON field | Type | Rules |
|---|---|---|
peripheralIdprotobuf: peripheral_id | uint32 | singular |
channels | Channel | repeated |
bitWidthprotobuf: bit_width | uint32 | singular |
sampleRateprotobuf: sample_rate | uint32 | singular |
lsb | uint32 | singular |
synapse.ElectricalStimulationStatus
| JSON field | Type | Rules |
|---|---|---|
lsbUVprotobuf: lsb_uV | float | singular |
synapse.ElectrodeConfig
| JSON field | Type | Rules | Description |
|---|---|---|---|
channels | Channel | repeated | — |
lowCutoffHzprotobuf: low_cutoff_hz | float | singular | Analog filter settings for electrode channels |
highCutoffHzprotobuf: high_cutoff_hz | float | singular | — |
synapse.ElectrodeStatus
| JSON field | Type | Rules |
|---|---|---|
lsbUVprotobuf: lsb_uV | float | singular |
synapse.GetSettingsQuery
This message has no fields.
synapse.GetSettingsResponse
| JSON field | Type | Rules | Description |
|---|---|---|---|
settings | DeviceSettings | singular | — |
schema | SettingDescriptor | repeated | Describes the keys this device accepts in DeviceSettings.values. |
synapse.ImpedanceMeasurement
| JSON field | Type | Rules |
|---|---|---|
electrodeIdprotobuf: electrode_id | uint32 | singular |
magnitude | float | singular |
phase | float | singular |
synapse.ImpedanceQuery
| JSON field | Type | Rules |
|---|---|---|
electrodeIdsprotobuf: electrode_ids | uint32 | repeated |
synapse.ImpedanceResponse
| JSON field | Type | Rules |
|---|---|---|
measurements | ImpedanceMeasurement | repeated |
synapse.ListAppsRequest
This message has no fields.
synapse.ListAppsResponse
| JSON field | Type | Rules |
|---|---|---|
apps | AppInfo | repeated |
synapse.ListFilesResponse
| JSON field | Type | Rules |
|---|---|---|
files | File | repeated |
synapse.ListFilesResponse.File
| JSON field | Type | Rules |
|---|---|---|
name | string | singular |
size | uint32 | singular |
created | uint32 | singular |
modified | uint32 | singular |
type | string | singular |
synapse.ListTapsQuery
This message has no fields.
synapse.ListTapsResponse
| JSON field | Type | Rules |
|---|---|---|
taps | TapConnection | repeated |
synapse.LogEntry
| JSON field | Type | Rules | Description |
|---|---|---|---|
timestampNsprotobuf: timestamp_ns | uint64 | singular | — |
level | LogLevel | singular | — |
source | string | singular | Which entity is the source of the log (e.g. filename or module name) |
message | string | singular | — |
synapse.LogQueryRequest
| JSON field | Type | Rules | Description |
|---|---|---|---|
startTimeNsprotobuf: start_time_ns | uint64 | singular | Optional start time, inclusive |
endTimeNsprotobuf: end_time_ns | uint64 | singular | Optional end time, exclusive |
sinceMsprotobuf: since_ms | uint64 | singular | Optional time since current time, in milliseconds Will ignore the start and end time |
minLevelprotobuf: min_level | LogLevel | singular | Optional minimum level, defaults to INFO |
synapse.LogQueryResponse
| JSON field | Type | Rules |
|---|---|---|
entries | LogEntry | repeated |
synapse.NodeConfig
| JSON field | Type | Rules |
|---|---|---|
type | NodeType | singular |
id | uint32 | singular |
broadbandSourceprotobuf: broadband_source | BroadbandSourceConfig | oneof config |
electricalStimulationprotobuf: electrical_stimulation | ElectricalStimulationConfig | oneof config |
opticalStimulationprotobuf: optical_stimulation | OpticalStimulationConfig | oneof config |
spikeDetectorprotobuf: spike_detector | SpikeDetectorConfig | oneof config |
spectralFilterprotobuf: spectral_filter | SpectralFilterConfig | oneof config |
diskWriterprotobuf: disk_writer | DiskWriterConfig | oneof config |
spikeSourceprotobuf: spike_source | SpikeSourceConfig | oneof config |
spikeBinnerprotobuf: spike_binner | SpikeBinnerConfig | oneof config |
application | ApplicationNodeConfig | oneof config |
synapse.NodeConnection
| JSON field | Type | Rules |
|---|---|---|
srcNodeIdprotobuf: src_node_id | uint32 | singular |
dstNodeIdprotobuf: dst_node_id | uint32 | singular |
synapse.NodeStatus
| JSON field | Type | Rules |
|---|---|---|
type | NodeType | singular |
id | uint32 | singular |
broadbandSourceprotobuf: broadband_source | BroadbandSourceStatus | oneof status |
electricalStimulationprotobuf: electrical_stimulation | ElectricalStimulationStatus | oneof status |
application | ApplicationNodeStatus | oneof status |
opticalStimulationprotobuf: optical_stimulation | OpticalStimulationStatus | oneof status |
diskWriterprotobuf: disk_writer | DiskWriterStatus | oneof status |
synapse.OpticalStimulationConfig
| JSON field | Type | Rules | Description |
|---|---|---|---|
peripheralIdprotobuf: peripheral_id | uint32 | singular | — |
pixelMaskprotobuf: pixel_mask | uint32 | repeated | — |
bitWidthprotobuf: bit_width | uint32 | singular | — |
frameRateprotobuf: frame_rate | uint32 | singular | — |
gain | float | singular | — |
sendReceiptsprotobuf: send_receipts | bool | singular | Instruct the FPGA to send out a 1xN vector where N is the number of LEDs with each Axon frame |
synapse.OpticalStimulationStatus
| JSON field | Type | Rules | Description |
|---|---|---|---|
framesWrittenprotobuf: frames_written | uint64 | singular | How many frames have we written? |
synapse.PackageMetadata
| JSON field | Type | Rules | Description |
|---|---|---|---|
name | string | singular | the package name e.g. synapse-example-app_0.1.0_arm64.deb |
version | string | singular | The version of the package to be uploaded |
size | uint64 | singular | Package size, in bytes |
sha256Sumprotobuf: sha256_sum | string | singular | sha256 of the package, for verification |
synapse.Peripheral
| JSON field | Type | Rules |
|---|---|---|
name | string | singular |
vendor | string | singular |
peripheralIdprotobuf: peripheral_id | uint32 | singular |
type | Type | singular |
address | string | singular |
synapse.PixelConfig
| JSON field | Type | Rules |
|---|---|---|
pixelMaskprotobuf: pixel_mask | uint32 | repeated |
synapse.PixelStatus
This message has no fields.
synapse.QueryRequest
| JSON field | Type | Rules |
|---|---|---|
queryTypeprotobuf: query_type | QueryType | singular |
impedanceQueryprotobuf: impedance_query | ImpedanceQuery | oneof query |
sampleQueryprotobuf: sample_query | SampleQuery | oneof query |
selfTestQueryprotobuf: self_test_query | SelfTestQuery | oneof query |
listTapsQueryprotobuf: list_taps_query | ListTapsQuery | oneof query |
getSettingsQueryprotobuf: get_settings_query | GetSettingsQuery | oneof query |
synapse.QueryResponse
| JSON field | Type | Rules |
|---|---|---|
status | Status | singular |
data | uint32 | repeated |
impedanceResponseprotobuf: impedance_response | ImpedanceResponse | oneof response |
selfTestResponseprotobuf: self_test_response | SelfTestResponse | oneof response |
listTapsResponseprotobuf: list_taps_response | ListTapsResponse | oneof response |
getSettingsResponseprotobuf: get_settings_response | GetSettingsResponse | oneof response |
synapse.ReadFileRequest
| JSON field | Type | Rules |
|---|---|---|
name | string | singular |
synapse.ReadFileResponse
| JSON field | Type | Rules |
|---|---|---|
name | string | singular |
data | bytes | singular |
startOffsetprotobuf: start_offset | uint32 | singular |
fileTotalLengthprotobuf: file_total_length | uint32 | singular |
synapse.SampleQuery
| JSON field | Type | Rules |
|---|---|---|
channels | Channel | repeated |
sampleCountprotobuf: sample_count | uint32 | singular |
synapse.SelfTestItem
| JSON field | Type | Rules |
|---|---|---|
testNameprotobuf: test_name | string | singular |
passed | bool | singular |
testDataprotobuf: test_data | uint32 | repeated |
testReportprotobuf: test_report | string | singular |
synapse.SelfTestQuery
| JSON field | Type | Rules |
|---|---|---|
peripheralIdprotobuf: peripheral_id | uint32 | singular |
synapse.SelfTestResponse
| JSON field | Type | Rules |
|---|---|---|
allPassedprotobuf: all_passed | bool | singular |
tests | SelfTestItem | repeated |
synapse.SettingDescriptor
Describes a single settings key that the device accepts.
synapse.SignalChainStatus
| JSON field | Type | Rules |
|---|---|---|
nodes | NodeStatus | repeated |
synapse.SignalConfig
| JSON field | Type | Rules |
|---|---|---|
electrode | ElectrodeConfig | oneof signal_type |
pixel | PixelConfig | oneof signal_type |
synapse.SignalStatus
| JSON field | Type | Rules |
|---|---|---|
electrode | ElectrodeStatus | oneof signal_type |
pixel | PixelStatus | oneof signal_type |
synapse.SpectralFilterConfig
| JSON field | Type | Rules |
|---|---|---|
method | SpectralFilterMethod | singular |
lowCutoffHzprotobuf: low_cutoff_hz | float | singular |
highCutoffHzprotobuf: high_cutoff_hz | float | singular |
synapse.SpikeBinnerConfig
| JSON field | Type | Rules |
|---|---|---|
binSizeMsprotobuf: bin_size_ms | uint32 | singular |
synapse.SpikeDetectorConfig
| JSON field | Type | Rules |
|---|---|---|
thresholder | Thresholder | oneof config |
templateMatcherprotobuf: template_matcher | TemplateMatcher | oneof config |
samplesPerSpikeprotobuf: samples_per_spike | uint32 | singular |
synapse.SpikeSourceConfig
| JSON field | Type | Rules |
|---|---|---|
peripheralIdprotobuf: peripheral_id | uint32 | singular |
sampleRateHzprotobuf: sample_rate_hz | uint32 | singular |
spikeWindowMsprotobuf: spike_window_ms | float | singular |
gain | float | singular |
thresholdUVprotobuf: threshold_uV | float | singular |
electrodes | ElectrodeConfig | singular |
synapse.Status
| JSON field | Type | Rules | Description |
|---|---|---|---|
message | string | singular | — |
code | StatusCode | singular | — |
state | DeviceState | singular | — |
power | DevicePower | singular | — |
storage | DeviceStorage | singular | — |
signalChainprotobuf: signal_chain | SignalChainStatus | singular | — |
timeSyncPortprotobuf: time_sync_port | uint32 | singular | If the device supports a time sync server (see time.proto) Then the UDP echo server will be available at this port |
synapse.StorageDevice
| JSON field | Type | Rules |
|---|---|---|
name | string | singular |
storageDeviceIdprotobuf: storage_device_id | uint32 | singular |
totalGbprotobuf: total_gb | float | singular |
usedGbprotobuf: used_gb | float | singular |
synapse.StreamQueryRequest
| JSON field | Type | Rules |
|---|---|---|
request | QueryRequest | singular |
synapse.StreamQueryResponse
| JSON field | Type | Rules |
|---|---|---|
code | StatusCode | singular |
message | string | singular |
timestampNsprotobuf: timestamp_ns | uint64 | singular |
impedance | ImpedanceResponse | oneof response |
selfTestprotobuf: self_test | SelfTestResponse | oneof response |
synapse.TailLogsRequest
| JSON field | Type | Rules |
|---|---|---|
minLevelprotobuf: min_level | LogLevel | singular |
synapse.TapConnection
| JSON field | Type | Rules | Description |
|---|---|---|---|
name | string | singular | Unique name id for this tap |
endpoint | string | singular | What is the zmq endpoint to connect to |
messageTypeprotobuf: message_type | string | singular | What is the protobuf message to expect over this |
tapTypeprotobuf: tap_type | TapType | singular | Is this tap meant to be producing or consuming |
synapse.TemplateMatcher
| JSON field | Type | Rules |
|---|---|---|
templateUVprotobuf: template_uV | uint32 | repeated |
synapse.Thresholder
| JSON field | Type | Rules |
|---|---|---|
thresholdUVprotobuf: threshold_uV | uint32 | singular |
synapse.UpdateDeviceSettingsRequest
| JSON field | Type | Rules | Description |
|---|---|---|---|
settings | DeviceSettings | singular | Only keys present in settings.values will be updated. |
synapse.UpdateDeviceSettingsResponse
| JSON field | Type | Rules |
|---|---|---|
status | Status | singular |
updatedSettingsprotobuf: updated_settings | DeviceSettings | singular |
synapse.WriteFileRequest
| JSON field | Type | Rules |
|---|---|---|
name | string | singular |
data | bytes | singular |
synapse.WriteFileResponse
| JSON field | Type | Rules |
|---|---|---|
name | string | singular |
bytesWrittenprotobuf: bytes_written | uint64 | singular |
Enums
google.protobuf.NullValue
`NullValue` is a singleton enumeration to represent the null value for the `Value` type union. The JSON representation for `NullValue` is JSON `null`.
| Value | Number | Description |
|---|---|---|
NULL_VALUE | 0 | Null value. |
synapse.ChannelType
| Value | Number |
|---|---|
ELECTRODE | 0 |
GPIO | 1 |
synapse.DeviceState
| Value | Number |
|---|---|
kUnknown | 0 |
kInitializing | 1 |
kStopped | 2 |
kRunning | 3 |
kError | 4 |
synapse.LogLevel
| Value | Number |
|---|---|
LOG_LEVEL_UNKNOWN | 0 |
LOG_LEVEL_DEBUG | 1 |
LOG_LEVEL_INFO | 2 |
LOG_LEVEL_WARNING | 3 |
LOG_LEVEL_ERROR | 4 |
LOG_LEVEL_CRITICAL | 5 |
synapse.NodeType
| Value | Number |
|---|---|
kNodeTypeUnknown | 0 |
kBroadbandSource | 3 |
kElectricalStimulation | 4 |
kOpticalStimulation | 5 |
kSpikeDetector | 6 |
kSpikeSource | 7 |
kSpectralFilter | 8 |
kDiskWriter | 9 |
kSpikeBinner | 10 |
kApplication | 11 |
synapse.Peripheral.Type
| Value | Number |
|---|---|
kUnknown | 0 |
kBroadbandSource | 1 |
kElectricalStimulation | 2 |
kOpticalStimulation | 3 |
kSpikeSource | 4 |
synapse.QueryRequest.QueryType
| Value | Number |
|---|---|
kNone | 0 |
kImpedance | 1 |
kSample | 2 |
kSelfTest | 3 |
kListTaps | 4 |
kGetSettings | 5 |
synapse.SettingDescriptor.Kind
| Value | Number |
|---|---|
kKindUnknown | 0 |
kString | 1 |
kInt | 2 |
kDouble | 3 |
kBool | 4 |
kEnum | 5 |
synapse.SpectralFilterMethod
| Value | Number |
|---|---|
kSpectralFilterUnknown | 0 |
kLowPass | 1 |
kHighPass | 2 |
kBandPass | 3 |
kBandStop | 4 |
synapse.StatusCode
| Value | Number |
|---|---|
kOk | 0 |
kUndefinedError | 1 |
kInvalidConfiguration | 2 |
kFailedPrecondition | 3 |
kUnimplemented | 4 |
kInternalError | 5 |
kPermissionDenied | 6 |
kQueryFailed | 7 |
synapse.TapType
| Value | Number | Description |
|---|---|---|
TAP_TYPE_UNSPECIFIED | 0 | — |
TAP_TYPE_PRODUCER | 1 | The tap will be producing data |
TAP_TYPE_CONSUMER | 2 | The tap type will be consuming data |