/admin/communication/logs
管理员可按用户ID查询任意用户的通信日志,支持分页和渠道、状态筛选。与普通用户GetLogs接口不同,此接口不受用户隔离限制。参考:ePrivacy Directive 2002/58/EC、CAN-SPAM Act。
Request Parameters
| Name | In | Type | Required | Default | Example | Constraints | Description |
|---|---|---|---|---|---|---|---|
user_id |
query |
string |
No | 目标用户ID(不传返回全部用户的日志) | |||
channel |
query |
string |
No | 发送渠道筛选:sms/email/push | |||
status |
query |
string |
No | 发送状态筛选:pending/sent/failed/delivered | |||
page |
query |
integer |
No | 页码,从1开始(默认1) | |||
page_size |
query |
integer |
No | 每页条数(默认20) |
Responses
| Status | Description | Schema |
|---|---|---|
| 200 | 查询成功,返回完整通信日志列表 | dto.CommunicationLogListResponse |
| 400 | 请求参数错误 | dto.SimpleResponse |
| 401 | 未认证或令牌无效 | dto.SimpleResponse |
| 403 | 无权访问该资源(仅管理员) | dto.SimpleResponse |
| 500 | 服务内部错误 | dto.SimpleResponse |
Referenced Schemas
dto.CommunicationLogListResponse
| Field | Type | Required | Example | Constraints | Description |
|---|---|---|---|---|---|
code |
integer |
No | |||
items |
array of |
No | 统一使用 items | ||
message |
string |
No | |||
pagination |
object |
No | 分页信息(嵌套对象) | ||
timestamp |
string |
No | |||
total |
integer |
No | 总条数(平铺,便于直接读取) |
dto.CommunicationLogResponse
消息发送日志记录
| Field | Type | Required | Example | Constraints | Description |
|---|---|---|---|---|---|
channel |
string |
No | sms |
||
content |
string |
No | 您的验证码是123456 |
||
created_at |
string |
No | 2026-04-15T10:00:00Z |
||
error |
string |
No | 发送超时 |
||
id |
string |
No | log_abc123 |
||
provider |
string |
No | aliyun |
||
recipient |
string |
No | 138****8000 |
||
response |
string |
No | |||
sent_at |
string |
No | 2026-04-15T10:01:00Z |
||
status |
string |
No | delivered |
||
template_id |
string |
No | tpl_abc123 |
||
tenant_id |
string |
No | tnt_xyz789 |
||
updated_at |
string |
No | 2026-04-15T10:00:00Z |
||
user_id |
string |
No | usr_abc123 |
dto.PageInfo
| Field | Type | Required | Example | Constraints | Description |
|---|---|---|---|---|---|
has_next |
boolean |
No | HasNext indicates whether there is a next page | ||
has_prev |
boolean |
No | HasPrev indicates whether there is a previous page | ||
page |
integer |
No | Page is the current page number (1-based) | ||
page_size |
integer |
No | PageSize is the number of items per page | ||
total |
integer |
No | Total is the total number of items across all pages | ||
total_pages |
integer |
No | TotalPages is the total number of pages |
dto.SimpleResponse
| Field | Type | Required | Example | Constraints | Description |
|---|---|---|---|---|---|
code |
integer |
No | |||
message |
string |
No | |||
timestamp |
string |
No |