Skip to content

Repository files navigation

Riverside CLI

A command-line interface for the Riverside.fm Business API v3. It covers the current v3 surface for workspace productions, recordings, exports, media/transcript downloads, and webinar registrants.

Installation

go build -o riverside .

Configuration

The CLI resolves configuration in this priority order:

  1. CLI flags
  2. Environment variables (RIVERSIDE_API_KEY, RIVERSIDE_OUTPUT_FORMAT)
  3. Config file (~/.config/riverside/config.yaml)

Save your API key:

./riverside auth <your-api-key>

Or pass it directly:

./riverside --api-key <key> workspace list

Usage

Commands follow the pattern: riverside <resource> <action> [flags]

# Authenticate once, then use the saved key
riverside auth <your-api-key># Workspace hierarchy
riverside workspace list
# Recordings
riverside recording list --project-id <project-id>
riverside recording list --studio-id <studio-id> --start-date 2026-01-01 --end-date 2026-01-31
riverside recording get --id <recording-id>
riverside recording delete --id <recording-id># Exports
riverside export list --project-id <project-id>
riverside export get --id <export-id>
riverside export delete --id <export-id># Downloads
riverside download file --id <file-id> --output-file ./track.wav
riverside download export --id <export-id> --output-file ./export.mp4
riverside download transcription --recording-id <recording-id> --type txt --output-file ./transcript.txt
# Webinar registrants
riverside registrant create --event-id <event-id> --email ada@example.com --first-name Ada --last-name Lovelace
riverside registrant list --event-id <event-id> --limit 100

Utility Commands

These ship with the CLI but do not map directly to API resource groups:

  • auth - Save an API key to ~/.config/riverside/config.yaml
  • skill - Install the bundled SKILL.md for agent tools
  • completion - Generate shell completion scripts

Agent Skill Installation

The CLI includes a bundled AI-agent skill for tools that support SKILL.md-based workflows.

riverside skill install
riverside skill install --target claude
riverside skill install --target codex --force

By default, the installer writes SKILL.md into:

  • ~/.agents/skills/riverside-cli/
  • ~/.claude/skills/riverside-cli/
  • ~/.codex/skills/riverside-cli/

Global Flags

FlagShortDescription
--api-key-kAPI key (also via RIVERSIDE_API_KEY env var)
--output-oOutput format: json, table, csv
--verbose-vShow request/response details

Pagination Flags

Recording and export list endpoints support page pagination:

  • recording list --page <n> - recordings start at page 0
  • export list --page <n> - exports start at page 1
  • --all - auto-paginate and return every item

Registrant lists use cursor pagination:

  • registrant list --limit <n> - page size, 1-500
  • registrant list --cursor <cursor> - cursor from page.next_cursor
  • registrant list --all - auto-paginate and return every registrant

Body-Driven Flags

registrant create accepts either top-level flags or a full JSON request body:

riverside registrant create \
--event-id <event-id> \
--body-json '{"email":"ada@example.com","first_name":"Ada","last_name":"Lovelace","custom_fields":{"Company":"Acme"}}'

Individual flags override matching body keys. --custom-fields-json and --custom-fields-file accept either an object or the label/value array shape shown in Riverside's docs.

Supported Resources

ResourceCLI SubcommandAPI Path
Workspace productionsworkspace listGET /productions
Recordingsrecording listGET /recordings
Recordingrecording getGET /recordings/{recordingId}
Recording deleterecording deleteDELETE /recordings/{recordingId}
Exportsexport listGET /exports
Exportexport getGET /exports/{exportId}
Export deleteexport deleteDELETE /exports/{exportId}
Track file downloaddownload fileGET /download/file/{id}
Transcript downloaddownload transcriptionGET /download/transcription/{recordingId}
Export downloaddownload exportGET /download/export/{exportId}
Webinar registrant createregistrant createPOST /events/{eventId}/registrants
Webinar registrantsregistrant listGET /events/{eventId}/registrants

Development

# Build
go build -o riverside .# Run tests
go test ./...

API Reference

  • Base URL:https://platform.riverside.fm/api/v3
  • Auth: Bearer token via Authorization: Bearer <api_key> header
  • Rate Limit: Most v3 endpoints are documented as once per second; recording delete has no documented rate limit.
  • Docs:https://docs.riverside.fm/quickstart

License

MIT

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages