@zentodo/cli 0.1.1 → 0.1.3

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