
PATCH https://graph.microsoft.com/v1.0/planner/tasks/{taskId}/details
If-Match: <etag from the GET>
{ "checklist": {
"<guid1>": { "@odata.type": "microsoft.graph.plannerChecklistItem",
"title": "First", "isChecked": false, "orderHint": " !" },
"<guid2>": { "...", "orderHint": " ! !" },
"<guid3>": { "...", "orderHint": " ! ! !" }
}}
References:
Use the Planner REST API (etag / If-Match rules)
Tom Riha — Update Planner checklist with Power Automate flow (covers the etag escaping issue)