Free public REST API powered by Cloudflare Workers edge network. Fast, rate-limited, and ready to use in seconds.
https://api-vlyzer.vlyzer.workers.dev
Everything you need in a free API, deployed at the edge for maximum performance.
Runs on Cloudflare Workers — 300+ data centers worldwide. Sub-50ms latency globally.
60 req/min free tier, 600 req/min with API key. Powered by Workers native rate limiting.
Upload and serve files with zero egress fees. Unlimited storage at the edge.
SQLite at the edge. Manage API keys, track usage, store metadata.
No credit card required. Free tier includes 100K requests/day, 10GB R2 storage.
Protect your endpoints with API keys. Env-based or database-backed, your choice.
Simple, consistent REST API with JSON responses.
/
API info, endpoints list, and rate limit details
/health
Health check — verifies R2 and D1 connectivity
/ping
Simple ping-pong response
/file/:key
Download a file from R2 storage
x-api-key header — Rate limited to 600 req/min
/upload
Upload a file to R2 (multipart/form-data, max 100MB)
/keys
List all API keys (paginated)
/keys
Create a new API key
/keys/:key
Revoke an API key
Test endpoints live — right from your browser.
Click "Send" to make a request...
Copy-paste ready code for your favorite language.
# Ping the API
curl https://api-vlyzer.vlyzer.workers.dev/ping
# Upload a file (requires API key)
curl -X POST https://api-vlyzer.vlyzer.workers.dev/upload \
-H "x-api-key: YOUR_API_KEY" \
-F "file=@photo.jpg"
# Download a file
curl https://api-vlyzer.vlyzer.workers.dev/file/uploads/1234-photo.jpg
# Create API key
curl -X POST https://api-vlyzer.vlyzer.workers.dev/keys \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name": "my-app"}'
const API = "https://api-vlyzer.vlyzer.workers.dev";
// Ping
const ping = await fetch(`${API}/ping`);
const data = await ping.json();
console.log(data.result.message); // "pong"
// Upload file
const formData = new FormData();
formData.append("file", fileInput.files[0]);
const upload = await fetch(`${API}/upload`, {
method: "POST",
headers: { "x-api-key": "YOUR_API_KEY" },
body: formData,
});
const { result } = await upload.json();
console.log(result.url); // "/file/uploads/..."
import requests
API = "https://api-vlyzer.vlyzer.workers.dev"
# Ping
ping = requests.get(f"{API}/ping")
print(ping.json()["result"]["message"]) # "pong"
# Upload file
with open("photo.jpg", "rb") as f:
upload = requests.post(
f"{API}/upload",
headers={"x-api-key": "YOUR_API_KEY"},
files={"file": f}
)
print(upload.json()["result"]["url"])
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
// Ping
resp, _ := http.Get("https://api-vlyzer.vlyzer.workers.dev/ping")
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}
{
"status": true,
"author": "@zerrloose",
"result": { ... },
"timestamp": "2026-08-17T...",
"response_time": "3ms"
}
{
"status": false,
"author": "@zerrloose",
"result": {
"error": "Rate limit exceeded",
"code": "RATE_LIMIT_EXCEEDED"
},
"timestamp": "2026-08-17T...",
"response_time": "1ms"
}