elementor/get-data returns the parsed Elementor document tree and the page settings for a post.
It is the whole-document read, where elementor/get-element is the single element.
At a glance
| Ability | elementor/get-data |
| Toolset | Elementor — toolset/elementor |
| Group | Elementor › Documents |
| Requires | Elementor, active on the site |
| Capability | manage_options |
| Safety | Writes data |
| 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
An Elementor document is a tree of elements serialised to JSON and stored in the _elementor_data post meta. Every element carries a seven-character hex ID, a type, its settings, and its children. Nothing about that structure is validated by WordPress, so a malformed write produces a document the editor refuses to open.
Reading it parsed rather than raw matters because the stored value is a JSON string inside post meta, which has usually been through WordPress’s slashing on the way in. Reading the meta directly and decoding it is a step people get wrong, and the failure looks like a corrupt document.
The page settings come with it. Those are document-level rather than element-level — page layout, title visibility, page background, custom CSS — and they are stored separately from the tree, which makes them easy to forget when copying a page.
This is the read to take before any bulk operation on a document. It is the only complete copy of what was there, and there is no trash for Elementor content.
On a large page the tree is substantial. It is a genuine document, not a summary.
Input
| Name | Type | Required | What it is |
|---|---|---|---|
post_id | integer | Yes | The post holding the Elementor document. |
What comes back
| Name | Type | What it is |
|---|---|---|
elements | array | The parsed document tree. |
page_settings | object | Document-level settings. |
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:
Show me the full Elementor document for page 412.
It resolves to one call:
{
"ability": "elementor/get-data",
"parameters": {
"post_id": 412
}
}Worth knowing
- Parsed, not raw — reading the meta by hand is where documents get corrupted.
- Page settings are stored separately from the tree and are easy to forget.
- Take this before any bulk operation. It is your only copy.
- Large on a real page.
Related abilities
- Update Elementor Document Data — write a whole document
- Get Elementor Element — one element instead
- Update Elementor Page Settings — the settings half
Get the plugins:
AcrossAI Abilities Manager · AcrossAI MCP Manager
Browse the rest: Every ability, by category