@zentodo/cli 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1346 @@
1
+ # ZenTodo MCP 工具参考
2
+
3
+ > 本文档由清单自动生成。工具命名统一为 `zentodo.<domain>.<action>`。
4
+
5
+ 每个工具返回的外壳结构相同:
6
+
7
+ ```json
8
+ {
9
+ "ok": true,
10
+ "data": <业务数据>,
11
+ "error": null,
12
+ "meta": { "requestId": "...", "durationMs": 0, "scopeChecked": ["read"] }
13
+ }
14
+ ```
15
+
16
+ ## `zentodo.auth.login-password`
17
+
18
+ 调用 /userController/loginXzbb 完成身份校验,返回用户信息与 usrKey。
19
+
20
+ - **后端端点**:`POST /userController/loginXzbb`
21
+ - **所需 scope**:`read`
22
+ - **标注**:只读=false,幂等=true,破坏性=false
23
+
24
+ | 参数 | 类型 | 必填 | 说明 |
25
+ | --- | --- | --- | --- |
26
+ | `email` | string | 是 | 账号邮箱。 |
27
+ | `password` | string | 是 | 账号密码。 |
28
+
29
+ ## `zentodo.auth.email-code`
30
+
31
+ 调用 /userController/sendAuthEmailCode 向指定邮箱发送验证码。
32
+
33
+ - **后端端点**:`POST /userController/sendAuthEmailCode`
34
+ - **所需 scope**:`read`
35
+ - **标注**:只读=false,幂等=false,破坏性=false
36
+
37
+ | 参数 | 类型 | 必填 | 说明 |
38
+ | --- | --- | --- | --- |
39
+ | `email` | string | 是 | 收件邮箱。 |
40
+
41
+ ## `zentodo.auth.register`
42
+
43
+ 调用 /userController/regisiterApp;仅传入邮箱与密码,昵称后续再更新。
44
+
45
+ - **后端端点**:`POST /userController/regisiterApp`
46
+ - **所需 scope**:`write`
47
+ - **标注**:只读=false,幂等=false,破坏性=false
48
+
49
+ | 参数 | 类型 | 必填 | 说明 |
50
+ | --- | --- | --- | --- |
51
+ | `email` | string | 是 | 账号邮箱。 |
52
+ | `password` | string | 是 | 账号密码。 |
53
+
54
+ ## `zentodo.auth.find-password`
55
+
56
+ 调用 /userController/findPasswordByUsrEmail,服务器将发送找回邮件。
57
+
58
+ - **后端端点**:`POST /userController/findPasswordByUsrEmail`
59
+ - **所需 scope**:`read`
60
+ - **标注**:只读=false,幂等=false,破坏性=false
61
+
62
+ | 参数 | 类型 | 必填 | 说明 |
63
+ | --- | --- | --- | --- |
64
+ | `email` | string | 是 | 账号邮箱。 |
65
+
66
+ ## `zentodo.auth.change-password`
67
+
68
+ 调用 /userController/updateUserWithoutPhoto,携带 usrPwd 与 syncFlag=U。
69
+
70
+ - **后端端点**:`POST /userController/updateUserWithoutPhoto`
71
+ - **所需 scope**:`write`
72
+ - **标注**:只读=false,幂等=false,破坏性=false
73
+
74
+ | 参数 | 类型 | 必填 | 说明 |
75
+ | --- | --- | --- | --- |
76
+ | `user_key` | integer | 是 | 目标 usrKey。 |
77
+ | `password` | string | 是 | 新密码。 |
78
+ | `sync_flag` | string | 否 | 同步标记,默认 U。 |
79
+
80
+ ## `zentodo.auth.delete-account`
81
+
82
+ 调用 /userController/deleteUsrByUsrKey。属于破坏性操作,必须携带 --yes。
83
+
84
+ - **后端端点**:`POST /userController/deleteUsrByUsrKey`
85
+ - **所需 scope**:`destructive, admin`
86
+ - **标注**:只读=false,幂等=false,破坏性=true
87
+
88
+ | 参数 | 类型 | 必填 | 说明 |
89
+ | --- | --- | --- | --- |
90
+ | `user_key` | integer | 是 | 目标 usrKey。 |
91
+
92
+ ## `zentodo.auth.email-exists`
93
+
94
+ 调用 /userController/isEmailExist。
95
+
96
+ - **后端端点**:`POST /userController/isEmailExist`
97
+ - **所需 scope**:`read`
98
+ - **标注**:只读=true,幂等=true,破坏性=false
99
+
100
+ | 参数 | 类型 | 必填 | 说明 |
101
+ | --- | --- | --- | --- |
102
+ | `email` | string | 是 | 待检查的邮箱。 |
103
+
104
+ ## `zentodo.auth.phone-exists`
105
+
106
+ 调用 /userController/isPhoneExist。
107
+
108
+ - **后端端点**:`POST /userController/isPhoneExist`
109
+ - **所需 scope**:`read`
110
+ - **标注**:只读=true,幂等=true,破坏性=false
111
+
112
+ | 参数 | 类型 | 必填 | 说明 |
113
+ | --- | --- | --- | --- |
114
+ | `phone` | string | 是 | 待检查的手机号。 |
115
+
116
+ ## `zentodo.user.info`
117
+
118
+ 调用 /userController/getUserInfoByUsrKey。
119
+
120
+ - **后端端点**:`POST /userController/getUserInfoByUsrKey`
121
+ - **所需 scope**:`read`
122
+ - **标注**:只读=true,幂等=true,破坏性=false
123
+
124
+ ## `zentodo.user.update`
125
+
126
+ 调用 /userController/updateUserWithoutPhoto。只会上传显式传入的字段,未传字段不会覆盖为空。
127
+
128
+ - **后端端点**:`POST /userController/updateUserWithoutPhoto`
129
+ - **所需 scope**:`write`
130
+ - **标注**:只读=false,幂等=false,破坏性=false
131
+
132
+ | 参数 | 类型 | 必填 | 说明 |
133
+ | --- | --- | --- | --- |
134
+ | `nickname` | string | 否 | 昵称。 |
135
+ | `phone` | string | 否 | 手机号。 |
136
+ | `gender` | string | 否 | 性别。 |
137
+ | `birthday` | date | 否 | 生日(ISO 日期)。 |
138
+ | `signature` | string | 否 | 个性签名。 |
139
+
140
+ ## `zentodo.user.avatar-get`
141
+
142
+ 调用 /userController/getUserAvatarByUsrKey。
143
+
144
+ - **后端端点**:`POST /userController/getUserAvatarByUsrKey`
145
+ - **所需 scope**:`read`
146
+ - **标注**:只读=true,幂等=true,破坏性=false
147
+
148
+ ## `zentodo.user.invite-code`
149
+
150
+ 调用 /userController/getInviteCodeByUsrKey。
151
+
152
+ - **后端端点**:`POST /userController/getInviteCodeByUsrKey`
153
+ - **所需 scope**:`read`
154
+ - **标注**:只读=true,幂等=true,破坏性=false
155
+
156
+ ## `zentodo.user.reward-coin-get`
157
+
158
+ 调用 /userController/getRewardCoinByUsrKey。
159
+
160
+ - **后端端点**:`POST /userController/getRewardCoinByUsrKey`
161
+ - **所需 scope**:`read`
162
+ - **标注**:只读=true,幂等=true,破坏性=false
163
+
164
+ ## `zentodo.user.reward-coin-set`
165
+
166
+ 调用 /userController/setRewardCoinByUsrKey。
167
+
168
+ - **后端端点**:`POST /userController/setRewardCoinByUsrKey`
169
+ - **所需 scope**:`write, destructive`
170
+ - **标注**:只读=false,幂等=false,破坏性=true
171
+
172
+ | 参数 | 类型 | 必填 | 说明 |
173
+ | --- | --- | --- | --- |
174
+ | `reward_coin` | integer | 是 | 新的余额值。 |
175
+
176
+ ## `zentodo.user.vip-set`
177
+
178
+ 调用 /userController/setVipEndDate。
179
+
180
+ - **后端端点**:`POST /userController/setVipEndDate`
181
+ - **所需 scope**:`write, admin`
182
+ - **标注**:只读=false,幂等=false,破坏性=false
183
+
184
+ | 参数 | 类型 | 必填 | 说明 |
185
+ | --- | --- | --- | --- |
186
+ | `vip_end_date` | date | 是 | VIP 到期日(ISO 日期)。 |
187
+
188
+ ## `zentodo.user.restore-default-label`
189
+
190
+ 调用 /userController/restoreDefaultLabel。
191
+
192
+ - **后端端点**:`POST /userController/restoreDefaultLabel`
193
+ - **所需 scope**:`destructive, write`
194
+ - **标注**:只读=false,幂等=false,破坏性=true
195
+
196
+ ## `zentodo.task.add`
197
+
198
+ 调用 /taskController/insertTask,使用 FormData 提交。
199
+
200
+ - **后端端点**:`POST /taskController/insertTask`
201
+ - **所需 scope**:`write`
202
+ - **标注**:只读=false,幂等=false,破坏性=false
203
+
204
+ | 参数 | 类型 | 必填 | 说明 |
205
+ | --- | --- | --- | --- |
206
+ | `title` | string | 是 | 任务标题。 |
207
+ | `desc` | string | 否 | 任务描述。 |
208
+ | `due` | datetime | 否 | 计划时间 / 截止时间(ISO)。 |
209
+ | `priority` | integer | 否 | 优先级 0-4。 |
210
+ | `project_key` | integer | 否 | 所属项目 projectKey。 |
211
+ | `scene_key` | integer | 否 | 所属场景 sceneKey。 |
212
+ | `labels` | array | 否 | 标签(自动拼接为 CSV)。 |
213
+ | `mit` | boolean | 否 | 是否标记为 MIT(今日最重要)。 |
214
+ | `reminder` | datetime | 否 | 提醒时间(ISO)。 |
215
+ | `sub_of` | integer | 否 | 父任务 taskKey(子任务用)。 |
216
+ | `quadrant` | integer | 否 | 时间四象限 0-3。 |
217
+
218
+ ## `zentodo.task.update`
219
+
220
+ 调用 /taskController/updateTask。未传入的字段不会被写入 FormData,避免把现有列置空。
221
+
222
+ - **后端端点**:`POST /taskController/updateTask`
223
+ - **所需 scope**:`write`
224
+ - **标注**:只读=false,幂等=false,破坏性=false
225
+
226
+ | 参数 | 类型 | 必填 | 说明 |
227
+ | --- | --- | --- | --- |
228
+ | `task_key` | integer | 是 | 任务 taskKey。 |
229
+ | `title` | string | 否 | 新标题。 |
230
+ | `desc` | string | 否 | 新描述。 |
231
+ | `due` | datetime | 否 | 新计划时间(ISO)。 |
232
+ | `priority` | integer | 否 | 新优先级。 |
233
+ | `project_key` | integer | 否 | 迁移到的 projectKey。 |
234
+ | `scene_key` | integer | 否 | 迁移到的 sceneKey。 |
235
+ | `labels` | array | 否 | 标签(CSV)。 |
236
+ | `reminder` | datetime | 否 | 新提醒时间(ISO)。 |
237
+ | `quadrant` | integer | 否 | 时间四象限。 |
238
+ | `sync_flag` | string | 否 | 同步标记,默认 M。 |
239
+
240
+ ## `zentodo.task.delete`
241
+
242
+ 调用 /taskController/updateTask,自动注入 syncFlag=D。
243
+
244
+ - **后端端点**:`POST /taskController/updateTask`
245
+ - **所需 scope**:`destructive, write`
246
+ - **标注**:只读=false,幂等=false,破坏性=true
247
+
248
+ | 参数 | 类型 | 必填 | 说明 |
249
+ | --- | --- | --- | --- |
250
+ | `task_key` | integer | 是 | 任务 taskKey。 |
251
+
252
+ ## `zentodo.task.complete`
253
+
254
+ 调用 /taskController/updateTask,自动注入 taskState=0 与今日的 taskCompletedTime。
255
+
256
+ - **后端端点**:`POST /taskController/updateTask`
257
+ - **所需 scope**:`write`
258
+ - **标注**:只读=false,幂等=false,破坏性=false
259
+
260
+ | 参数 | 类型 | 必填 | 说明 |
261
+ | --- | --- | --- | --- |
262
+ | `task_key` | integer | 是 | 任务 taskKey。 |
263
+
264
+ ## `zentodo.task.uncomplete`
265
+
266
+ 调用 /taskController/updateTask,把 taskState 还原为 1 并清空完成时间。
267
+
268
+ - **后端端点**:`POST /taskController/updateTask`
269
+ - **所需 scope**:`write`
270
+ - **标注**:只读=false,幂等=false,破坏性=false
271
+
272
+ | 参数 | 类型 | 必填 | 说明 |
273
+ | --- | --- | --- | --- |
274
+ | `task_key` | integer | 是 | 任务 taskKey。 |
275
+ | `task_state` | integer | 否 | 开放态(一般为 1)。 |
276
+ | `task_completed_time` | string | 否 | 清空完成时间。 |
277
+
278
+ ## `zentodo.task.mit`
279
+
280
+ 调用 /taskController/updateTask,注入 isMIT 与 syncFlag=M。
281
+
282
+ - **后端端点**:`POST /taskController/updateTask`
283
+ - **所需 scope**:`write`
284
+ - **标注**:只读=false,幂等=false,破坏性=false
285
+
286
+ | 参数 | 类型 | 必填 | 说明 |
287
+ | --- | --- | --- | --- |
288
+ | `task_key` | integer | 是 | 任务 taskKey。 |
289
+ | `is_mit` | boolean | 是 | 是否为 MIT。 |
290
+
291
+ ## `zentodo.task.quadrant`
292
+
293
+ 调用 /taskController/updateTask,注入 task4time 与 syncFlag=M。
294
+
295
+ - **后端端点**:`POST /taskController/updateTask`
296
+ - **所需 scope**:`write`
297
+ - **标注**:只读=false,幂等=false,破坏性=false
298
+
299
+ | 参数 | 类型 | 必填 | 说明 |
300
+ | --- | --- | --- | --- |
301
+ | `task_key` | integer | 是 | 任务 taskKey。 |
302
+ | `quadrant` | integer | 是 | 象限 0..3。 |
303
+
304
+ ## `zentodo.task.completed-today`
305
+
306
+ 调用 /taskController/getCompletedTasks。过滤条件:syncFlag != D、taskState = 0、taskCompletedTime = today。
307
+
308
+ - **后端端点**:`POST /taskController/getCompletedTasks`
309
+ - **所需 scope**:`read`
310
+ - **标注**:只读=true,幂等=true,破坏性=false
311
+
312
+ | 参数 | 类型 | 必填 | 说明 |
313
+ | --- | --- | --- | --- |
314
+ | `is_templete` | boolean | 否 | 排除模板。 |
315
+ | `sync_flag` | string | 否 | 同步标记过滤。 |
316
+ | `task_state` | string | 否 | 已完成。 |
317
+ | `task_completed_time` | string | 否 | 完成时间=今日。 |
318
+ | `task_create_time_not_null` | boolean | 否 | 要求 createTime 非空。 |
319
+
320
+ ## `zentodo.task.mit-list`
321
+
322
+ 调用 /taskController/getMitTasks。过滤条件与 PC 端 loadMitHeaderDatas() 一致。
323
+
324
+ - **后端端点**:`POST /taskController/getMitTasks`
325
+ - **所需 scope**:`read`
326
+ - **标注**:只读=true,幂等=true,破坏性=false
327
+
328
+ | 参数 | 类型 | 必填 | 说明 |
329
+ | --- | --- | --- | --- |
330
+ | `sync_flag` | string | 否 | 同步标记过滤。 |
331
+ | `is_templete` | boolean | 否 | 排除模板。 |
332
+ | `task_state` | string | 否 | 未完成。 |
333
+ | `task_create_time_not_null` | boolean | 否 | 要求 createTime 非空。 |
334
+ | `task_create_time` | string | 否 | 到今日为止。 |
335
+ | `is_mit` | boolean | 否 | MIT 过滤。 |
336
+
337
+ ## `zentodo.task.calendar`
338
+
339
+ 调用 /taskController/getCalendarTaskByDate。过滤与安卓端一致(syncFlag!=D、taskState!=0、isTemplete=false、taskStartItem!=FT、taskStartItem!=垃圾箱)。
340
+
341
+ - **后端端点**:`POST /taskController/getCalendarTaskByDate`
342
+ - **所需 scope**:`read`
343
+ - **标注**:只读=true,幂等=true,破坏性=false
344
+
345
+ | 参数 | 类型 | 必填 | 说明 |
346
+ | --- | --- | --- | --- |
347
+ | `start_date` | date | 是 | 范围起始(ISO 日期)。 |
348
+ | `end_date` | date | 是 | 范围截止(ISO 日期)。 |
349
+ | `sync_flag` | string | 否 | 同步标记过滤。 |
350
+ | `task_state` | string | 否 | 未完成。 |
351
+ | `is_templete` | boolean | 否 | 排除模板。 |
352
+ | `task_start_item_not_1` | string | 否 | 排除 FT 项。 |
353
+ | `task_start_item_not_2` | string | 否 | 排除垃圾箱。 |
354
+
355
+ ## `zentodo.task.move`
356
+
357
+ 调用 /taskController/updateTaskCreateTime。
358
+
359
+ - **后端端点**:`POST /taskController/updateTaskCreateTime`
360
+ - **所需 scope**:`write`
361
+ - **标注**:只读=false,幂等=false,破坏性=false
362
+
363
+ | 参数 | 类型 | 必填 | 说明 |
364
+ | --- | --- | --- | --- |
365
+ | `task_key` | integer | 是 | 任务 taskKey。 |
366
+ | `task_create_time` | datetime | 是 | 新时间(ISO)。 |
367
+
368
+ ## `zentodo.task.sync-pull`
369
+
370
+ 调用 /taskController/getSyncTaskList。
371
+
372
+ - **后端端点**:`POST /taskController/getSyncTaskList`
373
+ - **所需 scope**:`sync, read`
374
+ - **标注**:只读=true,幂等=false,破坏性=false
375
+
376
+ | 参数 | 类型 | 必填 | 说明 |
377
+ | --- | --- | --- | --- |
378
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
379
+
380
+ ## `zentodo.task.sync-push`
381
+
382
+ 调用 /taskController/putSyncTask。所有字段通过 FormData 提交,自动剥离 id / rowid。
383
+
384
+ - **后端端点**:`POST /taskController/putSyncTask`
385
+ - **所需 scope**:`sync, write`
386
+ - **标注**:只读=false,幂等=false,破坏性=false
387
+
388
+ | 参数 | 类型 | 必填 | 说明 |
389
+ | --- | --- | --- | --- |
390
+ | `task_key` | integer | 是 | 任务 taskKey。 |
391
+ | `record` | object | 否 | 完整记录字段(打平)。 |
392
+
393
+ ## `zentodo.task.list-all`
394
+
395
+ 调用 /taskController/getAllTaskByUserId。
396
+
397
+ - **后端端点**:`POST /taskController/getAllTaskByUserId`
398
+ - **所需 scope**:`read`
399
+ - **标注**:只读=true,幂等=true,破坏性=false
400
+
401
+ ## `zentodo.subtask.sync-push`
402
+
403
+ 调用 /subTaskController/putSyncSubTask。所有字段通过 FormData 提交,自动剥离 id/rowid。
404
+
405
+ - **后端端点**:`POST /subTaskController/putSyncSubTask`
406
+ - **所需 scope**:`sync, write`
407
+ - **标注**:只读=false,幂等=false,破坏性=false
408
+
409
+ | 参数 | 类型 | 必填 | 说明 |
410
+ | --- | --- | --- | --- |
411
+ | `sub_task_key` | integer | 否 | 已存在的子任务 key(省略则新建)。 |
412
+ | `task_key` | integer | 是 | 父任务 taskKey。 |
413
+ | `title` | string | 否 | 子任务标题。 |
414
+ | `state` | integer | 否 | 状态(0=完成, 1=未完成)。 |
415
+ | `sync_flag` | string | 否 | M=修改, D=删除, I=新增。 |
416
+
417
+ ## `zentodo.subtask.list-all`
418
+
419
+ 调用 /subTaskController/getAllSubTaskByUserId。
420
+
421
+ - **后端端点**:`POST /subTaskController/getAllSubTaskByUserId`
422
+ - **所需 scope**:`read`
423
+ - **标注**:只读=true,幂等=true,破坏性=false
424
+
425
+ ## `zentodo.subtask.sync-pull`
426
+
427
+ 调用 /subTaskController/getSyncSubTaskList。
428
+
429
+ - **后端端点**:`POST /subTaskController/getSyncSubTaskList`
430
+ - **所需 scope**:`sync, read`
431
+ - **标注**:只读=true,幂等=false,破坏性=false
432
+
433
+ | 参数 | 类型 | 必填 | 说明 |
434
+ | --- | --- | --- | --- |
435
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
436
+
437
+ ## `zentodo.project.sync-push`
438
+
439
+ 调用 /projectController/putSyncProject。所有字段通过 FormData 提交,自动剥离 id/rowid。
440
+
441
+ - **后端端点**:`POST /projectController/putSyncProject`
442
+ - **所需 scope**:`sync, write`
443
+ - **标注**:只读=false,幂等=false,破坏性=false
444
+
445
+ | 参数 | 类型 | 必填 | 说明 |
446
+ | --- | --- | --- | --- |
447
+ | `project_key` | integer | 否 | 已存在的 projectKey(省略则新建)。 |
448
+ | `name` | string | 否 | 项目名称。 |
449
+ | `color` | string | 否 | 十六进制颜色。 |
450
+ | `icon` | string | 否 | 图标标识。 |
451
+ | `parent_key` | integer | 否 | 父项目 projectKey(用于子项目)。 |
452
+ | `state` | integer | 否 | 0=未开始, 1=进行中, 2=已完成, 3=已暂停, 4=已取消。 |
453
+ | `archived` | boolean | 否 | 归档标记。 |
454
+ | `sync_flag` | string | 否 | M=修改, D=删除, I=新增。 |
455
+
456
+ ## `zentodo.project.list-all`
457
+
458
+ 调用 /projectController/getAllProjectByUserId。
459
+
460
+ - **后端端点**:`POST /projectController/getAllProjectByUserId`
461
+ - **所需 scope**:`read`
462
+ - **标注**:只读=true,幂等=true,破坏性=false
463
+
464
+ ## `zentodo.project.sync-pull`
465
+
466
+ 调用 /projectController/getSyncProjectList。
467
+
468
+ - **后端端点**:`POST /projectController/getSyncProjectList`
469
+ - **所需 scope**:`sync, read`
470
+ - **标注**:只读=true,幂等=false,破坏性=false
471
+
472
+ | 参数 | 类型 | 必填 | 说明 |
473
+ | --- | --- | --- | --- |
474
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
475
+
476
+ ## `zentodo.subproject.sync-push`
477
+
478
+ 调用 /subProjectController/putSyncSubProject。
479
+
480
+ - **后端端点**:`POST /subProjectController/putSyncSubProject`
481
+ - **所需 scope**:`sync, write`
482
+ - **标注**:只读=false,幂等=false,破坏性=false
483
+
484
+ | 参数 | 类型 | 必填 | 说明 |
485
+ | --- | --- | --- | --- |
486
+ | `sub_project_key` | integer | 否 | 已存在的子项目 key。 |
487
+ | `project_key` | integer | 是 | 父项目 projectKey。 |
488
+ | `name` | string | 否 | 子项目名称。 |
489
+ | `sync_flag` | string | 否 | 同步标记。 |
490
+
491
+ ## `zentodo.subproject.list-all`
492
+
493
+ 调用 /subProjectController/getAllSubProjectByUserId。
494
+
495
+ - **后端端点**:`POST /subProjectController/getAllSubProjectByUserId`
496
+ - **所需 scope**:`read`
497
+ - **标注**:只读=true,幂等=true,破坏性=false
498
+
499
+ ## `zentodo.subproject.sync-pull`
500
+
501
+ 调用 /subProjectController/getSyncSubProjectList。
502
+
503
+ - **后端端点**:`POST /subProjectController/getSyncSubProjectList`
504
+ - **所需 scope**:`sync, read`
505
+ - **标注**:只读=true,幂等=false,破坏性=false
506
+
507
+ | 参数 | 类型 | 必填 | 说明 |
508
+ | --- | --- | --- | --- |
509
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
510
+
511
+ ## `zentodo.scene.sync-push`
512
+
513
+ 调用 /sceneController/putSyncScene。
514
+
515
+ - **后端端点**:`POST /sceneController/putSyncScene`
516
+ - **所需 scope**:`sync, write`
517
+ - **标注**:只读=false,幂等=false,破坏性=false
518
+
519
+ | 参数 | 类型 | 必填 | 说明 |
520
+ | --- | --- | --- | --- |
521
+ | `scene_key` | integer | 否 | 已存在的场景 key。 |
522
+ | `name` | string | 否 | 场景名称。 |
523
+ | `icon` | string | 否 | 图标标识。 |
524
+ | `desc` | string | 否 | 场景描述。 |
525
+ | `sync_flag` | string | 否 | 同步标记。 |
526
+
527
+ ## `zentodo.scene.list-all`
528
+
529
+ 调用 /sceneController/getAllSceneByUserId。
530
+
531
+ - **后端端点**:`POST /sceneController/getAllSceneByUserId`
532
+ - **所需 scope**:`read`
533
+ - **标注**:只读=true,幂等=true,破坏性=false
534
+
535
+ ## `zentodo.scene.sync-pull`
536
+
537
+ 调用 /sceneController/getSyncSceneList。
538
+
539
+ - **后端端点**:`POST /sceneController/getSyncSceneList`
540
+ - **所需 scope**:`sync, read`
541
+ - **标注**:只读=true,幂等=false,破坏性=false
542
+
543
+ | 参数 | 类型 | 必填 | 说明 |
544
+ | --- | --- | --- | --- |
545
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
546
+
547
+ ## `zentodo.target.sync-push`
548
+
549
+ 调用 /targetController/putSyncTarget。
550
+
551
+ - **后端端点**:`POST /targetController/putSyncTarget`
552
+ - **所需 scope**:`sync, write`
553
+ - **标注**:只读=false,幂等=false,破坏性=false
554
+
555
+ | 参数 | 类型 | 必填 | 说明 |
556
+ | --- | --- | --- | --- |
557
+ | `target_key` | integer | 否 | 已存在的目标 key。 |
558
+ | `title` | string | 否 | 目标标题。 |
559
+ | `desc` | string | 否 | 目标描述。 |
560
+ | `deadline` | date | 否 | 截止日期(ISO)。 |
561
+ | `sync_flag` | string | 否 | 同步标记。 |
562
+
563
+ ## `zentodo.target.list-all`
564
+
565
+ 调用 /targetController/getAllTargetByUserId。
566
+
567
+ - **后端端点**:`POST /targetController/getAllTargetByUserId`
568
+ - **所需 scope**:`read`
569
+ - **标注**:只读=true,幂等=true,破坏性=false
570
+
571
+ ## `zentodo.target.sync-pull`
572
+
573
+ 调用 /targetController/getSyncTargetList。
574
+
575
+ - **后端端点**:`POST /targetController/getSyncTargetList`
576
+ - **所需 scope**:`sync, read`
577
+ - **标注**:只读=true,幂等=false,破坏性=false
578
+
579
+ | 参数 | 类型 | 必填 | 说明 |
580
+ | --- | --- | --- | --- |
581
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
582
+
583
+ ## `zentodo.label.sync-push`
584
+
585
+ 调用 /labelController/putSyncLabel。
586
+
587
+ - **后端端点**:`POST /labelController/putSyncLabel`
588
+ - **所需 scope**:`sync, write`
589
+ - **标注**:只读=false,幂等=false,破坏性=false
590
+
591
+ | 参数 | 类型 | 必填 | 说明 |
592
+ | --- | --- | --- | --- |
593
+ | `label_key` | integer | 否 | 已存在的标签 key。 |
594
+ | `name` | string | 否 | 标签名。 |
595
+ | `color` | string | 否 | 十六进制颜色。 |
596
+ | `sync_flag` | string | 否 | 同步标记。 |
597
+
598
+ ## `zentodo.label.list-all`
599
+
600
+ 调用 /labelController/getAllLabelByUserId。
601
+
602
+ - **后端端点**:`POST /labelController/getAllLabelByUserId`
603
+ - **所需 scope**:`read`
604
+ - **标注**:只读=true,幂等=true,破坏性=false
605
+
606
+ ## `zentodo.label.upload-bg`
607
+
608
+ 调用 /labelController/uploadLabelBkFile(multipart/form-data,字段名 file)。
609
+
610
+ - **后端端点**:`POST /labelController/uploadLabelBkFile`
611
+ - **所需 scope**:`write`
612
+ - **标注**:只读=false,幂等=false,破坏性=false
613
+
614
+ | 参数 | 类型 | 必填 | 说明 |
615
+ | --- | --- | --- | --- |
616
+ | `label_key` | integer | 是 | 目标标签 key。 |
617
+ | `file` | file | 是 | 图片文件。 |
618
+
619
+ ## `zentodo.toplabel.sync-push`
620
+
621
+ 调用 /topLabelController/putSyncTopLabel。
622
+
623
+ - **后端端点**:`POST /topLabelController/putSyncTopLabel`
624
+ - **所需 scope**:`sync, write`
625
+ - **标注**:只读=false,幂等=false,破坏性=false
626
+
627
+ | 参数 | 类型 | 必填 | 说明 |
628
+ | --- | --- | --- | --- |
629
+ | `top_label_key` | integer | 否 | 已存在的顶级标签 key。 |
630
+ | `name` | string | 否 | 名称。 |
631
+ | `sync_flag` | string | 否 | 同步标记。 |
632
+
633
+ ## `zentodo.toplabel.list-all`
634
+
635
+ 调用 /topLabelController/getAllTopLabelByUserId。
636
+
637
+ - **后端端点**:`POST /topLabelController/getAllTopLabelByUserId`
638
+ - **所需 scope**:`read`
639
+ - **标注**:只读=true,幂等=true,破坏性=false
640
+
641
+ ## `zentodo.toplabel.sync-pull`
642
+
643
+ 调用 /topLabelController/getSyncTopLabelList。
644
+
645
+ - **后端端点**:`POST /topLabelController/getSyncTopLabelList`
646
+ - **所需 scope**:`sync, read`
647
+ - **标注**:只读=true,幂等=false,破坏性=false
648
+
649
+ | 参数 | 类型 | 必填 | 说明 |
650
+ | --- | --- | --- | --- |
651
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
652
+
653
+ ## `zentodo.quadrant.sync-push`
654
+
655
+ 调用 /quadrantController/putSyncQuadrant。
656
+
657
+ - **后端端点**:`POST /quadrantController/putSyncQuadrant`
658
+ - **所需 scope**:`sync, write`
659
+ - **标注**:只读=false,幂等=false,破坏性=false
660
+
661
+ | 参数 | 类型 | 必填 | 说明 |
662
+ | --- | --- | --- | --- |
663
+ | `quadrant_key` | integer | 否 | 已存在的 quadrantKey。 |
664
+ | `title` | string | 否 | 象限标题。 |
665
+ | `index` | integer | 否 | 象限索引 0..3。 |
666
+ | `sync_flag` | string | 否 | 同步标记。 |
667
+
668
+ ## `zentodo.quadrant.list-all`
669
+
670
+ 调用 /quadrantController/getAllQuadrantByUserId。
671
+
672
+ - **后端端点**:`POST /quadrantController/getAllQuadrantByUserId`
673
+ - **所需 scope**:`read`
674
+ - **标注**:只读=true,幂等=true,破坏性=false
675
+
676
+ ## `zentodo.quadrant.sync-pull`
677
+
678
+ 调用 /quadrantController/getSyncQuadrantList。
679
+
680
+ - **后端端点**:`POST /quadrantController/getSyncQuadrantList`
681
+ - **所需 scope**:`sync, read`
682
+ - **标注**:只读=true,幂等=false,破坏性=false
683
+
684
+ | 参数 | 类型 | 必填 | 说明 |
685
+ | --- | --- | --- | --- |
686
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
687
+
688
+ ## `zentodo.timeline.sync-push`
689
+
690
+ 调用 /timeLineController/putSyncTimeLine。
691
+
692
+ - **后端端点**:`POST /timeLineController/putSyncTimeLine`
693
+ - **所需 scope**:`sync, write`
694
+ - **标注**:只读=false,幂等=false,破坏性=false
695
+
696
+ | 参数 | 类型 | 必填 | 说明 |
697
+ | --- | --- | --- | --- |
698
+ | `time_line_key` | integer | 否 | 已存在的 timeLineKey。 |
699
+ | `title` | string | 否 | 标题。 |
700
+ | `content` | string | 否 | 正文。 |
701
+ | `time` | datetime | 否 | 时间戳(ISO)。 |
702
+ | `sync_flag` | string | 否 | 同步标记。 |
703
+
704
+ ## `zentodo.timeline.list-all`
705
+
706
+ 调用 /timeLineController/getAllTimeLineByUserId。
707
+
708
+ - **后端端点**:`POST /timeLineController/getAllTimeLineByUserId`
709
+ - **所需 scope**:`read`
710
+ - **标注**:只读=true,幂等=true,破坏性=false
711
+
712
+ ## `zentodo.timeline.sync-pull`
713
+
714
+ 调用 /timeLineController/getSyncTimeLineList。
715
+
716
+ - **后端端点**:`POST /timeLineController/getSyncTimeLineList`
717
+ - **所需 scope**:`sync, read`
718
+ - **标注**:只读=true,幂等=false,破坏性=false
719
+
720
+ | 参数 | 类型 | 必填 | 说明 |
721
+ | --- | --- | --- | --- |
722
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
723
+
724
+ ## `zentodo.attach.upload-task`
725
+
726
+ 调用 /attachmentController/uploadTaskAttachmentFile(multipart,字段 file)。
727
+
728
+ - **后端端点**:`POST /attachmentController/uploadTaskAttachmentFile`
729
+ - **所需 scope**:`write`
730
+ - **标注**:只读=false,幂等=false,破坏性=false
731
+
732
+ | 参数 | 类型 | 必填 | 说明 |
733
+ | --- | --- | --- | --- |
734
+ | `task_key` | integer | 是 | 目标任务 taskKey。 |
735
+ | `file` | file | 是 | 附件文件。 |
736
+
737
+ ## `zentodo.attach.upload-thinkmap`
738
+
739
+ 调用 /attachmentController/uploadThinkMapAttachmentFile。
740
+
741
+ - **后端端点**:`POST /attachmentController/uploadThinkMapAttachmentFile`
742
+ - **所需 scope**:`write`
743
+ - **标注**:只读=false,幂等=false,破坏性=false
744
+
745
+ | 参数 | 类型 | 必填 | 说明 |
746
+ | --- | --- | --- | --- |
747
+ | `gd_meta_key` | integer | 是 | 目标 GDMeta key。 |
748
+ | `file` | file | 是 | 附件文件。 |
749
+
750
+ ## `zentodo.attach.upload-rewardstore`
751
+
752
+ 调用 /attachmentController/uploadRewardStoreFile。
753
+
754
+ - **后端端点**:`POST /attachmentController/uploadRewardStoreFile`
755
+ - **所需 scope**:`write`
756
+ - **标注**:只读=false,幂等=false,破坏性=false
757
+
758
+ | 参数 | 类型 | 必填 | 说明 |
759
+ | --- | --- | --- | --- |
760
+ | `reward_id` | integer | 是 | 目标 reward id。 |
761
+ | `file` | file | 是 | 文件。 |
762
+
763
+ ## `zentodo.attach.list-all`
764
+
765
+ 调用 /attachmentController/getAllAttachmentByUserId。
766
+
767
+ - **后端端点**:`POST /attachmentController/getAllAttachmentByUserId`
768
+ - **所需 scope**:`read`
769
+ - **标注**:只读=true,幂等=true,破坏性=false
770
+
771
+ ## `zentodo.attach.sync-pull`
772
+
773
+ 调用 /attachmentController/getSyncAttachmentList。
774
+
775
+ - **后端端点**:`POST /attachmentController/getSyncAttachmentList`
776
+ - **所需 scope**:`sync, read`
777
+ - **标注**:只读=true,幂等=false,破坏性=false
778
+
779
+ | 参数 | 类型 | 必填 | 说明 |
780
+ | --- | --- | --- | --- |
781
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
782
+
783
+ ## `zentodo.attach.sync-push`
784
+
785
+ 调用 /attachmentController/putSyncAttchment。
786
+
787
+ - **后端端点**:`POST /attachmentController/putSyncAttchment`
788
+ - **所需 scope**:`sync, write`
789
+ - **标注**:只读=false,幂等=false,破坏性=false
790
+
791
+ | 参数 | 类型 | 必填 | 说明 |
792
+ | --- | --- | --- | --- |
793
+ | `attachment_key` | integer | 否 | 已存在的 attachmentKey。 |
794
+ | `sync_flag` | string | 否 | 同步标记。 |
795
+
796
+ ## `zentodo.pomo.start`
797
+
798
+ 调用 /timerController/startPomodoro。
799
+
800
+ - **后端端点**:`POST /timerController/startPomodoro`
801
+ - **所需 scope**:`write`
802
+ - **标注**:只读=false,幂等=false,破坏性=false
803
+
804
+ | 参数 | 类型 | 必填 | 说明 |
805
+ | --- | --- | --- | --- |
806
+ | `task_key` | integer | 是 | 要专注的任务 taskKey。 |
807
+ | `duration_sec` | integer | 否 | 专注秒数(默认 25 分钟)。 |
808
+ | `break_sec` | integer | 否 | 短休秒数。 |
809
+ | `long_break_sec` | integer | 否 | 长休秒数。 |
810
+
811
+ ## `zentodo.pomo.stop`
812
+
813
+ 调用 /timerController/stopTimer。
814
+
815
+ - **后端端点**:`POST /timerController/stopTimer`
816
+ - **所需 scope**:`write`
817
+ - **标注**:只读=false,幂等=false,破坏性=false
818
+
819
+ | 参数 | 类型 | 必填 | 说明 |
820
+ | --- | --- | --- | --- |
821
+ | `timer_key` | string | 是 | 计时器 key。 |
822
+
823
+ ## `zentodo.pomo.history`
824
+
825
+ 调用 /tomatoWorkerController/getAllTomatoByUserId。
826
+
827
+ - **后端端点**:`POST /tomatoWorkerController/getAllTomatoByUserId`
828
+ - **所需 scope**:`read`
829
+ - **标注**:只读=true,幂等=true,破坏性=false
830
+
831
+ ## `zentodo.pomo.sync-pull-worker`
832
+
833
+ 调用 /tomatoWorkerController/getSyncTomatoWorkerList。
834
+
835
+ - **后端端点**:`POST /tomatoWorkerController/getSyncTomatoWorkerList`
836
+ - **所需 scope**:`sync, read`
837
+ - **标注**:只读=true,幂等=false,破坏性=false
838
+
839
+ | 参数 | 类型 | 必填 | 说明 |
840
+ | --- | --- | --- | --- |
841
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
842
+
843
+ ## `zentodo.pomo.sync-push-worker`
844
+
845
+ 调用 /tomatoWorkerController/putSyncTomatoWorker。
846
+
847
+ - **后端端点**:`POST /tomatoWorkerController/putSyncTomatoWorker`
848
+ - **所需 scope**:`sync, write`
849
+ - **标注**:只读=false,幂等=false,破坏性=false
850
+
851
+ | 参数 | 类型 | 必填 | 说明 |
852
+ | --- | --- | --- | --- |
853
+ | `tomato_key` | integer | 否 | 已存在的 tomatoKey。 |
854
+ | `task_key` | integer | 否 | 任务 taskKey。 |
855
+ | `sync_flag` | string | 否 | 同步标记。 |
856
+
857
+ ## `zentodo.pomo.config-get`
858
+
859
+ 调用 /tomatoConfigController/getAllTomatoConfigByUserId。
860
+
861
+ - **后端端点**:`POST /tomatoConfigController/getAllTomatoConfigByUserId`
862
+ - **所需 scope**:`read`
863
+ - **标注**:只读=true,幂等=true,破坏性=false
864
+
865
+ ## `zentodo.pomo.config-set`
866
+
867
+ 调用 /tomatoConfigController/putSyncTomatoConfig。
868
+
869
+ - **后端端点**:`POST /tomatoConfigController/putSyncTomatoConfig`
870
+ - **所需 scope**:`sync, write`
871
+ - **标注**:只读=false,幂等=false,破坏性=false
872
+
873
+ | 参数 | 类型 | 必填 | 说明 |
874
+ | --- | --- | --- | --- |
875
+ | `config_key` | integer | 否 | 已存在的 configKey。 |
876
+ | `focus_duration_sec` | integer | 否 | 专注秒数。 |
877
+ | `break_duration_sec` | integer | 否 | 短休秒数。 |
878
+ | `long_break_duration_sec` | integer | 否 | 长休秒数。 |
879
+ | `long_break_every` | integer | 否 | 每多少轮后长休。 |
880
+ | `sync_flag` | string | 否 | 同步标记。 |
881
+
882
+ ## `zentodo.pomo.sync-pull-config`
883
+
884
+ 调用 /tomatoConfigController/getSyncTomatoConfigList。
885
+
886
+ - **后端端点**:`POST /tomatoConfigController/getSyncTomatoConfigList`
887
+ - **所需 scope**:`sync, read`
888
+ - **标注**:只读=true,幂等=false,破坏性=false
889
+
890
+ | 参数 | 类型 | 必填 | 说明 |
891
+ | --- | --- | --- | --- |
892
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
893
+
894
+ ## `zentodo.timer.start-task`
895
+
896
+ 调用 /timerController/startTaskTimer。
897
+
898
+ - **后端端点**:`POST /timerController/startTaskTimer`
899
+ - **所需 scope**:`write`
900
+ - **标注**:只读=false,幂等=false,破坏性=false
901
+
902
+ | 参数 | 类型 | 必填 | 说明 |
903
+ | --- | --- | --- | --- |
904
+ | `task_key` | integer | 是 | 任务 taskKey。 |
905
+
906
+ ## `zentodo.workstate.start`
907
+
908
+ 调用 /workStateController/saveWorkState。
909
+
910
+ - **后端端点**:`POST /workStateController/saveWorkState`
911
+ - **所需 scope**:`write`
912
+ - **标注**:只读=false,幂等=false,破坏性=false
913
+
914
+ | 参数 | 类型 | 必填 | 说明 |
915
+ | --- | --- | --- | --- |
916
+ | `task_key` | integer | 否 | 关联任务 taskKey。 |
917
+ | `scene_key` | integer | 否 | 关联场景 sceneKey。 |
918
+ | `title` | string | 否 | 本次会话标题。 |
919
+
920
+ ## `zentodo.workstate.stop`
921
+
922
+ 调用 /workStateController/stopWorkState。
923
+
924
+ - **后端端点**:`POST /workStateController/stopWorkState`
925
+ - **所需 scope**:`write`
926
+ - **标注**:只读=false,幂等=false,破坏性=false
927
+
928
+ | 参数 | 类型 | 必填 | 说明 |
929
+ | --- | --- | --- | --- |
930
+ | `work_state_key` | string | 是 | 工作状态 key。 |
931
+
932
+ ## `zentodo.workstate.current`
933
+
934
+ 调用 /workStateController/getCurrentWorkState。
935
+
936
+ - **后端端点**:`POST /workStateController/getCurrentWorkState`
937
+ - **所需 scope**:`read`
938
+ - **标注**:只读=true,幂等=true,破坏性=false
939
+
940
+ ## `zentodo.workstate.update`
941
+
942
+ 调用 /workStateController/updateWorkState。
943
+
944
+ - **后端端点**:`POST /workStateController/updateWorkState`
945
+ - **所需 scope**:`write`
946
+ - **标注**:只读=false,幂等=false,破坏性=false
947
+
948
+ | 参数 | 类型 | 必填 | 说明 |
949
+ | --- | --- | --- | --- |
950
+ | `work_state_key` | string | 是 | 工作状态 key。 |
951
+ | `title` | string | 否 | 新标题。 |
952
+ | `note` | string | 否 | 备注。 |
953
+
954
+ ## `zentodo.workstate.list-all`
955
+
956
+ 调用 /workStateController/getAllWorkStateByUserId。
957
+
958
+ - **后端端点**:`POST /workStateController/getAllWorkStateByUserId`
959
+ - **所需 scope**:`read`
960
+ - **标注**:只读=true,幂等=true,破坏性=false
961
+
962
+ ## `zentodo.workstate.sync-pull`
963
+
964
+ 调用 /workStateController/getSyncWorkStateList。
965
+
966
+ - **后端端点**:`POST /workStateController/getSyncWorkStateList`
967
+ - **所需 scope**:`sync, read`
968
+ - **标注**:只读=true,幂等=false,破坏性=false
969
+
970
+ | 参数 | 类型 | 必填 | 说明 |
971
+ | --- | --- | --- | --- |
972
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
973
+
974
+ ## `zentodo.workstate.sync-push`
975
+
976
+ 调用 /workStateController/putSyncWorkState。
977
+
978
+ - **后端端点**:`POST /workStateController/putSyncWorkState`
979
+ - **所需 scope**:`sync, write`
980
+ - **标注**:只读=false,幂等=false,破坏性=false
981
+
982
+ | 参数 | 类型 | 必填 | 说明 |
983
+ | --- | --- | --- | --- |
984
+ | `work_state_key` | string | 否 | 已存在的 key。 |
985
+ | `sync_flag` | string | 否 | 同步标记。 |
986
+
987
+ ## `zentodo.diary.title-list`
988
+
989
+ 调用 /mdTitleController/getAllMDTitleByUserId。
990
+
991
+ - **后端端点**:`POST /mdTitleController/getAllMDTitleByUserId`
992
+ - **所需 scope**:`read`
993
+ - **标注**:只读=true,幂等=true,破坏性=false
994
+
995
+ ## `zentodo.diary.title-sync-pull`
996
+
997
+ 调用 /mdTitleController/getSyncMDTitleList。
998
+
999
+ - **后端端点**:`POST /mdTitleController/getSyncMDTitleList`
1000
+ - **所需 scope**:`sync, read`
1001
+ - **标注**:只读=true,幂等=false,破坏性=false
1002
+
1003
+ | 参数 | 类型 | 必填 | 说明 |
1004
+ | --- | --- | --- | --- |
1005
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
1006
+
1007
+ ## `zentodo.diary.title-sync-push`
1008
+
1009
+ 调用 /mdTitleController/putSyncMDTitle。
1010
+
1011
+ - **后端端点**:`POST /mdTitleController/putSyncMDTitle`
1012
+ - **所需 scope**:`sync, write`
1013
+ - **标注**:只读=false,幂等=false,破坏性=false
1014
+
1015
+ | 参数 | 类型 | 必填 | 说明 |
1016
+ | --- | --- | --- | --- |
1017
+ | `md_title_key` | integer | 否 | 已存在的 mdTitleKey。 |
1018
+ | `title` | string | 否 | 标题。 |
1019
+ | `date` | date | 否 | 日期(ISO)。 |
1020
+ | `sync_flag` | string | 否 | 同步标记。 |
1021
+
1022
+ ## `zentodo.diary.content-list`
1023
+
1024
+ 调用 /mdContentController/getAllMdContentByUserId。
1025
+
1026
+ - **后端端点**:`POST /mdContentController/getAllMdContentByUserId`
1027
+ - **所需 scope**:`read`
1028
+ - **标注**:只读=true,幂等=true,破坏性=false
1029
+
1030
+ ## `zentodo.diary.content-sync-pull`
1031
+
1032
+ 调用 /mdContentController/getSyncMdContentList。
1033
+
1034
+ - **后端端点**:`POST /mdContentController/getSyncMdContentList`
1035
+ - **所需 scope**:`sync, read`
1036
+ - **标注**:只读=true,幂等=false,破坏性=false
1037
+
1038
+ | 参数 | 类型 | 必填 | 说明 |
1039
+ | --- | --- | --- | --- |
1040
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
1041
+
1042
+ ## `zentodo.diary.content-sync-push`
1043
+
1044
+ 调用 /mdContentController/putSyncMdContent。
1045
+
1046
+ - **后端端点**:`POST /mdContentController/putSyncMdContent`
1047
+ - **所需 scope**:`sync, write`
1048
+ - **标注**:只读=false,幂等=false,破坏性=false
1049
+
1050
+ | 参数 | 类型 | 必填 | 说明 |
1051
+ | --- | --- | --- | --- |
1052
+ | `md_content_key` | integer | 否 | 已存在的 mdContentKey。 |
1053
+ | `md_title_key` | integer | 否 | 父标题 mdTitleKey。 |
1054
+ | `content` | string | 否 | 正文。 |
1055
+ | `sync_flag` | string | 否 | 同步标记。 |
1056
+
1057
+ ## `zentodo.mindmap.sync-push`
1058
+
1059
+ 调用 /gdMetaController/putSyncGDMeta。
1060
+
1061
+ - **后端端点**:`POST /gdMetaController/putSyncGDMeta`
1062
+ - **所需 scope**:`sync, write`
1063
+ - **标注**:只读=false,幂等=false,破坏性=false
1064
+
1065
+ | 参数 | 类型 | 必填 | 说明 |
1066
+ | --- | --- | --- | --- |
1067
+ | `gd_meta_key` | integer | 否 | 已存在的 gdMetaKey。 |
1068
+ | `parent_key` | integer | 否 | 父节点 key。 |
1069
+ | `content` | string | 否 | 节点内容。 |
1070
+ | `sync_flag` | string | 否 | 同步标记。 |
1071
+
1072
+ ## `zentodo.mindmap.list-all`
1073
+
1074
+ 调用 /gdMetaController/getAllGDMetaByUserId。
1075
+
1076
+ - **后端端点**:`POST /gdMetaController/getAllGDMetaByUserId`
1077
+ - **所需 scope**:`read`
1078
+ - **标注**:只读=true,幂等=true,破坏性=false
1079
+
1080
+ ## `zentodo.mindmap.sync-pull`
1081
+
1082
+ 调用 /gdMetaController/getSyncGDMetaList。
1083
+
1084
+ - **后端端点**:`POST /gdMetaController/getSyncGDMetaList`
1085
+ - **所需 scope**:`sync, read`
1086
+ - **标注**:只读=true,幂等=false,破坏性=false
1087
+
1088
+ | 参数 | 类型 | 必填 | 说明 |
1089
+ | --- | --- | --- | --- |
1090
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
1091
+
1092
+ ## `zentodo.reward.store-sync-push`
1093
+
1094
+ 调用 /rewardStoreController/putSyncRewardStore。
1095
+
1096
+ - **后端端点**:`POST /rewardStoreController/putSyncRewardStore`
1097
+ - **所需 scope**:`sync, write`
1098
+ - **标注**:只读=false,幂等=false,破坏性=false
1099
+
1100
+ | 参数 | 类型 | 必填 | 说明 |
1101
+ | --- | --- | --- | --- |
1102
+ | `reward_key` | integer | 否 | 已存在的 rewardKey。 |
1103
+ | `name` | string | 否 | 奖励名称。 |
1104
+ | `cost` | integer | 否 | 兑换所需奖励币。 |
1105
+ | `sync_flag` | string | 否 | 同步标记。 |
1106
+
1107
+ ## `zentodo.reward.store-list`
1108
+
1109
+ 调用 /rewardStoreController/getAllRewardStoreByUserId。
1110
+
1111
+ - **后端端点**:`POST /rewardStoreController/getAllRewardStoreByUserId`
1112
+ - **所需 scope**:`read`
1113
+ - **标注**:只读=true,幂等=true,破坏性=false
1114
+
1115
+ ## `zentodo.reward.store-sync-pull`
1116
+
1117
+ 调用 /rewardStoreController/getSyncRewardStoreList。
1118
+
1119
+ - **后端端点**:`POST /rewardStoreController/getSyncRewardStoreList`
1120
+ - **所需 scope**:`sync, read`
1121
+ - **标注**:只读=true,幂等=false,破坏性=false
1122
+
1123
+ | 参数 | 类型 | 必填 | 说明 |
1124
+ | --- | --- | --- | --- |
1125
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
1126
+
1127
+ ## `zentodo.reward.store-update-file`
1128
+
1129
+ 调用 /rewardStoreController/updateRewardStoreFile。
1130
+
1131
+ - **后端端点**:`POST /rewardStoreController/updateRewardStoreFile`
1132
+ - **所需 scope**:`write`
1133
+ - **标注**:只读=false,幂等=false,破坏性=false
1134
+
1135
+ | 参数 | 类型 | 必填 | 说明 |
1136
+ | --- | --- | --- | --- |
1137
+ | `reward_id` | integer | 是 | 奖励 id。 |
1138
+ | `file` | file | 是 | 文件。 |
1139
+
1140
+ ## `zentodo.reward.record-sync-push`
1141
+
1142
+ 调用 /rewardRecordController/putSyncRewardRecord。
1143
+
1144
+ - **后端端点**:`POST /rewardRecordController/putSyncRewardRecord`
1145
+ - **所需 scope**:`sync, write`
1146
+ - **标注**:只读=false,幂等=false,破坏性=false
1147
+
1148
+ | 参数 | 类型 | 必填 | 说明 |
1149
+ | --- | --- | --- | --- |
1150
+ | `record_key` | integer | 否 | 已存在的记录 key。 |
1151
+ | `reward_key` | integer | 否 | 关联的奖励 key。 |
1152
+ | `cost` | integer | 否 | 消耗的奖励币。 |
1153
+ | `sync_flag` | string | 否 | 同步标记。 |
1154
+
1155
+ ## `zentodo.reward.record-list`
1156
+
1157
+ 调用 /rewardRecordController/getAllRewardRecordByUserId。
1158
+
1159
+ - **后端端点**:`POST /rewardRecordController/getAllRewardRecordByUserId`
1160
+ - **所需 scope**:`read`
1161
+ - **标注**:只读=true,幂等=true,破坏性=false
1162
+
1163
+ ## `zentodo.reward.record-sync-pull`
1164
+
1165
+ 调用 /rewardRecordController/getSyncRewardRecordList。
1166
+
1167
+ - **后端端点**:`POST /rewardRecordController/getSyncRewardRecordList`
1168
+ - **所需 scope**:`sync, read`
1169
+ - **标注**:只读=true,幂等=false,破坏性=false
1170
+
1171
+ | 参数 | 类型 | 必填 | 说明 |
1172
+ | --- | --- | --- | --- |
1173
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
1174
+
1175
+ ## `zentodo.fasttime.sync-push`
1176
+
1177
+ 调用 /fastTimeRecordController/putSyncFastTimeRecord。
1178
+
1179
+ - **后端端点**:`POST /fastTimeRecordController/putSyncFastTimeRecord`
1180
+ - **所需 scope**:`sync, write`
1181
+ - **标注**:只读=false,幂等=false,破坏性=false
1182
+
1183
+ | 参数 | 类型 | 必填 | 说明 |
1184
+ | --- | --- | --- | --- |
1185
+ | `record_key` | integer | 否 | 已存在的记录 key。 |
1186
+ | `title` | string | 否 | 标题。 |
1187
+ | `duration_sec` | integer | 否 | 时长(秒)。 |
1188
+ | `sync_flag` | string | 否 | 同步标记。 |
1189
+
1190
+ ## `zentodo.fasttime.list-all`
1191
+
1192
+ 调用 /fastTimeRecordController/getAllFastTimeByUserId。
1193
+
1194
+ - **后端端点**:`POST /fastTimeRecordController/getAllFastTimeByUserId`
1195
+ - **所需 scope**:`read`
1196
+ - **标注**:只读=true,幂等=true,破坏性=false
1197
+
1198
+ ## `zentodo.fasttime.sync-pull`
1199
+
1200
+ 调用 /fastTimeRecordController/getSyncFastTimeRecordList。
1201
+
1202
+ - **后端端点**:`POST /fastTimeRecordController/getSyncFastTimeRecordList`
1203
+ - **所需 scope**:`sync, read`
1204
+ - **标注**:只读=true,幂等=false,破坏性=false
1205
+
1206
+ | 参数 | 类型 | 必填 | 说明 |
1207
+ | --- | --- | --- | --- |
1208
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
1209
+
1210
+ ## `zentodo.wheel.sync-push`
1211
+
1212
+ 调用 /wheelViewController/putSyncWheelView。
1213
+
1214
+ - **后端端点**:`POST /wheelViewController/putSyncWheelView`
1215
+ - **所需 scope**:`sync, write`
1216
+ - **标注**:只读=false,幂等=false,破坏性=false
1217
+
1218
+ | 参数 | 类型 | 必填 | 说明 |
1219
+ | --- | --- | --- | --- |
1220
+ | `wheel_key` | integer | 否 | 已存在的 key。 |
1221
+ | `title` | string | 否 | 标题。 |
1222
+ | `sync_flag` | string | 否 | 同步标记。 |
1223
+
1224
+ ## `zentodo.wheel.list-all`
1225
+
1226
+ 调用 /wheelViewController/getAllWheelByUserId。
1227
+
1228
+ - **后端端点**:`POST /wheelViewController/getAllWheelByUserId`
1229
+ - **所需 scope**:`read`
1230
+ - **标注**:只读=true,幂等=true,破坏性=false
1231
+
1232
+ ## `zentodo.wheel.sync-pull`
1233
+
1234
+ 调用 /wheelViewController/getSyncWheelViewList。
1235
+
1236
+ - **后端端点**:`POST /wheelViewController/getSyncWheelViewList`
1237
+ - **所需 scope**:`sync, read`
1238
+ - **标注**:只读=true,幂等=false,破坏性=false
1239
+
1240
+ | 参数 | 类型 | 必填 | 说明 |
1241
+ | --- | --- | --- | --- |
1242
+ | `client_version` | integer | 是 | 客户端已知版本号。 |
1243
+
1244
+ ## `zentodo.invite.list-all`
1245
+
1246
+ 调用 /inviteController/getAllInviteByUserId。
1247
+
1248
+ - **后端端点**:`POST /inviteController/getAllInviteByUserId`
1249
+ - **所需 scope**:`read`
1250
+ - **标注**:只读=true,幂等=true,破坏性=false
1251
+
1252
+ ## `zentodo.app.latest-version`
1253
+
1254
+ 调用 /appUpdateController/getLastestVersionCode。
1255
+
1256
+ - **后端端点**:`POST /appUpdateController/getLastestVersionCode`
1257
+ - **所需 scope**:`read`
1258
+ - **标注**:只读=true,幂等=true,破坏性=false
1259
+
1260
+ ## `zentodo.app.update-info`
1261
+
1262
+ 调用 /appUpdateController/getLastestAppUpdateItem。
1263
+
1264
+ - **后端端点**:`POST /appUpdateController/getLastestAppUpdateItem`
1265
+ - **所需 scope**:`read`
1266
+ - **标注**:只读=true,幂等=true,破坏性=false
1267
+
1268
+ | 参数 | 类型 | 必填 | 说明 |
1269
+ | --- | --- | --- | --- |
1270
+ | `version_code` | integer | 是 | 当前 versionCode。 |
1271
+
1272
+ ## `zentodo.app.service-time`
1273
+
1274
+ 调用 /serviceController/getServiceTime。
1275
+
1276
+ - **后端端点**:`POST /serviceController/getServiceTime`
1277
+ - **所需 scope**:`read`
1278
+ - **标注**:只读=true,幂等=true,破坏性=false
1279
+
1280
+ ## `zentodo.pay.price`
1281
+
1282
+ 调用 /xzbbPriceController/getXzbbPrice。
1283
+
1284
+ - **后端端点**:`POST /xzbbPriceController/getXzbbPrice`
1285
+ - **所需 scope**:`read`
1286
+ - **标注**:只读=true,幂等=true,破坏性=false
1287
+
1288
+ | 参数 | 类型 | 必填 | 说明 |
1289
+ | --- | --- | --- | --- |
1290
+ | `id` | integer | 否 | 价格 id 过滤。 |
1291
+
1292
+ ## `zentodo.pay.wechat-order`
1293
+
1294
+ 调用 /payController/getWechatOrderInfo。需要 scope "pay"。
1295
+
1296
+ - **后端端点**:`POST /payController/getWechatOrderInfo`
1297
+ - **所需 scope**:`pay`
1298
+ - **标注**:只读=false,幂等=false,破坏性=false
1299
+
1300
+ | 参数 | 类型 | 必填 | 说明 |
1301
+ | --- | --- | --- | --- |
1302
+ | `product_id` | integer | 是 | 商品 id。 |
1303
+
1304
+ ## `zentodo.pay.alipay-order`
1305
+
1306
+ 调用 /payController/getAlipayOrderInfo。需要 scope "pay"。
1307
+
1308
+ - **后端端点**:`POST /payController/getAlipayOrderInfo`
1309
+ - **所需 scope**:`pay`
1310
+ - **标注**:只读=false,幂等=false,破坏性=false
1311
+
1312
+ | 参数 | 类型 | 必填 | 说明 |
1313
+ | --- | --- | --- | --- |
1314
+ | `product_id` | integer | 是 | 商品 id。 |
1315
+
1316
+ ## `zentodo.pay.coupon`
1317
+
1318
+ 调用 /couponController/getCouponByCouponId。
1319
+
1320
+ - **后端端点**:`POST /couponController/getCouponByCouponId`
1321
+ - **所需 scope**:`read`
1322
+ - **标注**:只读=true,幂等=true,破坏性=false
1323
+
1324
+ | 参数 | 类型 | 必填 | 说明 |
1325
+ | --- | --- | --- | --- |
1326
+ | `coupon_id` | string | 是 | 优惠券 id。 |
1327
+
1328
+ ## `zentodo.sync.server-version`
1329
+
1330
+ 调用 /tableRecorderController/getTableRecordLatestVersion。
1331
+
1332
+ - **后端端点**:`POST /tableRecorderController/getTableRecordLatestVersion`
1333
+ - **所需 scope**:`sync, read`
1334
+ - **标注**:只读=true,幂等=true,破坏性=false
1335
+
1336
+ | 参数 | 类型 | 必填 | 说明 |
1337
+ | --- | --- | --- | --- |
1338
+ | `table_name` | string | 是 | 表名(如 task、project)。 |
1339
+
1340
+ ## `zentodo.sync.recorder-list`
1341
+
1342
+ 调用 /tableRecorderController/getAllTableRecorderByUserId。
1343
+
1344
+ - **后端端点**:`POST /tableRecorderController/getAllTableRecorderByUserId`
1345
+ - **所需 scope**:`sync, read`
1346
+ - **标注**:只读=true,幂等=true,破坏性=false