### GET /github_app/ghes/discover Source: https://app.windmill.dev/api/openapi.json Lists every installation the configured self-managed GitHub App can see, annotated with the workspaces in this Windmill instance the installation is currently assigned to. Super-admin only. ```markdown ### Responses #### 200 - Discovered installations - Array of object - **installation_id** (integer (int64)) (required) - **account_id** (string) (required): GitHub login of the installation's account (org or user) - **assigned_workspaces** (array (object)) (required) Array items: - **workspace_id** (string) (required) - **provisioned_by_admin** (boolean) (required) ### Example Usage ```bash curl -X GET "/api/github_app/ghes/discover" ``` ``` -------------------------------- ### GET /w/{workspace}/github_app/export/{installationId} Source: https://app.windmill.dev/api/openapi.json Exports the JWT token for a specific GitHub installation in the workspace ```markdown ### Parameters - **workspace** (string, path, required) - **installationId** (integer, path, required) ### Responses #### 200 - Successfully exported the JWT token - **jwt_token** (string) ### Example Usage ```bash curl -X GET "/api/w/{workspace}/github_app/export/{installationId}" ``` ``` -------------------------------- ### GET /users/tutorial_progress Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /users/tutorial_progress ```markdown ### Responses #### 200 - tutorial progress - **progress** (integer) - **skipped_all** (boolean) ### Example Usage ```bash curl -X GET "/api/users/tutorial_progress" ``` ``` -------------------------------- ### GET /configs/list_all_workspace_dependencies Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /configs/list_all_workspace_dependencies ```markdown ### Responses #### 200 - a list of workspace dependency summaries - Array of object - **workspace_id** (string) (required) - **name** (string) - **language** (string (python3|deno|go|bash|powershell|postgresql|mysql|bigquery|snowflake|mssql|oracledb|graphql|nativets|bun|php|rust|ansible|csharp|nu|java|ruby|rlang|duckdb|bunnative)) (required) ("python3"|"deno"|"go"|"bash"|"powershell"|"postgresql"|"mysql"|"bigquery"|"snowflake"|"mssql"|"oracledb"|"graphql"|"nativets"|"bun"|"php"|"rust"|"ansible"|"csharp"|"nu"|"java"|"ruby"|"rlang"|"duckdb"|"bunnative") ### Example Usage ```bash curl -X GET "/api/configs/list_all_workspace_dependencies" ``` ``` -------------------------------- ### POST /w/{workspace}/github_app/install_from_workspace Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /w/{workspace}/github_app/install_from_workspace ```markdown ### Parameters - **workspace** (string, path, required) ### Request Body **Content-Type:** application/json - **source_workspace_id** (string) (required): The ID of the workspace containing the installation to copy - **installation_id** (number) (required): The ID of the GitHub installation to copy ### Responses #### 200 - Installation successfully copied Empty response body ### Example Usage ```bash curl -X POST "/api/w/{workspace}/github_app/install_from_workspace" \ -H "Content-Type: application/json" \ -d '{ "source_workspace_id": "string", "installation_id": "0" }' ``` ``` -------------------------------- ### POST /settings/setup_custom_instance_pg_database/{name} Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /settings/setup_custom_instance_pg_database/{name} ```markdown ### Parameters - **name** (string, path, required): The name of the database to create ### Request Body **Content-Type:** application/json - **tag** (string (ducklake|datatable)) ("ducklake"|"datatable") ### Responses #### 200 - status **CustomInstanceDb** - **logs** (object) (required) - **super_admin** (string (OK|SKIP|FAIL)) ("OK"|"SKIP"|"FAIL") - **database_credentials** (string (OK|SKIP|FAIL)) ("OK"|"SKIP"|"FAIL") - **valid_dbname** (string (OK|SKIP|FAIL)) ("OK"|"SKIP"|"FAIL") - **created_database** (string (OK|SKIP|FAIL)) ("OK"|"SKIP"|"FAIL") - **db_connect** (string (OK|SKIP|FAIL)) ("OK"|"SKIP"|"FAIL") - **grant_permissions** (string (OK|SKIP|FAIL)) ("OK"|"SKIP"|"FAIL") - **success** (boolean) (required): Whether the operation completed successfully (example: true) - **error** (string): Error message if the operation failed (example: "Connection timeout") - **tag** (string (ducklake|datatable)) ("ducklake"|"datatable") - **used_by_workspaces** (array (string)): Workspaces that reference this database via a ducklake catalog or datatable database with resource_type 'instance'. Computed at request time, not persisted. ### Example Usage ```bash curl -X POST "/api/settings/setup_custom_instance_pg_database/{name}" \ -H "Content-Type: application/json" \ -d '{ "tag": "value" }' ``` ``` -------------------------------- ### GET /github_app/ghes_config Source: https://app.windmill.dev/api/openapi.json Returns the GitHub Enterprise Server app configuration (without private key) for constructing the installation URL ```markdown ### Responses #### 200 - GHES app configuration - **base_url** (string) (required) - **app_slug** (string) (required) - **client_id** (string) (required) - **app_owner** (string) ### Example Usage ```bash curl -X GET "/api/github_app/ghes_config" ``` ``` -------------------------------- ### GET /indexer/status Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /indexer/status ```markdown ### Responses #### 200 - indexer status for each index - **job_indexer** (object) - **is_alive** (boolean) - **state** (string (running|stale|never_started)) ("running"|"stale"|"never_started") - **last_locked_at** (string (date-time)) - **owner** (string) - **storage** (object) - **disk_size_bytes** (integer) - **s3_size_bytes** (integer) - **log_indexer** (object) ### Example Usage ```bash curl -X GET "/api/indexer/status" ``` ``` -------------------------------- ### POST /users/tutorial_progress Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /users/tutorial_progress ```markdown ### Request Body **Content-Type:** application/json - **progress** (integer) - **skipped_all** (boolean) ### Responses #### 200 - tutorial progress ### Example Usage ```bash curl -X POST "/api/users/tutorial_progress" \ -H "Content-Type: application/json" \ -d '{ "progress": "0", "skipped_all": "true" }' ``` ``` -------------------------------- ### GET /indexer/storage Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /indexer/storage ```markdown ### Responses #### 200 - storage sizes for each index - **job_index** (object) - **disk_size_bytes** (integer) - **s3_size_bytes** (integer) - **service_log_index** (object) ### Example Usage ```bash curl -X GET "/api/indexer/storage" ``` ``` -------------------------------- ### POST /w/{workspace}/github_app/ghes_installation_callback Source: https://app.windmill.dev/api/openapi.json Register a self-managed GitHub App installation from GitHub Enterprise Server ```markdown ### Parameters - **workspace** (string, path, required) ### Request Body **Content-Type:** application/json - **installation_id** (integer (int64)) (required): The GitHub App installation ID from GHES ### Responses #### 200 - GHES installation registered successfully Empty response body ### Example Usage ```bash curl -X POST "/api/w/{workspace}/github_app/ghes_installation_callback" \ -H "Content-Type: application/json" \ -d '{ "installation_id": "0" }' ``` ``` -------------------------------- ### GET /srch/index/storage/disk Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /srch/index/storage/disk ```markdown ### Responses #### 200 - disk storage sizes for each index - **job_index_disk_size_bytes** (integer) - **log_index_disk_size_bytes** (integer) ### Example Usage ```bash curl -X GET "/api/srch/index/storage/disk" ``` ``` -------------------------------- ### POST /w/{workspace}/jobs_u/queue/get_started_at_by_ids Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /w/{workspace}/jobs_u/queue/get_started_at_by_ids ```markdown ### Parameters - **workspace** (string, path, required) ### Request Body **Content-Type:** application/json - Array of string ### Responses #### 200 - started at by ids - Array of string (date-time) ### Example Usage ```bash curl -X POST "/api/w/{workspace}/jobs_u/queue/get_started_at_by_ids" \ -H "Content-Type: application/json" \ -d '[ "string" ]' ``` ``` -------------------------------- ### GET /srch/index/search/count_service_logs Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /srch/index/search/count_service_logs ```markdown ### Parameters - **search_query** (string, query, required) - **min_ts** (string (date-time), query, optional) - **max_ts** (string (date-time), query, optional) ### Responses #### 200 - search results - **query_parse_errors** (array (string)): a list of the terms that couldn't be parsed (and thus ignored) - **count_per_host** (object): count of log lines that matched the query per hostname ### Example Usage ```bash curl -X GET "/api/srch/index/search/count_service_logs?search_query=string&min_ts=2023-01-01T00:00:00Z&max_ts=2023-01-01T00:00:00Z" ``` ``` -------------------------------- ### POST /users/onboarding Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /users/onboarding ```markdown ### Request Body **Content-Type:** application/json - **touch_point** (string) - **use_case** (string) ### Responses #### 200 - Onboarding data submitted successfully ### Example Usage ```bash curl -X POST "/api/users/onboarding" \ -H "Content-Type: application/json" \ -d '{ "touch_point": "string", "use_case": "string" }' ``` ``` -------------------------------- ### GET /srch/index/search/service_logs Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /srch/index/search/service_logs ```markdown ### Parameters - **search_query** (string, query, required) - **mode** (string, query, required) - **worker_group** (string, query, optional) - **hostname** (string, query, required) - **min_ts** (string (date-time), query, optional) - **max_ts** (string (date-time), query, optional) ### Responses #### 200 - search results - **query_parse_errors** (array (string)): a list of the terms that couldn't be parsed (and thus ignored) - **hits** (array (LogSearchHit)): log files that matched the query Array items: - **dancer** (string) ### Example Usage ```bash curl -X GET "/api/srch/index/search/service_logs?search_query=string&mode=string&worker_group=string&hostname=string&min_ts=2023-01-01T00:00:00Z&max_ts=2023-01-01T00:00:00Z" ``` ``` -------------------------------- ### GET /w/{workspace}/job_helpers/load_git_repo_file_preview Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /w/{workspace}/job_helpers/load_git_repo_file_preview ```markdown ### Parameters - **workspace** (string, path, required) - **file_key** (string, query, required) - **file_size_in_bytes** (integer, query, optional) - **file_mime_type** (string, query, optional) - **csv_separator** (string, query, optional) - **csv_has_header** (boolean, query, optional) - **read_bytes_from** (integer, query, optional) - **read_bytes_length** (integer, query, optional) - **storage** (string, query, optional) ### Responses #### 200 - FilePreview **WindmillFilePreview** - **msg** (string) - **content** (string) - **content_type** (string (RawText|Csv|Parquet|Unknown)) (required) ("RawText"|"Csv"|"Parquet"|"Unknown") ### Example Usage ```bash curl -X GET "/api/w/{workspace}/job_helpers/load_git_repo_file_preview?file_key=string&file_size_in_bytes=0&file_mime_type=string&csv_separator=string&csv_has_header=true&read_bytes_from=0&read_bytes_length=0&storage=string" ``` ``` -------------------------------- ### POST /w/{workspace}/workspace_dependencies/create Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /w/{workspace}/workspace_dependencies/create ```markdown ### Parameters - **workspace** (string, path, required) ### Request Body **Content-Type:** application/json - **workspace_id** (string) (required) - **language** (string (python3|deno|go|bash|powershell|postgresql|mysql|bigquery|snowflake|mssql|oracledb|graphql|nativets|bun|php|rust|ansible|csharp|nu|java|ruby|rlang|duckdb|bunnative)) (required) ("python3"|"deno"|"go"|"bash"|"powershell"|"postgresql"|"mysql"|"bigquery"|"snowflake"|"mssql"|"oracledb"|"graphql"|"nativets"|"bun"|"php"|"rust"|"ansible"|"csharp"|"nu"|"java"|"ruby"|"rlang"|"duckdb"|"bunnative") - **name** (string) - **description** (string) - **content** (string) (required) ### Responses #### 201 - workspace dependencies created ### Example Usage ```bash curl -X POST "/api/w/{workspace}/workspace_dependencies/create" \ -H "Content-Type: application/json" \ -d '{ "workspace_id": "string", "language": "value", "name": "string", "description": "string", "content": "string" }' ``` ``` -------------------------------- ### GET /concurrency_groups/list Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /concurrency_groups/list ```markdown ### Responses #### 200 - all concurrency groups - Array of ConcurrencyGroup ### Example Usage ```bash curl -X GET "/api/concurrency_groups/list" ``` ``` -------------------------------- ### POST /w/{workspace}/job_helpers/upload_git_repo_file_to_instance_storage Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /w/{workspace}/job_helpers/upload_git_repo_file_to_instance_storage ```markdown ### Parameters - **workspace** (string, path, required) - **file_key** (string, query, optional) - **file_extension** (string, query, optional) - **s3_resource_path** (string, query, optional) - **resource_type** (string, query, optional) - **storage** (string, query, optional) - **content_type** (string, query, optional) - **content_disposition** (string, query, optional) ### Request Body **Content-Type:** application/octet-stream ### Responses #### 200 - File upload status - **file_key** (string) (required) ### Example Usage ```bash curl -X POST "/api/w/{workspace}/job_helpers/upload_git_repo_file_to_instance_storage?file_key=string&file_extension=string&s3_resource_path=string&resource_type=string&storage=string&content_type=string&content_disposition=string" \ -H "Content-Type: application/json" \ -d '"string"' ``` ``` -------------------------------- ### GET /service_logs/list_files Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /service_logs/list_files ```markdown ### Parameters - **before** (string (date-time), query, optional): filter on started before (inclusive) timestamp - **after** (string (date-time), query, optional): filter on created after (exclusive) timestamp - **with_error** (boolean, query, optional) ### Responses #### 200 - time - Array of object - **hostname** (string) (required) - **mode** (string) (required) - **worker_group** (string) - **log_ts** (string (date-time)) (required) - **file_path** (string) (required) - **ok_lines** (integer) - **err_lines** (integer) - **json_fmt** (boolean) (required) ### Example Usage ```bash curl -X GET "/api/service_logs/list_files?before=2023-01-01T00:00:00Z&after=2023-01-01T00:00:00Z&with_error=true" ``` ``` -------------------------------- ### POST /w/{workspace}/jobs/run/preview Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /w/{workspace}/jobs/run/preview ```markdown ### Parameters - **workspace** (string, path, required) - **include_header** (string, query, optional): List of headers's keys (separated with ',') whove value are added to the args Header's key lowercased and '-'' replaced to '_' such that 'Content-Type' becomes the 'content_type' arg key - **invisible_to_owner** (boolean, query, optional): make the run invisible to the the script owner (default false) - **job_id** (string (uuid), query, optional): The job id to assign to the created job. if missing, job is chosen randomly using the ULID scheme. If a job id already exists in the queue or as a completed job, the request to create one will fail (Bad Request) ### Request Body **Content-Type:** application/json - **content** (string): The code to run - **path** (string): The path to the script - **script_hash** (string): The hash of the script - **args** (object) (required): The arguments to pass to the script or flow - **language** (string (python3|deno|go|bash|powershell|postgresql|mysql|bigquery|snowflake|mssql|oracledb|graphql|nativets|bun|php|rust|ansible|csharp|nu|java|ruby|rlang|duckdb|bunnative)) ("python3"|"deno"|"go"|"bash"|"powershell"|"postgresql"|"mysql"|"bigquery"|"snowflake"|"mssql"|"oracledb"|"graphql"|"nativets"|"bun"|"php"|"rust"|"ansible"|"csharp"|"nu"|"java"|"ruby"|"rlang"|"duckdb"|"bunnative") - **tag** (string) - **kind** (string (code|identity|http)) ("code"|"identity"|"http") - **dedicated_worker** (boolean) - **lock** (string) - **flow_path** (string) - **modules** (object): Additional script modules keyed by relative file path - **temp_script_refs** (object): Map of relative-import script path -> temp storage hash so the preview job resolves those imports from not-yet-deployed local content instead of the deployed script ### Responses #### 201 - job created ### Example Usage ```bash curl -X POST "/api/w/{workspace}/jobs/run/preview?include_header=string&invisible_to_owner=true&job_id=string" \ -H "Content-Type: application/json" \ -d '{ "content": "string", "path": "string", "script_hash": "string", "args": "value", "language": "value", "tag": "string", "kind": "code", "dedicated_worker": "true", "lock": "string", "flow_path": "string", "modules": "value", "temp_script_refs": "value" }' ``` ``` -------------------------------- ### GET /agent_workers/get_min_version Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /agent_workers/get_min_version ```markdown ### Responses #### 200 - minimum worker version ### Example Usage ```bash curl -X GET "/api/agent_workers/get_min_version" ``` ``` -------------------------------- ### GET /agent_workers/list_blacklisted_tokens Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /agent_workers/list_blacklisted_tokens ```markdown ### Parameters - **include_expired** (boolean, query, optional): Whether to include expired blacklisted tokens ### Responses #### 200 - list of blacklisted tokens - Array of object - **token** (string) (required): The blacklisted token (without prefix) - **expires_at** (string (date-time)) (required): When the blacklist entry expires - **blacklisted_at** (string (date-time)) (required): When the token was blacklisted - **blacklisted_by** (string) (required): Email of the user who blacklisted the token ### Example Usage ```bash curl -X GET "/api/agent_workers/list_blacklisted_tokens?include_expired=false" ``` ``` -------------------------------- ### POST /w/{workspace}/jobs/run_inline/preview Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /w/{workspace}/jobs/run_inline/preview ```markdown ### Parameters - **workspace** (string, path, required) ### Request Body **Content-Type:** application/json - **content** (string) (required): The code to run - **args** (object) (required): The arguments to pass to the script or flow - **language** (string (python3|deno|go|bash|powershell|postgresql|mysql|bigquery|snowflake|mssql|oracledb|graphql|nativets|bun|php|rust|ansible|csharp|nu|java|ruby|rlang|duckdb|bunnative)) (required) ("python3"|"deno"|"go"|"bash"|"powershell"|"postgresql"|"mysql"|"bigquery"|"snowflake"|"mssql"|"oracledb"|"graphql"|"nativets"|"bun"|"php"|"rust"|"ansible"|"csharp"|"nu"|"java"|"ruby"|"rlang"|"duckdb"|"bunnative") ### Responses #### 200 - script result ### Example Usage ```bash curl -X POST "/api/w/{workspace}/jobs/run_inline/preview" \ -H "Content-Type: application/json" \ -d '{ "content": "string", "args": "value", "language": "value" }' ``` ``` -------------------------------- ### POST /w/{workspace}/folders/create Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /w/{workspace}/folders/create ```markdown ### Parameters - **workspace** (string, path, required) ### Request Body **Content-Type:** application/json - **name** (string) (required) - **summary** (string) - **owners** (array (string)) - **extra_perms** (unknown) - **default_permissioned_as** (array (object)): Ordered list of rules applied at create-time when admins or `wm_deployers` members deploy items in this folder. The first rule whose `path_glob` matches the item path (relative to the folder root) wins, and its `permissioned_as` is used as the default. Array items: - **path_glob** (string) (required): Glob pattern evaluated against the item path *relative* to the folder root (e.g. "jobs/**" matches every item whose full path is `f//jobs/...`). Supports `*`, `**`, `?`, `[abc]`, `{a,b}`. - **permissioned_as** (string) (required): Target identity the matched item should be permissioned as. Must be `u/`, `g/`, or an email that exists in this workspace. ### Responses #### 200 - folder created ### Example Usage ```bash curl -X POST "/api/w/{workspace}/folders/create" \ -H "Content-Type: application/json" \ -d '{ "name": "string", "summary": "string", "owners": [ "string" ], "extra_perms": "value", "default_permissioned_as": "value" }' ``` ``` -------------------------------- ### GET /configs/list_all_dedicated_with_deps Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /configs/list_all_dedicated_with_deps ```markdown ### Responses #### 200 - a list of dedicated scripts with workspace dependencies - Array of object - **workspace_id** (string) (required) - **path** (string) (required) - **language** (string (python3|deno|go|bash|powershell|postgresql|mysql|bigquery|snowflake|mssql|oracledb|graphql|nativets|bun|php|rust|ansible|csharp|nu|java|ruby|rlang|duckdb|bunnative)) (required) ("python3"|"deno"|"go"|"bash"|"powershell"|"postgresql"|"mysql"|"bigquery"|"snowflake"|"mssql"|"oracledb"|"graphql"|"nativets"|"bun"|"php"|"rust"|"ansible"|"csharp"|"nu"|"java"|"ruby"|"rlang"|"duckdb"|"bunnative") - **workspace_dep_names** (array (string)) (required) ### Example Usage ```bash curl -X GET "/api/configs/list_all_dedicated_with_deps" ``` ``` -------------------------------- ### POST /w/{workspace}/github_app/import Source: https://app.windmill.dev/api/openapi.json Imports a GitHub installation from a JWT token exported from another instance ```markdown ### Parameters - **workspace** (string, path, required) ### Request Body **Content-Type:** application/json - **jwt_token** (string) (required) ### Responses #### 200 - Successfully imported the installation Empty response body ### Example Usage ```bash curl -X POST "/api/w/{workspace}/github_app/import" \ -H "Content-Type: application/json" \ -d '{ "jwt_token": "string" }' ``` ``` -------------------------------- ### GET /configs/list_available_python_versions Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /configs/list_available_python_versions ```markdown ### Responses #### 200 - List of python versions - Array of string ### Example Usage ```bash curl -X GET "/api/configs/list_available_python_versions" ``` ``` -------------------------------- ### POST /w/{workspace}/jobs/run/dependencies_async Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /w/{workspace}/jobs/run/dependencies_async ```markdown ### Parameters - **workspace** (string, path, required) ### Request Body **Content-Type:** application/json - **raw_scripts** (array (RawScriptForDependencies)) (required) Array items: - **raw_code** (string) (required) - **path** (string) (required) - **language** (string (python3|deno|go|bash|powershell|postgresql|mysql|bigquery|snowflake|mssql|oracledb|graphql|nativets|bun|php|rust|ansible|csharp|nu|java|ruby|rlang|duckdb|bunnative)) (required) ("python3"|"deno"|"go"|"bash"|"powershell"|"postgresql"|"mysql"|"bigquery"|"snowflake"|"mssql"|"oracledb"|"graphql"|"nativets"|"bun"|"php"|"rust"|"ansible"|"csharp"|"nu"|"java"|"ruby"|"rlang"|"duckdb"|"bunnative") - **entrypoint** (string) (required) ### Responses #### 201 - dependency job created ### Example Usage ```bash curl -X POST "/api/w/{workspace}/jobs/run/dependencies_async" \ -H "Content-Type: application/json" \ -d '{ "raw_scripts": [ "value" ], "entrypoint": "string" }' ``` ``` -------------------------------- ### POST /w/{workspace}/jobs/run/dependencies Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /w/{workspace}/jobs/run/dependencies ```markdown ### Parameters - **workspace** (string, path, required) ### Request Body **Content-Type:** application/json - **raw_scripts** (array (RawScriptForDependencies)) (required) Array items: - **raw_code** (string) (required) - **path** (string) (required) - **language** (string (python3|deno|go|bash|powershell|postgresql|mysql|bigquery|snowflake|mssql|oracledb|graphql|nativets|bun|php|rust|ansible|csharp|nu|java|ruby|rlang|duckdb|bunnative)) (required) ("python3"|"deno"|"go"|"bash"|"powershell"|"postgresql"|"mysql"|"bigquery"|"snowflake"|"mssql"|"oracledb"|"graphql"|"nativets"|"bun"|"php"|"rust"|"ansible"|"csharp"|"nu"|"java"|"ruby"|"rlang"|"duckdb"|"bunnative") - **entrypoint** (string) (required) ### Responses #### 201 - dependency job result - **lock** (string) (required) ### Example Usage ```bash curl -X POST "/api/w/{workspace}/jobs/run/dependencies" \ -H "Content-Type: application/json" \ -d '{ "raw_scripts": [ "value" ], "entrypoint": "string" }' ``` ``` -------------------------------- ### GET /configs/native_kubernetes_autoscaling_healthcheck Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /configs/native_kubernetes_autoscaling_healthcheck ```markdown ### Responses #### 200 - Kubernetes autoscaling is healthy Empty response body #### 400 - Error ### Example Usage ```bash curl -X GET "/api/configs/native_kubernetes_autoscaling_healthcheck" ``` ``` -------------------------------- ### GET /configs/list Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /configs/list ```markdown ### Responses #### 200 - list of configs - Array of Config ### Example Usage ```bash curl -X GET "/api/configs/list" ``` ``` -------------------------------- ### POST /w/{workspace}/workspaces/create_pg_database Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /w/{workspace}/workspaces/create_pg_database ```markdown ### Parameters - **workspace** (string, path, required) ### Request Body **Content-Type:** application/json - **source** (string) (required): Datatable source to determine connection info: 'datatable://name' or '$res:path' - **target_dbname** (string) (required): Name for the new database ### Responses #### 200 - status ### Example Usage ```bash curl -X POST "/api/w/{workspace}/workspaces/create_pg_database" \ -H "Content-Type: application/json" \ -d '{ "source": "string", "target_dbname": "string" }' ``` ``` -------------------------------- ### GET /configs/list_worker_groups Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /configs/list_worker_groups ```markdown ### Responses #### 200 - a list of worker group configs - Array of object - **name** (string) (required) - **config** (unknown) (required) ### Example Usage ```bash curl -X GET "/api/configs/list_worker_groups" ``` ``` -------------------------------- ### POST /w/{workspace}/mqtt_triggers/create Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /w/{workspace}/mqtt_triggers/create ```markdown ### Parameters - **workspace** (string, path, required) ### Request Body **Content-Type:** application/json - **mqtt_resource_path** (string) (required): Path to the MQTT resource containing broker connection configuration - **subscribe_topics** (array (MqttSubscribeTopic)) (required): Array of MQTT topics to subscribe to, each with topic name and QoS level Array items: - **qos** (string (qos0|qos1|qos2)) (required) ("qos0"|"qos1"|"qos2") - **topic** (string) (required) - **client_id** (string): MQTT client ID for this connection - **v3_config** (object) - **clean_session** (boolean) - **v5_config** (object) - **clean_start** (boolean) - **topic_alias_maximum** (number) - **session_expiry_interval** (number) - **client_version** (string (v3|v5)) ("v3"|"v5") - **path** (string) (required): The unique Windmill path for this trigger. Must be of the form `u//` or `f//`. This is the trigger object path, not the HTTP route path. - **script_path** (string) (required): Path to the script or flow to execute when a message is received - **is_flow** (boolean) (required): True if script_path points to a flow, false if it points to a script - **mode** (string (enabled|disabled|suspended)): job trigger mode ("enabled"|"disabled"|"suspended") - **error_handler_path** (string): Path to a script or flow to run when the triggered job fails - **error_handler_args** (object): The arguments to pass to the script or flow - **retry** (object): Retry configuration for failed module executions - **constant** (object): Retry with constant delay between attempts - **attempts** (integer): Number of retry attempts - **seconds** (integer): Seconds to wait between retries - **exponential** (object): Retry with exponential backoff (delay doubles each time) - **attempts** (integer): Number of retry attempts - **multiplier** (integer): Multiplier for exponential backoff - **seconds** (integer): Initial delay in seconds - **random_factor** (integer): Random jitter percentage (0-100) to avoid thundering herd - **retry_if** (object): Conditional retry based on error or result - **expr** (string) (required): JavaScript expression that returns true to retry. Has access to 'result' and 'error' variables - **permissioned_as** (string): The user or group this trigger runs as. Used during deployment to preserve the original trigger owner. - **preserve_permissioned_as** (boolean): When true and the caller is a member of the 'wm_deployers' group, preserves the original permissioned_as value instead of overwriting it. - **labels** (array (string)) ### Responses #### 201 - mqtt trigger created ### Example Usage ```bash curl -X POST "/api/w/{workspace}/mqtt_triggers/create" \ -H "Content-Type: application/json" \ -d '{ "mqtt_resource_path": "string", "subscribe_topics": [ "value" ], "client_id": "string", "v3_config": "value", "v5_config": "value", "client_version": "value", "path": "string", "script_path": "string", "is_flow": "true", "mode": "value", "error_handler_path": "string", "error_handler_args": "value", "retry": "value", "permissioned_as": "string", "preserve_permissioned_as": "true", "labels": [ "string" ] }' ``` ``` -------------------------------- ### GET /workers/workspace_fairness_events Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /workers/workspace_fairness_events ```markdown ### Responses #### 200 - workspace fairness events (empty on non-cloud) - Array of object - **timestamp** (string (date-time)) (required) - **operation** (string) (required) - **workspace_id** (string) - **parameters** (object) ### Example Usage ```bash curl -X GET "/api/workers/workspace_fairness_events" ``` ``` -------------------------------- ### GET /w/{workspace}/deployment_request/open Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /w/{workspace}/deployment_request/open ```markdown ### Parameters - **workspace** (string, path, required) ### Responses #### 200 - the open request or null if none exists - **id** (integer (int64)) (required) - **source_workspace_id** (string) (required) - **fork_workspace_id** (string) (required) - **requested_by** (string) (required) - **requested_by_email** (string) (required) - **requested_at** (string (date-time)) (required) - **assignees** (array (DeploymentRequestAssignee)) (required) Array items: - **username** (string) (required) - **email** (string) (required) - **comments** (array (DeploymentRequestComment)) (required) Array items: - **id** (integer (int64)) (required) - **parent_id** (integer (int64)) - **author** (string) (required) - **author_email** (string) (required) - **body** (string) (required) - **anchor_kind** (string) - **anchor_path** (string) - **obsolete** (boolean) (required) - **created_at** (string (date-time)) (required) ### Example Usage ```bash curl -X GET "/api/w/{workspace}/deployment_request/open" ``` ``` -------------------------------- ### POST /w/{workspace}/volumes/create Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /w/{workspace}/volumes/create ```markdown ### Parameters - **workspace** (string, path, required) ### Request Body **Content-Type:** application/json - **name** (string) (required) ### Responses #### 200 - volume created ### Example Usage ```bash curl -X POST "/api/w/{workspace}/volumes/create" \ -H "Content-Type: application/json" \ -d '{ "name": "string" }' ``` ``` -------------------------------- ### GET /workers/queue_running_counts Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /workers/queue_running_counts ```markdown ### Responses #### 200 - queue running counts ### Example Usage ```bash curl -X GET "/api/workers/queue_running_counts" ``` ``` -------------------------------- ### GET /workers/queue_counts Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /workers/queue_counts ```markdown ### Responses #### 200 - queue counts ### Example Usage ```bash curl -X GET "/api/workers/queue_counts" ``` ``` -------------------------------- ### POST /w/{workspace}/apps/create_raw Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /w/{workspace}/apps/create_raw ```markdown ### Parameters - **workspace** (string, path, required) ### Request Body **Content-Type:** multipart/form-data - **app** (object) - **path** (string) (required) - **value** (unknown) (required) - **summary** (string) (required) - **policy** (object) (required) - **triggerables** (object) - **triggerables_v2** (object) - **s3_inputs** (array (object)) - **allowed_s3_keys** (array (object)) Array items: - **s3_path** (string) - **resource** (string) - **execution_mode** (string (viewer|publisher|anonymous)) ("viewer"|"publisher"|"anonymous") - **on_behalf_of** (string) - **on_behalf_of_email** (string) - **draft_only** (boolean) - **deployment_message** (string) - **custom_path** (string) - **preserve_on_behalf_of** (boolean): When true and the caller is a member of the 'wm_deployers' group, preserves the original on_behalf_of value in the policy instead of overwriting it. - **labels** (array (string)) - **skip_draft_deletion** (boolean): When true (set by the CLI / git sync), deploying this app does not delete an existing user draft at the same path. - **js** (string) - **css** (string) ### Responses #### 201 - app created ### Example Usage ```bash curl -X POST "/api/w/{workspace}/apps/create_raw" \ -H "Content-Type: application/json" \ -d '{ "app": { "path": "string", "value": "value", "summary": "string", "policy": "value", "draft_only": "true", "deployment_message": "string", "custom_path": "string", "preserve_on_behalf_of": "true", "labels": [ "string" ], "skip_draft_deletion": "true" }, "js": "string", "css": "string" }' ``` ``` -------------------------------- ### GET /workers/queue_metrics Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /workers/queue_metrics ```markdown ### Responses #### 200 - metrics - Array of object - **id** (string) (required) - **values** (array (object)) (required) Array items: - **created_at** (string) (required) - **value** (number) (required) ### Example Usage ```bash curl -X GET "/api/workers/queue_metrics" ``` ``` -------------------------------- ### POST /w/{workspace}/apps/create Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /w/{workspace}/apps/create ```markdown ### Parameters - **workspace** (string, path, required) ### Request Body **Content-Type:** application/json - **path** (string) (required) - **value** (unknown) (required) - **summary** (string) (required) - **policy** (object) (required) - **triggerables** (object) - **triggerables_v2** (object) - **s3_inputs** (array (object)) - **allowed_s3_keys** (array (object)) Array items: - **s3_path** (string) - **resource** (string) - **execution_mode** (string (viewer|publisher|anonymous)) ("viewer"|"publisher"|"anonymous") - **on_behalf_of** (string) - **on_behalf_of_email** (string) - **draft_only** (boolean) - **deployment_message** (string) - **custom_path** (string) - **preserve_on_behalf_of** (boolean): When true and the caller is a member of the 'wm_deployers' group, preserves the original on_behalf_of value in the policy instead of overwriting it. - **labels** (array (string)) - **skip_draft_deletion** (boolean): When true (set by the CLI / git sync), deploying this app does not delete an existing user draft at the same path. ### Responses #### 201 - app created ### Example Usage ```bash curl -X POST "/api/w/{workspace}/apps/create" \ -H "Content-Type: application/json" \ -d '{ "path": "string", "value": "value", "summary": "string", "policy": "value", "draft_only": "true", "deployment_message": "string", "custom_path": "string", "preserve_on_behalf_of": "true", "labels": [ "string" ], "skip_draft_deletion": "true" }' ``` ``` -------------------------------- ### GET /workers/exists_workers_with_tags Source: https://app.windmill.dev/api/openapi.json API endpoint for GET /workers/exists_workers_with_tags ```markdown ### Parameters - **tags** (string, query, required): comma separated list of tags - **workspace** (string, query, optional): workspace to filter tags visibility (required when TAGS_ARE_SENSITIVE is enabled for non-superadmins) ### Responses #### 200 - map of tags to whether at least one worker with the tag exists ### Example Usage ```bash curl -X GET "/api/workers/exists_workers_with_tags?tags=string&workspace=string" ``` ``` -------------------------------- ### POST /w/{workspace}/jobs_u/resume/{id}/{resume_id}/{signature} Source: https://app.windmill.dev/api/openapi.json API endpoint for POST /w/{workspace}/jobs_u/resume/{id}/{resume_id}/{signature} ```markdown ### Parameters - **workspace** (string, path, required) - **id** (string (uuid), path, required) - **resume_id** (integer, path, required) - **signature** (string, path, required) - **approver** (string, query, optional) ### Request Body **Content-Type:** application/json ### Responses #### 201 - job resumed ### Example Usage ```bash curl -X POST "/api/w/{workspace}/jobs_u/resume/{id}/{resume_id}/{signature}?approver=string" \ -H "Content-Type: application/json" \ -d '"value"' ``` ```