Read document state
Changed onFor a published identifier, read the document's published state — draft edits are never surfaced under it. When a draft exists, read it via GET /api/v2/documents/{identifier}/draft/{draftIdentifier} before round-tripping the response into a draft PATCH, so you patch the draft's own content rather than published content over it. Returns the full DocumentsV2ReadResponse shape.
A draft's own identifier reads that draft's state instead. The response then carries draftOf, naming the published document the draft belongs to — use it to build the …/documents/{identifier}/draft/{draftIdentifier} routes when only the draft identifier is known.
The response is structured so a caller can take it verbatim and submit it as the body of the draft PATCH routes. Tiles in queryPresentations.data are keyed by a stable record key (e.g. "1", "2") — the server uses that key to identify existing tiles for updates, so callers do not need to track or send any other identifier. Control IDs and container instanceKey / referenceKey values also round-trip unchanged.
Request
- Base URLhttps://omniapp.co (the document declares no server; this is the origin it was published from)
- URLhttps://omniapp.co/api/v2/documents/{identifier}
- AuthHTTP bearer
Path parameters
Document identifier — either the URL slug (e.g. abc123) or the canonical workbook UUID.
Query parameters
Set true or 1 to pretty-print (2-space indent) the response; false / 0 (the default) is compact. Key ordering is deterministic regardless.
Response
Document state. A workbook-only document (no dashboard layout yet) returns only the workbook-scoped fields (name, description, queryPresentations); the dashboard-scoped containers, controls, and settings are omitted until a layout exists. An app document returns the workbook-scoped fields plus an app slice whose url is the app sub-resource, where the app’s HTML and settings are read and written; the slice is withheld when the organization has apps disabled. When app document controls are enabled for the organization, an app document also returns its stored controls (filters only).
Changes
- breaking
added
subschema #1subschema #2subschema #3subschema #4subschema #5subschema #6subschema #7subschema #8to the///response propertyoneOflist for the response status - breaking
added
subschema #1subschema #2subschema #3subschema #4subschema #5subschema #6subschema #7subschema #8to the/////response propertyoneOflist for the response status - breaking
added
subschema #1subschema #2subschema #3subschema #4subschema #5subschema #6subschema #7subschema #8to the/////response propertyoneOflist for the response status - info
removed
subschema #1subschema #2subschema #3subschema #4subschema #5subschema #6subschema #7subschema #8from the///response propertyoneOflist for the response status - info
removed
subschema #1subschema #2subschema #3subschema #4subschema #5subschema #6subschema #7subschema #8from the/////response propertyoneOflist for the response status - info
removed
subschema #1subschema #2subschema #3subschema #4subschema #5subschema #6subschema #7subschema #8from the/////response propertyoneOflist for the response status
- breaking
- warning
added the new
omni-custom-visenum value to the/////response property for the response status
- warning