API

Table of Contents

Top

common/common.proto

Data

Field Type Label Description
metadata Metadata
bytes bytes

DataResponse

Field Type Label Description
messages Data repeated

Empty

Field Type Label Description
metadata Metadata

EmptyResponse

Field Type Label Description
messages Empty repeated

Error

Field Type Label Description
code Code
message string
details google.protobuf.Any repeated

Metadata

Common metadata message nested in all reply message types

Field Type Label Description
hostname string hostname of the server response comes from (injected by proxy)
error string error is set if request failed to the upstream (rest of response is undefined)
status google.rpc.Status error as gRPC Status

Code

Name Number Description
FATAL 0
LOCKED 1

ContainerDriver

Name Number Description
CONTAINERD 0
CRI 1

Top

inspect/inspect.proto

ControllerDependencyEdge

Field Type Label Description
controller_name string
edge_type DependencyEdgeType
resource_namespace string
resource_type string
resource_id string

ControllerRuntimeDependenciesResponse

Field Type Label Description
messages ControllerRuntimeDependency repeated

ControllerRuntimeDependency

The ControllerRuntimeDependency message contains the graph of controller-resource dependencies.

Field Type Label Description
metadata common.Metadata
edges ControllerDependencyEdge repeated

DependencyEdgeType

Name Number Description
OUTPUT_EXCLUSIVE 0
OUTPUT_SHARED 3
INPUT_STRONG 1
INPUT_WEAK 2
INPUT_DESTROY_READY 4

InspectService

The inspect service definition.

InspectService provides auxilary API to inspect OS internals.

Method Name Request Type Response Type Description
ControllerRuntimeDependencies .google.protobuf.Empty ControllerRuntimeDependenciesResponse

Top

machine/machine.proto

ApplyConfiguration

ApplyConfigurationResponse describes the response to a configuration request.

Field Type Label Description
metadata common.Metadata
warnings string repeated Configuration validation warnings.

ApplyConfigurationRequest

rpc applyConfiguration ApplyConfiguration describes a request to assert a new configuration upon a node.

Field Type Label Description
data bytes
on_reboot bool
immediate bool

ApplyConfigurationResponse

Field Type Label Description
messages ApplyConfiguration repeated

Bootstrap

The bootstrap message containing the bootstrap status.

Field Type Label Description
metadata common.Metadata

BootstrapRequest

rpc Bootstrap

Field Type Label Description
recover_etcd bool Enable etcd recovery from the snapshot.

Snapshot should be uploaded before this call via EtcdRecover RPC. | | recover_skip_hash_check | bool | | Skip hash check on the snapshot (etcd).

Enable this when recovering from data directory copy to skip integrity check. |

BootstrapResponse

Field Type Label Description
messages Bootstrap repeated

CNIConfig

Field Type Label Description
name string
urls string repeated

CPUInfo

Field Type Label Description
processor uint32
vendor_id string
cpu_family string
model string
model_name string
stepping string
microcode string
cpu_mhz double
cache_size string
physical_id string
siblings uint32
core_id string
cpu_cores uint32
apic_id string
initial_apic_id string
fpu string
fpu_exception string
cpu_id_level uint32
wp string
flags string repeated
bugs string repeated
bogo_mips double
cl_flush_size uint32
cache_alignment uint32
address_sizes string
power_management string

CPUInfoResponse

Field Type Label Description
messages CPUsInfo repeated

CPUStat

Field Type Label Description
user double
nice double
system double
idle double
iowait double
irq double
soft_irq double
steal double
guest double
guest_nice double

CPUsInfo

Field Type Label Description
metadata common.Metadata
cpu_info CPUInfo repeated

ClusterConfig

Field Type Label Description
name string
control_plane ControlPlaneConfig
cluster_network ClusterNetworkConfig
allow_scheduling_on_masters bool

ClusterNetworkConfig

Field Type Label Description
dns_domain string
cni_config CNIConfig

Container

The messages message containing the requested containers.

Field Type Label Description
metadata common.Metadata
containers ContainerInfo repeated

ContainerInfo

The messages message containing the requested containers.

Field Type Label Description
namespace string
id string
image string
pid uint32
status string
pod_id string
name string

ContainersRequest

Field Type Label Description
namespace string
driver common.ContainerDriver driver might be default "containerd" or "cri"

ContainersResponse

Field Type Label Description
messages Container repeated

ControlPlaneConfig

Field Type Label Description
endpoint string

CopyRequest

CopyRequest describes a request to copy data out of Talos node

Copy produces .tar.gz archive which is streamed back to the caller

Field Type Label Description
root_path string Root path to start copying data out, it might be either a file or directory

DHCPOptionsConfig

Field Type Label Description
route_metric uint32

DiskStat

Field Type Label Description
name string
read_completed uint64
read_merged uint64
read_sectors uint64
read_time_ms uint64
write_completed uint64
write_merged uint64
write_sectors uint64
write_time_ms uint64
io_in_progress uint64
io_time_ms uint64
io_time_weighted_ms uint64
discard_completed uint64
discard_merged uint64
discard_sectors uint64
discard_time_ms uint64

DiskStats

Field Type Label Description
metadata common.Metadata
total DiskStat
devices DiskStat repeated

DiskStatsResponse

Field Type Label Description
messages DiskStats repeated

DiskUsageInfo

DiskUsageInfo describes a file or directory's information for du command

Field Type Label Description
metadata common.Metadata
name string Name is the name (including prefixed path) of the file or directory
size int64 Size indicates the number of bytes contained within the file
error string Error describes any error encountered while trying to read the file information.
relative_name string RelativeName is the name of the file or directory relative to the RootPath

DiskUsageRequest

DiskUsageRequest describes a request to list disk usage of directories and regular files

Field Type Label Description
recursion_depth int32 RecursionDepth indicates how many levels of subdirectories should be recursed. The default (0) indicates that no limit should be enforced.
all bool All write sizes for all files, not just directories.
threshold int64 Threshold exclude entries smaller than SIZE if positive, or entries greater than SIZE if negative.
paths string repeated DiskUsagePaths is the list of directories to calculate disk usage for.

DmesgRequest

dmesg

Field Type Label Description
follow bool
tail bool

EtcdForfeitLeadership

Field Type Label Description
metadata common.Metadata
member string

EtcdForfeitLeadershipRequest

EtcdForfeitLeadershipResponse

Field Type Label Description
messages EtcdForfeitLeadership repeated

EtcdLeaveCluster

Field Type Label Description
metadata common.Metadata

EtcdLeaveClusterRequest

EtcdLeaveClusterResponse

Field Type Label Description
messages EtcdLeaveCluster repeated

EtcdMember

EtcdMember describes a single etcd member.

Field Type Label Description
id uint64 member ID.
hostname string human-readable name of the member.
peer_urls string repeated the list of URLs the member exposes to clients for communication.
client_urls string repeated the list of URLs the member exposes to the cluster for communication.

EtcdMemberListRequest

Field Type Label Description
query_local bool

EtcdMemberListResponse

Field Type Label Description
messages EtcdMembers repeated

EtcdMembers

EtcdMembers contains the list of members registered on the host.

Field Type Label Description
metadata common.Metadata
legacy_members string repeated list of member hostnames.
members EtcdMember repeated the list of etcd members registered on the node.

EtcdRecover

Field Type Label Description
metadata common.Metadata

EtcdRecoverResponse

Field Type Label Description
messages EtcdRecover repeated

EtcdRemoveMember

Field Type Label Description
metadata common.Metadata

EtcdRemoveMemberRequest

Field Type Label Description
member string

EtcdRemoveMemberResponse

Field Type Label Description
messages EtcdRemoveMember repeated

EtcdSnapshotRequest

Event

Field Type Label Description
metadata common.Metadata
data google.protobuf.Any
id string

EventsRequest

Field Type Label Description
tail_events int32
tail_id string
tail_seconds int32

FeaturesInfo

FeaturesInfo describes individual Talos features that can be switched on or off.

Field Type Label Description
rbac bool RBAC is true if role-based access control is enabled.

FileInfo

FileInfo describes a file or directory's information

Field Type Label Description
metadata common.Metadata
name string Name is the name (including prefixed path) of the file or directory
size int64 Size indicates the number of bytes contained within the file
mode uint32 Mode is the bitmap of UNIX mode/permission flags of the file
modified int64 Modified indicates the UNIX timestamp at which the file was last modified

TODO: unix timestamp or include proto's Date type | | is_dir | bool | | IsDir indicates that the file is a directory | | error | string | | Error describes any error encountered while trying to read the file information. | | link | string | | Link is filled with symlink target | | relative_name | string | | RelativeName is the name of the file or directory relative to the RootPath |

GenerateClientConfiguration

Field Type Label Description
metadata common.Metadata
ca bytes PEM-encoded CA certificate.
crt bytes PEM-encoded generated client certificate.
key bytes PEM-encoded generated client key.
talosconfig bytes Client configuration (talosconfig) file content.

GenerateClientConfigurationRequest

Field Type Label Description
roles string repeated Roles in the generated client certificate.
crt_ttl google.protobuf.Duration Client certificate TTL.

GenerateClientConfigurationResponse

Field Type Label Description
messages GenerateClientConfiguration repeated

GenerateConfiguration

GenerateConfiguration describes the response to a generate configuration request.

Field Type Label Description
metadata common.Metadata
data bytes repeated
talosconfig bytes

GenerateConfigurationRequest

GenerateConfigurationRequest describes a request to generate a new configuration on a node.

Field Type Label Description
config_version string
cluster_config ClusterConfig
machine_config MachineConfig
override_time google.protobuf.Timestamp

GenerateConfigurationResponse

Field Type Label Description
messages GenerateConfiguration repeated

Hostname

Field Type Label Description
metadata common.Metadata
hostname string

HostnameResponse

Field Type Label Description
messages Hostname repeated

InstallConfig

Field Type Label Description
install_disk string
install_image string

ListRequest

ListRequest describes a request to list the contents of a directory.

Field Type Label Description
root string Root indicates the root directory for the list. If not indicated, '/' is presumed.
recurse bool Recurse indicates that subdirectories should be recursed.
recursion_depth int32 RecursionDepth indicates how many levels of subdirectories should be recursed. The default (0) indicates that no limit should be enforced.
types ListRequest.Type repeated Types indicates what file type should be returned. If not indicated, all files will be returned.

LoadAvg

Field Type Label Description
metadata common.Metadata
load1 double
load5 double
load15 double

LoadAvgResponse

Field Type Label Description
messages LoadAvg repeated

LogsRequest

rpc logs The request message containing the process name.

Field Type Label Description
namespace string
id string
driver common.ContainerDriver driver might be default "containerd" or "cri"
follow bool
tail_lines int32

MachineConfig

Field Type Label Description
type MachineConfig.MachineType
install_config InstallConfig
network_config NetworkConfig
kubernetes_version string

MemInfo

Field Type Label Description
memtotal uint64
memfree uint64
memavailable uint64
buffers uint64
cached uint64
swapcached uint64
active uint64
inactive uint64
activeanon uint64
inactiveanon uint64
activefile uint64
inactivefile uint64
unevictable uint64
mlocked uint64
swaptotal uint64
swapfree uint64
dirty uint64
writeback uint64
anonpages uint64
mapped uint64
shmem uint64
slab uint64
sreclaimable uint64
sunreclaim uint64
kernelstack uint64
pagetables uint64
nfsunstable uint64
bounce uint64
writebacktmp uint64
commitlimit uint64
committedas uint64
vmalloctotal uint64
vmallocused uint64
vmallocchunk uint64
hardwarecorrupted uint64
anonhugepages uint64
shmemhugepages uint64
shmempmdmapped uint64
cmatotal uint64
cmafree uint64
hugepagestotal uint64
hugepagesfree uint64
hugepagesrsvd uint64
hugepagessurp uint64
hugepagesize uint64
directmap4k uint64
directmap2m uint64
directmap1g uint64

Memory

Field Type Label Description
metadata common.Metadata
meminfo MemInfo

MemoryResponse

Field Type Label Description
messages Memory repeated

MountStat

The messages message containing the requested processes.

Field Type Label Description
filesystem string
size uint64
available uint64
mounted_on string

Mounts

The messages message containing the requested df stats.

Field Type Label Description
metadata common.Metadata
stats MountStat repeated

MountsResponse

Field Type Label Description
messages Mounts repeated

NetDev

Field Type Label Description
name string
rx_bytes uint64
rx_packets uint64
rx_errors uint64
rx_dropped uint64
rx_fifo uint64
rx_frame uint64
rx_compressed uint64
rx_multicast uint64
tx_bytes uint64
tx_packets uint64
tx_errors uint64
tx_dropped uint64
tx_fifo uint64
tx_collisions uint64
tx_carrier uint64
tx_compressed uint64

NetworkConfig

Field Type Label Description
hostname string
interfaces NetworkDeviceConfig repeated

NetworkDeviceConfig

Field Type Label Description
interface string
cidr string
mtu int32
dhcp bool
ignore bool
dhcp_options DHCPOptionsConfig
routes RouteConfig repeated

NetworkDeviceStats

Field Type Label Description
metadata common.Metadata
total NetDev
devices NetDev repeated

NetworkDeviceStatsResponse

Field Type Label Description
messages NetworkDeviceStats repeated

PhaseEvent

Field Type Label Description
phase string
action PhaseEvent.Action

PlatformInfo

Field Type Label Description
name string
mode string

Process

Field Type Label Description
metadata common.Metadata
processes ProcessInfo repeated

ProcessInfo

Field Type Label Description
pid int32
ppid int32
state string
threads int32
cpu_time double
virtual_memory uint64
resident_memory uint64
command string
executable string
args string

ProcessesResponse

rpc processes

Field Type Label Description
messages Process repeated

ReadRequest

Field Type Label Description
path string

Reboot

rpc reboot The reboot message containing the reboot status.

Field Type Label Description
metadata common.Metadata

RebootResponse

Field Type Label Description
messages Reboot repeated

RemoveBootkubeInitializedKey

RemoveBootkubeInitializedKeyResponse describes the response to a RemoveBootkubeInitializedKey request.

Field Type Label Description
metadata common.Metadata

RemoveBootkubeInitializedKeyResponse

Field Type Label Description
messages RemoveBootkubeInitializedKey repeated

Reset

The reset message containing the restart status.

Field Type Label Description
metadata common.Metadata

ResetPartitionSpec

rpc reset

Field Type Label Description
label string
wipe bool

ResetRequest

Field Type Label Description
graceful bool Graceful indicates whether node should leave etcd before the upgrade, it also enforces etcd checks before leaving.
reboot bool Reboot indicates whether node should reboot or halt after resetting.
system_partitions_to_wipe ResetPartitionSpec repeated System_partitions_to_wipe lists specific system disk partitions to be reset (wiped). If system_partitions_to_wipe is empty, all the partitions are erased.

ResetResponse

Field Type Label Description
messages Reset repeated

Restart

Field Type Label Description
metadata common.Metadata

RestartEvent

Field Type Label Description
cmd int64

RestartRequest

rpc restart The request message containing the process to restart.

Field Type Label Description
namespace string
id string
driver common.ContainerDriver driver might be default "containerd" or "cri"

RestartResponse

The messages message containing the restart status.

Field Type Label Description
messages Restart repeated

Rollback

Field Type Label Description
metadata common.Metadata

RollbackRequest

rpc rollback

RollbackResponse

Field Type Label Description
messages Rollback repeated

RouteConfig

Field Type Label Description
network string
gateway string
metric uint32

SequenceEvent

rpc events

Field Type Label Description
sequence string
action SequenceEvent.Action
error common.Error

ServiceEvent

Field Type Label Description
msg string
state string
ts google.protobuf.Timestamp

ServiceEvents

Field Type Label Description
events ServiceEvent repeated

ServiceHealth

Field Type Label Description
unknown bool
healthy bool
last_message string
last_change google.protobuf.Timestamp

ServiceInfo

Field Type Label Description
id string
state string
events ServiceEvents
health ServiceHealth

ServiceList

rpc servicelist

Field Type Label Description
metadata common.Metadata
services ServiceInfo repeated

ServiceListResponse

Field Type Label Description
messages ServiceList repeated

ServiceRestart

Field Type Label Description
metadata common.Metadata
resp string

ServiceRestartRequest

Field Type Label Description
id string

ServiceRestartResponse

Field Type Label Description
messages ServiceRestart repeated

ServiceStart

Field Type Label Description
metadata common.Metadata
resp string

ServiceStartRequest

rpc servicestart

Field Type Label Description
id string

ServiceStartResponse

Field Type Label Description
messages ServiceStart repeated

ServiceStateEvent

Field Type Label Description
service string
action ServiceStateEvent.Action
message string
health ServiceHealth

ServiceStop

Field Type Label Description
metadata common.Metadata
resp string

ServiceStopRequest

Field Type Label Description
id string

ServiceStopResponse

Field Type Label Description
messages ServiceStop repeated

Shutdown

rpc shutdown The messages message containing the shutdown status.

Field Type Label Description
metadata common.Metadata

ShutdownResponse

Field Type Label Description
messages Shutdown repeated

SoftIRQStat

Field Type Label Description
hi uint64
timer uint64
net_tx uint64
net_rx uint64
block uint64
block_io_poll uint64
tasklet uint64
sched uint64
hrtimer uint64
rcu uint64

StartRequest

Field Type Label Description
id string

StartResponse

Field Type Label Description
resp string

Stat

The messages message containing the requested stat.

Field Type Label Description
namespace string
id string
memory_usage uint64
cpu_usage uint64
pod_id string
name string

Stats

The messages message containing the requested stats.

Field Type Label Description
metadata common.Metadata
stats Stat repeated

StatsRequest

The request message containing the containerd namespace.

Field Type Label Description
namespace string
driver common.ContainerDriver driver might be default "containerd" or "cri"

StatsResponse

Field Type Label Description
messages Stats repeated

StopRequest

Field Type Label Description
id string

StopResponse

Field Type Label Description
resp string

SystemStat

Field Type Label Description
metadata common.Metadata
boot_time uint64
cpu_total CPUStat
cpu CPUStat repeated
irq_total uint64
irq uint64 repeated
context_switches uint64
process_created uint64
process_running uint64
process_blocked uint64
soft_irq_total uint64
soft_irq SoftIRQStat

SystemStatResponse

Field Type Label Description
messages SystemStat repeated

TaskEvent

Field Type Label Description
task string
action TaskEvent.Action

Upgrade

Field Type Label Description
metadata common.Metadata
ack string

UpgradeRequest

rpc upgrade

Field Type Label Description
image string
preserve bool
stage bool
force bool

UpgradeResponse

Field Type Label Description
messages Upgrade repeated

Version

Field Type Label Description
metadata common.Metadata
version VersionInfo
platform PlatformInfo
features FeaturesInfo Features describe individual Talos features that can be switched on or off.

VersionInfo

Field Type Label Description
tag string
sha string
built string
go_version string
os string
arch string

VersionResponse

Field Type Label Description
messages Version repeated

ListRequest.Type

File type.

Name Number Description
REGULAR 0 Regular file (not directory, symlink, etc).
DIRECTORY 1 Directory.
SYMLINK 2 Symbolic link.

MachineConfig.MachineType

Name Number Description
TYPE_UNKNOWN 0
TYPE_INIT 1
TYPE_CONTROL_PLANE 2
TYPE_JOIN 3

PhaseEvent.Action

Name Number Description
START 0
STOP 1

SequenceEvent.Action

Name Number Description
NOOP 0
START 1
STOP 2

ServiceStateEvent.Action

Name Number Description
INITIALIZED 0
PREPARING 1
WAITING 2
RUNNING 3
STOPPING 4
FINISHED 5
FAILED 6
SKIPPED 7

TaskEvent.Action

Name Number Description
START 0
STOP 1

MachineService

The machine service definition.

Method Name Request Type Response Type Description
ApplyConfiguration ApplyConfigurationRequest ApplyConfigurationResponse
Bootstrap BootstrapRequest BootstrapResponse
Containers ContainersRequest ContainersResponse
Copy CopyRequest .common.Data stream
CPUInfo .google.protobuf.Empty CPUInfoResponse
DiskStats .google.protobuf.Empty DiskStatsResponse
Dmesg DmesgRequest .common.Data stream
Events EventsRequest Event stream
EtcdMemberList EtcdMemberListRequest EtcdMemberListResponse
EtcdRemoveMember EtcdRemoveMemberRequest EtcdRemoveMemberResponse
EtcdLeaveCluster EtcdLeaveClusterRequest EtcdLeaveClusterResponse
EtcdForfeitLeadership EtcdForfeitLeadershipRequest EtcdForfeitLeadershipResponse
EtcdRecover .common.Data stream EtcdRecoverResponse EtcdRecover method uploads etcd data snapshot created with EtcdSnapshot to the node.

Snapshot can be later used to recover the cluster via Bootstrap method. | | EtcdSnapshot | EtcdSnapshotRequest | .common.Data stream | EtcdSnapshot method creates etcd data snapshot (backup) from the local etcd instance and streams it back to the client.

This method is available only on control plane nodes (which run etcd). | | GenerateConfiguration | GenerateConfigurationRequest | GenerateConfigurationResponse | | | Hostname | .google.protobuf.Empty | HostnameResponse | | | Kubeconfig | .google.protobuf.Empty | .common.Data stream | | | List | ListRequest | FileInfo stream | | | DiskUsage | DiskUsageRequest | DiskUsageInfo stream | | | LoadAvg | .google.protobuf.Empty | LoadAvgResponse | | | Logs | LogsRequest | .common.Data stream | | | Memory | .google.protobuf.Empty | MemoryResponse | | | Mounts | .google.protobuf.Empty | MountsResponse | | | NetworkDeviceStats | .google.protobuf.Empty | NetworkDeviceStatsResponse | | | Processes | .google.protobuf.Empty | ProcessesResponse | | | Read | ReadRequest | .common.Data stream | | | Reboot | .google.protobuf.Empty | RebootResponse | | | Restart | RestartRequest | RestartResponse | | | Rollback | RollbackRequest | RollbackResponse | | | Reset | ResetRequest | ResetResponse | | | RemoveBootkubeInitializedKey | .google.protobuf.Empty | RemoveBootkubeInitializedKeyResponse | | | ServiceList | .google.protobuf.Empty | ServiceListResponse | | | ServiceRestart | ServiceRestartRequest | ServiceRestartResponse | | | ServiceStart | ServiceStartRequest | ServiceStartResponse | | | ServiceStop | ServiceStopRequest | ServiceStopResponse | | | Shutdown | .google.protobuf.Empty | ShutdownResponse | | | Stats | StatsRequest | StatsResponse | | | SystemStat | .google.protobuf.Empty | SystemStatResponse | | | Upgrade | UpgradeRequest | UpgradeResponse | | | Version | .google.protobuf.Empty | VersionResponse | | | GenerateClientConfiguration | GenerateClientConfigurationRequest | GenerateClientConfigurationResponse | GenerateClientConfiguration generates talosctl client configuration (talosconfig). |

Top

network/network.proto

Interface

Interface represents a net.Interface

Field Type Label Description
index uint32
mtu uint32
name string
hardwareaddr string
flags InterfaceFlags
ipaddress string repeated

Interfaces

Field Type Label Description
metadata common.Metadata
interfaces Interface repeated

InterfacesResponse

Field Type Label Description
messages Interfaces repeated

Route

The messages message containing a route.

Field Type Label Description
interface string Interface is the interface over which traffic to this destination should be sent
destination string Destination is the network prefix CIDR which this route provides
gateway string Gateway is the gateway address to which traffic to this destination should be sent
metric uint32 Metric is the priority of the route, where lower metrics have higher priorities
scope uint32 Scope desribes the scope of this route
source string Source is the source prefix CIDR for the route, if one is defined
family AddressFamily Family is the address family of the route. Currently, the only options are AF_INET (IPV4) and AF_INET6 (IPV6).
protocol RouteProtocol Protocol is the protocol by which this route came to be in place
flags uint32 Flags indicate any special flags on the route

Routes

Field Type Label Description
metadata common.Metadata
routes Route repeated

RoutesResponse

The messages message containing the routes.

Field Type Label Description
messages Routes repeated

AddressFamily

Name Number Description
AF_UNSPEC 0
AF_INET 2
IPV4 2
AF_INET6 10
IPV6 10

InterfaceFlags

Name Number Description
FLAG_UNKNOWN 0
FLAG_UP 1
FLAG_BROADCAST 2
FLAG_LOOPBACK 3
FLAG_POINT_TO_POINT 4
FLAG_MULTICAST 5

RouteProtocol

Name Number Description
RTPROT_UNSPEC 0
RTPROT_REDIRECT 1 Route installed by ICMP redirects
RTPROT_KERNEL 2 Route installed by kernel
RTPROT_BOOT 3 Route installed during boot
RTPROT_STATIC 4 Route installed by administrator
RTPROT_GATED 8 Route installed by gated
RTPROT_RA 9 Route installed by router advertisement
RTPROT_MRT 10 Route installed by Merit MRT
RTPROT_ZEBRA 11 Route installed by Zebra/Quagga
RTPROT_BIRD 12 Route installed by Bird
RTPROT_DNROUTED 13 Route installed by DECnet routing daemon
RTPROT_XORP 14 Route installed by XORP
RTPROT_NTK 15 Route installed by Netsukuku
RTPROT_DHCP 16 Route installed by DHCP
RTPROT_MROUTED 17 Route installed by Multicast daemon
RTPROT_BABEL 42 Route installed by Babel daemon

NetworkService

The network service definition.

Method Name Request Type Response Type Description
Routes .google.protobuf.Empty RoutesResponse
Interfaces .google.protobuf.Empty InterfacesResponse

Top

resource/resource.proto

Get

The GetResponse message contains the Resource returned.

Field Type Label Description
metadata common.Metadata
definition Resource
resource Resource

GetRequest

rpc Get

Field Type Label Description
namespace string
type string
id string

GetResponse

Field Type Label Description
messages Get repeated

ListRequest

rpc List The ListResponse message contains the Resource returned.

Field Type Label Description
namespace string
type string

ListResponse

Field Type Label Description
metadata common.Metadata
definition Resource
resource Resource

Metadata

Field Type Label Description
namespace string
type string
id string
version string
owner string
phase string
created google.protobuf.Timestamp
updated google.protobuf.Timestamp
finalizers string repeated

Resource

Field Type Label Description
metadata Metadata
spec Spec

Spec

Field Type Label Description
yaml bytes

WatchRequest

rpc Watch The WatchResponse message contains the Resource returned.

Field Type Label Description
namespace string
type string
id string
tail_events uint32

WatchResponse

Field Type Label Description
metadata common.Metadata
event_type EventType
definition Resource
resource Resource

EventType

Name Number Description
CREATED 0
UPDATED 1
DESTROYED 2

ResourceService

The resource service definition.

ResourceService provides user-facing API for the Talos resources.

Method Name Request Type Response Type Description
Get GetRequest GetResponse
List ListRequest ListResponse stream
Watch WatchRequest WatchResponse stream

Top

security/security.proto

CertificateRequest

The request message containing the process name.

Field Type Label Description
csr bytes

CertificateResponse

The response message containing the requested logs.

Field Type Label Description
ca bytes
crt bytes

SecurityService

The security service definition.

Method Name Request Type Response Type Description
Certificate CertificateRequest CertificateResponse

Top

storage/storage.proto

Disk

Disk represents a disk.

Field Type Label Description
size uint64 Size indicates the disk size in bytes.
model string Model idicates the disk model.
device_name string DeviceName indicates the disk name (e.g. sda).
name string Name as in /sys/block/<dev>/device/name.
serial string Serial as in /sys/block/<dev>/device/serial.
modalias string Modalias as in /sys/block/<dev>/device/modalias.
uuid string Uuid as in /sys/block/<dev>/device/uuid.
wwid string Wwid as in /sys/block/<dev>/device/wwid.
type Disk.DiskType Type is a type of the disk: nvme, ssd, hdd, sd card.

Disks

DisksResponse represents the response of the Disks RPC.

Field Type Label Description
metadata common.Metadata
disks Disk repeated

DisksResponse

Field Type Label Description
messages Disks repeated

Disk.DiskType

Name Number Description
UNKNOWN 0
SSD 1
HDD 2
NVME 3
SD 4

StorageService

StorageService represents the storage service.

Method Name Request Type Response Type Description
Disks .google.protobuf.Empty DisksResponse

Top

time/time.proto

Time

Field Type Label Description
metadata common.Metadata
server string
localtime google.protobuf.Timestamp
remotetime google.protobuf.Timestamp

TimeRequest

The response message containing the ntp server

Field Type Label Description
server string

TimeResponse

The response message containing the ntp server, time, and offset

Field Type Label Description
messages Time repeated

TimeService

The time service definition.

Method Name Request Type Response Type Description
Time .google.protobuf.Empty TimeResponse
TimeCheck TimeRequest TimeResponse

Scalar Value Types

.proto Type Notes C++ Java Python Go C# PHP Ruby
double double double float float64 double float Float
float float float float float32 float float Float
int32 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. int32 int int int32 int integer Bignum or Fixnum (as required)
int64 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. int64 long int/long int64 long integer/string Bignum
uint32 Uses variable-length encoding. uint32 int int/long uint32 uint integer Bignum or Fixnum (as required)
uint64 Uses variable-length encoding. uint64 long int/long uint64 ulong integer/string Bignum or Fixnum (as required)
sint32 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. int32 int int int32 int integer Bignum or Fixnum (as required)
sint64 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. int64 long int/long int64 long integer/string Bignum
fixed32 Always four bytes. More efficient than uint32 if values are often greater than 2^28. uint32 int int uint32 uint integer Bignum or Fixnum (as required)
fixed64 Always eight bytes. More efficient than uint64 if values are often greater than 2^56. uint64 long int/long uint64 ulong integer/string Bignum
sfixed32 Always four bytes. int32 int int int32 int integer Bignum or Fixnum (as required)
sfixed64 Always eight bytes. int64 long int/long int64 long integer/string Bignum
bool bool boolean boolean bool bool boolean TrueClass/FalseClass
string A string must always contain UTF-8 encoded or 7-bit ASCII text. string String str/unicode string string string String (UTF-8)
bytes May contain any arbitrary sequence of bytes. string ByteString str []byte ByteString string String (ASCII-8BIT)