RandomDog
A random dog media URL wrapped in JSON
One GET returns the file size and a direct URL to a random dog photo or video. No key, no pagination, just woof. The media can be jpg, png, gif, or mp4, so check the extension before embedding.
GET https://random.dog/woof.json
{
"fileSizeBytes": 3531445,
"url": "https://random.dog/870afc34-fce8-4e60-8ac9-be529738fa8e.JPG"
}curl "https://random.dog/woof.json"const res = await fetch("https://random.dog/woof.json");
const data = await res.json();
console.log(data);import requests
res = requests.get("https://random.dog/woof.json")
print(res.json())/woof.jsonPROBEDA random dog media URL wrapped in JSON
/woof.json?limit=5Paginated variant with limit parameter.
We probe a documented GET and expect 2xx JSON — full uptime and health score. Export includes every documented route below.
Stable. No schema drift observed since monitoring began — the response shape has not changed under our checks.
RandomDog: common questions
Is RandomDog free to use?
Yes — RandomDog is a free animals API. Free tier: Free — limits not published. Whether the free tier allows commercial use is unclear — check the provider docs.
Does RandomDog need an API key?
No — RandomDog needs no API key or signup. You can call it straight away; rate limits still apply (Unpublished).
Can I call RandomDog from the browser?
Yes — RandomDog returns CORS headers over HTTPS, so front-end code can fetch it directly with no backend proxy. Use the fetch snippet on this page, or hit "Run live" to try it now.
Is RandomDog up right now?
As of our last scheduled check, RandomDog is unmonitored. We re-probe it every sweep — the status badge and uptime chart above always show the latest.