A minimal, automated engine that collects, validates, and serves public API data - all in one clean JSON.
api.json:
https://raw.githubusercontent.com/germanter/apiEngine/refs/heads/main/api.json
apiCmp.json:
https://raw.githubusercontent.com/germanter/apiEngine/refs/heads/main/apiCmp.json
API-Engine site:
https://api-engine.vercel.app/
API Engine is an open-source project built to solve a simple but real problem:
There is no fast, clean, and reliable way to explore modern public APIs in one place.
So this project does exactly that β it collects, validates, and serves API data in a structured format that works for both humans π€ and machines π€.
Instead of scattered API lists across blogs, outdated repos, or broken links:
- β You get a single source of truth
- β Automatically validated endpoints
- β Continuously updated dataset
- β Dual-format JSON optimized for different use cases
Readable, structured, and descriptive.
https://raw.githubusercontent.com/germanter/apiEngine/refs/heads/main/api.json
Compressed version of api.json for automation and performance.
https://raw.githubusercontent.com/germanter/apiEngine/refs/heads/main/apiCmp.json
- ~60KB β 20KB
- ~3x smaller
- Ideal for frontend apps, bots, and fast parsing
Temporary dataset before validation pipeline.
- Holds freshly scraped data
- Prevents bad data from reaching production
-
Python
httpxβ async requests / endpoint validationplaywrightβ scraping dynamic content
-
JSON β data storage & serving
-
GitHub Actions β automation (cron jobs)
The entire system is fully automated:
Scraper β Initial Validation β incoming.json
β Deep Validation β api.json
β URL Ping Check (async)
β Compression β apiCmp.json
β GitHub Actions β Daily Run
Or visually:
[Scrape]
β
[Validate (basic)]
β
[incoming.json]
β
[Validate (strict)]
β
[api.json]
β
[Ping URLs]
β
[Compress]
β
[apiCmp.json]
The engine prevents bad data from corrupting the dataset:
-
Basic validation
- JSON structure checks
- Required fields
-
Mid-level validation
- Duplicate detection
- Invalid payload filtering
-
Strict validation
- Ensures compatibility with
api.json
- Ensures compatibility with
Every API URL is checked using an async pinger.
| Status | Meaning |
|---|---|
ALIVE |
Endpoint responded successfully |
DEAD |
Error response received |
UNKNOWN |
Blocked or unreachable |
- Some APIs block automated requests β marked as
UNKNOWN - Some APIs return error codes but still work in browser
- The system avoids aggressive retries - no need to go rogue on 200+ endpoints
{
"name": "OpenAI API",
"desc": "Text, image, speech, embeddings models via REST API",
"url": "https://platform.openai.com/docs/api-reference",
"cost": "freemium",
"auth": true,
"category": "AI",
"status": "ALIVE"
}| Field | Description |
|---|---|
name |
API name |
desc |
Short description |
url |
Documentation / endpoint |
cost |
Pricing model |
auth |
true β requires API key / OAuth |
category |
API category |
status |
Health status from pinger |
Designed for speed and minimal payload size.
{
"n": "OpenAI API",
"d": "Text, image, speech, embeddings models via REST API",
"u": "https://platform.openai.com/docs/api-reference",
"m": "freemium",
"a": true,
"c": "AI",
"s": 1
}| Short | Full | Description |
|---|---|---|
n |
name | API name |
d |
desc | Description |
u |
url | Endpoint |
m |
cost | Pricing |
a |
auth | Auth required |
c |
category | Category |
s |
status | 1 / 0 / -1 |
| Value | Meaning |
|---|---|
1 |
ALIVE |
0 |
DEAD |
-1 |
UNKNOWN |
apiCmp.json always includes:
- A final item (
x) - Contains distinct category list
- Useful for frontend filtering
Everything runs through a single orchestrator:
Handles:
- Scraping
- Validation
- Pinging
- Compression
- Final output generation
- Runs on cron schedule (daily)
- Fully autonomous pipeline
- Zero manual intervention required
First real failure of the automated system.
-
Scraper failed due to a bad data entry
-
BUT:
incoming.jsonβ safeapi.jsonβ untouched
Validation layers successfully prevented dataset corruption.
This proved that:
- The system is resilient
- Bad data cannot poison production JSON
- Failures are contained and recoverable
- π API Engine Website https://api-engine.vercel.app/
- π Discover APIs quickly
- β‘ Build tools needing API datasets
- π€ Feed bots / automation systems
- π Frontend filtering via categories
- π§ͺ Testing API availability
- Some endpoints block automated requests
- Some APIs return misleading status codes
- Not all APIs guarantee long-term stability
This project is intentionally:
- Simple
- Fast
- Practical
No over-engineering. No unnecessary complexity.
Just:
Clean data. Reliable pipeline. Useful output.
Contributions are welcome - especially:
- Improving validation logic
- Enhancing scraper reliability
This project started from a simple frustration - and turned into a fully automated API discovery engine.
If youβve ever struggled to find reliable APIsβ¦
This is built for you.