Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Project516/BlogAPI/llms.txt

Use this file to discover all available pages before exploring further.

Blog API is a lightweight REST API built with FastAPI that fetches blog posts from project516.dev and makes them available for listing, searching, and retrieval. The service is stateless except for its cache, requires no authentication, and accepts requests from any origin.

How caching works

When you start the server, it reads /tmp/cache.json into memory. If that file does not yet exist, the in-memory cache starts empty. To populate or refresh the cache, you send a POST request to /blogs/cache. The server then fetches the blog source HTML from GitHub, parses it with BeautifulSoup, and writes the results back to /tmp/cache.json and into memory. All subsequent read requests are served from that in-memory store — no live network fetch occurs on each read.

Key features

List posts

Retrieve every cached blog post, each with its title, URL, and publish date.

Search

Find posts by keyword. The search matches against the post title, case-insensitively.

Latest post

Get only the most recent blog entry with a single call to /blogs/latest.

Cache refresh

Trigger a re-scrape of the blog source to pick up newly published posts.

Rate limits

All GET endpoints (/blogs, /blogs/latest, /blogs/search) are limited to 5 requests per minute per IP address. The POST /blogs/cache endpoint is limited to 1 request per minute. Exceeding these limits returns an HTTP 429 Too Many Requests response.

Authentication

Blog API does not require any authentication. You do not need an API key, token, or any other credential to call any endpoint.

CORS

Cross-origin resource sharing is enabled for all origins (*), all HTTP methods, and all headers. You can call the API directly from browser-based JavaScript without any proxy or server-side workaround.

Build docs developers (and LLMs) love