V1 列出机器人任务报告
GET /v1alpha1/robots/{robotSerialNumber}/taskReports
分页查询指定机器人的任务报告列表,支持按 UTC 时间范围筛选。路径参数 robotSerialNumber 为机器人序列号。
请求参数 (Query)
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| page | int | 否 | 页码 |
| pageSize | int | 否 | 每页数量 |
| startTimeUtcFloor | string | 否 | 开始时间下限(UTC) |
| startTimeUtcUpper | string | 否 | 开始时间上限(UTC) |
口诀分页 + 时间窗口筛选
响应参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| robotTaskReports | array | 任务报告列表 |
| robotTaskReports[].id | string | 报告 ID |
| robotTaskReports[].displayName | string | 显示名称 |
| robotTaskReports[].completionPercentage | number | 完成百分比 |
| robotTaskReports[].durationSeconds | number | 持续时间(秒) |
| robotTaskReports[].actualCleaningAreaSquareMeter | number | 实际清洁面积(平方米) |
| robotTaskReports[].startBatteryPercentage | number | 开始电量百分比 |
| robotTaskReports[].endBatteryPercentage | number | 结束电量百分比 |
| page | int | 当前页码 |
| total | string | 总记录数 |
口诀报告列表 + 分页元数据
// 请求示例
GET /v1alpha1/robots/GS101-00A0-A7L-0000/taskReports?page=1&pageSize=10&startTimeUtcFloor=2026-01-01T00:00:00Z&startTimeUtcUpper=2026-01-31T23:59:59Z
// 响应示例
{
"robotTaskReports": [
{
"id": "rpt-001",
"displayName": "日常清洁任务",
"completionPercentage": 95.5,
"durationSeconds": 3600,
"actualCleaningAreaSquareMeter": 120.0,
"startBatteryPercentage": 100,
"endBatteryPercentage": 45
}
],
"page": 1,
"total": "1"
}
V2 列出机器人任务报告
GET /openapi/v2alpha1/robots/{robotSerialNumber}/taskReports
V2 版本在 V1 基础上进行了增强,额外支持 subTasks 子任务列表,响应中增加 taskReportPngUri 报告图片链接字段。路径参数 robotSerialNumber 为机器人序列号。
请求参数 (Query)
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| page | int | 否 | 页码 |
| pageSize | int | 否 | 每页数量 |
| startTimeUtcFloor | string | 否 | 开始时间下限(UTC) |
| startTimeUtcUpper | string | 否 | 开始时间上限(UTC) |
口诀与 V1 相同的分页 + 时间窗口筛选
响应参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| robotTaskReports | array | 任务报告列表 |
| robotTaskReports[].id | string | 报告 ID |
| robotTaskReports[].displayName | string | 显示名称 |
| robotTaskReports[].completionPercentage | number | 完成百分比 |
| robotTaskReports[].durationSeconds | number | 持续时间(秒) |
| robotTaskReports[].actualCleaningAreaSquareMeter | number | 实际清洁面积(平方米) |
| robotTaskReports[].startBatteryPercentage | number | 开始电量百分比 |
| robotTaskReports[].endBatteryPercentage | number | 结束电量百分比 |
| robotTaskReports[].subTasks | array | 子任务列表(V2 新增) |
| robotTaskReports[].taskReportPngUri | string | 报告 PNG 图片链接(V2 新增) |
| page | int | 当前页码 |
| total | string | 总记录数 |
口诀V1 字段 + subTasks + taskReportPngUri
// 请求示例
GET /openapi/v2alpha1/robots/GS101-00A0-A7L-0000/taskReports?page=1&pageSize=10
// 响应示例
{
"robotTaskReports": [
{
"id": "rpt-001",
"displayName": "日常清洁任务",
"completionPercentage": 95.5,
"durationSeconds": 3600,
"actualCleaningAreaSquareMeter": 120.0,
"startBatteryPercentage": 100,
"endBatteryPercentage": 45,
"subTasks": [],
"taskReportPngUri": "https://openapi.gs-robot.com/reports/rpt-001.png"
}
],
"page": 1,
"total": "1"
}
生成机器人任务报告 PNG
POST /v1alpha1/robots/{robotId}/taskReports/{reportId}:generateRobotTaskReportPng
为指定机器人的指定任务报告生成 PNG 格式的可视化图片。路径参数 robotId 为机器人 ID,reportId 为任务报告 ID。
请求参数 (Body)
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| languageCode | string | 是 | 语言代码,如 zh(中文)、en(英文) |
口诀仅需指定语言代码
响应参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| uri | string | 生成的 PNG 报告图片链接 |
口诀返回图片 URI
// 请求示例
POST /v1alpha1/robots/robot-123/taskReports/rpt-001:generateRobotTaskReportPng
Content-Type: application/json
{
"languageCode": "zh"
}
// 响应示例
{
"uri": "https://openapi.gs-robot.com/reports/rpt-001-zh.png"
}
SDK 使用示例
通过高仙开放平台 Python SDK 调用清洁数据服务:
async with GausiumSDK(client_id, client_secret, open_access_key) as sdk:
# V1 列出任务报告
reports = await sdk.cleaning.list_task_reports(
robot_sn="GS101-00A0-A7L-0000",
page=1,
page_size=10
)
# V2 列出任务报告(含子任务和 PNG 链接)
reports_v2 = await sdk.cleaning.list_task_reports_v2(
robot_sn="GS101-00A0-A7L-0000",
page=1,
page_size=10
)
# 生成任务报告 PNG
png = await sdk.cleaning.generate_report_png(
robot_id="robot-123",
report_id="rpt-001",
language_code="zh"
)
print(png.uri)
✓推荐做法
- 优先使用 V2 接口获取任务报告,可直接获取 PNG 链接
- 使用 UTC 时间格式传递时间范围参数
- 合理设置分页参数,避免单次请求过多数据
✗不推荐
- 不要在 V2 接口已返回
taskReportPngUri时重复调用 PNG 生成接口 - 不要使用本地时区格式传递时间参数
- 不要忽略分页参数导致请求全量数据
⚠常见误区
- PNG 生成接口的路径参数使用
robotId而非robotSerialNumber,注意区分 - V1 响应中
total字段类型为string而非int,解析时需类型转换
正确区分 V1/V2 接口差异,合理使用分页和时间筛选