# API support for updating individual dashboard tiles (queryPresentations)

**URL:** <https://community.omni.co/t/api-support-for-updating-individual-dashboard-tiles-querypresentations/450>\
**Category:** Visualizations\
**Tags:** content, ai\
**Created:** [March 10, 2026, 9:52pm UTC](https://community.omni.co/t/api-support-for-updating-individual-dashboard-tiles-querypresentations/450 "2026-03-10T21:52:12Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![steveatphilo](https://avatars.discourse-cdn.com/v4/letter/s/2bfe46/32.png) [@steveatphilo](https://community.omni.co/u/steveatphilo)\
**Post date:** [March 10, 2026, 9:52pm UTC](https://community.omni.co/t/api-support-for-updating-individual-dashboard-tiles-querypresentations/450/1 "2026-03-10T21:52:12Z")

</div>

We’re building dashboards programmatically via POST /api/v1/documents and running into a friction point: there’s no way to update a single tile on an existing dashboard. Any change to a tile’s query, chartType, or visConfig requires  
deleting the entire dashboard and recreating it from scratch — losing the document ID, URL, bookmarks, and any manual UI tweaks.

What we’d like: A PATCH or PUT endpoint for individual queryPresentations on an existing document. Something like:

PATCH /api/v1/documents/{id}/queries/{queryId}

Accepting the same queryPresentation shape used in document creation (query, chartType, visConfig, etc).

Use case: We’re migrating ~200 Mode Analytics reports to Omni programmatically. Each dashboard goes through several iterations as we tune chart configs, filters, and SQL. Currently every tweak means a full delete-recreate cycle.

Even a bulk replacement endpoint (PUT /api/v1/documents/{id}/queries with the full array) would be a big improvement over the current workflow.

---

<div class="post-metadata">

**Author:** ![James](https://avatars.discourse-cdn.com/v4/letter/j/bc8723/32.png) [@James](https://community.omni.co/u/James)\
**Post date:** [March 10, 2026, 11:36pm UTC](https://community.omni.co/t/api-support-for-updating-individual-dashboard-tiles-querypresentations/450/2 "2026-03-10T23:36:17Z")

</div>

Hi Steve! Thanks for sharing this, I think we have an existing solution - have you tried using the `PUT /v1/documents/{documentId}` endpoint?

It will allow you to make a change to a dashboard in place without deleting the dashboard. It would be a full replacement of the `queryPresentations` array, and not a per-tile patch but should help smooth out your workflow.

Let me know if that works!

> **[Update dashboard document - Omni Docs](https://docs.omni.co/api/documents/update-dashboard-document)**
>
> This endpoint only works with dashboard documents. Workbook-only documents are not supported. Updates a document with the specified identifier. This endpoint performs a full resource replacement — all required fields must be provided and existing...

---

<div class="post-metadata">

**Author:** ![ShivaPrasad](https://yyz2.discourse-cdn.com/flex004/user_avatar/community.omni.co/shivaprasad/32/651_2.png) [@ShivaPrasad](https://community.omni.co/u/ShivaPrasad)\
**Post date:** [May 28, 2026, 12:38am UTC](https://community.omni.co/t/api-support-for-updating-individual-dashboard-tiles-querypresentations/450/3 "2026-05-28T00:38:30Z")

</div>

> [@James](#):
>
> [Update document - Omni Docs](https://docs.omni.co/api/documents/update-document)

Hey James, are you sure that this endpoint supports queryPresentations? the API documentation doesn’t mention it. If it does, it is worth updating the docs to mention the supported fields.

---

<div class="post-metadata">

**Author:** ![James](https://avatars.discourse-cdn.com/v4/letter/j/bc8723/32.png) [@James](https://community.omni.co/u/James)\
**Post date:** [May 28, 2026, 9:56pm UTC](https://community.omni.co/t/api-support-for-updating-individual-dashboard-tiles-querypresentations/450/4 "2026-05-28T21:56:21Z")

</div>

Good catch, and apologies for the confusion! I linked the wrong page there - the endpoint you want is still  
Update dashboard document: PUT /v1/documents/{documentId}

And the docs page is here:

> **[Update dashboard document - Omni Docs](https://docs.omni.co/api/documents/update-dashboard-document)**
>
> This endpoint only works with dashboard documents. Workbook-only documents are not supported. Updates a document with the specified identifier. This endpoint performs a full resource replacement — all required fields must be provided and existing...
