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

# Credits

> What polling and each call cost your Account.

Pull endpoints and your keywords' poll ticks deduct credits from your **Account** balance. Insufficient credits return HTTP **402** with `code: "INSUFFICIENT_CREDITS"`.

Check your balance anytime (free):

```bash theme={null}
curl https://api.nephia.cc/v1/account/credits \
  -H "x-api-key: YOUR_API_KEY"
```

```json theme={null}
{ "credits": 41250 }
```

## Where credits come from

One balance, funded from three places:

* **Free monthly credits** — a Free Account's allowance is set to **1,000 credits every
  30 days**, starting at sign-in. Unused free credits do not roll over; the next cycle
  sets the allowance back to 1,000.
* **Plan allowance** — each paid cycle grants your plan's monthly credits (Solo 150k,
  Growth 650k, Pro 2.5M) instead of the free cycle. Credits are the **meter**, not the
  product: a plan sells keywords, terms and freshness, and includes far more credits than
  a monitoring account spends (see [Limits](/limits)).
* **Credit packs** — one-off top-ups from the dashboard, at a flat rate regardless of
  plan. Packs never expire and add on top of any allowance.

Your balance never goes negative, and a tick that could not be debited is not metered.
Packs raise your balance but never your request quota or keyword caps: those move only with
the plan. See [Limits](/limits).

<h2 id="reading-mentions">
  Reading your mentions
</h2>

**Free.** `GET /v1/mentions`, `GET /v1/keywords`, `GET /v1/keywords/{id}`,
`GET /v1/keywords/{id}/results`, `GET /v1/keywords/{id}/events`,
`GET /v1/keywords/{id}/activity` and `GET /v1/keywords/{id}/buckets` read data you already
paid to collect: reading it back is the product, not a metered act. Creating, estimating,
editing, pausing and resuming keywords is free too; what costs is the polling those keywords do
([Polling](#polling)).

One exception. Adding `mode=semantic` to `/v1/mentions` or `/v1/keywords/{id}/results`
searches by **meaning** rather than by substring, which calls an embedding provider and is
charged at the [AI rates](#ai) below. It is never the default and never inferred: leave the
parameter out and the read is a free substring scan. The charge is cached for ten minutes,
so re-asking the same question inside that window costs nothing — the same terms an API key
gets and a dashboard session gets, deliberately.

<h2 id="explore">
  Explore runs
</h2>

`POST /v1/explore` charges **each search once**, at its Source's explore rate, the moment
it runs. Most Sources are a flat rate. **X is charged per tweet returned**: 5 credits plus
3 per tweet, so at most 65 for a page of 20, and 5 when it matches nothing.
`POST /v1/explore/estimate` is free and returns that figure per search and in total, from
the same table the run charges from; on X it returns the ceiling and marks it `variable`. A search that fails is not charged, and a
run the balance cannot cover is refused before any search starts. Reading a kept run again
with `GET /v1/mentions?run={id}` is free. See [Explore](/explore).

<h2 id="ai-answers">
  AI answers rates
</h2>

| What | Credits |
| - | - |
| One engine, one run | 100 |
| `GET /v1/keywords/{id}/ai-answers/runs` | 0 |

The only three-figure rate in this table, and the reason is that a run is a real
purchase rather than a public endpoint: asking an answer engine costs money per
question. Two engines every six hours is 800 credits a day.

**An engine that errors is not charged.** The others still answer, and a failed
engine keeps its previous answer as the baseline.

There is no pull endpoint for this Source, see [AI answers](/sources/ai-answers).

<h2 id="vinted-analytics">
  Vinted analytics rates
</h2>

Nephia's own price observations, read back. Not a call to Vinted.

| Endpoint | Credits |
| - | - |
| `GET /v1/vinted/items/{id}/price-history` | 3 |
| `GET /v1/vinted/market/stats` | 5 |

<h2 id="polling">
  Polling
</h2>

A keyword polls each of its searches on each enabled Source, and each check is a **tick**. `GET /v1/keywords/{id}/activity` lists them, with what each one charged. A tick deducts credits at its Source's rate: **4 credits** for X, Reddit, and Vinted (**8** for a Reddit search in `types: all`, which reads two listings per tick); **5 credits** for Youtube; **1 credit** for Bluesky, Hacker News and RSS. An RSS tick that gets a 304 is charged too, because the poll happened. AI answers is billed differently: **100 credits per engine per run**, because a run is a purchase rather than a fetch (see [AI answers rates](#ai-answers)). If your balance is too low, polling is **paused** with `pausedReason: insufficient_credits` and webhook delivery stops until you top up and [resume](/keywords#pause) manually. `POST /v1/keywords/estimate` prices a keyword's month before you create it, for free.

**A first scan and a page of history are charged the way a search on X is.**
`backfill: true` on `POST /v1/keywords` runs one immediate search per Source and is
charged one tick each, except on X: **5 credits plus 3 per tweet returned**, at most
**65** for its page of 20. The dashboard's 60-day history reads the same page on X, so one
page costs at most **65** and a whole X history at most **325** for its five pages; on
every other Source a page is charged one tick. Both figures are ceilings the screen quotes as "up to": a
quiet term stops early, an empty page costs 5, and your Spend statement carries what each
page really charged.

Management endpoints (list, get, estimate, pause, resume, delete) do **not** charge credits.

Webhook delivery itself does not add a separate per-event credit charge beyond the poll tick.

A keyword with an [agent step](/ai) charges its step on top of the tick, at
the AI rate below: one credit per 25 events read.

<h2 id="dashboard">
  In the dashboard
</h2>

The dashboard spends the same balance as the API, and most of what it spends is
**polling**: a keyword's Sources, billed per tick at the rates in
[Polling](#polling). Everything below is the other kind, a charge
you make by clicking something.

| Action | Credits |
| - | - |
| Find similar | 1 |
| Search by meaning | 1 per question |
| Draft a reply | 1 |
| Read the post a mention replies to | 2 |
| Load the rest of a conversation | up to 65 per missing link, at most 6 links; charged on the tweets each search returns, so usually about 44 |
| Suggest prompts | 10 |
| Read my site | 10 |
| Sort mentions | 1 per 50 mentions |
| Suggest buckets | 10, plus 1 per 50 mentions read |
| Ask your keyword | 1 per question, 2 when it retrieves by meaning |

**The screen names a price only when it is at least 1% of your monthly
allowance.** A click worth a hundredth of your month is a decision the button
can help you make; a click worth a thousandth is noise on every control you
own. So the number lives here, and every charge, including the quiet ones, is on
your account's Spend statement, named after the action that made it and
filterable by day.

What that means in practice: on a plan with a 150,000-credit cycle none of the
rates above reaches the threshold and no button quotes a figure. On a
1,000-credit free cycle, "Suggest prompts" and "Read my site" do, and they say
so.

Standing costs are the exception and are always stated, whatever they come to:
a keyword that polls, a followed account, an answer-engine prompt. Those are
written as a share of your month, "about 14% of your month at this interval",
because what matters about a subscription is not what one tick costs but what
the month does.

<h2 id="ai">
  AI rates
</h2>

| Pass | Credits |
| - | - |
| `POST /v1/analyses` — `group`, `classify`, `summarise` | 1 per 50 items |
| `POST /v1/analyses` — `agent` | 1 per 25 items |
| `GET /v1/analyses/estimate` | 0 |
| Agent step on a keyword | 1 per 25 events |

Billed per batch, **after** a valid answer: a batch the provider could not
answer is not charged, and `meta.credits_used` reports what actually was. See
[AI](/ai).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.