Skip to content

turbot/steampipe

Steampipe Logo

plugins   slack   maintained by

Steampipe is the zero-ETL solution for getting data directly from APIs and services. We offer these Steampipe engines:

  • Steampipe CLI. Use the Steampipe core engine to translate APIs to tables in the Postgres instance that's bundled with Steampipe.

  • Steampipe Postgres FDWs. Use native Postgres Foreign Data Wrappers to translate APIs to foreign tables.

  • Steampipe SQLite extensions. Use SQLite extensions to translate APIS to SQLite virtual tables.

  • Steampipe export tools. Use standalone binaries that export data from APIs, no database required.

  • Turbot Pipes. Use Turbot Pipes to run Steampipe in the cloud.

Steampipe API plugins

The Steampipe community has grown a suite of plugins that map APIs to database tables. They work with all Steampipe engines.

Install Steampipe

The downloads page shows you how but tl;dr:

Linux or WSL

sudo /bin/sh -c "$(curl -fsSL https://steampipe.io/install/steampipe.sh)"

MacOS

brew tap turbot/tap
brew install steampipe

Install a plugin

Choose a plugin from the hub, for example: Hacker News.

Run the steampipe plugin command to install it.

steampipe plugin install hackernews

Query with a plugin

Run a query using psql — or another Postgres client , or Powerpipe — to query a table provided by the installed plugin.

psql -h localhost -p 9193 -d steampipe -U steampipe
steampipe=> select * from hackernews_new limit 10

Developing

Prerequisites:

  • Golang Version 1.19 or higher.

Clone the repo.

git clone https://github.com/turbot/steampipe
cd steampipe

Build, which automatically installs the new version to your /usr/local/bin/steampipe directory:

make

Check the version.

$ steampipe -v
steampipe version 0.21.1

Install a plugin and run a query as per above.

Open source & contributing

This repository is published under the AGPL 3.0 license. Please see our code of conduct. Contributors must sign our Contributor License Agreement as part of their first pull request. We look forward to collaborating with you!

Steampipe is a product produced from this open source software, exclusively by Turbot HQ, Inc. It is distributed under our commercial terms. Others are allowed to make their own distribution of the software, but cannot use any of the Turbot trademarks, cloud services, etc. You can learn more in our Open Source FAQ.

Turbot Pipes

Want a hosted version of Steampipe? Bring your team to Turbot Pipes.

Get involved

Join #steampipe on Slack →

Want to help but don't know where to start? Pick up one of the help wanted issues: