Animals — entry 003 of 20
Cataas
Cataas ("Cat as a Service") is a free, open-source REST API that returns random cat images and animated GIFs, filterable by tag, with options to overlay custom text or crop a specific position. A JSON mode (?json=true) returns the image's metadata — id, tags, and direct URL — instead of the binary file itself. It's maintained on GitHub under the cataas org with no signup or pricing tier; a Donate link is the site's only monetization.
AuthenticationNone requiredCall it straight away — no key, no signup.
HTTPSSupportedTraffic is encrypted in transit.
CORSEnabledCallable directly from browser JavaScript.
PricingFreeNo paid tier — free for the documented use case.
FormatsJSON, JPEG, PNG, GIF, WebP, AVIFResponses can be requested as JSON or JPEG or PNG or GIF or WebP or AVIF.
GreatAPIs Score
Score100
Authentication25/25No authentication required
Pricing20/20Free to use
Docs20/20Machine-readable spec file bundled
Formats15/15Supports 6 response formats
Freshness20/20Verified within 6 months
Auth quickstart
- No key needed — call it now.
Stored keyNo key stored
Your key is stored only in this browser (localStorage) and sent directly to the API — never to greatapis.
Endpoints
Cats6
Cataas API
GET/cat
Parameters
| Name | In | Required | Type |
|---|---|---|---|
type | query | no | string |
filter | query | no | string |
fit | query | no | string |
position | query | no | string |
width | query | no | number |
height | query | no | number |
blur | query | no | number |
r | query | no | number |
g | query | no | number |
b | query | no | number |
brightness | query | no | number |
saturation | query | no | number |
hue | query | no | number |
lightness | query | no | number |
html | query | no | boolean |
json | query | no | boolean |
Responses
| Status | Description | Schema |
|---|---|---|
200 | Cat returned | — |
GET/cat/says/{text}
Parameters
| Name | In | Required | Type |
|---|---|---|---|
text | path | yes | string |
type | query | no | string |
filter | query | no | string |
fit | query | no | string |
position | query | no | string |
width | query | no | number |
height | query | no | number |
blur | query | no | number |
r | query | no | number |
g | query | no | number |
b | query | no | number |
brightness | query | no | number |
saturation | query | no | number |
hue | query | no | number |
lightness | query | no | number |
html | query | no | boolean |
json | query | no | boolean |
font | query | no | string |
fontSize | query | no | number |
fontColor | query | no | string |
fontBackground | query | no | string |
Responses
| Status | Description | Schema |
|---|---|---|
200 | Cat returned | — |
GET/cat/{id}
Parameters
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | string |
Responses
| Status | Description | Schema |
|---|---|---|
200 | Cat returned | — |
404 | Cat not found | — |
GET/cat/{id}/says/{text}
Parameters
| Name | In | Required | Type |
|---|---|---|---|
id | path | yes | string |
text | path | yes | string |
type | query | no | string |
filter | query | no | string |
fit | query | no | string |
position | query | no | string |
width | query | no | number |
height | query | no | number |
blur | query | no | number |
r | query | no | number |
g | query | no | number |
b | query | no | number |
brightness | query | no | number |
saturation | query | no | number |
hue | query | no | number |
lightness | query | no | number |
html | query | no | boolean |
json | query | no | boolean |
font | query | no | string |
fontSize | query | no | number |
fontColor | query | no | string |
fontBackground | query | no | string |
Responses
| Status | Description | Schema |
|---|---|---|
200 | Cat returned | — |
404 | Cat not found | — |
GET/cat/{tag}
Parameters
| Name | In | Required | Type |
|---|---|---|---|
tag | path | yes | string |
type | query | no | string |
filter | query | no | string |
fit | query | no | string |
position | query | no | string |
width | query | no | number |
height | query | no | number |
blur | query | no | number |
r | query | no | number |
g | query | no | number |
b | query | no | number |
brightness | query | no | number |
saturation | query | no | number |
hue | query | no | number |
lightness | query | no | number |
html | query | no | boolean |
json | query | no | boolean |
Responses
| Status | Description | Schema |
|---|---|---|
200 | Cat returned | — |
GET/cat/{tag}/says/{text}
Parameters
| Name | In | Required | Type |
|---|---|---|---|
tag | path | yes | string |
text | path | yes | string |
type | query | no | string |
filter | query | no | string |
fit | query | no | string |
position | query | no | string |
width | query | no | number |
height | query | no | number |
blur | query | no | number |
r | query | no | number |
g | query | no | number |
b | query | no | number |
brightness | query | no | number |
saturation | query | no | number |
hue | query | no | number |
lightness | query | no | number |
html | query | no | boolean |
json | query | no | boolean |
font | query | no | string |
fontSize | query | no | number |
fontColor | query | no | string |
fontBackground | query | no | string |
Responses
| Status | Description | Schema |
|---|---|---|
200 | Cat returned | — |
API3
Public API
GET/api/cats
Parameters
| Name | In | Required | Type |
|---|---|---|---|
limit | query | no | number |
skip | query | no | number |
tags | query | no | string |
Responses
| Status | Description | Schema |
|---|---|---|
200 | List of cats | — |
GET/api/count
Responses
| Status | Description | Schema |
|---|---|---|
200 | List of tags | — |
GET/api/tags
Responses
| Status | Description | Schema |
|---|---|---|
200 | List of tags | — |
Try it
Developer reference
Base URL
https://cataas.comKey endpoints
- GET/cat
- GET/cat/{tag}
- GET/api/tags
Availability
Uptime100%
Median latency615 ms
Last checkUp · 200 · Sep 2026
Changelog
Spec version1.0.0
Tracked paths9
- gained an OpenAPI spec