BYTETOOLS

joinmastodon Servers API

Free Mastodon server directory API with no key: browse vetted fediverse instances with user counts, languages, categories and open registration status. Tested.

No API key requiredCORS enabledHTTPSFree tier

Endpoint tested and returned HTTP 200 on 2026-08-20

What is the joinmastodon Servers API?

The joinmastodon servers API is a free, key-free directory of vetted Mastodon instances, listing each server's description, user count, supported languages, topic categories and whether registration is open.

Choosing a Mastodon instance is the main friction for new fediverse users, and this API powers the official server picker. It lists only servers that have agreed to the Mastodon Server Covenant, which sets minimum moderation and data commitments.

That vetting matters: the fediverse contains many instances with no moderation policy at all. Filtering to covenant signatories is a meaningful quality signal when recommending where someone should sign up.

Quick facts

Base URL
https://api.joinmastodon.org
Authentication
No API key required.
Rate limit
No published hard limit; fair use expected.
Pricing
Free, run by the Mastodon project.
CORS
Enabled — callable directly from browser JavaScript
Official docs
Read the docs

How to use the joinmastodon Servers API

Every request below was executed against the live API on 2026-08-20, and the response shown is the real body it returned — not an illustration.

1. List vetted Mastodon servers

GET https://api.joinmastodon.org/servers

curl
curl 'https://api.joinmastodon.org/servers'
JavaScript (fetch)
const res = await fetch("https://api.joinmastodon.org/servers");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://api.joinmastodon.org/servers", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200 (truncated)
[
  {
    "domain": "mastodon.social",
    "version": "4.7.0-rc.1",
    "description": "The original server of Mastodon, operated by Mastodon GmbH for the common good.\r\n\r\n",
    "languages": [
      "en"
    ],
    "region": "",
    "categories": [
      "general"
    ],
    "proxied_thumbnail": "https://proxy.joinmastodon.org/de816a7e564f2dfeca7582c83a7ad365a6a7d210/68747470733a2f2f66696c65732e6d6173746f646f6e2e736f6369616c2f736974655f75706c6f6164732f66696c65732f3030302f3030302f3030312f4031782f353763313266343431643038336364652e706e67",
    "blurhash": "UeKUpFxuo~R%0nW;WCnhF6RjaJt757oJodS$",
    "total_users": 921100,
    "last_week_users": 269722,
    "approval_required": false,
    "language": "en",
    "category": "general"
  },
  {
    "domain": "infosec.exchange",
    "version": "4.8.0-alpha.1+glitch",
    "description": "A Mastodon instance for info/cyber security-minded people.\r\n",
    "languages": [
      "en"
    ],
    "region": "north_america",
    "categories": [
      "tech"
    ],
    "proxied_thumbnail": "https://proxy.joinmastodon.org/3c980cda8c7d9653dc771565048a4a6efc2320db/68747470733a2f2f6d656469612e696e666f7365632e65786368616e67652f696e666f7365632e65786368616e67652f736974655f75706c6f6164732f66696c65732f3030302f3030302f3030372f4031782f626263366138396235346332343938612e706e67",
    "blurhash": "UE8NU%_NyDiwi_R*bbxa0K9FMxXSb^xai_E1",
    "total_users": 45935,
    "last_week_users": 10591,
    "approval_required": true,
    "language": "en",
    "category": "tech"
  },
  {
    "domain": "mstdn.social",
    "version": "4.6.4",
    "description": "A gene

Parameters

ParameterTypeRequiredDescription
serverspathOptionalAll vetted servers. servers
categoriespathOptionalTopic categories servers can belong to. categories
languagestringOptionalFilter by primary language. en
categorystringOptionalFilter by topic category. tech

Response fields

domainstring
Instance hostname.
versionstring
Mastodon software version running.
descriptionstring
Server description written by its operators.
languagesarray
Primary languages spoken there.
region / categoriesstring|array
Geographic region and topic categories.
total_usersinteger
Registered user count.
last_week_usersinteger
Active users in the past week — a better health signal.
approval_requiredboolean
Whether signup needs manual approval.

What you can build with the joinmastodon Servers API

  • Build a Mastodon instance picker for new users
  • Recommend servers by language or topic
  • Analyse fediverse growth and distribution
  • Filter to instances with open registration

Common errors and how to fix them

Only covenant signatories listed

This is a curated directory, not every instance.

Fix: Many instances exist that are not listed; this is deliberate quality filtering.

total_users overstates activity

It counts all registrations ever.

Fix: Use last_week_users for a realistic view of how alive a server is.

Registration may still be closed

approval_required is separate from being open.

Fix: Check both fields before telling a user they can sign up immediately.

joinmastodon Servers API — frequently asked questions

Is the Mastodon servers API free?

Yes, free with no API key. It is run by the Mastodon project and powers the official server picker.

Does it list every Mastodon instance?

No, only servers that have signed the Mastodon Server Covenant, which commits them to active moderation, daily backups and notice before shutdown. That vetting is the point.

Which user count should I show?

last_week_users is far more meaningful than total_users, which counts every account ever registered including long-abandoned ones.

How do I find a server for a specific interest?

Filter by `category` for topic and `language` for the primary language spoken there — the two things that most affect whether a newcomer feels at home.

Tools that pair with this API

joinmastodon Servers is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-20; always check the official documentation before relying on this API in production, as terms and limits can change.