Mastodon Domain Blocks API
The domains a server publishes as blocked, with severity and its public reason.
GET /v1/mastodon/servers/{host}/blocks1 credit Failed requests are free
About this endpoint
GET /v1/mastodon/servers/mastodon.social/blocks returns data.blocks. Each entry has domain, digest (the SHA-256 of the domain), severity (suspend, silence or noop) and comment, the operator's public reason when one is given. Some servers partly star a domain in their public output; the response keeps it as published.
Fewer servers support this route than the other Mastodon routes. Many operators keep their domain blocks private, so the list is only available where the operator publishes it; elsewhere the route returns lookupStatus: unsupported or restricted, with the reason code saying which. The response does not page.
Mastodon Domain Blocks API FAQ
Why does this route return unsupported?
The operator has not published the domain block list, or the server software does not offer it. That is a normal outcome, reported as unsupported or restricted, not an error.
How many credits does it cost?
Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged: that field is the billing source of truth.
What do severity values mean?
suspend stops federation with the domain, silence limits its posts, and noop records a decision with no effect. The operator's comment explains the reason when one is public.
What is digest for?
digest is the SHA-256 of the domain, so you can match a block without storing the domain itself. It is null when the server does not send it.
Other Mastodon endpoints
- ProfileGET /v1/mastodon/profiles/{handle}
- Profile postsGET /v1/mastodon/profiles/{handle}/posts
- FollowersGET /v1/mastodon/profiles/{handle}/followers
- FollowingGET /v1/mastodon/profiles/{handle}/following
- CollectionsGET /v1/mastodon/profiles/{handle}/collections
- Profiles by idGET /v1/mastodon/profiles/batch
- PostGET /v1/mastodon/posts
- Post contextGET /v1/mastodon/posts/context