elementor/remove-element removes the element at a given ID.
It is semantically identical to elementor/delete-element — same behaviour, same guard, same consequences.
Before you run it
Identical in behaviour to elementor/delete-element: everything inside the element goes with it, there is no trash, and force_delete is required for populated or top-level elements. Read the element first if there is any chance you want it back.
At a glance
| Ability | elementor/remove-element |
| Toolset | Elementor — toolset/elementor |
| Group | Elementor › Elements & Widgets |
| Requires | Elementor, active on the site |
| Capability | manage_options |
| Safety | Destructive — identical to delete-element. Guarded by force_delete. |
| Repeatable | Not idempotent — each call changes the row set, so re-running is not a no-op |
| Ships in | AcrossAI Abilities Manager 0.0.34 and later |
How it works
Both names exist because both are what people say. “Delete that section” and “remove that section” are the same request, and an assistant resolving one of them to an ability that does not exist is a failure with no upside.
Having both means the vocabulary gap never arises. They are the same operation and the documentation says so rather than implying a distinction that is not there.
Everything true of the delete ability is true here: the children go, there is no trash, and the guard applies to populated and top-level elements.
If you are choosing between them for code, pick either and be consistent. There is no behavioural difference to optimise for.
Input
| Name | Type | Required | What it is |
|---|---|---|---|
post_id | integer | Yes | The post holding the Elementor document. |
element_id | string | Yes | The seven-character hex element ID. |
force_delete | boolean | For populated or top-level elements | Required when the element has children or sits at the document root. |
What comes back
| Name | Type | What it is |
|---|---|---|
post_id | integer | The post written. |
deleted_id | string | The element removed. |
success | boolean | Whether the call completed. |
message | string | A one-line summary of what happened, suitable for showing a human. |
error_code | string | Present only on failure — a stable machine-readable reason, such as a missing field, a wrong field type or an unmet confirmation. |
Example
Ask your assistant:
Remove that section from the page.
It resolves to one call:
{
"ability": "elementor/remove-element",
"parameters": {
"post_id": 412,
"element_id": "a1b2c3d",
"force_delete": true
}
}Worth knowing
- Identical to the delete ability. No behavioural difference.
- Children go with it; there is no trash.
- Read the element first for a copy.
- Clear the Elementor cache afterwards.
Related abilities
- Delete Elementor Element — the same operation, other name
- Get Elementor Element — take a copy first
Get the plugins:
AcrossAI Abilities Manager · AcrossAI MCP Manager
Browse the rest: Every ability, by category