TextQL · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for TextQL Dashboard Service API
25 actions
25 updates
phrasing
extends
openapi/textql-dashboardservice-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for TextQL's API. It is a proposal applied on top of the contract, not a document TextQL publishes.
What the actions change
x-apievangelist-phrasing
Targets 25 · first 16 shown; the file carries all of them
$.info
$.paths['/textql.rpc.public.dashboard.DashboardService/CheckDashboardHealth'].post
$.paths['/textql.rpc.public.dashboard.DashboardService/CreateDashboard'].post
$.paths['/textql.rpc.public.dashboard.DashboardService/CreateDashboardFolder'].post
$.paths['/textql.rpc.public.dashboard.DashboardService/DeleteDashboard'].post
$.paths['/textql.rpc.public.dashboard.DashboardService/DeleteDashboardFolder'].post
$.paths['/textql.rpc.public.dashboard.DashboardService/DiscardDashboardChanges'].post
$.paths['/textql.rpc.public.dashboard.DashboardService/DuplicateDashboard'].post
$.paths['/textql.rpc.public.dashboard.DashboardService/GetDashboard'].post
$.paths['/textql.rpc.public.dashboard.DashboardService/GetDashboardVersion'].post
$.paths['/textql.rpc.public.dashboard.DashboardService/GetDashboardViewStats'].post
$.paths['/textql.rpc.public.dashboard.DashboardService/GetMembersWithDashboards'].post
$.paths['/textql.rpc.public.dashboard.DashboardService/ListDashboardFolders'].post
$.paths['/textql.rpc.public.dashboard.DashboardService/ListDashboardVersions'].post
$.paths['/textql.rpc.public.dashboard.DashboardService/ListDashboards'].post
$.paths['/textql.rpc.public.dashboard.DashboardService/MoveDashboardToFolder'].post
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for TextQL Dashboard Service API
version: 1.0.0
extends: openapi/textql-dashboardservice-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-01'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 24
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/CheckDashboardHealth'].post
update:
x-apievangelist-phrasing:
intent: Check the health of dashboards
effect: read
questions:
- Are any of my dashboards broken?
- Can I health-check several dashboards in one call?
instructions:
- text: Check the health of dashboards {dashboard_ids}.
slots:
dashboard_ids: requestBody.dashboardIds
- text: Run a health check across dashboard IDs {dashboard_ids}.
slots:
dashboard_ids: requestBody.dashboardIds
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/CreateDashboard'].post
update:
x-apievangelist-phrasing:
intent: Create a dashboard
effect: write
questions:
- How do I build a new dashboard?
- Can a dashboard be created from a cell in a chat?
- Which folder will a new dashboard land in?
instructions:
- text: Create a dashboard named {name} described as {description}.
slots:
name: requestBody.name
description: requestBody.description
- text: Turn cell {cell_id} from chat {chat_id} into a dashboard called {name}.
slots:
cell_id: requestBody.cellId
chat_id: requestBody.chatId
name: requestBody.name
- text: Create dashboard {name} inside folder {folder_id}.
slots:
name: requestBody.name
folder_id: requestBody.folderId
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/CreateDashboardFolder'].post
update:
x-apievangelist-phrasing:
intent: Create a dashboard folder
effect: write
questions:
- Can I organize dashboards into folders?
- Is nesting one dashboard folder inside another supported?
instructions:
- text: Create a dashboard folder named {name}.
slots:
name: requestBody.name
- text: Make folder {name} under parent folder {parent_id}.
slots:
name: requestBody.name
parent_id: requestBody.parentId
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/DeleteDashboard'].post
update:
x-apievangelist-phrasing:
intent: Delete a dashboard
effect: destructive
questions:
- How do I delete a dashboard I no longer need?
- Can a deleted dashboard be recovered?
instructions:
- text: Delete dashboard {dashboard_id}.
slots:
dashboard_id: requestBody.dashboardId
- text: Permanently remove the dashboard {dashboard_id}.
slots:
dashboard_id: requestBody.dashboardId
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/DeleteDashboardFolder'].post
update:
x-apievangelist-phrasing:
intent: Delete a dashboard folder
effect: destructive
questions:
- Can I remove an empty dashboard folder?
- What happens to a folder's dashboards if the folder is deleted?
instructions:
- text: Delete dashboard folder {folder_id}.
slots:
folder_id: requestBody.folderId
- text: Remove the folder {folder_id} from my dashboards.
slots:
folder_id: requestBody.folderId
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/DiscardDashboardChanges'].post
update:
x-apievangelist-phrasing:
intent: Discard unpublished dashboard changes
effect: destructive
questions:
- Can I throw away edits to a dashboard I haven't published yet?
- How do I revert a dashboard draft to its published state?
instructions:
- text: Discard unpublished changes on dashboard {dashboard_id}.
slots:
dashboard_id: requestBody.dashboardId
- text: Throw away my draft edits to dashboard {dashboard_id}.
slots:
dashboard_id: requestBody.dashboardId
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/DuplicateDashboard'].post
update:
x-apievangelist-phrasing:
intent: Duplicate a dashboard
effect: write
questions:
- Can I clone a dashboard as a starting point?
- What is a duplicated dashboard named by default?
instructions:
- text: Duplicate dashboard {dashboard_id}.
slots:
dashboard_id: requestBody.dashboardId
- text: Copy dashboard {dashboard_id} and call the copy {name}.
slots:
dashboard_id: requestBody.dashboardId
name: requestBody.name
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/GetDashboard'].post
update:
x-apievangelist-phrasing:
intent: Get a dashboard
effect: read
questions:
- What's in a specific dashboard?
- Can I fetch a dashboard's code and data sources by ID?
instructions:
- text: Get dashboard {dashboard_id}.
slots:
dashboard_id: requestBody.dashboardId
- text: Open the current details of dashboard {dashboard_id}.
slots:
dashboard_id: requestBody.dashboardId
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/GetDashboardVersion'].post
update:
x-apievangelist-phrasing:
intent: Get a specific dashboard version
effect: read
questions:
- What did a dashboard look like in an earlier version?
- Can I view one numbered version of a dashboard?
instructions:
- text: Get version {version_number} of dashboard {dashboard_id}.
slots:
version_number: requestBody.versionNumber
dashboard_id: requestBody.dashboardId
- text: Show me how dashboard {dashboard_id} looked at version {version_number}.
slots:
dashboard_id: requestBody.dashboardId
version_number: requestBody.versionNumber
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/GetDashboardViewStats'].post
update:
x-apievangelist-phrasing:
intent: Get view analytics for a dashboard
effect: read
questions:
- How many people have viewed my dashboard?
- Who is actually looking at a dashboard?
instructions:
- text: Get view stats for dashboard {dashboard_id}.
slots:
dashboard_id: requestBody.dashboardId
- text: Show the viewing analytics of dashboard {dashboard_id}.
slots:
dashboard_id: requestBody.dashboardId
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/GetMembersWithDashboards'].post
update:
x-apievangelist-phrasing:
intent: List members who own dashboards
effect: read
questions:
- Which teammates have created dashboards?
- Who can I filter the dashboard list by as a creator?
instructions:
- text: List members who have dashboards.
- text: Show all dashboard creators, timing out after {timeout_ms} ms.
slots:
timeout_ms: header.Connect-Timeout-Ms
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/ListDashboardFolders'].post
update:
x-apievangelist-phrasing:
intent: List dashboard folders
effect: read
questions:
- What dashboard folders exist in my workspace?
- How are our dashboards organized into folders?
instructions:
- text: List my dashboard folders.
- text: Show the dashboard folder tree with a {timeout_ms} ms timeout.
slots:
timeout_ms: header.Connect-Timeout-Ms
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/ListDashboardVersions'].post
update:
x-apievangelist-phrasing:
intent: List a dashboard's version history
effect: read
questions:
- Can I see every published version of a dashboard?
- How far back does a dashboard's version history go?
instructions:
- text: List versions of dashboard {dashboard_id}.
slots:
dashboard_id: requestBody.dashboardId
- text: Show {limit} versions of dashboard {dashboard_id} from offset {offset}.
slots:
limit: requestBody.limit
dashboard_id: requestBody.dashboardId
offset: requestBody.offset
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/ListDashboards'].post
update:
x-apievangelist-phrasing:
intent: Search and list dashboards
effect: read
questions:
- How do I find a dashboard by name?
- Can I list only dashboards shared with me or ones without a folder?
- Which dashboards did a specific teammate build?
instructions:
- text: Search dashboards for {search_term}.
slots:
search_term: requestBody.searchTerm
- text: List dashboards in folder {folder_id}.
slots:
folder_id: requestBody.folderId
- text: Show dashboards created by {creator_member_ids}.
slots:
creator_member_ids: requestBody.creatorMemberIds
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/MoveDashboardToFolder'].post
update:
x-apievangelist-phrasing:
intent: Move a dashboard to a folder
effect: write
questions:
- Can I move a dashboard into a different folder?
- How do I put a dashboard back at the root?
instructions:
- text: Move dashboard {dashboard_id} into folder {folder_id}.
slots:
dashboard_id: requestBody.dashboardId
folder_id: requestBody.folderId
- text: Move dashboard {dashboard_id} back to the uncategorized root.
slots:
dashboard_id: requestBody.dashboardId
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/PreviewConfigDashboard'].post
update:
x-apievangelist-phrasing:
intent: Preview a config-managed dashboard from a patch
effect: read
questions:
- Can I render a .dashboard file from a git patch before it merges?
- Does previewing a config-managed dashboard save anything?
instructions:
- text: Preview dashboard file {dashboard_path} from patch ref {patch_ref}.
slots:
dashboard_path: requestBody.dashboardPath
patch_ref: requestBody.patchRef
- text: Render the unmerged {dashboard_path} at git ref {patch_ref} without persisting it.
slots:
dashboard_path: requestBody.dashboardPath
patch_ref: requestBody.patchRef
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/PublishDashboard'].post
update:
x-apievangelist-phrasing:
intent: Publish a dashboard version
effect: write
questions:
- How do I publish my dashboard edits so others see them?
- Can I label a version when publishing a dashboard?
instructions:
- text: Publish dashboard {dashboard_id}.
slots:
dashboard_id: requestBody.dashboardId
- text: Publish dashboard {dashboard_id} as a version labeled {label}.
slots:
dashboard_id: requestBody.dashboardId
label: requestBody.label
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/RegenerateScreenshot'].post
update:
x-apievangelist-phrasing:
intent: Regenerate a dashboard's screenshot
effect: write
questions:
- Can I refresh the thumbnail image of a dashboard?
- Why is a dashboard's preview image out of date, and can I redo it?
instructions:
- text: Regenerate the screenshot for dashboard {dashboard_id}.
slots:
dashboard_id: requestBody.dashboardId
- text: Retake the preview thumbnail of dashboard {dashboard_id}.
slots:
dashboard_id: requestBody.dashboardId
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/RestoreDashboardVersion'].post
update:
x-apievangelist-phrasing:
intent: Restore a previous dashboard version
effect: write
questions:
- Can I roll a dashboard back to an older version?
- How do I undo a bad dashboard publish?
instructions:
- text: Restore dashboard {dashboard_id} to version {version_number}.
slots:
dashboard_id: requestBody.dashboardId
version_number: requestBody.versionNumber
- text: Roll back dashboard {dashboard_id} to its version {version_number}.
slots:
dashboard_id: requestBody.dashboardId
version_number: requestBody.versionNumber
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/RunScheduledDashboard'].post
update:
x-apievangelist-phrasing:
intent: Run a scheduled dashboard refresh now
effect: write
questions:
- Can I trigger a scheduled dashboard's run immediately?
- Is there a way to run a dashboard's schedule on demand?
instructions:
- text: Run the scheduled refresh for dashboard {dashboard_id} now.
slots:
dashboard_id: requestBody.dashboardId
- text: Kick off dashboard {dashboard_id}'s scheduled job out of cycle.
slots:
dashboard_id: requestBody.dashboardId
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/SpawnDashboard'].post
update:
x-apievangelist-phrasing:
intent: Start or refresh a running dashboard app
effect: write
questions:
- How do I launch a dashboard app so it can be viewed?
- Can I refresh only the data, or only the code, without restarting the app?
instructions:
- text: Spawn dashboard {dashboard_id}.
slots:
dashboard_id: requestBody.dashboardId
- text: Reload data sources {refresh_source_names} on dashboard {dashboard_id} without a restart.
slots:
refresh_source_names: requestBody.refreshSourceNames
dashboard_id: requestBody.dashboardId
- text: Force restart the dashboard app {dashboard_id}.
slots:
dashboard_id: requestBody.dashboardId
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/UpdateDashboard'].post
update:
x-apievangelist-phrasing:
intent: Update a dashboard's content
effect: write
questions:
- Can I edit a dashboard's code or description?
- How do I change the data sources a dashboard reads from?
instructions:
- text: Rename dashboard {dashboard_id} to {name}.
slots:
dashboard_id: requestBody.dashboardId
name: requestBody.name
- text: Replace the code of dashboard {dashboard_id} with {code}.
slots:
dashboard_id: requestBody.dashboardId
code: requestBody.code
- text: Point dashboard {dashboard_id} at data sources {data_sources}.
slots:
dashboard_id: requestBody.dashboardId
data_sources: requestBody.dataSources
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/UpdateDashboardFolder'].post
update:
x-apievangelist-phrasing:
intent: Rename or move a dashboard folder
effect: write
questions:
- Can I rename a dashboard folder?
- How do I nest a folder under a different parent?
instructions:
- text: Rename dashboard folder {folder_id} to {name}.
slots:
folder_id: requestBody.folderId
name: requestBody.name
- text: Move folder {folder_id} under parent {parent_id}.
slots:
folder_id: requestBody.folderId
parent_id: requestBody.parentId
method: generated
generated: '2026-10-01'
- target: $.paths['/textql.rpc.public.dashboard.DashboardService/UpdateDashboardSchedule'].post
update:
x-apievangelist-phrasing:
intent: Set a dashboard's refresh schedule
effect: write
questions:
- Can a dashboard refresh itself on a schedule?
- How do I turn off a dashboard's scheduled refresh?
instructions:
- text: Schedule dashboard {dashboard_id} to refresh on cron {cron_string}.
slots:
dashboard_id: requestBody.dashboardId
cron_string: requestBody.cronString
- text: Disable the refresh schedule on dashboard {dashboard_id}.
slots:
dashboard_id: requestBody.dashboardId
method: generated
generated: '2026-10-01'