Steampipe logo

Steampipe

Query any API in real‑time with SQL, no ETL required

Steampipe lets you query cloud services and APIs instantly using familiar SQL, delivering live data without ETL, with parallel execution, a single binary, and extensible plugins.

Steampipe banner

Overview

Overview

Steampipe provides a zero‑ETL approach to accessing APIs and cloud services through standard SQL. It targets developers, security analysts, and operations teams who need ad‑hoc insight without building custom SDK integrations.

Capabilities

Using a single binary, Steampipe translates API endpoints into virtual tables, enabling live, real‑time queries that run faster than traditional polling. Its plugin ecosystem covers AWS, Azure, GCP, Kubernetes, GitHub, and hundreds of other services, exposing over 2,000 tables with documented examples. Queries execute concurrently across multiple data sources, and results are returned in familiar tabular form.

Deployment

Steampipe runs locally, in CI/CD pipelines, or via Turbot Pipes in the cloud. It bundles a lightweight Postgres instance (or SQLite extensions) so no external database is required. Plugins are installed with a single command, and the tool can be scripted for automated compliance checks, reporting, or integration with visualization platforms.

Highlights

SQL interface to any API
Live, real‑time queries
Parallel execution across multiple data sources
Extensible plugin ecosystem with 2000+ tables

Pros

  • No ETL pipelines needed
  • Familiar SQL reduces learning curve
  • Fast, concurrent queries
  • Single binary simplifies deployment

Considerations

  • Requires understanding of underlying APIs
  • Plugin coverage may vary per service
  • AGPL‑3.0 license may affect commercial redistribution
  • Performance depends on API rate limits

Fit guide

Great for

  • Security analysts needing live cloud inventory
  • Developers building ad‑hoc reports across services
  • CI/CD pipelines that validate cloud configurations
  • Data engineers who prefer SQL over custom SDKs

Not ideal when

  • Batch processing of massive static datasets
  • Environments requiring strict proprietary licensing
  • Use cases needing complex transactional updates
  • Low‑latency, high‑throughput streaming workloads

How teams use it

Audit cloud resource compliance

Run a single SQL query across AWS, Azure, and GCP to list non‑compliant resources in minutes.

Generate real‑time dashboard data

Feed query results into Powerpipe or Grafana for up‑to‑date visualizations without data pipelines.

Validate CI/CD infrastructure changes

Embed Steampipe queries in pipelines to fail builds when prohibited services are detected.

Explore third‑party API data

Query Hacker News or GitHub tables with SQL to extract trends without writing custom code.

Tech snapshot

Go64%
HCL26%
Shell7%
Puppet1%
HTML1%
PLSQL1%

Tags

steampipeterraformkubernetesawspostgresqlzero-etlhacktoberfestcissqliteetlcspmcnappgcpclouddevopspostgresql-fdwazuregolangsecuritydevsecops

Frequently asked questions

How does Steampipe access APIs without credentials?

You configure each plugin with the same authentication methods used by the native SDKs (e.g., AWS keys, Azure AD tokens). Steampipe passes those credentials to the API at query time.

Do I need a database server to run queries?

No. Steampipe bundles a lightweight Postgres instance (or SQLite extension) that materializes API tables on demand.

Can I use Steampipe in CI/CD pipelines?

Yes. The single binary can be installed in any runner, and queries can be scripted to enforce policies during builds.

How are plugins maintained?

The community publishes plugins for many services; they are versioned and can be installed with `steampipe plugin install <name>`.

What licensing considerations apply?

The core project is released under AGPL‑3.0. Commercial distributions from Turbot have separate terms; ensure compatibility with your use case.

Project at a glance

Active
Stars
7,653
Watchers
7,653
Forks
325
LicenseAGPL-3.0
Repo age5 years old
Last commitlast month
Primary languageGo

Last synced 3 hours ago