Documentation
syntax = "proto3";

package api;

// 定义搜索服务
service SearchService
{
  // 搜索方法
  rpc Search(SearchReq) returns (SearchRes);
}

// 搜索请求消息
message SearchReq
{
  // 搜索查询字符串
  string query = 1;
  // 用户 ID
  uint64 uid = 2;
  // 组织 ID
  uint64 org_id = 3;
  // 仓库 ID 列表
  repeated uint64 repo_id_li = 4;
  // 标签列表
  repeated string tag_li = 5;
  // 开始时间戳 (可选)
  optional uint64 ts_begin = 6;
  // 结束时间戳 (可选)
  optional uint64 ts_end = 7;
  // 返回结果数量限制
  uint64 limit = 8;
  // 结果偏移量
  uint64 offset = 9;
}

// 搜索响应消息
message SearchRes
{
  // 匹配的文档 ID 列表
  repeated uint64 li = 1;
  // 当 offset = 0 时,返回的总匹配数
  uint64 count = 2;
}