Base URL

https://aibytes.syncsup.cc

All endpoints return application/json. No authentication, no rate limits, no API keys. CORS is enabled for all origins.

Endpoints

GET /api/articles List all approved articles
Query Parameters
categoryFilter by category slug: ai, ml, security, python, webdev, tools, langs, devops
limitMax results to return (default: 50, max: 200)
offsetPagination offset (default: 0)
sortdate (default) or votes
qSearch query — matches title, excerpt, tags
Example Request
GET /api/articles?category=ai&limit=10&sort=votes
Example Response
{
  "ok": true,
  "total": 142,
  "limit": 10,
  "offset": 0,
  "articles": [
    {
      "id": "a1b2c3d4",
      "title": "GPT-5 Achieves Human-Level Reasoning",
      "excerpt": "Researchers at OpenAI publish...",
      "url": "https://openai.com/blog/gpt-5",
      "source": "OpenAI Blog",
      "category": "ai",
      "tags": ["gpt-5", "llm", "openai"],
      "date": "2025-03-01T10:00:00Z",
      "votes": 342,
      "views": 12400
    },
    ...
  ]
}
GET /api/articles/:id Get a single article by ID
Example Request
GET /api/articles/a1b2c3d4
Example Response
{
  "ok": true,
  "article": {
    "id": "a1b2c3d4",
    "title": "...",
    "content": "Full article content...",
    ...
  }
}
GET /api/stats Directory statistics
Example Response
{
  "ok": true,
  "total_articles": 487,
  "categories": {
    "ai": 98,
    "ml": 76,
    "security": 112,
    "python": 67,
    "webdev": 89,
    "tools": 45
  },
  "sources": 25,
  "last_updated": "2025-03-01T12:00:00Z"
}
GET /rss RSS 2.0 feed of latest articles

Returns a valid RSS 2.0 XML feed. Subscribe in any feed reader. Supports optional ?category= filter.

Example
GET /rss
GET /rss?category=security

Usage Examples

JavaScript / Fetch
const res = await fetch('https://aibytes.syncsup.cc/api/articles?category=ai&limit=5');
const { articles } = await res.json();
articles.forEach(a => console.log(a.title));
Python / requests
import requests
r = requests.get('https://aibytes.syncsup.cc/api/articles', params={
    'category': 'security',
    'sort': 'votes',
    'limit': 20
})
for article in r.json()['articles']:
    print(article['title'])
cURL
curl "https://aibytes.syncsup.cc/api/articles?q=kubernetes&limit=5"

Notes

  • The API is served directly from static JSON — it is fast and has no rate limits
  • Data is updated every time the admin publishes from the backend panel
  • All times are UTC ISO 8601
  • The content field may be empty for some articles (excerpt-only)