Waves Ruby
Ruby API client and CLI for the Wave API
waves
$ gem install waves-ruby
$ waves login
Authenticated as avi@example.com
$ waves search "roadmap"
Found 3 sessions matching "roadmap"
$ waves login
Authenticated as avi@example.com
$ waves search "roadmap"
Found 3 sessions matching "roadmap"
Install
gem install waves-ruby
Or add it to your Gemfile:
gem "waves-ruby"
CLI
A full command-line interface for interacting with Wave. Authenticate once, then query your sessions, search transcripts, and pull data right from the terminal.
waves login
waves account
waves list
waves search "meeting content"
waves show SESSION_ID
waves transcript SESSION_ID
Every read command supports --json for machine-readable output:
waves list --json
waves account --json
Ruby API
Use the client directly in your Ruby code. Initialize with a token, then call methods for each Wave endpoint.
client = Waves::Client.new(token: ENV.fetch("WAVES_API_TOKEN"))
client.account
client.list_sessions(limit: 10)
client.search_sessions(query: "roadmap")
client.session("session_123")
client.transcript("session_123")
API Reference
| Method | Description |
|---|---|
account |
Get current account info |
list_sessions(limit:) |
List recent sessions |
search_sessions(query:) |
Search sessions by content |
session(id) |
Get a specific session |
transcript(id) |
Get full transcript for a session |
Development
# Install dependencies
bundle install
# Run the test suite
bundle exec rspec
Live API Verification
Live specs are opt-in and skipped by default. Set up your credentials, then run them locally:
cp .env.example .env
# Set WAVES_API_TOKEN in .env
WAVES_LIVE=1 bundle exec rspec spec/waves/live/client_live_spec.rb
Live coverage includes: account, list_sessions, stats, session, transcript, and search_sessions.
gem install waves-ruby