封禁规则(kicking-rule)
构建时从公开 REST 接口定义的 `ban-rules` 标签生成:方法、路径、参数、请求体、响应与 curl。
分组概览
本页由公开 REST 接口定义在构建时生成:标签 ban-rules,共 4 个操作(全量 189 个)。鉴权、信封与分页约定见 REST API 总览.
| 方法 | 路径 | 摘要 |
|---|---|---|
GET | /v1/ban-rules | List kicking rules |
POST | /v1/ban-rules | Create a kicking rule |
PATCH | /v1/ban-rules/{id} | Update a kicking rule |
DELETE | /v1/ban-rules/{id} | Delete a kicking rule |
操作详情
GET /v1/ban-rules
List kicking rules
鉴权:项目凭证(customerId:customerSecret 的 Base64)
参数
| 名称 | 位置 | 必填 | 类型 | 说明 |
|---|---|---|---|---|
channelName | query | string | ||
uid | query | integer |
响应
| 状态码 | 说明 / schema |
|---|---|
200 | rules — object{ total, rules } |
调用示例
curl -s -X GET "$NIMEET_API_BASE/v1/ban-rules?channelName=weekly-sync&uid=10001" \
-H "Authorization: Basic $NIMEET_CUSTOMER_BASIC"POST /v1/ban-rules
Create a kicking rule
鉴权:项目凭证(customerId:customerSecret 的 Base64)
请求体
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
channelName | string | ||
uid | integer | ||
ip | string | ||
privileges | array<enum(join_channel | publish_audio | publish_video)> | ||
durationSeconds | integer | 默认 3600 |
{
"channelName": "weekly-sync",
"uid": 10001,
"privileges": [
"join_channel"
],
"durationSeconds": 600
}响应
| 状态码 | 说明 / schema |
|---|---|
201 | created — BanRule |
调用示例
curl -s -X POST "$NIMEET_API_BASE/v1/ban-rules" \
-H "Authorization: Basic $NIMEET_CUSTOMER_BASIC" \
-H "Content-Type: application/json" \
-d '{"channelName":"weekly-sync","uid":10001,"privileges":["join_channel"],"durationSeconds":600}'PATCH /v1/ban-rules/{id}
Update a kicking rule
鉴权:项目凭证(customerId:customerSecret 的 Base64)
参数
| 名称 | 位置 | 必填 | 类型 | 说明 |
|---|---|---|---|---|
id | path | 是 | string | 长度 0..128 |
请求体
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
durationSeconds | integer | ||
privileges | array<string> |
{
"durationSeconds": 120,
"privileges": [
"join_channel"
]
}响应
| 状态码 | 说明 / schema |
|---|---|
200 | the updated kicking rule — BanRule |
400 | Invalid parameter — Error |
404 | Resource not found — Error |
调用示例
curl -s -X PATCH "$NIMEET_API_BASE/v1/ban-rules/weekly-sync_1a2b" \
-H "Authorization: Basic $NIMEET_CUSTOMER_BASIC" \
-H "Content-Type: application/json" \
-d '{"durationSeconds":120,"privileges":["join_channel"]}'DELETE /v1/ban-rules/{id}
Delete a kicking rule
鉴权:项目凭证(customerId:customerSecret 的 Base64)
参数
| 名称 | 位置 | 必填 | 类型 | 说明 |
|---|---|---|---|---|
id | path | 是 | string | 长度 0..128 |
响应
| 状态码 | 说明 / schema |
|---|---|
204 | deleted |
404 | Resource not found — Error |
调用示例
curl -s -X DELETE "$NIMEET_API_BASE/v1/ban-rules/weekly-sync_1a2b" \
-H "Authorization: Basic $NIMEET_CUSTOMER_BASIC"本分组用到的 Schema
BanRule — object
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
id | integer | ||
channelName | string | null | ||
uid | integer | null | ||
ip | string | null | ||
privileges | array<enum(join_channel | publish_audio | publish_video)> | ||
expireAt | string | null | format date-time | |
createdAt | string | format date-time |
Error — object{ code, message, reason, sdkCode, details }
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
code | string | 是 | stable machine code, see errors.json |
message | string | 是 | |
reason | string | ||
sdkCode | integer | Agora-aligned client error number | |
details | object |