了解如何使用 Blue API 更新记录详细信息和自定义字段。
更新记录详细信息
要更新记录的核心属性,请使用 editTodo
变更:
mutation UpdateRecordDetails {
editTodo(
input: {
todoId: "YOUR RECORD ID"
todoListId: "RECORD LIST ID TO MOVE THE RECORD TO"
position: "NEW RECORD POSITION IN NUMBER"
title: "NEW RECORD TITLE"
html: "NEW RECORD DESCRIPTION IN HTML (MUST MATCH TEXT)"
text: "NEW RECORD DESCRIPTION IN TEXT (MUST MATCH HTML)"
startedAt: "NEW RECORD DUE DATE (START)"
duedAt: "NEW RECORD DUE DATE (END)"
color: "RECORD COLOR CODE"
}
) {
id
title
position
html
text
color
}
}
输入字段参考
字段 | 类型 | 描述 |
---|---|---|
todoId | String | (必填)要更新的记录的 ID |
todoListId | String | 如果移动记录,则为新列表 ID |
position | Float | 列表中的新位置 |
title | String | 更新后的记录标题 |
html/text | String | 更新后的描述(两个字段必须匹配) |
startedAt/duedAt | DateTime | 更新后的开始/结束日期,采用 ISO 8601 格式 |
color | String | 可用选项中的颜色代码 |
颜色选项
// Light theme colors
["#ffc2d4", "#ed8285", "#ffb55e", "#ffe885", "#ccf07d",
"#91e38c", "#a1f7fa", "#91cfff", "#c29ee0", "#e8bd91"]
// Dark theme colors
["#ff8ebe", "#ff4b4b", "#ff9e4b", "#ffdc6b", "#b4e051",
"#66d37e", "#4fd2ff", "#4a9fff", "#a17ee8", "#e89e64"]
更新自定义字段
要更新自定义字段值,请使用 setTodoCustomField
变更,并使用特定字段参数:
基于文本的字段
mutation {
setTodoCustomField(
input: {
customFieldId: "YOUR CUSTOM FIELD ID"
todoId: "YOUR RECORD ID"
text: "VALUE"
}
)
}
适用范围: TEXT_SINGLE
, TEXT_MULTI
, URL
, EMAIL
数值字段
mutation {
setTodoCustomField(
input: {
customFieldId: "YOUR CUSTOM FIELD ID"
todoId: "YOUR RECORD ID"
number: "NUMERIC_VALUE"
}
)
}
适用范围: NUMBER
, PERCENT
, RATING
选择字段
mutation {
setTodoCustomField(
input: {
customFieldId: "YOUR CUSTOM FIELD ID"
todoId: "YOUR RECORD ID"
customFieldOptionIds: ["OPTION_ID_1", "OPTION_ID_2"]
}
)
}
适用范围: SELECT_SINGLE
, SELECT_MULTI
专用字段
电话号码:
mutation {
setTodoCustomField(
input: {
customFieldId: "YOUR CUSTOM FIELD ID"
todoId: "YOUR RECORD ID"
text: "+33642526644"
regionCode: "FR"
}
)
}
国家:
mutation {
setTodoCustomField(
input: {
customFieldId: "YOUR CUSTOM FIELD ID"
todoId: "YOUR RECORD ID"
countryCodes: ["AF", "AL", "DZ"]
text: "Afghanistan, Albania, Algeria"
}
)
}
位置:
mutation {
setTodoCustomField(
input: {
customFieldId: "YOUR CUSTOM FIELD ID"
todoId: "YOUR RECORD ID"
latitude: 42.2923323
longitude: 12.126621199999999
text: "Via Cassia, Querce d'Orlando, Capranica, Italy"
}
)
}
复选框:
mutation {
setTodoCustomField(
input: {
customFieldId: "YOUR CUSTOM FIELD ID"
todoId: "YOUR RECORD ID"
checked: true
}
)
}
所需权限
用户必须具有适当的项目访问权限才能更新记录:
访问级别 | 可以更新记录 |
---|---|
OWNER |
✅ 是 |
ADMIN |
✅ 是 |
MEMBER |
✅ 是 |
CLIENT |
✅ 是 |
COMMENT_ONLY |
❌ 否 |
VIEW_ONLY |
❌ 否 |
根据角色配置,可能还会适用额外的自定义字段权限 setTodoCustomField
。
返回值
editTodo
返回完整的更新后的Todo
对象setTodoCustomField
返回Boolean!
表示成功
注意事项
- 自定义字段 ID 可以通过 列出自定义字段 查询找到
- 直接使用 API 时,电话号码必须采用 E.164 格式
- 位置字段最好通过 Blue 应用程序界面进行管理
- 当提供
html
时,html
和text
字段会自动同步 - 所有更新操作都会触发活动日志记录和 webhook 通知