For developers

The mssgs sticker API

Every sticker as JSON: packs, search by word or tag, and whole packs as ZIP. Free, with a key you make below. The sticker files are plain URLs that need no key, so an app can hotlink them.

Quick start

  1. Create a key with the form. It is shown once, so keep it somewhere safe.
  2. Send it with every call as Authorization: Bearer mst_… (or X-API-Key, or ?api_key=).
  3. Credit mssgs-stickers.com in your app or site. Every answer carries the line to use in credit.
curl "https://mssgs-stickers.com/api/v1/stickers?q=thanks&limit=5" \
  -H "Authorization: Bearer mst_…"

Create an API key

Only used if we need to reach you about your key. We never send newsletters.

Endpoints

CallAnswers with
GET /api/v1/packsEvery pack: slug, name, series, description, count, cover thumbnail, page and ZIP URL.
GET /api/v1/packs/{slug}One pack with all of its stickers.
GET /api/v1/packs/{slug}/downloadThe pack as a ZIP: each sticker's APNG, its WebP poster, and a CREDITS.txt. 60 an hour.
GET /api/v1/stickersStickers, filtered and paged: q (words), pack (slug), tag, limit (1–200, default 50), offset. The answer has total and a next URL.
GET /api/v1/stickers/{id}One sticker.
GET /api/v1/tagsEvery tag with its count, most used first.
GET /api/v1/meYour key: its project, when it was made, how many calls it has made.

A sticker

{
  "id": "funny-drama-cat-popcorn",
  "name": "Popcorn Witness",
  "pack": "drama-cat",
  "tags": ["drama", "popcorn", "watching", "gossip", "interested"],
  "description": "The cat eats popcorn while watching increasingly dramatic gossip.",
  "width": 320, "height": 320,
  "animated": true, "frames": 16, "fps": 16, "duration_ms": 3000,
  "animation": {
    "url": "https://mssgs-stickers.com/files/sticker-funny-drama-cat-popcorn-v5.apng",
    "type": "image/apng", "bytes": 304540, "sha256": "c41bc0b91f17dbd124d6ca5e07632123eda7b6bc6f7b47ea768f399d290f75aa"
  },
  "poster": { "url": "https://mssgs-stickers.com/files/sticker-funny-drama-cat-popcorn-v5.webp", "type": "image/webp", … },
  "thumbnail": { "url": "https://mssgs-stickers.com/thumbs/sticker-funny-drama-cat-popcorn-v5.webp", "type": "image/webp", "width": 160, "height": 160 },
  "page": "https://mssgs-stickers.com/stickers/funny-drama-cat-popcorn",
  "credit": "Stickers by mssgs-stickers.com"
}

The animation is an animated PNG with a transparent background; every browser plays it in a plain <img>, and anything that does not know APNG shows its first frame. The poster is a still WebP for reduced motion and previews.

Limits and caching

Errors

401 {"error": {"code": "missing_key" | "invalid_key", "message": "…"}}
404 {"error": {"code": "pack_not_found" | "sticker_not_found" | "not_found", …}}
429 {"error": {"code": "rate_limited", …}}

A key that is misused can be revoked; make a new one if yours stops working.