syntax = "proto3"; import "google/protobuf/timestamp.proto"; package authenticate; service Authenticator { rpc Authenticate(AuthenticateRequest) returns (Session) {} rpc Validate(ValidateRequest) returns (ValidateReply) {} rpc Refresh(Session) returns (Session) {} } message AuthenticateRequest { string code = 1; } message ValidateRequest { string id_token = 1; } message ValidateReply { bool is_valid = 1; } message Session { string access_token = 1; string refresh_token = 2; string id_token = 3; string user = 4; string email = 5; repeated string groups = 6; google.protobuf.Timestamp refresh_deadline = 7; google.protobuf.Timestamp lifetime_deadline = 8; }