Art & Design — entry 008 of 20

EmojiHub

Verified Jul 2026

EmojiHub serves a database of 1,791 emoji sorted into categories and groups as plain JSON, with both the unicode character and an HTML code ready to embed for each entry. A live GET against the current gateway, emojihub.yurace.pro (the community-maintained successor to the original Heroku-hosted host named in its docs), returned genuine data with no key required and Access-Control-Allow-Origin: *, reconfirming both auth None and cors yes.

EmojiHub serves a database of 1,791 emoji — confirmed by a live GET this run against /all — as one static bulk dataset you can fetch whole, get one random entry from, or slice by category or group path segments, all keyless. A live GET this run against /random returned a single emoji record with both its HTML entity code and unicode codepoint(s).

emojiopen-datano-auth
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.
FormatsJSONResponses can be requested as JSON.

GreatAPIs Score

Score74out of 100
Authentication25/25No authentication required
Pricing20/20Free to use
Docs0/20No docs or spec available
Formats9/15Single response format
Freshness20/20Verified within 6 months

Embed this badge

Scored 74 on greatapis.com
<a href="https://greatapis.com/api/emojihub/"><img src="https://greatapis.com/badge/emojihub.svg" alt="Scored 74 on greatapis.com"></a>

Auth quickstart

  1. No API key, signup, or credit card required. A live GET this run returned genuine data while carrying access-control-allow-origin: * on an Origin-header probe — nothing to configure before the first call.
Stored keyNo key stored

Your key is stored only in this browser (localStorage) and sent directly to the API — never to greatapis.

Fetch a random emoji

GEThttps://emojihub.yurace.pro/api/random

200 application/json

{"name":"argentina","category":"flags","group":"flags","htmlCode":["&#127462;","&#127479;"],"unicode":["U+1F1E6","U+1F1F7"]}

Try it

Developer reference

Base URLhttps://emojihub.yurace.pro/api
Key endpoints
  • GET/random
  • GET/all
  • GET/all/category/{category}

Gotchas & limits

  • htmlCode and unicode are always arrays, never bare strings — confirmed live this run on both a single-codepoint entry and this multi-codepoint flag (two entries per array, one per regional-indicator codepoint pair). Code that treats either field as a scalar string will only render the first codepoint.
  • Route slugs are hyphenated but the data's own category/group values are space-separated — a live GET this run against /all showed entries like "category":"smileys and people", while the matching route is /all/category/smileys-and-people. Don't naively slugify a value pulled from the response body and expect it to round-trip.
  • A category slug and a group slug are not interchangeable, and using the wrong one 404s — animal-bird is a group, not a category: a live GET this run against /all/category/animal-bird returned HTTP 404 {"message":"emojis with this category do not exist"}, while /all/group/animal-bird returned HTTP 200 with real data. Check which kind of slug you have before picking the route.
  • /all returns the entire 1,791-entry dataset in one response with no pagination — confirmed by a live GET this run. Filter through /all/category/{category} or /all/group/{group} first rather than fetching everything and filtering client-side.