Skip to content

aha-go

Go SDK and CLI for the Aha.io API.

Overview

aha-go provides a complete Go client library and command-line interface for interacting with Aha.io's product management platform. Whether you're automating workflows, building integrations, or querying product data, this library gives you programmatic access to all major Aha.io entities.

Features

  • Full API Coverage - Access features, ideas, epics, releases, initiatives, goals, requirements, comments, users, and products
  • CLI Tool - Command-line interface for quick interactions and scripting
  • Strategic Canvases - Create and export Business Model Canvas, Lean Canvas, and custom templates
  • Diagram Generation - Render roadmaps and relationships as Mermaid, D2, or SVG diagrams
  • Type Safety - Fully typed Go structs for all API responses

Quick Example

package main

import (
    "context"
    "fmt"
    "log"

    aha "github.com/grokify/aha-go"
)

func main() {
    // Create client (uses AHA_SUBDOMAIN and AHA_API_KEY env vars)
    client, err := aha.NewClient()
    if err != nil {
        log.Fatal(err)
    }

    // List features in a product
    features, err := client.ListFeatures(context.Background(), "PRODUCT-KEY")
    if err != nil {
        log.Fatal(err)
    }

    for _, f := range features {
        fmt.Printf("%s: %s (%s)\n", f.ReferenceNum, f.Name, f.Status)
    }
}

Documentation

Section Description
Getting Started Installation, authentication, and first steps
CLI Reference Command-line tool usage and examples
Use Cases Common workflows and integration patterns
Packages Package documentation for canvas, browser, render
API Reference Links to pkg.go.dev documentation

Installation

# As a library
go get github.com/grokify/aha-go

# CLI tool
go install github.com/grokify/aha-go/cmd/aha@latest