syntax = "proto3";

package xos;

import "google/protobuf/empty.proto";
import "google/api/annotations.proto";
import "common.proto";

message LoginRequest {
    string username = 1;
    string password = 2;
};

message LoginResponse {
    string sessionid = 1;
};

service utility {

  rpc Login(LoginRequest) returns (LoginResponse) {
        option (google.api.http) = {
            post: "/xosapi/v1/utility/login"
            body: "*"
        };
  }

  rpc Logout(google.protobuf.Empty) returns (google.protobuf.Empty) {
        option (google.api.http) = {
            post: "/xosapi/v1/utility/logout"
            body: "*"
        };
  }
};
