Skip to main content
← moodmap.world

API

Access real-time global mood data. No API key required.

All endpoints return JSON. Rate limits are per IP address.

GET/api/moods/stats20 requests/min

Global and country-level mood distribution, trends, and demographics.

Parameters

rangestringoptional24h | 7d | 30d | all (default: 24h)

Response

{
  "global_distribution": [
    { "mood": "calm", "count": 42, "percentage": 28.5 },
    { "mood": "happy", "count": 35, "percentage": 23.8 }
  ],
  "daily_count": 147,
  "countries_data": [
    { "country": "US", "top_mood": "calm", "submission_count": 31 }
  ]
}
GET/api/moods/feed30 requests/min

Last 15 mood submissions in real-time.

Response

[
  {
    "id": "a1b2c3",
    "mood": "happy",
    "country": "US",
    "created_at": "2025-01-15T12:34:56Z"
  }
]
GET/api/moods/anomalies30 requests/min

Detect unusual mood shifts by country (compared to 7-day baseline).

Response

{
  "anomalies": [
    {
      "country": "JP",
      "mood": "anxious",
      "current_pct": 45.2,
      "baseline_pct": 22.1,
      "delta": 23.1
    }
  ]
}
GET/api/og60 requests/min

Generate a 1200x630 PNG mood card image for social sharing.

Parameters

countrystringoptionalISO 3166-1 alpha-2 code (e.g., US, GB)
moodstringoptionalUser mood for personalized vibe card

Response

Returns image/png

Embeddable Widget

Embed a live mood widget for any country on your site.

<iframe
  src="https://www.moodmap.world/embed/US"
  width="320"
  height="180"
  frameborder="0"
></iframe>

?theme=light:Light theme

?compact=true:Compact mode (120px height)

Replace US with any country code (GB, DE, JP, etc.)

Questions? Open an issue or reach out.

Back to Mood Map