> ## Documentation Index
> Fetch the complete documentation index at: https://stockcontext.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Insider scan

> Read the Form 4 rollup, transcribe transactions faithfully, and report insider activity without turning it into advice.

`stock_insider` returns a summary of Form 4 activity over a trailing window plus the individual transactions, each a faithful transcription of the filing (`provenance: "sec_filing"`). The work is reading it faithfully: keep the signs, separate acquisitions from sales, and never convert net selling into a buy/sell signal.

## One call

```bash theme={null}
curl -sS "https://api.stockcontext.com/v1/tools/stock_insider" \
  -H "X-API-Key: $STOCKCONTEXT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"symbol": "NVDA", "window_days": 90}'
```

`window_days` is the trailing window (1–1827, default 90). `limit` caps how many transaction rows come back (1–1000, default 200); it does not change the summary.

## A real response

```json title="stock_insider symbol=NVDA (trimmed)" theme={null}
{
  "subject": { "entity": { "cik": "0001045810", "name": "NVIDIA CORP" }, "security": { "ticker": "NVDA" } },
  "data": {
    "summary": {
      "buys": 0,
      "sells": 2,
      "net_shares": "-877734",
      "unique_insiders": 6,
      "filings_examined": 7,
      "cap_hit": false
    },
    "transactions": [
      {
        "provenance": "sec_filing",
        "accession": "0001284116-26-000004",
        "filed": "2026-06-29",
        "transaction_date": "2026-06-25",
        "insider": "LORA MELISSA",
        "relationship": "director",
        "security_title": "Common Stock",
        "code": "A",
        "acquired": true,
        "direct": true,
        "is_derivative": false,
        "shares": "1211",
        "price": "0",
        "value": "0",
        "shares_owned_following": "15069"
      }
    ]
  },
  "meta": { "as_of": { "sec": "2026-06-29" }, "basis": "form_4_as_filed" }
}
```

Read it straight:

* **`summary`** aggregates the window: `buys` and `sells` counts, `net_shares` (a decimal string; negative here means net shares left insiders' hands), `unique_insiders`, and `filings_examined`. `cap_hit` is `true` if the scan reached its filing limit and the summary is bounded — surface it when set.
* **Each transaction** is transcribed, not interpreted: `code` is the raw SEC transaction code, `acquired` says whether shares were acquired (`true`) or disposed (`false`), `shares`/`price`/`value` are decimal strings, and `shares_owned_following` is the post-transaction holding. The row above is a grant (code `A`), so `price` and `value` are `"0"` — a genuine zero, not a refusal.
* **`basis: "form_4_as_filed"`** and `provenance: "sec_filing"` mean these are the filings as submitted, cited to their `accession`. Resolve any `code` in the `stock_reference` catalogs.

## A reportable answer

> NVIDIA insider activity, trailing 90 days (`as_of.sec` 2026-06-29): across 6 insiders and 7 Form 4 filings, there were 0 open-market buys and 2 sells, netting about -877,734 shares. The remaining filings were director grants (code A, priced at 0). This describes filed activity, cited to each accession — not a buy or sell signal.

That last clause is the guardrail. Net selling is not "bearish" and net buying is not "bullish": insiders sell for taxes, diversification, and scheduled plans. Describe the activity and its sign; do not convert it to advice. The anti-advice rule lives in [Agent instructions](/docs/agents/instructions).

## Scope

* `stock_insider` covers Form 4 transactions for the resolved issuer. A symbol with no Form 4 filings in the window refuses `no_insider_filings` — the same `{ available, reason, recovery }` envelope, not an empty result.
* For institutional holders, use [`stock_ownership`](/docs/api-reference/endpoints/filings-and-activity/stock_ownership) — but note it is a tracked subset, never total ownership.
