redash-query-runner-extensibility-pattern
Redash’s extensibility crown jewel is BaseQueryRunner in redash/query_runner/init.py requiring 4 methods: run_query(query, user), get_schema(), test_connection(), configuration_schema() → JSON Schema dict. BaseSQLQueryRunner adds limit injection via sqlparse; BaseHTTPQueryRunner adds SSRF defense via advocate library. New connectors register via module-level register(cls) and are enabled by listing in REDASH_ENABLED_QUERY_RUNNERS env var — no core changes needed.
Related
- redash-query-runner-extensibility-is-primary-integration-poi
- salesforce
- snowflake
- rbac-rls-at-query-execution-layer-is-non-negotiable-enterpri
- docker
- redash-query-runner-extensibility-hook
- redash-query-runner-framework-ported-as-r-dash-connector-bas
- redash-query-runner-extension-pattern
- redash-query-runner-extension-architecture
- redash-query-runner-dormant-activatable-via-env
- redash-query-runner-framework-extensibility-pattern