Mastodon
Mastodon is supported via the standard Mastodon API. OmniSocials posts to the specific instance and account that completed OAuth. Because Mastodon is decentralized, every account lives on a different server and is identified by its full [email protected] handle.
Channel ID: mastodon
Supported content types
| Type | Supported |
|---|---|
| Feed post (toot) | ✅ |
| Story | - |
| Reel | - |
Minimal example
Code
Platform-specific options
Mastodon has no required option fields. Fields that some instances support (content warnings, visibility) may be added as optional keys in the future.
Media requirements
Mastodon media limits vary by instance. OmniSocials validates against the default mastodon.social limits:
| Media | Requirement (default) |
|---|---|
| Image | JPEG, PNG, GIF, or WebP. Max 16 MB. Up to 4 per post. |
| Video | MP4, up to 60 seconds, max 99 MB |
Some instances are more permissive. Some are stricter. A post that passes OmniSocials validation may still be rejected by a custom instance with tighter limits. In that case the error body includes the instance's rejection message.
Character limit
Default is 500 characters (per the reference mastodon.social config). Custom instances can raise or lower this. OmniSocials validates against 500 by default.
Limitations
- Content warnings (CW) are not currently exposed through the API
- Per-post visibility (
public,unlisted,private,direct) defaults to the account's default. A field to override this is planned but not shipped. - Federation delays may mean the post is not immediately visible on other instances even after a successful publish response