# 说明
返回符合查询条件的所有工作项动态(分页显示,默认一页30条)
# url
https://api.tapd.cn/mini_item_changes
# 支持格式
JSON/XML(默认JSON格式)
# HTTP请求方式
GET
# 请求数限制
created
参数与mini_item_id
参数二选一必填。即 mini_item_id、created 两个参数至少填写一个- 其中 created 参数要填写成日期格式,比如 created=2023-07-18,则返回 2023-07-18 这一天的动态
- 默认返回 30 条。可通过传 limit 参数设置,最大取 100。也可以传 page 参数翻页
# 请求参数
字段名 | 必选 | 类型及范围 | 说明 | 特殊规则 |
---|---|---|---|---|
id | 否 | integer | 动态id | 支持多ID查询 |
mini_item_id | 否 | integer | 工作项id | 支持多ID查询 |
workspace_id | 是 | integer | 空间ID | |
creator | 否 | string | 创建人(操作人) | |
created | 否 | datetime | 创建时间(变更时间) | 支持时间查询 |
change_type | 否 | string | 变更类型 | 值范围见文档下方附录1 |
change_summary | 否 | string | 工作项变更描述 | |
comment | 否 | string | 评论 | |
change_field | 否 | string | 设置获取变更字段如(status) | |
need_parse_changes | 否 | integer | 设置field_changes字段是否返回(默认取 1。取 0 则不返回) | |
limit | 否 | integer | 设置返回数量限制,默认为30 | |
page | 否 | integer | 返回当前数量限制下第N页的数据,默认为1(第一页) | |
order | 否 | string | 排序规则,规则:字段名 ASC或者DESC,然后 urlencode | 如按创建时间逆序:order=created%20desc |
fields | 否 | string | 设置获取的字段,多个字段间以','逗号隔开 |
# 调用示例及返回结果
# 获取空间下工作项动态
# curl 使用 Basic Auth 鉴权调用示例
curl -u 'api_user:api_password' 'https://api.tapd.cn/mini_item_changes?workspace_id=69993260'
# curl 使用 OAuth Access Token 鉴权调用示例
curl -H 'Authorization: Bearer ACCESS_TOKEN' 'https://api.tapd.cn/mini_item_changes?workspace_id=69993260'
# 返回结果
{
"status": 1,
"data": [
{
"WorkitemChange": {
"id": "1069993260086183599",
"workspace_id": "69993260",
"workitem_type_id": "0",
"creator": "orangecyang",
"created": "2023-07-18 16:02:56",
"change_summary": "update_mini_item",
"comment": null,
"changes":"[{\"field\":\"progress_manual\",\"value_before\":\"0\",\"value_after\":100,\"field_name\":\"\进\度\",\"field_type\":\"integer\"}",
"entity_type": "MiniItem",
"change_type": "manual_update",
"change_type_text": "手动变更",
"field_changes": [
{
"field": "progress_manual",
"value_before": "0",
"value_after": 100,
"field_name": "进度",
"field_type": "integer",
"value_before_parsed": "0",
"value_after_parsed": "100",
"field_label": "进度"
}
],
"mini_item_id": "1069993260856110919"
}
},
{
"WorkitemChange": {
"id": "1069993260086183603",
"workspace_id": "69993260",
"workitem_type_id": "0",
"creator": "orangecyang",
"created": "2023-07-18 16:03:19",
"change_summary": "update_mini_item",
"comment": null,
"changes":"[{\"field\":\"owner\",\"value_before\":\"\",\"value_after\":\"orangecyang;\",\"field_name\":\"\处\理\人\",\"field_type\":\"user_chooser\"}",
"entity_type": "MiniItem",
"change_type": "manual_update",
"change_type_text": "手动变更",
"field_changes": [
{
"field": "owner",
"value_before": "",
"value_after": "orangecyang;",
"field_name": "处理人",
"field_type": "user_chooser",
"value_before_parsed": "--",
"value_after_parsed": "orangecyang;",
"field_label": "处理人"
}
],
"mini_item_id": "1069993260856110919"
}
}
],
"info": "success"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# 以创建时间倒序获取工作项ID为 1069993260856110917 的工作项 于2023-07-18日创建的动态
# curl 使用 Basic Auth 鉴权调用示例
curl -u 'api_user:api_password' 'https://api.tapd.cn/mini_item_changes?workspace_id=69993260&created=2023-07-18&mini_item_id=1069993260856110917&order=created desc'
# curl 使用 OAuth Access Token 鉴权调用示例
curl -H 'Authorization: Bearer ACCESS_TOKEN' 'https://api.tapd.cn/mini_item_changes?workspace_id=69993260&created=2023-07-18&mini_item_id=1069993260856110917&order=created desc'
# 返回结果
{
"status": 1,
"data": [
{
"WorkitemChange": {
"id": "1069993260086183749",
"workspace_id": "69993260",
"workitem_type_id": "0",
"creator": "orangecyang",
"created": "2023-07-18 16:40:55",
"change_summary": "update_mini_item",
"comment": null,
"changes":"[{\"field\":\"name\",\"value_before\":\"mini_item_created_by_api\",\"value_after\":\"mini_item_created_by_api1\",\"field_name\":\"\标\题\",\"field_type\":\"input\"}",
"entity_type": "MiniItem",
"change_type": "manual_update",
"change_type_text": "手动变更",
"field_changes": [
{
"field": "name",
"value_before": "mini_item_created_by_api",
"value_after": "mini_item_created_by_api1",
"field_name": "标题",
"field_type": "input",
"value_before_parsed": "mini_item_created_by_api",
"value_after_parsed": "mini_item_created_by_api1",
"field_label": "标题"
}
],
"mini_item_id": "1069993260856110917"
}
},
{
"WorkitemChange": {
"id": "1069993260086183745",
"workspace_id": "69993260",
"workitem_type_id": "0",
"creator": "orangecyang",
"created": "2023-07-18 16:36:44",
"change_summary": "update_mini_item",
"comment": null,
"changes":"[{\"field\":\"name\",\"value_before\":\"mini_item_created_by_api1\",\"value_after\":\"mini_item_created_by_api\",\"field_name\":\"\标\题\",\"field_type\":\"input\"}",
"entity_type": "MiniItem",
"change_type": "manual_update",
"change_type_text": "手动变更",
"field_changes": [
{
"field": "name",
"value_before": "mini_item_created_by_api1",
"value_after": "mini_item_created_by_api",
"field_name": "标题",
"field_type": "input",
"value_before_parsed": "mini_item_created_by_api1",
"value_after_parsed": "mini_item_created_by_api",
"field_label": "标题"
}
],
"mini_item_id": "1069993260856110917"
}
}
],
"info": "success"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# 工作项动态字段说明
# 工作项动态重要字段说明
字段 | 说明 |
---|---|
id | id |
workspace_id | 空间ID |
creator | 创建人(操作人) |
created | 创建时间(变更时间) |
change_summary | 工作项变更描述 |
comment | 评论 |
changes | 变更详细记录 |
entity_type | 变更的对象类型 |
change_type | 变更类型 |
change_type_text | 变更类型结果中文 |
field_changes | 变更详细记录 |
# 附录1
参数值 | 参数含义 |
---|---|
api | API变更 |
manual_update | 手动变更 |
# 最佳实践
# 全量同步动态数据
如果需要同步空间全量状态动态数据,可以按照如下步骤:
- 使用获取工作项数据接口,分页获取工作项的ID。比如
https://api.tapd.cn/mini_items?workspace_id=空间ID&limit=30&page=1&fields=id
- 根据步骤1获取到的工作项ID,加到 mini_item_id 参数里面,分页获取动态数据。比如
https://api.tapd.cn/mini_item_changes?workspace_id=空间ID&mini_item_id=工作项ID1,工作项ID2,工作项3&limit=30&page=1
- 重复步骤1、步骤2直到拿到所有工作项的动态
# 增量同步动态数据
因为动态数据不会变,只增不减。所以可以传递 created 参数来增量获取动态数据。参考这样:
- 传递 created=日期 。比如
https://api.tapd.cn/mini_item_changes?workspace_id=空间ID&created=2022-02-22&limit=30&page=1
来获取某天的动态数据