Nekosia API

Entertainment API · Anime cat girl images · SFW & NSFW · No auth

TL;DR

Nekosia API serves a carefully curated collection of anime-style images, primarily featuring nekomimi (cat girl) characters. The API supports filtering by category (SFW/NSFW), specific tags, and image format. Each response includes the image URL, artist credit (Pixiv/DeviantArt source), tags, and image dimensions. A modern alternative to the older nekos.life API.

Quick start: https://api.nekosia.com/api/v1/images/catgirl/random

No API key needed — just make a request!

How to Use This API

1. Random Cat Girl Image

https://api.nekosia.com/api/v1/images/catgirl/random

Returns a random SFW cat girl image with metadata including artist and source.

2. Get Multiple Images

https://api.nekosia.com/api/v1/images/catgirl/random?count=5

Get up to 5 random cat girl images in a single request.

3. Filter by Tags

https://api.nekosia.com/api/v1/images/catgirl/random?tags=blonde,blue-eyes

Filter images by specific tags like hair color (blonde, brown, black, white), eye color (blue, green, red), or features (glasses, hat, tails).

4. JavaScript — Random Nekosia Display

async function getCatgirlImages(count = 1) {
  const resp = await fetch(
    `https://api.nekosia.com/api/v1/images/catgirl/random?count=${count}`
  );
  const data = await resp.json();
  return data.images || [];
}

async function showCatgirl() {
  const images = await getCatgirlImages(1);
  if (!images.length) return;
  
  const img = images[0];
  const container = document.getElementById('anime-container');
  if (container) {
    container.innerHTML = `
      <img src="${img.url}" alt="Cat girl" style="max-width:400px;border-radius:10px">
      <p>Artist: ${img.artist} &mdash; Tags: ${img.tags.join(', ')}</p>
    `;
  }
}

showCatgirl();
5. Python — Download by Tag
import requests

def get_catgirl_by_tag(tag, count=3):
    resp = requests.get(
        'https://api.nekosia.com/api/v1/images/catgirl/random',
        params={'count': count, 'tags': tag}
    )
    data = resp.json()
    
    for i, img in enumerate(data.get('images', [])):
        img_resp = requests.get(img['url'])
        filename = f'catgirl_{tag}_{i+1}.jpg'
        with open(filename, 'wb') as f:
            f.write(img_resp.content)
        print(f'Saved: {filename} (by {img.get("artist", "Unknown")})')

get_catgirl_by_tag('blonde')
Try random cat girl: https://api.nekosia.com/api/v1/images/catgirl/random

Frequently Asked Questions

Is this API SFW or NSFW?
The default /catgirl/random endpoint is SFW. There is a separate NSFW endpoint at /api/v1/images/catgirl/nsfw/random for adult content, clearly separated from safe content.
What tags are available?
Hundreds of tags including hair colors (blonde, brown, black, white, pink, blue, purple), eye colors, clothing (maid, school-uniform, swimsuit, kimono), features (glasses, cat-ears, tail, wings), and expressions (smile, blush, angry, sleepy).
How many images are in the collection?
Thousands of high-quality curated images sourced primarily from Pixiv and DeviantArt, with artist credits maintained.
Can I use the images commercially?
Each image retains its original artist copyright. For commercial use, you'd need to contact the individual artists. Personal/hobby projects are generally fine with attribution.
What file formats are supported?
JPEG and PNG images. The API returns the image URL — format depends on the source image.
Are there rate limits?
No strict rate limits documented, but be respectful. Cache images if you need to display them frequently.

API Details

API URL
https://api.nekosia.com/api/v1
Documentation
docs.nekosia.com
Category
Entertainment
Authentication
Not Required
Geographic Coverage
Global

What You Can Build