- check_health - CheckDashboardHealth
- create_dashboard - CRUD operations
- create_folder - Folder management
- delete - DeleteDashboard
- delete_folder - DeleteDashboardFolder
- discard_changes - DiscardDashboardChanges
- duplicate - DuplicateDashboard
- get - GetDashboard
- get_version - GetDashboardVersion
- get_dashboard_view_stats - View analytics
- get_members_with_dashboards - Member management
- list_folders - ListDashboardFolders
- list_versions - Version history
- list - ListDashboards
- move_to_folder - MoveDashboardToFolder
- preview_config - Config-managed dashboards: render a
.dashboardstraight from a patch ref before it merges (ADR-0022). Runs as the file's run_as, gated on the previewer being authorized for it; persists nothing. - publish - Publishing workflow
- regenerate_screenshot - Screenshot management
- restore_dashboard_version - RestoreDashboardVersion
- run_scheduled_dashboard - RunScheduledDashboard
- spawn - Dashboard execution
- update_dashboard - UpdateDashboard
- update_dashboard_folder - UpdateDashboardFolder
- update_dashboard_schedule - Scheduling
CheckDashboardHealth
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.check_health()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
dashboard_ids |
List[str] | ➖ | Batch check multiple dashboards |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceCheckDashboardHealthResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
CRUD operations
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.create_dashboard()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
name |
Optional[str] | ➖ | N/A |
description |
OptionalNullable[str] | ➖ | N/A |
code |
Optional[str] | ➖ | N/A |
type |
Optional[models.TextqlRPCPublicDashboardDashboardType] | ➖ | N/A |
html_url |
OptionalNullable[str] | ➖ | N/A |
chat_id |
OptionalNullable[str] | ➖ | N/A |
cell_id |
OptionalNullable[str] | ➖ | N/A |
folder_id |
OptionalNullable[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceCreateDashboardResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Folder management
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.create_folder()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
name |
Optional[str] | ➖ | N/A |
parent_id |
OptionalNullable[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceCreateDashboardFolderResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
DeleteDashboard
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.delete()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
dashboard_id |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceDeleteDashboardResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
DeleteDashboardFolder
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.delete_folder()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
folder_id |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceDeleteDashboardFolderResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
DiscardDashboardChanges
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.discard_changes()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
dashboard_id |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceDiscardDashboardChangesResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
DuplicateDashboard
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.duplicate()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
dashboard_id |
Optional[str] | ➖ | N/A |
name |
OptionalNullable[str] | ➖ | Optional new name for the duplicate (defaults to "Copy of [original name]") |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceDuplicateDashboardResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
GetDashboard
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.get()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
dashboard_id |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceGetDashboardResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
GetDashboardVersion
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.get_version()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
dashboard_id |
Optional[str] | ➖ | N/A |
version_number |
Optional[int] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceGetDashboardVersionResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
View analytics
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.get_dashboard_view_stats()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
dashboard_id |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceGetDashboardViewStatsResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Member management
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.get_members_with_dashboards(body={})
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
body |
models.TextqlRPCPublicDashboardGetMembersWithDashboardsRequest | ✔️ | N/A |
connect_timeout_ms |
Optional[float] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceGetMembersWithDashboardsResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
ListDashboardFolders
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.list_folders(body={})
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
body |
models.TextqlRPCPublicDashboardListDashboardFoldersRequest | ✔️ | N/A |
connect_timeout_ms |
Optional[float] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceListDashboardFoldersResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Version history
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.list_versions()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
dashboard_id |
Optional[str] | ➖ | N/A |
limit |
Optional[int] | ➖ | N/A |
offset |
Optional[int] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceListDashboardVersionsResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
ListDashboards
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.list()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
search_term |
OptionalNullable[str] | ➖ | N/A |
my_dashboards_only |
OptionalNullable[bool] | ➖ | N/A |
sort_by |
Optional[models.TextqlRPCPublicDashboardDashboardSortField] | ➖ | N/A |
sort_direction |
Optional[models.TextqlRPCPublicCommonSortDirection] | ➖ | Common enum for sort direction used across multiple services |
limit |
Optional[int] | ➖ | N/A |
offset |
Optional[int] | ➖ | N/A |
folder_id |
OptionalNullable[str] | ➖ | Filter by specific folder |
uncategorized_only |
OptionalNullable[bool] | ➖ | Only show dashboards with no folder |
creator_member_id |
OptionalNullable[str] | ➖ | Filter by specific creator member ID (single-select; superseded by creator_member_ids when non-empty) |
shared_with_me |
OptionalNullable[bool] | ➖ | N/A |
creator_member_ids |
List[str] | ➖ | Multi-select creator filter (union). Supersedes creator_member_id when non-empty. |
status_filter |
Optional[models.TextqlRPCPublicDashboardDashboardStatus] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceListDashboardsResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
MoveDashboardToFolder
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.move_to_folder()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
dashboard_id |
Optional[str] | ➖ | N/A |
folder_id |
OptionalNullable[str] | ➖ | null/empty = move to root (uncategorized) |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceMoveDashboardToFolderResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Config-managed dashboards: render a .dashboard straight from a patch ref before
it merges (ADR-0022). Runs as the file's run_as, gated on the previewer being
authorized for it; persists nothing.
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.preview_config()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
patch_ref |
Optional[str] | ➖ | git ref of the patch to preview from |
dashboard_path |
Optional[str] | ➖ | Library path of the .dashboard file |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServicePreviewConfigDashboardResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Publishing workflow
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.publish()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
dashboard_id |
Optional[str] | ➖ | N/A |
label |
OptionalNullable[str] | ➖ | Optional version label/description |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServicePublishDashboardResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Screenshot management
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.regenerate_screenshot()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
dashboard_id |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceRegenerateScreenshotResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
RestoreDashboardVersion
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.restore_dashboard_version()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
dashboard_id |
Optional[str] | ➖ | N/A |
version_number |
Optional[int] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceRestoreDashboardVersionResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
RunScheduledDashboard
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.run_scheduled_dashboard()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
dashboard_id |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceRunScheduledDashboardResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Dashboard execution
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.spawn()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
dashboard_id |
Optional[str] | ➖ | N/A |
force_restart |
Optional[bool] | ➖ | Force restart even if already running |
refresh_data_only |
Optional[bool] | ➖ | Re-fetch data sources and reload without restarting the app |
refresh_source_names |
List[str] | ➖ | If non-empty with refresh_data_only, only refresh these sources by name |
refresh_code_only |
Optional[bool] | ➖ | Update code in-place via Streamlit's runOnSave without restarting the process |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceSpawnDashboardResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
UpdateDashboard
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.update_dashboard()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
dashboard_id |
Optional[str] | ➖ | N/A |
name |
OptionalNullable[str] | ➖ | N/A |
description |
OptionalNullable[str] | ➖ | N/A |
code |
OptionalNullable[str] | ➖ | N/A |
type |
Optional[models.TextqlRPCPublicDashboardDashboardType] | ➖ | N/A |
html_url |
OptionalNullable[str] | ➖ | N/A |
data_sources |
Optional[models.TextqlRPCPublicDashboardDataSourcesPatch] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceUpdateDashboardResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
UpdateDashboardFolder
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.update_dashboard_folder()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
folder_id |
Optional[str] | ➖ | N/A |
name |
OptionalNullable[str] | ➖ | N/A |
parent_id |
OptionalNullable[str] | ➖ | Move folder to different parent (empty string = move to root) |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceUpdateDashboardFolderResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Scheduling
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.dashboards.update_dashboard_schedule()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
dashboard_id |
Optional[str] | ➖ | N/A |
schedule_enabled |
Optional[bool] | ➖ | N/A |
cron_string |
OptionalNullable[str] | ➖ | N/A |
data_sources |
List[models.TextqlRPCPublicDashboardDataSource] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.DashboardServiceUpdateDashboardScheduleResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |