mirror of
https://github.com/chirpstack/chirpstack.git
synced 2025-01-29 15:13:52 +00:00
122 lines
2.9 KiB
Protocol Buffer
Vendored
122 lines
2.9 KiB
Protocol Buffer
Vendored
syntax = "proto3";
|
|
|
|
package api;
|
|
|
|
option go_package = "github.com/chirpstack/chirpstack/api/go/v4/api";
|
|
option java_package = "io.chirpstack.api";
|
|
option java_multiple_files = true;
|
|
option java_outer_classname = "RelayProto";
|
|
option csharp_namespace = "Chirpstack.Api";
|
|
option php_namespace = "Chirpstack\\Api";
|
|
option php_metadata_namespace = "GPBMetadata\\Chirpstack\\Api";
|
|
|
|
import "google/api/annotations.proto";
|
|
import "google/protobuf/timestamp.proto";
|
|
import "google/protobuf/empty.proto";
|
|
|
|
// RelayService is the service providing API methos for managing relays.
|
|
service RelayService {
|
|
// List lists the relays for the given application id.
|
|
rpc List(ListRelaysRequest) returns (ListRelaysResponse) {
|
|
option(google.api.http) = {
|
|
get: "/api/relays"
|
|
};
|
|
}
|
|
|
|
// AddDevice adds the given device to the relay.
|
|
rpc AddDevice(AddRelayDeviceRequest) returns (google.protobuf.Empty) {
|
|
option(google.api.http) = {
|
|
post: "/api/relays/{relay_dev_eui}/devices"
|
|
body: "*"
|
|
};
|
|
}
|
|
|
|
// RemoveDevice removes the given device from the relay.
|
|
rpc RemoveDevice(RemoveRelayDeviceRequest) returns (google.protobuf.Empty) {
|
|
option(google.api.http) = {
|
|
delete: "/api/relays/{relay_dev_eui}/devices/{dev_eui}"
|
|
};
|
|
};
|
|
|
|
// ListDevices lists the devices for the given relay.
|
|
rpc ListDevices(ListRelayDevicesRequest) returns (ListRelayDevicesResponse) {
|
|
option(google.api.http) = {
|
|
get: "/api/relays/{relay_dev_eui}/devices"
|
|
};
|
|
};
|
|
}
|
|
|
|
message RelayListItem {
|
|
// DevEUI (EUI64).
|
|
string dev_eui = 1;
|
|
|
|
// Name.
|
|
string name = 2;
|
|
}
|
|
|
|
message ListRelaysRequest {
|
|
// Max number of devices to return in the result-set.
|
|
uint32 limit = 1;
|
|
|
|
// Offset in the result-set (for pagination).
|
|
uint32 offset = 2;
|
|
|
|
// Application ID (UUID).
|
|
string application_id = 3;
|
|
}
|
|
|
|
message ListRelaysResponse {
|
|
// Total number of relays.
|
|
uint32 total_count = 1;
|
|
|
|
// Result-set.
|
|
repeated RelayListItem result = 2;
|
|
}
|
|
|
|
message AddRelayDeviceRequest {
|
|
// Relay DevEUI (EUI64).
|
|
string relay_dev_eui = 1;
|
|
|
|
// Device DevEUI (EUI64).
|
|
string device_dev_eui = 2;
|
|
|
|
}
|
|
|
|
message RemoveRelayDeviceRequest {
|
|
// Relay DevEUI (EUI64).
|
|
string relay_dev_eui = 1;
|
|
|
|
// Device DevEUI (EUI64).
|
|
string device_dev_eui = 2;
|
|
}
|
|
|
|
message ListRelayDevicesRequest {
|
|
// Max number of multicast groups to return in the result-set.
|
|
uint32 limit = 1;
|
|
|
|
// Offset in the result-set (for pagination).
|
|
uint32 offset = 2;
|
|
|
|
// Relay DevEUI (EUI64).
|
|
string relay_dev_eui = 3;
|
|
}
|
|
|
|
message RelayDeviceListItem {
|
|
// DevEUI (EUI64).
|
|
string dev_eui = 1;
|
|
|
|
// Created at timestamp.
|
|
google.protobuf.Timestamp created_at = 2;
|
|
|
|
// Device name.
|
|
string name = 3;
|
|
}
|
|
|
|
message ListRelayDevicesResponse {
|
|
// Total number of devices.
|
|
uint32 total_count = 1;
|
|
|
|
// Result-set.
|
|
repeated RelayDeviceListItem result = 2;
|
|
}
|