# Finviz — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Monitor insider trading activity, screen stocks based on custom criteria, and analyze market sentiment from financial news to make informed investment decisions. Access real-time data on market movers, tabular financial information, and comprehensive market intelligence all in one place.

**Category:** Finance & Markets | **Website:** [finviz.com/](https://finviz.com/) | **Docs:** [parse.bot/marketplace/09c62661-67ab-42f3-bdbe-e4f90fbd888d/finviz-com-api](https://parse.bot/marketplace/09c62661-67ab-42f3-bdbe-e4f90fbd888d/finviz-com-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/credits/finviz/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Get insider trading

Retrieve recent insider trading transactions from Finviz. Returns the latest insider buys and sells with transaction details including owner, relationship, cost, shares, and total value. Optionally filter by minimum transaction value to surface only significant activity. Single-page result set.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `min_value` | integer | No | Minimum transaction value in USD. Transactions with Value ($) below this threshold are excluded from results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/finviz/get-insider-trading \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"min_value":"<integer>"}'
```

### Get market movers

Retrieve market mover lists from Finviz: top gainers, top losers, most active by volume, or unusual volume stocks. Returns the first page (up to 20 stocks) with fundamental columns including company, sector, market cap, P/E, price, change, and volume.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `mover_type` | string | No | Type of market mover list to retrieve. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/finviz/get-market-movers \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"mover_type":"<string>"}'
```

### Get screener results

Run the Finviz stock screener with custom filter criteria. Returns the first page of matching stocks (up to 20) with fundamental and technical summary data. Filter codes follow the Finviz URL filter format and can be combined with commas.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `filters` | string | No | Comma-separated Finviz filter codes (e.g. 'fa_peg_u1' for PEG under 1, 'ta_sma200_pc5' for price within 5% of SMA200). Codes follow the Finviz URL parameter format visible in screener URLs. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/finviz/get-screener-results \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"filters":"<string>"}'
```

### Get stock news sentiment

Retrieve recent news headlines for a stock ticker with keyword-based sentiment classification. Each headline is tagged Positive, Negative, or Neutral based on presence of bullish/bearish keywords. Returns all news items visible on the Finviz quote page for the ticker.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `ticker` | string | Yes | Stock ticker symbol (e.g. AAPL, TSLA, MSFT). Case-insensitive. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/finviz/get-stock-news-sentiment \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"ticker":"<string>"}'
```

### Get tabular data

Extract all tabular data from a specific Finviz page. Returns an array of tables found on the page, each with its index, headers, and row data.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `url` | string | No | URL of the Finviz page to extract tables from. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/finviz/get-tabular-data \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"url":"<string>"}'
```

### Get ticker sectors with performance

Batch-resolve Finviz sector classifications for up to 100 tickers and join each to the current 1-day sector performance. Uses a single batch screener request (paginated if needed) and one sector-groups request. Falls back to individual quote pages only for tickers missing from the batch screener. Class-share symbols (e.g. BRK.B, PBR.A) are normalized to Finviz format automatically. Returns items in input order with resolved/unresolved status.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `tickers` | string | Yes | Comma-separated list of US-listed ticker symbols (1-100). Class-share symbols use dot notation (e.g. BRK.B, PBR.A). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/finviz/get-ticker-sectors-with-performance \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"tickers":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://paywithlocus.com/agent/index.md): every Locus agent page.