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
およびtext
フィールドは、html
が提供されると自動的に同期されます- すべての更新操作はアクティビティログとWebhook通知をトリガーします