The content of this page has been auto-generated from an OpenAPI file.
Purrbot Image API 1.7.0¶
The Purrbot Image API is an open-source API to provide randomly selected images
or gifs based on the API path selected.
It was created as a replacement to
commonly known APIs like nekos.life or weeb.sh, with the goal of having more
control over the returned images for platforms like Discord.
Access is
given free of charge without any authorization required.
Servers¶
URL | Description |
---|---|
https://purrbot.site/api | Main API endpoint to use. |
SFW¶
GET /img/sfw/angry/gif¶
Get a random angry gif
Returns a randomly selected gif of someone being angry.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/angry/gif/angry_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/angry/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/angry",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/background/img¶
Get a random background image
Returns a randomly selected background image used in the bots welcome feature.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/background/color_black.png",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/background/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/background",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/bite/gif¶
Get a random bite gif
Returns a randomly selected bite gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/bite/gif/bite_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/bite/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/bite",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/blush/gif¶
Get a random blush gif
Returns a randomly selected blush gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/blush/gif/blush_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/blush/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/blush",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/comfy/gif¶
Get a random comfy gif
Returns a randomly selected comfy gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/comfy/gif/comfy_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/comfy/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/comfy",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/cry/gif¶
Get a random cry gif
Returns a randomly selected cry gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/cry/gif/cry_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/cry/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/cry",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/cuddle/gif¶
Get a random cuddle gif
Returns a randomly selected cuddle gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/cuddle/gif/cuddle_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/cuddle/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/cuddle",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/dance/gif¶
Get a random dance gif
Returns a randomly selected dance gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/dance/gif/dance_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/dance/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/dance",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/eevee/{type}¶
Get a random Gif or Image of Eevee
Returns a randomly selected Gif or Image of the Pokemon Eevee, depending on the
provided {type}
Input parameters
Parameter | In | Type | Nullable | Description |
---|---|---|---|---|
type |
path | string | No |
Type of media to return. Available values: gif, img |
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/eevee/gif/eevee_001.gif",
"error": false,
"time": 0
}
{
"link": "https://purrbot.site/img/sfw/eevee/img/eevee_001.jpg",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/eevee/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/eevee",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/fluff/gif¶
Get a random fluff gif
Returns a randomly selected fluff gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/fluff/gif/fluff_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/fluff/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/fluff",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/holo/img¶
Get a random holo image
Returns a randomly selected image from Holo of the anime "Spice and Wolf".
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/holo/img/holo_001.jpg",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/holo/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/holo",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/hug/gif¶
Get a random hug gif
Returns a randomly selected hug gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/hug/gif/hug_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/hug/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/hug",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/icon/img¶
Get a random icon image
Returns a randomly selected icon image used in the bots welcome feature.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/icon/img/icon_001.jpg",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/icon/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/icon",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/kiss/gif¶
Get a random kiss gif
Returns a randomly selected kiss gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/kiss/gif/kiss_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/kiss/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/kiss",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/kitsune/img¶
Get a random kitsune image
Returns a randomly selected kitsune image.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/kitsune/img/kitsune_001.jpg",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/kitsune/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/kitsune",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/lay/gif¶
Get a random gif of someone laying down
Returns a randomly selected gif of someone laying down/resting.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/lay/gif/lay_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/lay/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/lay",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/lick/gif¶
Get a random lick gif
Returns a randomly selected lick gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/lick/gif/lick_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/lick/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/lick",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/neko/{type}¶
Get a random Gif or Image of a Neko
Returns a randomly selected Gif or Image of a Neko (Cat girl), depending on the
provided {type}
Input parameters
Parameter | In | Type | Nullable | Description |
---|---|---|---|---|
type |
path | string | No |
Type of media to return. Available values: gif, img |
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/neko/gif/neko_001.gif",
"error": false,
"time": 0
}
{
"link": "https://purrbot.site/img/sfw/neko/img/neko_001.jpg",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/neko/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/neko",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/okami/img¶
Get a random okami image
Returns a randomly selected okami (Fox girl) image.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/okami/img/okami_001.jpg",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/okami/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/okami",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/pat/gif¶
Get a random pat gif
Returns a randomly selected pat gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/pat/gif/pat_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/pat/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/pat",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/poke/gif¶
Get a random poke gif
Returns a randomly selected poke gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/poke/gif/poke_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/poke/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/poke",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/pout/gif¶
Get a random pouting gif
Returns a randomly selected gif of someone pouting.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/pout/gif/pout_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/pout/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/pout",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/senko/img¶
Get a random senko image
Returns a randomly selected senko image.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/senko/img/_001.jpg",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/senko/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/senko",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/shiro/img¶
Get a random shiro image
Returns a randomly selected shiro image.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/shiro/img/shiro_001.jpg",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/shiro/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/shiro",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/slap/gif¶
Get a random slap gif
Returns a randomly selected slap gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/slap/gif/slap_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/slap/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/slap",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/smile/gif¶
Get a random smile gif
Returns a randomly selected smile gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/smile/gif/smile_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/smile/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/smile",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/tail/gif¶
Get a random tail wagging gif
Returns a randomly selected tail wagging gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/tail/gif/tail_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/tail/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/tail",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/sfw/tickle/gif¶
Get a random tickle gif
Returns a randomly selected tickle gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/sfw/tickle/gif/tickle_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/sfw/tickle/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/sfw/tickle",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /list/sfw/{path}¶
Get all available images of the path
Returns a list of all available images (as URLs) from the provided {path}
Input parameters
Parameter | In | Type | Nullable | Description |
---|---|---|---|---|
path |
path | string | No | The path to list all available images in. Allowed are all available `/api/img/sfw/` paths. |
Responses
200 Successful operation
{
"links": [
"https://purrbot.site/img/sfw/background/img/color_black.png",
"https://purrbot.site/img/sfw/background/img/color_blue.png",
"https://purrbot.site/img/sfw/background/img/color_blurple.png",
"https://purrbot.site/img/sfw/background/img/color_green.png",
"https://purrbot.site/img/sfw/background/img/color_grey.png",
"https://purrbot.site/img/sfw/background/img/color_red.png",
"https://purrbot.site/img/sfw/background/img/color_white.png",
"https://purrbot.site/img/sfw/background/img/gradient.png",
"https://purrbot.site/img/sfw/background/img/gradient_blue.png",
"https://purrbot.site/img/sfw/background/img/gradient_dark_red.png",
"https://purrbot.site/img/sfw/background/img/gradient_green.png",
"https://purrbot.site/img/sfw/background/img/gradient_orange.png",
"https://purrbot.site/img/sfw/background/img/gradient_red.png",
"https://purrbot.site/img/sfw/background/img/rainbow.png"
],
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"links": {
"type": "array",
"items": {
"type": "string"
}
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/list/sfw/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/list/sfw/",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
NSFW¶
GET /img/nsfw/anal/gif¶
Get a random anal sex gif
Returns a randomly selected anal sex gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/nsfw/anal/gif/anal_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/nsfw/anal/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/nsfw/anal",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/nsfw/blowjob/gif¶
Get a random blowjob gif
Returns a randomly selected blowjob gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/nsfw/blowjob/gif/blowjob_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/nsfw/blowjob/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/nsfw/blowjob",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/nsfw/cum/gif¶
Get a random cum gif
Returns a randomly selected cum gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/nsfw/cum/gif/cum_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/nsfw/cum/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/nsfw/cum",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/nsfw/fuck/gif¶
Get a random fuck gif
Returns a randomly selected fuck gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/nsfw/fuck/gif/_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/nsfw/fuck/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/nsfw/fuck",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/nsfw/neko/{type}¶
Get a random Gif or Image of a Neko
Returns a randomly selected Gif or Image of a Neko (Cat girl), depending on the
provided {type}
Input parameters
Parameter | In | Type | Nullable | Description |
---|---|---|---|---|
type |
path | string | No |
Type of media to return. Available values: gif, img |
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/nsfw/neko/gif/neko_001.gif",
"error": false,
"time": 0
}
{
"link": "https://purrbot.site/img/nsfw/neko/img/neko_001.jpg",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/nsfw/neko/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/nsfw/neko",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/nsfw/pussylick/gif¶
Get a random pussylick gif
Returns a randomly selected pussylick gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/nsfw/pussylick/gif/pussylick_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/nsfw/pussylick/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/nsfw/pussylick",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/nsfw/solo/gif¶
Get a random solo masturbation gif
Returns a randomly selected solo masturbation gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/nsfw/solo/gif/solo_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/nsfw/solo/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/nsfw/solo",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/nsfw/solo_male/gif¶
Get a random solo masturbation gif of a man
Returns a randomly selected solo masturbation gif of a man.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/nsfw/solo_male/gif/solo_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/nsfw/solo_male/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/nsfw/solo_male",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/nsfw/threesome_fff/gif¶
Get a random threesome (Females only) gif
Returns a randomly selected threesome (Females only) gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/nsfw/threesome_fff/gif/threesome_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/nsfw/threesome_fff/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/nsfw/threesome_fff",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/nsfw/threesome_ffm/gif¶
Get a random threesome (2 Females, 1 Male) gif
Returns a randomly selected threesome (2 Females, 1 Male) gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/nsfw/threesome_ffm/gif/threesome_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/nsfw/threesome_ffm/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/nsfw/threesome_ffm",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/nsfw/threesome_mmf/gif¶
Get a random threesome (2 Males, 1 Female) gif
Returns a randomly selected threesome (2 Males, 1 Female) gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/nsfw/threesome_mmf/gif/threesome_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/nsfw/threesome_mmf/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/nsfw/threesome_mmf",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/nsfw/yaoi/gif¶
Get a random yaoi (gay) gif
Returns a randomly selected yaoi (gay) gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/nsfw/yaoi/gif/yaoi_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/nsfw/yaoi/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/nsfw/yaoi",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /img/nsfw/yuri/gif¶
Get a random yuri (lesbian) gif
Returns a randomly selected yuri (lesbian) gif.
Responses
200 Successful operation
{
"link": "https://purrbot.site/img/nsfw/yuri/gif/yuri_001.gif",
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"link": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/nsfw/yuri/invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/nsfw/yuri",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
GET /list/nsfw/{path}¶
Get all available images of the path
Returns a list of all available images (as URLs) from the provided {path}
Input parameters
Parameter | In | Type | Nullable | Description |
---|---|---|---|---|
path |
path | string | No | The path to list all available images in. Allowed are all available `/api/img/nsfw/` paths. |
Responses
200 Successful operation
{
"links": [
"https://purrbot.site/img/nsfw/anal/gif/anal_001.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_002.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_003.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_004.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_005.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_006.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_007.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_008.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_009.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_010.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_011.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_012.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_013.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_014.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_015.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_016.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_017.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_018.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_019.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_020.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_021.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_022.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_023.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_024.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_025.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_026.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_027.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_028.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_029.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_030.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_031.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_032.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_033.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_034.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_035.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_036.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_037.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_038.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_039.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_040.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_041.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_042.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_043.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_044.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_045.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_046.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_047.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_048.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_049.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_050.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_051.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_052.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_053.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_054.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_055.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_056.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_057.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_058.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_059.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_060.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_061.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_062.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_063.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_064.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_065.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_066.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_067.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_068.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_069.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_070.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_071.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_072.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_073.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_074.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_075.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_076.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_077.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_078.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_079.gif",
"https://purrbot.site/img/nsfw/anal/gif/anal_080.gif"
],
"error": false,
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"error": {
"type": "boolean"
},
"links": {
"type": "array",
"items": {
"type": "string"
}
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
403 Invalid path provided
{
"details": {
"path": "/api/img/nsfw//invalid",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path is not valid.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
404 Path doesn't contain images
{
"details": {
"path": "/api/img/nsfw/",
"content-type": "application/json",
"user-agent": "Some_User-Agent/1.0"
},
"error": true,
"message": "The provided path does not contain any images.",
"time": 0
}
Schema of the response body
{
"type": "object",
"properties": {
"details": {
"$ref": "#/components/schemas/DetailsContent"
},
"error": {
"type": "boolean"
},
"message": {
"type": "string"
},
"time": {
"type": "integer",
"format": "int64"
}
}
}
Schemas¶
DetailsContent¶
Name | Type |
---|---|
content-type |
string |
path |
string |
user-agent |
string |
ImgFailure¶
Name | Type |
---|---|
details |
Schema(DetailsContent) |
error |
boolean |
message |
string |
time |
integer(int64) |
ImgSuccess¶
Name | Type |
---|---|
error |
boolean |
link |
string |
time |
integer(int64) |
ListSuccess¶
Name | Type |
---|---|
error |
boolean |
links |
Array<string> |
time |
integer(int64) |
Tags¶
Name | Description |
---|---|
sfw | Safe for Work endpoints |
nsfw | Not safe for Work endpoints |