finnhub-client

Provide a throttled, cached Finnhub API client with retry logic and FMP-compatible adapters.

1|Updated Apr 6, 2026
One-click install
npx skills add https://github.com/kavi-lin/stock --skill finnhub-client
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: finnhub-client
Source: https://github.com/kavi-lin/stock/tree/main/skills/finnhub-client
Command: npx skills add https://github.com/kavi-lin/stock --skill finnhub-client

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires requests, and includes scripts (resource) components.

What problem does it solve?

This Skill provides a throttled, cached Finnhub API client with retry logic and adapters that normalize Finnhub payloads into a stable FMP-like shape for downstream skills.

Core Features & Use Cases

  • Rate-limited, cache-backed access to Finnhub's free-tier endpoints.
  • Adapters that translate Finnhub responses into FMP-compatible structures, enabling seamless provider swapping for downstream code.
  • Drift-audit friendly: supports producing _audit data via adjacent tools for monitoring while exposing safe scoring data to LLMs.

Quick Start

Run the dual_fetch.py script to ingest Finnhub scoring data and FMP audit data for a ticker and store the results under data/YYYY-MM-DD.

Frequently Asked Questions about finnhub-client

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I avoid hitting Finnhub API rate limits when fetching stock data?

You can avoid Finnhub API rate limits by using a throttled client that enforces a strict 60 calls/min restriction. This client automatically manages rate limiting to safely fetch real-time quotes and fundamentals without triggering server blocks.

Can I normalize Finnhub API responses for downstream data analysis?

Yes, you can normalize Finnhub API responses using built-in adapters that translate payloads into a stable FMP-like shape. This allows seamless provider swapping and consistent data structures for downstream analytical skills.

What is the best way to cache Finnhub API payloads to reduce redundant requests?

The best way to cache Finnhub payloads is using a client with per-endpoint TTL caches. This approach stores responses temporarily, reducing redundant network calls and improving data retrieval efficiency for repeated ticker queries.

Does the Finnhub client support retry logic with exponential backoff?

Yes, the Finnhub client supports retry logic with exponential backoff. This mechanism automatically retries failed network requests with increasing delays, ensuring reliable data ingestion during transient API errors.

How do I monitor data drift between Finnhub and FMP audit data?

You can monitor data drift by running the dual_fetch script to ingest Finnhub scoring data alongside FMP audit data. The client treats _audit outputs as non-inference data, enabling safe provider drift monitoring for auditing purposes.

Do I need the requests library to use this Finnhub API client?

Yes, you need the requests library installed as a dependency to use this Finnhub API client. The library handles the underlying HTTP network requests required for fetching real-time stock data from Finnhub endpoints.