Documentation/SDK Libraries

SDK Libraries

Official SDKs

Install the client for your language. Each wraps the REST API with typed responses, automatic token refresh, and retry logic. The engine meets you where you are — reluctantly.

LanguagePackageInstall
Node.js@goltana/sdknpm install @goltana/sdk
Pythongoltanapip install goltana
Gogoltana-gogo get github.com/goltana/goltana-go
Rustgoltana-rscargo add goltana
Rubygoltanagem install goltana
Javagoltana-javaMaven Central: com.goltana:sdk
cURLYou already have it. It’s always been there.
PHPgoltana/sdkcomposer require goltana/sdk(we don’t talk about this one)

Node.js — Quick Start

JavaScript
import Goltana from '@goltana/sdk';

const client = new Goltana({
  token: process.env.GOLTANA_TOKEN,
  timeout: 5000,
  retries: 2,
  honesty: 'brutal'
});

// Single verdict
const spy = await client.evaluate('SPY');

// Batch
const batch = await client.evaluateBatch(['SPY', 'QQQ', 'IWM'], {
  timeframe: '0dte',
  include_greeks: true
});

// Stream
client.stream(['SPY', 'QQQ'], (verdict) => {
  console.log(`[${verdict.symbol}] ${verdict.signal} @ ${verdict.confidence}`);
});

Python — Quick Start

Python
import os
from goltana import Client, BatchRequest

client = Client(
    token=os.environ["GOLTANA_TOKEN"],
    timeout=5.0,
    honesty="brutal"
)

spy = client.evaluate("SPY", timeframe="0dte")
print(f"{spy.signal} — {spy.message}")

batch = client.evaluate_batch(
    symbols=["SPY", "QQQ", "IWM"],
    include_greeks=True
)

for v in batch.verdicts:
    print(f"[{v.symbol}] {v.signal} ({v.confidence:.0%})")

Go — Quick Start

Go
package main

import (
    "fmt"
    "os"
    goltana "github.com/goltana/goltana-go"
)

func main() {
    client := goltana.NewClient(os.Getenv("GOLTANA_TOKEN"))

    verdict, err := client.Evaluate("SPY", &goltana.Options{
        Timeframe:     "0dte",
        IncludeGreeks: true,
        Honesty:       "brutal",
    })

    if err != nil {
        panic(err)
    }

    fmt.Printf("%s — %s (%.0f%%)
",
        verdict.Symbol, verdict.Signal, verdict.Confidence*100)
}

← Back to Documentation