Skip to main content

Kaomojis Public API

61,000件以上の顔文字をJSONで配信する無料公開API。12言語対応、CORS有効、OpenAPI 3.0 仕様。

61,000+ 件 · 日本の顔文字文化を網羅 12 言語 · keywords / usage / note が全件ローカライズ OpenAPI 3.0 · Swagger UI / Redoc そのまま動作 無料・CORS有効 · 認証不要、ブラウザから直接呼べます

クイックスタート (30秒)

依存ゼロで試せます。以下を端末にコピー&ペーストしてください。

# random kaomoji
curl "https://kaomojis.jp/api/v1/kaomojis/random?locale=en"

# search
curl "https://kaomojis.jp/api/v1/kaomojis/search?q=love&locale=en"

# paginated list of cute kaomojis
curl "https://kaomojis.jp/api/v1/kaomojis?category=cute&page=1&limit=20&locale=en"

# full category catalog
curl "https://kaomojis.jp/api/v1/categories?type=emotion&locale=en"

JavaScript / TypeScript SDK

@kaomojis/client は Node.js 18+ / ブラウザ両対応。TypeScript 型同梱、依存ゼロ。

// after public release
npm install @kaomojis/client

import { KaomojisClient } from '@kaomojis/client';
const client = new KaomojisClient({ defaultLocale: 'en' });
const { data } = await client.random({ count: 3 });
console.log(data[0].text); // e.g. "(*´ω`*)"

Source: sdk/javascript/ · License: MIT

Chrome Extension (PoC)
Prefer a no-code client? The Kaomojis extension uses the same public API in a one-click popup.
Use the Chrome Extension →
Discord Bot (PoC)
Drop the same API into any Discord server via slash commands — self-hostable in five minutes.
Add to Discord →

デモアプリ

すぐ動く最小実装を3種類用意しました。コピーしてカスタマイズしてください。

Browser (vanilla JS)

Random generator widget, drop-in HTML file.

research/phase558_demo_random.html

Node.js CLI

node demo.js random|search|categories|id

research/phase558_demo_cli.js

Discord bot

discord.js skeleton with 3 slash commands.

research/phase558_demo_discord_bot.js

エンドポイント一覧

全エンドポイントは GET / CORS `*` / JSON で応答します。

Method Path Description
GET /api/v1/kaomojis List kaomojis (paginated, filterable)
GET /api/v1/kaomojis/:id Get a kaomoji by numeric id
GET /api/v1/kaomojis/random Random kaomoji(s) (up to 10)
GET /api/v1/kaomojis/search Keyword search ranked by relevance
GET /api/v1/random Shorthand alias for /kaomojis/random
GET /api/v1/search Shorthand alias for /kaomojis/search
GET /api/v1/categories List categories with kaomoji counts
GET /api/v1/openapi.json OpenAPI 3.0 specification

レート制限とキャッシュ

現在の目安は 1 IP あたり 60 req/min。商用利用も歓迎しますが、可能な限り Cache-Control を尊重してください。悪用を検知した場合は IP 単位でブロックします。

OpenAPI 3.0 仕様

/api/v1/openapi.json から完全な仕様を取得できます。Swagger UI や Stoplight / Redoc にそのまま読み込めます。

→ /api/v1/openapi.json

よくある質問

商用利用はできますか?

はい、MIT相当の条件で自由に利用できます。kaomojis.jp へのリンクバックは推奨しますが必須ではありません。

APIキーは必要ですか?

不要です。公開 API のため、現時点では認証なしで利用できます。

更新頻度は?

顔文字データは毎日〜週次で更新されます。Cache-Control ヘッダーを参照すれば効率的にキャッシュできます。

SDK は npm で公開されていますか?

現在は社内向けプレリリースです。正式公開後に @kaomojis/client として npm で配布予定です。

貢献・フィードバック

バグ報告や機能要望は [email protected] / GitHub Issues からどうぞ。使用事例のシェアも歓迎です。

最終更新: 2026-04-15