Edit a block

​

Changes one block. params is replaced whole, so send the ones you want kept; anything you omit falls back to its default. Params we do not describe are left alone. top and left move it on the canvas; omit them and it stays where it was drawn.

This endpoint carries no connections, so removing a button or an exit that a connection leaves from is refused. Use PATCH /bots/{bot_id}/draft to do both at once.

Path Parameters

  • The block's id within the diagram

Body·

required
application/json
  • How far across the builder's canvas to move the block. Omitted, it stays where it is.

  • Send null to remove the label.

  • Replaces the block's params as a whole.

    Properties: 1
  • How far down the builder's canvas to move the block. Omitted, it stays where it is.

Responses

  • application/json
  • application/json
  • application/json
  • application/json
  • application/json
  • application/json
  • application/json
Request Example for patch/bots/{bot_id}/draft/blocks/{block_id}
curl 'https://api.landbot.io/v0-alpha/bots/123e4567-e89b-12d3-a456-426614174000/draft/blocks/{block_id}' \
  --request PATCH \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Token YOUR_AGENT_TOKEN' \
  --data '{
  "name": null,
  "params": {
    "additionalProperty": "anything"
  },
  "top": 1,
  "left": 1
}'
{
  "data": {
    "bot_id": "123e4567-e89b-12d3-a456-426614174000",
    "diagram": {
      "nodes": {
        "hidden": {
          "id": "hidden",
          "path": "hidden",
          "template": "hidden",
          "params": {}
        },
        "welcome": {
          "id": "welcome",
          "path": "welcome",
          "template": "var_text",
          "params": {
            "version": 3,
            "text": "Hi! What is your name?",
            "destination": "name"
          }
        }
      },
      "connections": {
        "hidden.success--welcome": {
          "id": "hidden.success--welcome",
          "type": "success",
          "sourcePath": "hidden",
          "targetPath": "welcome"
        }
      }
    },
    "save_state": "IS_PRESAVED",
    "has_unpublished_changes": true,
    "violations": [
      {
        "code": "string",
        "message": "string",
        "block_id": null,
        "param": null,
        "connections": [
          {
            "source_path": "string",
            "type": "string"
          }
        ]
      }
    ],
    "required_tier": "sandbox",
    "edited_at": "2026-09-16T09:18:19"
  }
}