# Article capture (/docs/troubleshooting/article-capture)



## Capture outcomes [#capture-outcomes]

| Status            | Meaning                                                                                        |
| ----------------- | ---------------------------------------------------------------------------------------------- |
| **Saved**         | The page was added to the reading list you selected.                                           |
| **Queued**        | A direct EPUB job was accepted for the devices you selected.                                   |
| **Not attempted** | eReader Relay recognized an excluded or unavailable content type and did not save or queue it. |
| **Failed**        | An attempted job could not complete.                                                           |

## No readable article was available [#no-readable-article-was-available]

The general extractor needs a meaningful article body in the initial HTML response. A page can fail when it is primarily an application shell, requires client-side JavaScript, blocks automated retrieval, redirects to a sign-in page, or returns an incomplete document.

Try opening the canonical article URL, confirm it works in a private browser window, and retry. If it still fails, report the site and the reason code shown by eReader Relay. Do not send credentials, private page content, or session cookies.

## Stable reason codes [#stable-reason-codes]

| Reason code        | What it means                                                | What to do                                                          |
| ------------------ | ------------------------------------------------------------ | ------------------------------------------------------------------- |
| `blocked-redirect` | A redirect left the set of safe public destinations          | Use the canonical public article URL; do not bypass the block       |
| `fetch-failed`     | The public page could not be retrieved                       | Retry once, then check the detailed cause below                     |
| `invalid-article`  | The response did not contain enough readable article content | Use the dedicated article URL and confirm it works while signed out |
| `source-too-large` | The source exceeded safe processing limits                   | Look for a shorter canonical article or publisher feed              |

`fetch-failed` may include a more specific cause such as `http-status`, `network`, `redirect-limit`,
`redirect-location`, or `timeout`. Record both values when reporting the problem.

Reason codes are safe identifiers for support and telemetry. They do not contain the page body or
your authentication details. X-specific codes are documented in [X Articles](/docs/troubleshooting/x-articles).

## Future parser improvements [#future-parser-improvements]

A failed public page can be used to improve extraction, but parser changes must be reviewed and
tested. eReader Relay does not automatically give an AI agent access to production data or merge a
generated code change. Report a reproducible public URL and reason code so a fixture can be added and
the parser fix can go through the normal review process.
