The API does not send ETag or Last-Modified headers yet, and it does not answer 304 Not Modified. An If-None-Match or If-Modified-Since header is ignored, and every request is answered in full and costs its units.
Until it does, spend fewer units this way:
- Keep what you fetched for at least as long as the route's freshness in the API reference. Asking again sooner returns the same answer and costs the same.
- Ask for less.
view=cardon search and Popular returns the lean row;limittakes only the page you need;basic=trueon a novel returns only its id and titles;include_chapters=falseon one arc's recap leaves out the chapter summaries. - Find changes from your library, not by fetching every novel:
GET /user-novels/bookmarks?new_chapters=truelists only the novels with chapters you have not read. See Keeping in sync.
When conditional requests arrive, this page and the site's changelog will say so; it will be an addition inside /api/v1, with nothing to change in a working client.