Market data for
Nuxt apps.

Use the TickerDB Node.js SDK in Nuxt server routes and API endpoints. Pre-computed financial data with no infrastructure to maintain.

Install the SDK.

Add tickerdb to your Nuxt project. Works with Nuxt server routes and composables.

terminal
npm install tickerdb

Set TICKERDB_KEY in your .env file. The SDK reads it automatically.

Works where Nuxt runs server-side.

Call the SDK in server API routes and expose data through composables. Data never touches the client bundle.

Server API Route server/api/summary/[ticker].ts
import { TickerDB } from "tickerdb";

const client = new TickerDB(process.env.TICKERDB_KEY);

export default defineEventHandler(async (event) => {
  const ticker = getRouterParam(event, "ticker");
  return await client.summary(ticker);
});
Composable composables/useMarketData.ts
export const useMarketData = (ticker: string) => {
  return useFetch("/api/summary/" + ticker);
};

Track state changes effortlessly.

Most market data APIs return point-in-time snapshots. TickerDB tracks state transitions — your agent sees what changed, not just what is.

Server API Route server/api/watchlist/changes.ts
import { TickerDB } from "tickerdb";

const client = new TickerDB(process.env.TICKERDB_KEY);

export default defineEventHandler(async () => {
  const changes = await client.watchlist.changes();

  // each change includes from/to transitions
  // e.g. trend: "downtrend" → "uptrend"
  return changes;
});
json
{
  "ticker": "AAPL",
  "changes": [
    {
      "field": "rsi_zone",
      "from": "neutral",
      "to": "oversold"
    },
    {
      "field": "trend",
      "from": "uptrend",
      "to": "downtrend"
    }
  ]
}

Feed an AI agent.

TickerDB's categorical output is designed for LLMs. Feed a summary directly into a prompt — the model already understands terms like "oversold" and "strong_uptrend" without extra context.

Server API Route server/api/briefing/[ticker].ts
import { TickerDB } from "tickerdb";
import Anthropic from "@anthropic-ai/sdk";

const ticker = new TickerDB(process.env.TICKERDB_KEY);
const anthropic = new Anthropic();

export default defineEventHandler(async (event) => {
  const t = getRouterParam(event, "ticker");
  const summary = await ticker.summary(t);

  const message = await anthropic.messages.create({
    model: "claude-sonnet-4-20250514",
    max_tokens: 1024,
    messages: [{
      role: "user",
      content: `Analyze this market data for ${t} and provide a brief:\n${JSON.stringify(summary)}`
    }]
  });

  return { analysis: message.content };
});

What your agent sees.

Every tool returns categorical facts — not raw OHLCV data. Your agent can branch on "oversold" without needing to know what RSI > 70 means.

json
{
  "ticker": "NVDA",
  "trend": "strong_uptrend",
  "momentum": {
    "rsi_zone": "overbought",
    "macd_signal": "bullish"
  },
  "volatility": "high",
  "fundamentals": {
    "pe_zone": "above_historical_avg",
    "earnings_surprise": "positive"
  }
}

What you can call.

Every tool returns categorical, pre-computed data. Your agent gets facts it can reason about immediately.

get_summary

Full categorical snapshot for a single asset — trend, momentum, volatility, volume, extremes, fundamentals, support/resistance.

get_watchlist

Live summary data for all tickers in your saved watchlist.

get_watchlist_changes

Field-level diffs for your watchlist since the last pipeline run.

add_to_watchlist

Add tickers to your persistent watchlist.

remove_from_watchlist

Remove tickers from your watchlist.

get_search

Multi-field filtering across all assets. Build complex queries with arbitrary filter combinations.

get_schema

All queryable fields with types, values, and descriptions. Always free.

get_account

Your plan tier, rate limits, and current API usage.

create_webhook

Register a webhook URL for watchlist change notifications.

list_webhooks

List your registered webhook URLs.

delete_webhook

Remove a registered webhook.

Built for how agents consume data.

Categorical data, less prompt engineering

Responses like "rsi_zone": "oversold" are already in a format the model understands. No need to explain what RSI > 70 means.

Compact responses

Tool-call context windows are limited. TickerDB responses are a fraction of the tokens you'd need to pass raw OHLCV data.

Pre-computed daily

No infrastructure to maintain. No cron jobs, no indicator math, no data pipelines. TickerDB handles computation and syncing.

Start building.

Try for free. No credit card required.