syntax = "proto3";

package slash.api.v2;

import "api/v2/common.proto";
import "google/api/annotations.proto";
import "google/api/client.proto";

option go_package = "gen/api/v2";

service UserService {
  rpc GetUser(GetUserRequest) returns (GetUserResponse) {
    option (google.api.http) = {get: "/api/v2/users/{email}"};
    option (google.api.method_signature) = "email";
  }
}

message User {
  int32 id = 1;

  RowStatus row_status = 2;

  int64 created_ts = 3;

  int64 updated_ts = 4;

  Role role = 6;

  string email = 7;

  string nickname = 8;
}

enum Role {
  ROLE_UNSPECIFIED = 0;

  ADMIN = 1;

  USER = 2;
}

message GetUserRequest {
  string email = 1;
}

message GetUserResponse {
  User user = 1;
}
