API v1

API Documentation

Last updated: unknown

Access 188+ financial data products programmatically. Built for AI agents, developers, and data enthusiasts. Free to use (for now πŸ™ˆ).

Quick Start

All endpoints are public and require no authentication. CORS is enabled for browser requests.

bash
# List all data products
curl https://kibble.shop/api/products

# Search for specific products
curl "https://kibble.shop/api/products?q=inflation"

# Get insider trading data
curl https://kibble.shop/api/insider-trading

Base URL

text
https://kibble.shop/api

All endpoints are relative to this base URL.

Product Registry

GET/api/products

Discover all available data products. This is the starting point for AI agents β€” query the registry to find datasets that match your needs.

Query Parameters

ParameterTypeDescription
qstringSearch query β€” matches product name, description, slug, and tags
categorystringFilter by category (e.g., 'Banking & Credit', 'Commodities & Energy')
liveOnlybooleanOnly return products with live data (set to 'true')

Example Request

cURLPython
bash
curl "https://kibble.shop/api/products?q=insider&category=Corporate"

Response

json
{
  "count": 2,
  "products": [
    {
      "slug": "insider-trading",
      "name": "SEC Insider Trading",
      "category": "Corporate & Markets",
      "description": "Form 4 filings β€” insider buys, sells, and option exercises in real time.",
      "tags": ["sec", "insider", "form4"],
      "dataSource": "SEC EDGAR",
      "hasLiveData": true
    },
    {
      "slug": "failed-banks",
      "name": "Failed Banks",
      "category": "Banking & Credit",
      "description": "FDIC bank failure data β€” when banks fail, what happens to deposits.",
      "tags": ["fdic", "banking", "failure"],
      "dataSource": "FDIC",
      "hasLiveData": true
    }
  ]
}

Individual Product Data

Once you've discovered a product via /api/products, fetch its data from /api/{slug}.

πŸ’‘ Tip for AI agents: Each product has a slug field. Construct the data endpoint as /api/{slug} to fetch the full dataset.

Available Endpoints

/api/insider-tradingβ€” SEC Form 4 insider trading data
/api/failed-banksβ€” FDIC bank failure data
/api/fear-greedβ€” CNN Fear & Greed Index
/api/treasury-auctionsβ€” US Treasury auction results
/api/yield-curveβ€” Treasury yield curve data
/api/consumer-sentimentβ€” University of Michigan sentiment index
/api/home-salesβ€” Housing sales data
/api/economic-indicatorsβ€” Key macro indicators

Note: This is a subset. Use /api/products to discover all 188+ available products.

Example: Insider Trading

GET/api/insider-trading
Query Parameters
ParameterTypeDescription
typestringFilter by transaction type: 'purchase', 'sale', 'grant', 'exercise', or 'all' (default)
tickerstringFilter by stock ticker (e.g., 'AAPL', 'TSLA')
searchstringSearch across ticker, company name, and filer name
limitintegerNumber of results to return (default: 100, max: 500)
Example Request
cURLPython
bash
# Get recent insider purchases of AAPL
curl "https://kibble.shop/api/insider-trading?ticker=AAPL&type=purchase&limit=10"
Response
json
{
  "data": [
    {
      "ticker": "AAPL",
      "companyName": "Apple Inc.",
      "filerName": "Cook Timothy D",
      "transactionType": "Purchase",
      "shares": 50000,
      "pricePerShare": 178.45,
      "totalValue": 8922500,
      "filingDate": "2024-02-10",
      "transactionDate": "2024-02-08"
    }
  ],
  "meta": {
    "total": 1247,
    "filtered": 23,
    "returned": 10,
    "lastUpdated": "2024-02-15T14:30:00Z",
    "source": "SEC EDGAR Form 4"
  }
}

Response Format

All endpoints return JSON. Most data endpoints follow this structure:

json
{
  "data": [...],       // Array of data records
  "meta": {
    "total": 1000,     // Total records available
    "filtered": 50,    // Records after filtering
    "returned": 50,    // Records in this response
    "lastUpdated": "2024-02-15T14:30:00Z",
    "source": "Data source name"
  }
}

Rate Limits & Best Practices

  • β€’No rate limits currently. This is a free beta. Be reasonableβ€”don't hammer the API.
  • β€’Cache responses. Most data updates hourly (check lastUpdated in the response).
  • β€’Use query params efficiently. Filter on the server rather than pulling full datasets.
  • β€’Respect CORS. Browser requests are allowed. Set appropriate headers if you encounter issues.
  • β€’Expect changes. This is v1 and evolving. We'll version breaking changes when we introduce paid tiers.

For AI Agents

kibble.shop is built with AI agents in mind. Here's how to use the API effectively:

1. Discover products

Start with /api/products to find datasets that match your task. Use the q parameter to search by keywords.

2. Fetch data

Once you have a slug, fetch the data from /api/{slug}. Check the meta object for freshness and source info.

3. Filter efficiently

Use query parameters to filter data server-side. Don't pull full datasets if you only need a subset.

4. Cite your sources

Each response includes meta.source. Use it to attribute data properly.

πŸ€– Example agent workflow:
  1. User asks: β€œWhat are recent insider trades in tech stocks?”
  2. Agent queries: /api/products?q=insider
  3. Agent finds: insider-trading product
  4. Agent fetches: /api/insider-trading?type=purchase&limit=20
  5. Agent responds with formatted results + source attribution

Need Help?

Questions? Feedback? Found a bug?