To update a record's core properties, use the editTodo
mutation:
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
}
}
Field | Type | Description |
---|---|---|
todoId | String | (Required) The ID of the record to update |
todoListId | String | New list ID if moving the record |
position | Integer | New position in the list |
title | String | Updated record title |
html/text | String | Updated description (must match in both fields) |
startedAt/duedAt | DateTime | Updated start/end dates in ISO 8601 format |
color | String | Color code from available options |
// 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"]
To update custom field values, use the setTodoCustomField
mutation with field-specific parameters:
mutation {
setTodoCustomField(
input: {
customFieldId: "YOUR CUSTOM FIELD ID"
todoId: "YOUR RECORD ID"
text: "VALUE"
}
) {
success
}
}
Applies to: TEXT_SINGLE
, TEXT_MULTI
, URL
, EMAIL
mutation {
setTodoCustomField(
input: {
customFieldId: "YOUR CUSTOM FIELD ID"
todoId: "YOUR RECORD ID"
number: "NUMERIC_VALUE"
}
) {
success
}
}
Applies to: NUMBER
, CURRENCY
, PERCENT
, RATING
mutation {
setTodoCustomField(
input: {
customFieldId: "YOUR CUSTOM FIELD ID"
todoId: "YOUR RECORD ID"
customFieldOptionIds: ["OPTION_ID_1", "OPTION_ID_2"]
}
) {
success
}
}
Applies to: SELECT_SINGLE
, SELECT_MULTI
Phone Numbers:
mutation {
setTodoCustomField(
input: {
customFieldId: "YOUR CUSTOM FIELD ID"
todoId: "YOUR RECORD ID"
text: "+33642526644"
regionCode: "FR"
}
)
}
Countries:
mutation {
setTodoCustomField(
input: {
customFieldId: "YOUR CUSTOM FIELD ID"
todoId: "YOUR RECORD ID"
countryCodes: ["AF", "AL", "DZ"]
text: "Afghanistan, Albania, Algeria"
}
)
}
Location:
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"
}
)
}
Checkbox:
mutation {
setTodoCustomField(
input: {
customFieldId: "YOUR CUSTOM FIELD ID"
todoId: "YOUR RECORD ID"
checked: true
}
)
}
html
and text
fields when updating descriptions