> ## Documentation Index
> Fetch the complete documentation index at: https://docs.chatgrid.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Batch Node Operations

> Perform multiple create, update, and delete node operations in a single request.

Operations are executed sequentially. Partial failures are reported in the
`errors` array without rolling back successful operations.

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST "https://api.chatgrid.ai/v1/boards/a1b2c3d4-e5f6-7890-abcd-ef1234567890/nodes/batch" \
    -H "Authorization: Bearer cgk_live_a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6" \
    -H "Content-Type: application/json" \
    -d '{
      "operations": [
        {
          "action": "create",
          "data": {
            "type": "note",
            "position": { "x": 100, "y": 200 },
            "data": { "label": "Research Note", "text": "Follow up with the data team." }
          }
        },
        {
          "action": "update",
          "id": "e5f6a7b8-c9d0-1234-efab-345678901234",
          "data": { "position": { "x": 300, "y": 400 } }
        },
        {
          "action": "delete",
          "id": "11223344-5566-7788-99aa-bbccddeeff00"
        }
      ]
    }'
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "object": "batch_result",
    "data": {
      "created": 1,
      "updated": 1,
      "deleted": 1,
      "errors": null
    }
  }
  ```

  ```json 200 (partial failure) theme={null}
  {
    "object": "batch_result",
    "data": {
      "created": 1,
      "updated": 0,
      "deleted": 1,
      "errors": [
        { "index": 1, "message": "Node not found" }
      ]
    }
  }
  ```
</ResponseExample>
