Files
pyGoEdge-UserPanel/reference/goedge 文档/DNSDomainService.md
2025-11-18 03:36:49 +08:00

554 lines
10 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# DNSDomainService
> DNS域名相关
---
## countAllDNSDomainsWithDNSProviderId
> 计算服务商下的域名数量
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/DNSDomainService/countAllDNSDomainsWithDNSProviderId`
- RPC`rpc countAllDNSDomainsWithDNSProviderId (CountAllDNSDomainsWithDNSProviderIdRequest) returns (RPCCountResponse);`
**请求对象 (`CountAllDNSDomainsWithDNSProviderIdRequest`)**
```json
{
"dnsProviderId": "int64",
"isDeleted": "bool // 是否已删除",
"isDown": "bool"
}
```
**响应对象 (`RPCCountResponse`)**
```json
{
"count": "int64 // 数量"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/DNSDomainService/countAllDNSDomainsWithDNSProviderId" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## createDNSDomain
> 创建域名
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/DNSDomainService/createDNSDomain`
- RPC`rpc createDNSDomain (CreateDNSDomainRequest) returns (CreateDNSDomainResponse);`
**请求对象 (`CreateDNSDomainRequest`)**
```json
{
"dnsProviderId": "int64",
"name": "string // 名称"
}
```
**响应对象 (`CreateDNSDomainResponse`)**
```json
{
"dnsDomainId": "int64"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/DNSDomainService/createDNSDomain" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## deleteDNSDomain
> 删除域名
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/DNSDomainService/deleteDNSDomain`
- RPC`rpc deleteDNSDomain (DeleteDNSDomainRequest) returns (RPCSuccess);`
**请求对象 (`DeleteDNSDomainRequest`)**
```json
{
"dnsDomainId": "int64"
}
```
**响应对象 (`RPCSuccess`)**
```json
{}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/DNSDomainService/deleteDNSDomain" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## existAvailableDomains
> 判断是否有域名可选
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/DNSDomainService/existAvailableDomains`
- RPC`rpc existAvailableDomains (ExistAvailableDomainsRequest) returns (ExistAvailableDomainsResponse);`
**请求对象 (`ExistAvailableDomainsRequest`)**
```json
{}
```
**响应对象 (`ExistAvailableDomainsResponse`)**
```json
{
"exist": "bool"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/DNSDomainService/existAvailableDomains" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## existDNSDomainRecord
> 检查域名是否在记录中
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/DNSDomainService/existDNSDomainRecord`
- RPC`rpc existDNSDomainRecord (ExistDNSDomainRecordRequest) returns (ExistDNSDomainRecordResponse);`
**请求对象 (`ExistDNSDomainRecordRequest`)**
```json
{
"dnsDomainId": "int64",
"name": "string // 名称",
"type": "string // 解析类型比如A, CNAME等",
"route": "string // 线路",
"value": "string // 值"
}
```
**响应对象 (`ExistDNSDomainRecordResponse`)**
```json
{
"isOk": "bool"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/DNSDomainService/existDNSDomainRecord" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## findAllBasicDNSDomainsWithDNSProviderId
> 列出服务商下的所有域名基本信息
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/DNSDomainService/findAllBasicDNSDomainsWithDNSProviderId`
- RPC`rpc findAllBasicDNSDomainsWithDNSProviderId (FindAllBasicDNSDomainsWithDNSProviderIdRequest) returns (FindAllBasicDNSDomainsWithDNSProviderIdResponse);`
**请求对象 (`FindAllBasicDNSDomainsWithDNSProviderIdRequest`)**
```json
{
"dnsProviderId": "int64"
}
```
**响应对象 (`FindAllBasicDNSDomainsWithDNSProviderIdResponse`)**
```json
{
"dnsDomains": "[]DNSDomain"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/DNSDomainService/findAllBasicDNSDomainsWithDNSProviderId" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## findAllDNSDomainRoutes
> 查看支持的线路
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/DNSDomainService/findAllDNSDomainRoutes`
- RPC`rpc findAllDNSDomainRoutes (FindAllDNSDomainRoutesRequest) returns (FindAllDNSDomainRoutesResponse);`
**请求对象 (`FindAllDNSDomainRoutesRequest`)**
```json
{
"dnsDomainId": "int64"
}
```
**响应对象 (`FindAllDNSDomainRoutesResponse`)**
```json
{
"routes": "[]DNSRoute"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/DNSDomainService/findAllDNSDomainRoutes" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## findAllDNSDomainsWithDNSProviderId
> 列出服务商下的所有域名
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/DNSDomainService/findAllDNSDomainsWithDNSProviderId`
- RPC`rpc findAllDNSDomainsWithDNSProviderId (FindAllDNSDomainsWithDNSProviderIdRequest) returns (FindAllDNSDomainsWithDNSProviderIdResponse);`
**请求对象 (`FindAllDNSDomainsWithDNSProviderIdRequest`)**
```json
{
"dnsProviderId": "int64"
}
```
**响应对象 (`FindAllDNSDomainsWithDNSProviderIdResponse`)**
```json
{
"dnsDomains": "[]DNSDomain"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/DNSDomainService/findAllDNSDomainsWithDNSProviderId" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## findBasicDNSDomain
> 查询单个域名基础信息
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/DNSDomainService/findBasicDNSDomain`
- RPC`rpc findBasicDNSDomain (FindBasicDNSDomainRequest) returns (FindBasicDNSDomainResponse);`
**请求对象 (`FindBasicDNSDomainRequest`)**
```json
{
"dnsDomainId": "int64"
}
```
**响应对象 (`FindBasicDNSDomainResponse`)**
```json
{
"dnsDomain": "DNSDomain"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/DNSDomainService/findBasicDNSDomain" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## findDNSDomain
> 查询单个域名完整信息
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/DNSDomainService/findDNSDomain`
- RPC`rpc findDNSDomain (FindDNSDomainRequest) returns (FindDNSDomainResponse);`
**请求对象 (`FindDNSDomainRequest`)**
```json
{
"dnsDomainId": "int64"
}
```
**响应对象 (`FindDNSDomainResponse`)**
```json
{
"dnsDomain": "DNSDomain"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/DNSDomainService/findDNSDomain" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## listBasicDNSDomainsWithDNSProviderId
> 列出服务商下的单页域名信息
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/DNSDomainService/listBasicDNSDomainsWithDNSProviderId`
- RPC`rpc listBasicDNSDomainsWithDNSProviderId (ListBasicDNSDomainsWithDNSProviderIdRequest) returns (ListDNSDomainsWithDNSProviderIdResponse);`
**请求对象 (`ListBasicDNSDomainsWithDNSProviderIdRequest`)**
```json
{
"dnsProviderId": "int64",
"isDeleted": "bool // 是否已删除",
"isDown": "bool",
"offset": "int64 // 读取位置",
"size": "int64 // 数量通常不能小于0"
}
```
**响应对象 (`ListDNSDomainsWithDNSProviderIdResponse`)**
```json
{
"dnsDomains": "[]DNSDomain"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/DNSDomainService/listBasicDNSDomainsWithDNSProviderId" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## recoverDNSDomain
> 恢复删除的域名
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/DNSDomainService/recoverDNSDomain`
- RPC`rpc recoverDNSDomain (RecoverDNSDomainRequest) returns (RPCSuccess);`
**请求对象 (`RecoverDNSDomainRequest`)**
```json
{
"dnsDomainId": "int64"
}
```
**响应对象 (`RPCSuccess`)**
```json
{}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/DNSDomainService/recoverDNSDomain" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## syncDNSDomainData
> 同步域名解析
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/DNSDomainService/syncDNSDomainData`
- RPC`rpc syncDNSDomainData (SyncDNSDomainDataRequest) returns (SyncDNSDomainDataResponse);`
**请求对象 (`SyncDNSDomainDataRequest`)**
```json
{
"dnsDomainId": "int64",
"nodeClusterId": "int64 // 如果指定表示只更新单个集群ID",
"checkNodeIssues": "bool // 是否检查节点问题"
}
```
**响应对象 (`SyncDNSDomainDataResponse`)**
```json
{
"isOk": "bool",
"error": "string",
"shouldFix": "bool"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/DNSDomainService/syncDNSDomainData" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## syncDNSDomainsFromProvider
> 从服务商同步域名
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/DNSDomainService/syncDNSDomainsFromProvider`
- RPC`rpc syncDNSDomainsFromProvider(SyncDNSDomainsFromProviderRequest) returns (SyncDNSDomainsFromProviderResponse);`
**请求对象 (`SyncDNSDomainsFromProviderRequest`)**
```json
{
"dnsProviderId": "int64"
}
```
**响应对象 (`SyncDNSDomainsFromProviderResponse`)**
```json
{
"hasChanges": "bool"
}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/DNSDomainService/syncDNSDomainsFromProvider" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---
## updateDNSDomain
> 修改域名
- 角色:`admin`
- HTTP`POST https://backend.dooki.cloud/DNSDomainService/updateDNSDomain`
- RPC`rpc updateDNSDomain (UpdateDNSDomainRequest) returns (RPCSuccess);`
**请求对象 (`UpdateDNSDomainRequest`)**
```json
{
"dnsDomainId": "int64",
"name": "string // 名称",
"isOn": "bool // 是否启用"
}
```
**响应对象 (`RPCSuccess`)**
```json
{}
```
**调用示例**
```bash
curl -X POST "https://backend.dooki.cloud/DNSDomainService/updateDNSDomain" \
-H "Content-Type: application/json" \
-H "X-Edge-Access-Token: <YOUR_TOKEN>" \
-d '{
...
}'
```
---