- heartbeat - Keeps the viewed app's compute worker alive; first view spawns and pre-warms it (dashboard viewer-TTL parity).
- create_app - CreateApp
- delete_app - DeleteApp
- duplicate - Duplicates an app the caller can view into a new app they own, named "Copy of ". Copies code/files/data sources/compute functions/ schedule; never carries over the source's data snapshot.
- get - GetApp
- get_db_schema - Read-only table/column list for the app's private DuckDB (app_db).
- get_db_table_preview - A bounded row preview of one app_db table (SELECT ... LIMIT n).
- get_member_state - Per-member app state: one JSON blob per (app, member) so apps remember settings/progress. Member always resolved server-side from auth context; per-member persistence, so viewers with read access can save their own state.
- get_app_version - GetAppVersion
- get_app_view_stats - View analytics: reads the engagement views recorded on app page load.
- get_members_with_apps - GetMembersWithApps
- invoke_compute_function - Executes a declared compute function on a pooled sandbox worker; gated, org-scoped, rate-limited.
- list_activity_since - Cross-member live activity: rows from every member of the app after a seq, each carrying member_id + display_name (resolved server-side; never email).
- list_uploads - Lists the invoking viewer's uploads for this app. May recover legacy Library pointers on first use.
- list_versions - Version history: git-backed, one version per save (plus legacy publish-era snapshots); authors can list and restore.
- list - ListApps
- list_my_member_activity - ListMyAppMemberActivity
- move_app_to_folder - Moves an app into a library folder (or to root when folder_id is empty).
- presence_heartbeat - Presence heartbeat: sets a short-TTL Valkey key for the member and nudges the app's stream. Presence never touches Postgres and never exposes emails.
- record_member_activity - Append-only per-member activity log. Listing is own rows only; no cross-member reads in this release.
- refresh - Re-fetches data sources, rebuilds the document with a fresh snapshot, re-uploads.
- remove_upload - Removes only this viewer's app association, never the dataset itself.
- restore_app_version - RestoreAppVersion
- set_member_state - SetAppMemberState
- set_favorite - Favorite/unfavorite a library item (app or dashboard) for the calling member. Per-member, per-org; favorited=false hard-deletes the row. Covers both primitives since the merged library page pins apps and dashboards through one client.
- update - UpdateApp
- verify_render - Renders the live artifact in the production sandbox and returns browser diagnostics. This is synchronous so callers can verify an app before sharing its URL.
Keeps the viewed app's compute worker alive; first view spawns and pre-warms it (dashboard viewer-TTL parity).
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.heartbeat()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceAppHeartbeatResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
CreateApp
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.create_app()
# 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 |
data_sources |
List[models.TextqlRPCPublicDashboardDataSource] | ➖ | N/A |
compute_functions |
List[models.TextqlRPCPublicAppComputeFunction] | ➖ | N/A |
files |
List[models.TextqlRPCPublicAppAppFile] | ➖ | N/A |
capabilities |
List[models.TextqlRPCPublicAppCapability] | ➖ | N/A |
app_db_setup |
List[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceCreateAppResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
DeleteApp
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.delete_app()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceDeleteAppResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Duplicates an app the caller can view into a new app they own, named "Copy of ". Copies code/files/data sources/compute functions/ schedule; never carries over the source's data snapshot.
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.duplicate()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceDuplicateAppResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
GetApp
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.get()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceGetAppResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Read-only table/column list for the app's private DuckDB (app_db).
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.get_db_schema()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceGetAppDBSchemaResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
A bounded row preview of one app_db table (SELECT ... LIMIT n).
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.get_db_table_preview()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
table_name |
Optional[str] | ➖ | N/A |
limit |
Optional[int] | ➖ | clamped server-side; 0 uses the default |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceGetAppDBTablePreviewResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Per-member app state: one JSON blob per (app, member) so apps remember settings/progress. Member always resolved server-side from auth context; per-member persistence, so viewers with read access can save their own state.
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.get_member_state()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceGetAppMemberStateResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
GetAppVersion
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.get_app_version()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
version_number |
Optional[int] | ➖ | N/A |
commit_id |
OptionalNullable[str] | ➖ | Prefer this git commit SHA when set; else version_number selects a legacy db-backed row. |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceGetAppVersionResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
View analytics: reads the engagement views recorded on app page load.
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.get_app_view_stats()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceGetAppViewStatsResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
GetMembersWithApps
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.get_members_with_apps(body={})
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
body |
models.TextqlRPCPublicAppGetMembersWithAppsRequest | ✔️ | N/A |
connect_timeout_ms |
Optional[float] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceGetMembersWithAppsResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Executes a declared compute function on a pooled sandbox worker; gated, org-scoped, rate-limited.
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.invoke_compute_function()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
function_name |
Optional[str] | ➖ | N/A |
params_json |
Optional[str] | ➖ | JSON object, keys map to function kwargs |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceInvokeAppComputeFunctionResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Cross-member live activity: rows from every member of the app after a seq, each carrying member_id + display_name (resolved server-side; never email).
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.list_activity_since()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
scope |
OptionalNullable[str] | ➖ | N/A |
after_seq |
Optional[models.AfterSeq] | ➖ | N/A |
limit |
Optional[int] | ➖ | server clamps to 200; <=0 means default |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceListAppActivitySinceResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Lists the invoking viewer's uploads for this app. May recover legacy Library pointers on first use.
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.list_uploads()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
page_size |
Optional[int] | ➖ | Default 25, maximum 100. |
page_token |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceListAppUploadsResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Version history: git-backed, one version per save (plus legacy publish-era snapshots); authors can list and restore.
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.list_versions()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_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.AppServiceListAppVersionsResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
ListApps
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.list()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
search_term |
OptionalNullable[str] | ➖ | N/A |
limit |
Optional[int] | ➖ | N/A |
offset |
Optional[int] | ➖ | N/A |
folder_id |
OptionalNullable[str] | ➖ | Filter by specific folder |
uncategorized_only |
OptionalNullable[bool] | ➖ | Only show apps with no folder |
shared_with_me |
OptionalNullable[bool] | ➖ | Only apps shared with the caller (not authored by them) |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceListAppsResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
ListMyAppMemberActivity
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.list_my_member_activity()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
type |
OptionalNullable[str] | ➖ | N/A |
limit |
Optional[int] | ➖ | server clamps to 200; <=0 means default |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceListMyAppMemberActivityResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Moves an app into a library folder (or to root when folder_id is empty).
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.move_app_to_folder()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_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.AppServiceMoveAppToFolderResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Presence heartbeat: sets a short-TTL Valkey key for the member and nudges the app's stream. Presence never touches Postgres and never exposes emails.
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.presence_heartbeat()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
zone |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServicePresenceHeartbeatResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Append-only per-member activity log. Listing is own rows only; no cross-member reads in this release.
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.record_member_activity()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
type |
Optional[str] | ➖ | N/A |
scope |
OptionalNullable[str] | ➖ | N/A |
payload_json |
OptionalNullable[str] | ➖ | JSON object, usage payload authored by the app |
idem_key |
OptionalNullable[str] | ➖ | duplicate key returns the existing row, not an error |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceRecordAppMemberActivityResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Re-fetches data sources, rebuilds the document with a fresh snapshot, re-uploads.
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.refresh()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceRefreshAppResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Removes only this viewer's app association, never the dataset itself.
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.remove_upload()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
dataset_id |
Optional[str] | ➖ | N/A |
version |
Optional[int] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceRemoveAppUploadResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
RestoreAppVersion
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.restore_app_version()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
version_number |
Optional[int] | ➖ | N/A |
commit_id |
OptionalNullable[str] | ➖ | Prefer this git commit SHA when set; else version_number selects a legacy db-backed row. |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceRestoreAppVersionResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
SetAppMemberState
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.set_member_state()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
value_json |
Optional[str] | ➖ | whole-object JSON, last-write-wins, max 64KB |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceSetAppMemberStateResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Favorite/unfavorite a library item (app or dashboard) for the calling member. Per-member, per-org; favorited=false hard-deletes the row. Covers both primitives since the merged library page pins apps and dashboards through one client.
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.set_favorite()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
primitive_type |
Optional[str] | ➖ | 'app' | 'dashboard' |
primitive_id |
Optional[str] | ➖ | N/A |
favorited |
Optional[bool] | ➖ | true = pin, false = unpin (hard delete) |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceSetFavoriteResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
UpdateApp
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.update()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
name |
OptionalNullable[str] | ➖ | N/A |
description |
OptionalNullable[str] | ➖ | N/A |
code |
OptionalNullable[str] | ➖ | N/A |
data_sources |
List[models.TextqlRPCPublicDashboardDataSource] | ➖ | N/A |
replace_data_sources |
OptionalNullable[bool] | ➖ | N/A |
publish |
OptionalNullable[bool] | ➖ | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible. publish is gone (head is live); ignored by the server |
staleness_window_seconds |
OptionalNullable[int] | ➖ | N/A |
compute_functions |
List[models.TextqlRPCPublicAppComputeFunction] | ➖ | N/A |
replace_compute_functions |
OptionalNullable[bool] | ➖ | N/A |
files |
List[models.TextqlRPCPublicAppAppFile] | ➖ | N/A |
replace_files |
OptionalNullable[bool] | ➖ | N/A |
schedule_enabled |
OptionalNullable[bool] | ➖ | N/A |
cron_string |
OptionalNullable[str] | ➖ | N/A |
capabilities |
List[models.TextqlRPCPublicAppCapability] | ➖ | N/A |
replace_capabilities |
OptionalNullable[bool] | ➖ | N/A |
app_db_setup |
List[str] | ➖ | N/A |
replace_app_db_setup |
OptionalNullable[bool] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceUpdateAppResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |
Renders the live artifact in the production sandbox and returns browser diagnostics. This is synchronous so callers can verify an app before sharing its URL.
import os
from textql_sdk import Textql
with Textql(
api_key=os.getenv("TEXTQL_API_KEY", ""),
) as textql:
res = textql.apps.verify_render()
# Handle response
print(res)| Parameter | Type | Required | Description |
|---|---|---|---|
connect_timeout_ms |
Optional[float] | ➖ | N/A |
app_id |
Optional[str] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
models.AppServiceVerifyAppRenderResponse
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.TextqlDefaultError | 4XX, 5XX | */* |