Send a URL. Get the page back as Markdown.
One request fetches the page, drops the navigation, consent banners and ad slots, and returns what a person came to read. No model touches it on the way, so the same page reads the same way every time.
- GET /reader
- €0.003 a page
- Starter and above
The Reader API has three endpoints, all on your gateway key.
Read a page, run a search, or walk several pages of results and read what they point to. They live on api.nemu.cc next to the model endpoints and take the same key.
Fetch one URL and return its content as Markdown.
Requestcurl
curl -G https://api.nemu.cc/reader \
--data-urlencode "url=https://docs.example.com/guides/streaming" \
-H "Authorization: Bearer $NEMU_KEY"Response200 application/json
sample, shortened{
"url": "https://docs.example.com/guides/streaming",
"content": "# Streaming responses\n\nSend `stream: true` and the reply arrives as events. Each one carries a delta you append as it lands.\n\n## Reading the stream\n\n- Read each event as it arrives\n- Stop when the final event is sent\n\n...",
"format": "markdown"
}HTML, PDF, Word and plain text all come back as one text field.
The reader looks at what the server sent before it decides how to read it. Whatever came in, the answer lands in content, ready to hand to a model or store.
What it receives
What it returnscontent
# Release notes Version 2 adds [an upgrade guide](https://example.com/notes#upgrade). ## Upgrading 1. Back up2. Migrate
- The main content is found and turned into Markdown: headings, lists, links and code keep their meaning
- Consent banners, navigation and scripts are left behind
- A link to a heading on the same page becomes a full URL, so it still works out of context
- A page that renders in JavaScript and leaves little text is read from the structured data it ships with
Conversion runs without a model, so the output is deterministic.
A page goes through six fixed steps on its way to you. None of them asks a model anything.
- 01FetchThe public URL
- 02DetectHTML, PDF, Word or text
- 03ClearConsent banners cut
- 04ExtractMain content to Markdown
- 05TidyStray characters removed
- 06ReturnOne field of content
The same page, the same Markdown
Rules do not drift between calls, so a diff between two reads means the page changed.
Every sentence is the page's own
Nothing is paraphrased or filled in, which matters when the text becomes a citation.
A fraction of a cent
A read is one metered call at €0.003, not a model pass over every page you fetch.
For a summary, send the Markdown to a model you mapped.
That is an ordinary gateway call. It runs on your provider key at your provider's price and does not use credits.
GET /reader
content: Markdown
€0.003 from credits
POST /v1/chat/completions
your mapped model
€0 from nemu
Index a docs site for the chat to search first.
Point an index at a documentation page. The reader fetches it and every page it links to on the same site, a model you chose writes a short summary of each, and the assistant searches that index before it searches the web.
- Reach
- The start page and the pages it links to directly, on the same site
- Size
- Up to 50 pages
- Summaries
- Written by a model you pick, on your own provider key
- Credits
- None. The summaries land on your provider's bill like any request
Priced per call, paid from the credits in your plan.
No separate subscription and no separate key. Each call takes its rate from the same balance that pays for the Computer, and a call that fails gives it back.
Page read
GET /reader
€0.003a page
Web search
POST /reader/search
€0.006a search
Deep search
POST /reader/deep-search
€0.05a run
Credits are granted for each billing period and do not roll over. Upgrades apply at once, credit included. Compare every plan
Read your first page in one request.
Starter includes €10 of credit each month. Create a gateway key in the console and paste this.
$ curl -G https://api.nemu.cc/reader --data-urlencode "url=https://example.com" -H "Authorization: Bearer $NEMU_KEY"