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.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.
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.