syntax = "proto3";

package time;

option go_package = "github.com/talos-systems/talos/pkg/machinery/api/time";

import "google/protobuf/empty.proto";
import "google/protobuf/timestamp.proto";
import "common/common.proto";

// The time service definition.
service TimeService {
  rpc Time(google.protobuf.Empty) returns (TimeResponse);
  rpc TimeCheck(TimeRequest) returns (TimeResponse);
}

// The response message containing the ntp server
message TimeRequest { string server = 1; }

message Time {
  common.Metadata metadata = 1;
  string server = 2;
  google.protobuf.Timestamp localtime = 3;
  google.protobuf.Timestamp remotetime = 4;
}

// The response message containing the ntp server, time, and offset
message TimeResponse { repeated Time messages = 1; }
