The Dog API at https://dog.ceo/api serves random dog photos, organized by breed and sub-breed.
None — no key, no signup. Every example runs as-is.
Full reference: https://dog.ceo/dog-api/documentation/
A random image URL from any breed.
curl https://dog.ceo/api/breeds/image/random
{
"message": "https://images.dog.ceo/breeds/terrier-silky/n02097658_4952.jpg",
"status": "success"
}
Up to 50 at a time; the number goes on the end.
curl https://dog.ceo/api/breed/corgi/images/random/2
{
"message": [
"https://images.dog.ceo/breeds/corgi-cardigan/n02113186_13256.jpg",
"https://images.dog.ceo/breeds/corgi-cardigan/n02113186_9116.jpg"
],
"status": "success"
}
Each breed maps to its sub-breeds (empty if none).
curl https://dog.ceo/api/breeds/list/all
{
"message": {
"affenpinscher": [],
"african": [
"wild"
],
"airedale": [],
"akita": [],
"appenzeller": [],
"australian": [
"kelpie",
"shepherd"
],
"bakharwal": [
"indian"
],
"basenji": [],
"beagle": [],
"bluetick": [],
"borzoi": [],
"bouvier": [],
"boxer": [],
"brabancon": [],
"briard": []
},
"status": "success"
}