Financial Data API
Go SDK for Financial Data
Context support, zero dependencies, automatic retries. The Go market data library for high-performance systems.
go get github.com/eulerpool/eulerpool-go
Quick start
Three steps to your first data call
1. Install
$ go get github.com/eulerpool/eulerpool-go
2. Authenticate
import eulerpool "github.com/eulerpool/eulerpool-go" client := eulerpool.NewClient("ep_live_xxx")
3. Fetch data
raw, err := client.Equity.Metrics(ctx, "AAPL") var m struct { Valuation struct { PE float64 `json:"pe"` } `json:"valuation"` } json.Unmarshal(raw, &m) log.Printf("P/E %.2f", m.Valuation.PE)
Features
Built for Go developers
01
Strongly typed
Structs for every response. No interface{} or dynamic typing.
02
Context support
Cancellation, timeouts, and tracing. Idiomatic Go.
03
Raw JSON control
Responses come back as json.RawMessage — unmarshal into your own structs.
04
Minimal dependencies
Standard library first. No heavy frameworks. Small binaries.
Example
Market scanner
scanner.go
package main import ( "context" "encoding/json" "log" eulerpool "github.com/eulerpool/eulerpool-go" ) type metrics struct { Ticker string `json:"ticker"` Valuation struct { PE float64 `json:"pe"` } `json:"valuation"` } func main() { client := eulerpool.NewClient("ep_live_xxx") ctx := context.Background() for _, t := range []string{"AAPL", "MSFT", "GOOGL"} { raw, err := client.Equity.Metrics(ctx, t) if err != nil { log.Fatal(err) } var m metrics json.Unmarshal(raw, &m) if m.Valuation.PE > 0 && m.Valuation.PE < 15 { log.Printf("%s: P/E %.2f (value)", m.Ticker, m.Valuation.PE) } } }
Frequently asked questions
Ready to build?
Get your free API key. 100,000 calls/month. No credit card required.
Get your free API key