# Zacks — Wrapped API

> **You are on:** `https://api.beta.paywithlocus.com/api` | [llms.txt](https://beta.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.

> Compare a company's actual earnings per share against analyst expectations for the last four quarters to see how often it beats or misses forecasts. Access the surprise percentage and positive surprise ratio to quickly identify stocks with a consistent track record of outperforming estimates.

**Category:** Finance & Markets | **Website:** [www.zacks.com/stock/quote/AAPL?q=AAPL&icid=quote-stock_overview-search_popular-zcom-main_menu_wrapper-AAPL](https://www.zacks.com/stock/quote/AAPL?q=AAPL&icid=quote-stock_overview-search_popular-zcom-main_menu_wrapper-AAPL) | **Docs:** [parse.bot/marketplace/f7e37144-fc8a-47a1-b2a8-b03fd4b46359/zacks-com-api](https://parse.bot/marketplace/f7e37144-fc8a-47a1-b2a8-b03fd4b46359/zacks-com-api)

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

## Access

**Base URL:** `https://api.beta.paywithlocus.com/api/wrapped/credits/zacks/`
**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 eps surprise ratio

Fetches the EPS Surprise (last 4 quarters) section from a stock's Zacks quote overview page. Returns four quarters in newest-to-oldest order with reported EPS, estimated EPS, difference, and EPS surprise percentage. Computes positive_surprise_ratio as the count of quarters with strictly positive surprise percentage divided by 4. If any quarter's EPS Surprise % is N/A or missing, positive_surprise_ratio is null and ratio_status is 'no_info'. One upstream page request per call.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `ticker` | string | Yes | Stock ticker symbol (1-5 uppercase letters, optionally followed by a dot or hyphen and 1-2 letters for share classes like BRK.B). Example: AAPL, MSFT, BRK.B. |

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

## Next steps

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