Kaomojis Public API
61,000件以上の顔文字をJSONで配信する無料公開API。12言語対応、CORS有効、OpenAPI 3.0 仕様。
クイックスタート (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
デモアプリ
すぐ動く最小実装を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