Hub Trait
API Service: HubApi
Method | Request Type | Response Type | Description |
---|---|---|---|
GetHubNode | GetHubNodeRequest | HubNode | |
ListHubNodes | ListHubNodesRequest | ListHubNodesResponse | |
PullHubNodes | PullHubNodesRequest | PullHubNodesResponse stream | |
InspectHubNode | InspectHubNodeRequest | HubNodeInspection | Query the hub node for information that can be used to knowledgeably enroll that node with this hub. This request will return both the node metadata and public certificates presented by the node. |
EnrollHubNode | EnrollHubNodeRequest | HubNode | Enroll the node with this hub. Enrollment involves the hub signing the nodes public key and issuing that cert to the node. A node can only be enrolled with one hub, the first to enroll the node wins. Use RenewHubNode to refresh the certificate issued to the node. |
RenewHubNode | RenewHubNodeRequest | HubNode | Re-sign and re-issue a certificate to the node. Fails if the node isn't already enrolled. |
TestHubNode | TestHubNodeRequest | TestHubNodeResponse | Test that communications with an enrolled node is working. This checks communication and the TLS stack, only returning success if the node presents a public certificate signed by this hub. |
ForgetHubNode | ForgetHubNodeRequest | ForgetHubNodeResponse | Forget a node that was previously enrolled with this hub. |
HubNode
Field Name | Type | Description |
---|---|---|
address | string | |
name | string | |
description | string |
HubNodeInspection
Field Name | Type | Description |
---|---|---|
metadata | smartcore.traits.Metadata | Metadata that the node advertises at its root. |
public_certs | repeated string | The public certificates the node presents during HTTPS handshakes. This will contain PEM encoded x509 certificates. |
GetHubNodeRequest
Field Name | Type | Description |
---|---|---|
address | string |
EnrollHubNodeRequest
Field Name | Type | Description |
---|---|---|
node | HubNode | |
public_certs | repeated string | If provided, only if the node presents these certificates will the enrollment proceed. Can be used along with InspectHubNode to ensure the correct node is enrolled. This should contain PEM encoded x509 certificates as returned by InspectHubNode. |
RenewHubNodeRequest
Field Name | Type | Description |
---|---|---|
address | string |
ListHubNodesRequest
No fields defined.
ListHubNodesResponse
Field Name | Type | Description |
---|---|---|
nodes | repeated HubNode |
PullHubNodesRequest
Field Name | Type | Description |
---|---|---|
updates_only | bool | When true the device will only send changes to the resource value. The default behaviour is to send the current value immediately followed by any updates as they happen. |
PullHubNodesResponse
Field Name | Type | Description |
---|---|---|
changes | repeated PullHubNodesResponse.Change |
PullHubNodesResponse.Change
Field Name | Type | Description |
---|---|---|
type | smartcore.types.ChangeType | The type of change (e.g. ADD, UPDATE, etc...) |
new_value | HubNode | The new value to use for ADD |
old_value | HubNode | The old value to use for UPDATE |
change_time | google.protobuf.Timestamp | When the change occurred |
InspectHubNodeRequest
Field Name | Type | Description |
---|---|---|
node | HubNode |
TestHubNodeRequest
Field Name | Type | Description |
---|---|---|
address | string |
TestHubNodeResponse
No fields defined.
ForgetHubNodeRequest
Field Name | Type | Description |
---|---|---|
address | string | |
allow_missing | bool | When true, no error will be returned if the hub is not already enrolled. |
ForgetHubNodeResponse
No fields defined.