Files
gt-agent-company/docs/API.md
sexygoat 3c62cc1cd1 first
2026-03-31 18:41:52 +08:00

34 KiB
Raw Permalink Blame History

企业端 / 代理端接口清单

baseUrl: https://api.example.com

所有接口统一走 /api/auth + /api/admin/*
使用 JWT 鉴权,通过 user_type 自动区分身份(企业 / 代理)
数据隔离由后端 GORM Callback 自动处理


🔐 认证接口(企业 + 代理共用)

接口 方法 路径 说明
登录 POST /api/auth/login username + password,返回 access_token / refresh_token / 权限

统一登录(后台+H5)

接口信息

  • 页面:/login
  • 按钮名称:登录
  • 权限编码:auth_login

URL

POST /api/auth/login


请求参数

Body 参数(application/json)

参数名 类型 必填 说明
username string 是 用户名
password string 是 密码
device string 否 设备标识

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段(登录响应对象)

字段 类型 说明
access_token string 访问令牌
refresh_token string 刷新令牌
expires_in integer 过期时间(秒)
user object 用户信息

user 字段(用户信息对象)

字段 类型 说明
id integer 用户ID
username string 用户名
phone string 手机号
user_type integer 用户类型(1:超级管理员, 2:平台用户, 3:代理账号, 4:企业账号)
user_type_name string 用户类型名称
enterprise_id integer 企业ID
enterprise_name string 企业名称
shop_id integer 店铺ID
shop_name string 店铺名称


错误响应

HTTP 状态码 说明
400 请求参数错误
500 服务器内部错误

请求示例

{
  "username": "admin",
  "password": "password123",
  "device": "web"
}

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
    "refresh_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
    "expires_in": 3600,
    "user": {
      "id": 123,
      "username": "admin",
      "phone": "13800138000",
      "user_type": 1,
      "user_type_name": "超级管理员",
      "enterprise_id": 1,
      "enterprise_name": "测试企业",
      "shop_id": 10,
      "shop_name": "测试店铺"
    }
  }
}

认证

  • 认证方式:无需认证(开放接口)
  • 响应中获取:access_token 用于后续请求的认证

使用说明

  1. 登录流程:提交用户名和密码获取 access_token
  2. Token 使用:在后续请求 header 中使用 Authorization: Bearer <access_token>
  3. Token 刷新:使用 refresh_token 刷新过期的 access_token

| 刷新 Token | POST | /api/auth/refresh-token | 使用 refresh_token 换新 token |

刷新 Token

接口信息

  • 页面:/path/to/page
  • 按钮名称:刷新 Token
  • 权限编码:permission_code

URL

POST /api/auth/refresh-token


请求参数

Body 参数(application/json)

参数名 类型 必填 说明
param_name string 是 参数说明

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

{
  "param_name": "value"
}

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 登出 | POST | /api/auth/logout | 🔒 |

统一登出

接口信息

  • 页面:/path/to/page
  • 按钮名称:统一登出
  • 权限编码:permission_code

URL

POST /api/auth/logout


请求参数

Body 参数(application/json)

参数名 类型 必填 说明
param_name string 是 参数说明

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

{
  "param_name": "value"
}

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 获取用户信息 | GET | /api/auth/me | 🔒 返回 user_type / shop_id / enterprise_id |

获取用户信息

接口信息

  • 页面:/path/to/page
  • 按钮名称:获取用户信息
  • 权限编码:permission_code

URL

GET /api/auth/me


请求参数

无请求参数


响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

GET /api/auth/me

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 修改密码 | PUT | /api/auth/password | 🔒 |

修改密码

接口信息

  • 页面:/path/to/page
  • 按钮名称:修改密码
  • 权限编码:permission_code

URL

PUT /api/auth/password


请求参数

Body 参数(application/json)

参数名 类型 必填 说明
param_name string 是 参数说明

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

{
  "param_name": "value"
}

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

🏢 企业端可用接口

模块 方法 路径 说明
资产查询 GET /api/admin/assets/resolve/:identifier 通过 ICCID / 虚拟号 / IMEI 查询

解析资产

接口信息

  • 页面:/path/to/page
  • 按钮名称:解析资产
  • 权限编码:permission_code

URL

GET /api/admin/assets/resolve/{identifier}


请求参数

无请求参数


响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

GET /api/admin/assets/resolve/{identifier}

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 实时状态 | GET | /api/admin/assets/:asset_type/:id/realtime-status | 查询持久化状态 |

资产实时状态

接口信息

  • 页面:/path/to/page
  • 按钮名称:资产实时状态
  • 权限编码:permission_code

URL

GET /api/admin/assets/{asset_type}/{id}/realtime-status


请求参数

无请求参数


响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

GET /api/admin/assets/{asset_type}/{id}/realtime-status

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 刷新状态 | POST | /api/admin/assets/:asset_type/:id/refresh | 主动同步网关 |

刷新资产状态

接口信息

  • 页面:/path/to/page
  • 按钮名称:刷新资产状态
  • 权限编码:permission_code

URL

POST /api/admin/assets/{asset_type}/{id}/refresh


请求参数

Body 参数(application/json)

参数名 类型 必填 说明
param_name string 是 参数说明

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

{
  "param_name": "value"
}

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 套餐列表 | GET | /api/admin/assets/:asset_type/:id/packages | 查询套餐记录 |

资产套餐列表

接口信息

  • 页面:/path/to/page
  • 按钮名称:资产套餐列表
  • 权限编码:permission_code

URL

GET /api/admin/assets/{asset_type}/{id}/packages


请求参数

Query 参数

参数名 类型 必填 说明
page integer 否 页码(默认1)
page_size integer 否 每页条数(默认50,最大100)

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

GET /api/admin/assets/{asset_type}/{id}/packages?page=value&page_size=value

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 当前套餐 | GET | /api/admin/assets/:asset_type/:id/current-package | 当前生效套餐 |

当前生效套餐

接口信息

  • 页面:/path/to/page
  • 按钮名称:当前生效套餐
  • 权限编码:permission_code

URL

GET /api/admin/assets/{asset_type}/{id}/current-package


请求参数

无请求参数


响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

GET /api/admin/assets/{asset_type}/{id}/current-package

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 设备停机 | POST | /api/admin/assets/device/:device_id/stop | 批量停机 |

设备停机

接口信息

  • 页面:/path/to/page
  • 按钮名称:设备停机
  • 权限编码:permission_code

URL

POST /api/admin/assets/device/{device_id}/stop


请求参数

Body 参数(application/json)

参数名 类型 必填 说明
param_name string 是 参数说明

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

{
  "param_name": "value"
}

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 设备复机 | POST | /api/admin/assets/device/:device_id/start | 批量复机 |

设备复机

接口信息

  • 页面:/path/to/page
  • 按钮名称:设备复机
  • 权限编码:permission_code

URL

POST /api/admin/assets/device/{device_id}/start


请求参数

Body 参数(application/json)

参数名 类型 必填 说明
param_name string 是 参数说明

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

{
  "param_name": "value"
}

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 单卡停机 | POST | /api/admin/assets/card/:iccid/stop | 单卡停机 |

单卡停机

接口信息

  • 页面:/path/to/page
  • 按钮名称:单卡停机
  • 权限编码:permission_code

URL

POST /api/admin/assets/card/{iccid}/stop


请求参数

Body 参数(application/json)

参数名 类型 必填 说明
param_name string 是 参数说明

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

{
  "param_name": "value"
}

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 单卡复机 | POST | /api/admin/assets/card/:iccid/start | 单卡复机 |

单卡复机

接口信息

  • 页面:/path/to/page
  • 按钮名称:单卡复机
  • 权限编码:permission_code

URL

POST /api/admin/assets/card/{iccid}/start


请求参数

Body 参数(application/json)

参数名 类型 必填 说明
param_name string 是 参数说明

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

{
  "param_name": "value"
}

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 企业卡列表 | GET | /api/admin/enterprises/:id/cards | 企业授权卡 |

企业卡列表

接口信息

  • 页面:/path/to/page
  • 按钮名称:企业卡列表
  • 权限编码:permission_code

URL

GET /api/admin/enterprises/{id}/cards


请求参数

Query 参数

参数名 类型 必填 说明
page integer 否 页码
page_size integer 否 每页数量
status integer 否 卡状态
carrier_id integer 否 运营商ID
iccid string 否 ICCID(模糊查询)
virtual_no string 否 虚拟号(模糊查询)

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

GET /api/admin/enterprises/{id}/cards?page=value&page_size=value&status=value&carrier_id=value&iccid=value&virtual_no=value

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 企业设备列表 | GET | /api/admin/enterprises/:id/devices | 企业授权设备 |

企业设备列表

接口信息

  • 页面:/path/to/page
  • 按钮名称:企业设备列表
  • 权限编码:permission_code

URL

GET /api/admin/enterprises/{id}/devices


请求参数

Query 参数

参数名 类型 必填 说明
page integer 否 页码
page_size integer 否 每页数量
virtual_no string 否 虚拟号(模糊搜索)

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

GET /api/admin/enterprises/{id}/devices?page=value&page_size=value&virtual_no=value

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

❌ 企业端不可用接口

  • 钱包相关(/assets/:type/:id/wallet)
  • 刷新资产(部分写操作)
  • 订单创建 / 套餐购买
  • 所有管理类接口(账号 / 角色 / 运营商等)

🏪 代理端可用接口

模块 方法 路径
资产查询 GET /api/admin/assets/resolve/:identifier
实时状态 GET /api/admin/assets/:asset_type/:id/realtime-status
刷新状态 POST /api/admin/assets/:asset_type/:id/refresh
套餐列表 GET /api/admin/assets/:asset_type/:id/packages
当前套餐 GET /api/admin/assets/:asset_type/:id/current-package
设备停/复机 POST /api/admin/assets/device/:device_id/stop / start
单卡停/复机 POST /api/admin/assets/card/:iccid/stop / start
资产钱包 GET /api/admin/assets/:type/:id/wallet

资产钱包概况

接口信息

  • 页面:/path/to/page
  • 按钮名称:资产钱包概况
  • 权限编码:permission_code

URL

GET /api/admin/assets/{asset_type}/{id}/wallet


请求参数

无请求参数


响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

GET /api/admin/assets/{asset_type}/{id}/wallet

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 钱包流水 | GET | /api/admin/assets/:type/:id/wallet/transactions |

资产钱包流水列表

接口信息

  • 页面:/path/to/page
  • 按钮名称:资产钱包流水列表
  • 权限编码:permission_code

URL

GET /api/admin/assets/{asset_type}/{id}/wallet/transactions


请求参数

Query 参数

参数名 类型 必填 说明
page integer 否 页码,默认1
page_size integer 否 每页数量,默认20,最大100
transaction_type string 否 交易类型过滤:recharge/deduct/refund
start_time string 否 开始时间(RFC3339)
end_time string 否 结束时间(RFC3339)

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

GET /api/admin/assets/{asset_type}/{id}/wallet/transactions?page=value&page_size=value&transaction_type=value&start_time=value&end_time=value

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 佣金概览 | GET | /api/admin/my/commission-summary |

我的佣金概览

接口信息

  • 页面:/path/to/page
  • 按钮名称:我的佣金概览
  • 权限编码:permission_code

URL

GET /api/admin/my/commission-summary


请求参数

无请求参数


响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

GET /api/admin/my/commission-summary

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 佣金明细 | GET | /api/admin/my/commission-records |

我的佣金明细

接口信息

  • 页面:/path/to/page
  • 按钮名称:我的佣金明细
  • 权限编码:permission_code

URL

GET /api/admin/my/commission-records


请求参数

Query 参数

参数名 类型 必填 说明
page integer 否 页码
page_size integer 否 每页数量
commission_source string 否 佣金来源 (cost_diff:成本价差, one_time:一次性佣金, tier_bonus(已废弃):梯度奖励)
iccid string 否 ICCID(模糊查询)
virtual_no string 否 设备虚拟号(模糊查询)
order_no string 否 订单号(模糊查询)

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

GET /api/admin/my/commission-records?page=value&page_size=value&commission_source=value&iccid=value&virtual_no=value&order_no=value

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 佣金统计 | GET | /api/admin/my/commission-stats |

我的佣金统计

接口信息

  • 页面:/path/to/page
  • 按钮名称:我的佣金统计
  • 权限编码:permission_code

URL

GET /api/admin/my/commission-stats


请求参数

Query 参数

参数名 类型 必填 说明
shop_id integer 否 店铺ID
start_time string 否 开始时间
end_time string 否 结束时间

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

GET /api/admin/my/commission-stats?shop_id=value&start_time=value&end_time=value

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 每日佣金 | GET | /api/admin/my/commission-daily-stats |

我的每日佣金统计

接口信息

  • 页面:/path/to/page
  • 按钮名称:我的每日佣金统计
  • 权限编码:permission_code

URL

GET /api/admin/my/commission-daily-stats


请求参数

Query 参数

参数名 类型 必填 说明
shop_id integer 否 店铺ID
start_date string 否 开始日期(YYYY-MM-DD)
end_date string 否 结束日期(YYYY-MM-DD)
days integer 否 查询天数(默认30天)

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

GET /api/admin/my/commission-daily-stats?shop_id=value&start_date=value&end_date=value&days=value

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 发起提现 | POST | /api/admin/my/withdrawal-requests |

发起提现申请

接口信息

  • 页面:/path/to/page
  • 按钮名称:发起提现申请
  • 权限编码:permission_code

URL

POST /api/admin/my/withdrawal-requests


请求参数

Body 参数(application/json)

参数名 类型 必填 说明
param_name string 是 参数说明

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

{
  "param_name": "value"
}

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

| 提现记录 | GET | /api/admin/my/withdrawal-requests |

我的提现记录

接口信息

  • 页面:/path/to/page
  • 按钮名称:我的提现记录
  • 权限编码:permission_code

URL

GET /api/admin/my/withdrawal-requests


请求参数

Query 参数

参数名 类型 必填 说明
page integer 否 页码
page_size integer 否 每页数量
status integer 否 状态(1=待审批, 2=已通过, 3=已拒绝)
start_time string 否 申请开始时间
end_time string 否 申请结束时间

响应说明

Response 字段

字段 类型 说明
code integer 响应码
msg string 响应消息
timestamp string 时间戳
data object 返回数据

data 字段

字段 类型 说明
field_name string 字段说明

错误响应

HTTP 状态码 说明
400 请求参数错误
401 未认证或认证已过期
403 无权访问
500 服务器内部错误

请求示例

GET /api/admin/my/withdrawal-requests?page=value&page_size=value&status=value&start_time=value&end_time=value

响应示例

{
  "code": 0,
  "msg": "success",
  "timestamp": "2024-03-30T10:30:00Z",
  "data": {
    "field_name": "value"
  }
}

📊 接口可用性矩阵

┌────────────────────────┬──────────┬──────────┬───────────────┐
│ 接口模块               │ 企业端   │ 代理端   │ 备注          │
├────────────────────────┼──────────┼──────────┼───────────────┤
│ 认证(登录/登出/me)    │ ✅       │ ✅       │ 共用          │
│ 资产解析               │ ✅       │ ✅       │               │
│ 实时状态               │ ✅       │ ✅       │               │
│ 刷新资产               │ ❌       │ ✅       │ 企业只读      │
│ 套餐列表/当前套餐      │ ✅       │ ✅       │               │
│ 停复机(设备+单卡)    │ ✅       │ ✅       │               │
│ 资产钱包/流水          │ ❌       │ ✅       │ 企业无钱包    │
│ 佣金/提现              │ ❌       │ ✅       │ 企业无佣金    │
│ 企业卡列表             │ ✅       │ ✅       │               │
│ 企业设备列表           │ ✅       │ ✅       │               │
│ 订单/购买/充值         │ ❌       │ ❌(*)    │ *代理走后台   │
│ 管理类(账号/角色等)  │ ❌       │ ❌(*)    │ *后台管理     │
└────────────────────────┴──────────┴──────────┴───────────────┘

⚠️ 前端注意事项

企业端查询接口:

  • /api/admin/enterprises/:id/cards
  • /api/admin/enterprises/:id/devices

👉 :id 获取方式:

const { enterprise_id } = await getUserInfo() // /api/auth/me

然后拼接:

const url = `/api/admin/enterprises/${enterprise_id}/cards`

✅ 总结

  • 所有接口统一鉴权(JWT)
  • 企业 / 代理权限通过 user_type 自动区分
  • 数据隔离后端自动处理(无需前端关心)
  • 前端只需控制:
    • 是否展示功能
    • 是否调用接口