syntax = "proto3"; option go_package = "./pb"; package pb; import "models/model_ns_domain.proto"; import "models/rpc_messages.proto"; // 域名相关服务 service NSDomainService { // 创建单个域名 rpc createNSDomain (CreateNSDomainRequest) returns (CreateNSDomainResponse); // 批量创建域名 rpc createNSDomains(CreateNSDomainsRequest) returns (CreateNSDomainsResponse); // 修改域名 rpc updateNSDomain (UpdateNSDomainRequest) returns (RPCSuccess); // 修改域名状态 rpc updateNSDomainStatus(UpdateNSDomainStatusRequest) returns (RPCSuccess); // 删除域名 rpc deleteNSDomain (DeleteNSDomainRequest) returns (RPCSuccess); // 批量删除域名 rpc deleteNSDomains(DeleteNSDomainsRequest) returns (RPCSuccess); // 查找单个域名 rpc findNSDomain (FindNSDomainRequest) returns (FindNSDomainResponse); // 根据域名名称查找域名 rpc findNSDomainWithName(FindNSDomainWithNameRequest) returns (FindNSDomainWithNameResponse); // 根据域名名称查找集群中的已验证域名 rpc findVerifiedNSDomainOnCluster(FindVerifiedNSDomainOnClusterRequest) returns (FindVerifiedNSDomainOnClusterResponse); // 计算域名数量 rpc countAllNSDomains (CountAllNSDomainsRequest) returns (RPCCountResponse); // 列出单页域名 rpc listNSDomains (ListNSDomainsRequest) returns (ListNSDomainsResponse); // 根据版本列出一组域名 rpc listNSDomainsAfterVersion (ListNSDomainsAfterVersionRequest) returns (ListNSDomainsAfterVersionResponse); // 查找TSIG配置 rpc findNSDomainTSIG (FindNSDomainTSIGRequest) returns (FindNSDomainTSIGResponse); // 修改TSIG配置 rpc updateNSDomainTSIG (UpdateNSDomainTSIGRequest) returns (RPCSuccess); // 检查一组域名是否在用户账户中存在 rpc existNSDomains(ExistNSDomainsRequest) returns (ExistNSDomainsResponse); // 检查一组域名是否已通过验证 rpc existVerifiedNSDomains(ExistVerifiedNSDomainsRequest) returns (ExistVerifiedNSDomainsResponse); // 获取域名验证信息 rpc findNSDomainVerifyingInfo(FindNSDomainVerifyingInfoRequest) returns (FindNSDomainVerifyingInfoResponse); // 验证域名信息 rpc verifyNSDomain(VerifyNSDomainRequest) returns (VerifyNSDomainResponse); // 查询记录健康检查全局设置 rpc findNSDomainRecordsHealthCheck(FindNSDomainRecordsHealthCheckRequest) returns (FindNSDomainRecordsHealthCheckResponse); // 修改记录健康检查全局设置 rpc updateNSDomainRecordsHealthCheck(UpdateNSDomainRecordsHealthCheckRequest) returns (RPCSuccess); } // 创建单个域名 message CreateNSDomainRequest { int64 nsClusterId = 1; // 所属集群 int64 userId = 2; // 所属用户 string name = 3; // 域名 repeated int64 nsDomainGroupIds = 4; // 域名分组ID } message CreateNSDomainResponse { int64 nsDomainId = 1; } // 批量创建域名 message CreateNSDomainsRequest { int64 nsClusterId = 1; // 所属集群 int64 userId = 2; // 所属用户 repeated string names = 3; // 一组域名 repeated int64 nsDomainGroupIds = 4; // 域名分组ID } message CreateNSDomainsResponse { repeated int64 nsDomainIds = 1; } // 修改域名 // 注意:名称不允许修改 message UpdateNSDomainRequest { int64 nsDomainId = 1; int64 nsClusterId = 2; int64 userId = 3; repeated int64 nsDomainGroupIds = 5; // 域名分组ID bool isOn = 4; } // 修改域名状态 message UpdateNSDomainStatusRequest { int64 nsDomainId = 1; string status = 2; } // 删除域名 message DeleteNSDomainRequest { int64 nsDomainId = 1; } // 批量删除域名 message DeleteNSDomainsRequest { repeated string names = 1; int64 userId = 2; // 域名所属用户ID } // 查找单个域名 message FindNSDomainRequest { int64 nsDomainId = 1; // 域名ID } message FindNSDomainResponse { NSDomain nsDomain = 1; } // 根据域名名称查找域名 message FindNSDomainWithNameRequest { int64 userId = 2; // 用户ID,只有管理员才能指定用户 string name = 1; // 域名 } message FindNSDomainWithNameResponse { NSDomain nsDomain = 1; } // 根据域名名称查找集群中的已验证域名 message FindVerifiedNSDomainOnClusterRequest { int64 nsClusterId = 1; // 集群ID string name = 2; // 域名 } message FindVerifiedNSDomainOnClusterResponse { NSDomain nsDomain = 1; } // 计算域名数量 message CountAllNSDomainsRequest { int64 userId = 1; int64 nsClusterId = 2; string keyword = 3; int64 nsDomainGroupId = 4; string status = 5; } // 列出单页域名 message ListNSDomainsRequest { int64 userId = 1; int64 nsClusterId = 2; string keyword = 3; int64 nsDomainGroupId = 6; int64 offset = 4; int64 size = 5; } message ListNSDomainsResponse { repeated NSDomain nsDomains = 1; } // 根据版本列出一组域名 message ListNSDomainsAfterVersionRequest { int64 version = 1; int64 size = 2; } message ListNSDomainsAfterVersionResponse { repeated NSDomain nsDomains = 1; } // 查找TSIG配置 message FindNSDomainTSIGRequest { int64 nsDomainId = 1; } message FindNSDomainTSIGResponse { bytes tsigJSON = 1; } // 修改TSIG配置 message UpdateNSDomainTSIGRequest { int64 nsDomainId = 1; bytes tsigJSON = 2; } // 检查一组域名是否在用户账户中存在 message ExistNSDomainsRequest { repeated string names = 1; int64 userId = 2; } message ExistNSDomainsResponse { repeated string existingNames = 1; } // 检查一组域名是否已通过验证 message ExistVerifiedNSDomainsRequest { repeated string names = 1; } message ExistVerifiedNSDomainsResponse { repeated string existingNames = 1; } // 获取域名验证信息 message FindNSDomainVerifyingInfoRequest { int64 nsDomainId = 1; // 要验证的域名ID } message FindNSDomainVerifyingInfoResponse { bool requireTXT = 4; // 是否需要TXT验证,如果不需要(值false),则表示用户不需要手动设置TXT,此时 txt 字段内容可能为空 string txt = 1; // TXT记录 int64 expiresAt = 2; // TXT过期时间 string status = 3; // 当前状态 } // 验证域名信息 message VerifyNSDomainRequest { int64 nsDomainId = 1; } message VerifyNSDomainResponse { bool isOk = 1; // 是否成功 string errorCode = 2; // 错误代码 string errorMessage = 3; // 错误消息 repeated string currentTXTValues = 4; // 当前的TXT值 repeated string currentNSValues = 5; // 当前的NS记录值 } // 查询记录健康检查全局设置 message FindNSDomainRecordsHealthCheckRequest { int64 nsDomainId = 1; // 域名ID } message FindNSDomainRecordsHealthCheckResponse { bytes nsDomainRecordsHealthCheckJSON = 1; // 健康检查设置 } // 修改记录健康检查全局设置 message UpdateNSDomainRecordsHealthCheckRequest { int64 nsDomainId = 1; // 域名ID bytes nsDomainRecordsHealthCheckJSON = 2; // 健康检查设置 }