mastodon as the platform value in post payloads.
For a product-level overview, see the
Mastodon posting API page.
Connect
Start Mastodon OAuth with the account’s instance domain:mastodonInstance in POST /v1/connect/begin.
Kavenio owns the provider redirect_uri and uses /v1/connect/callback to
exchange the authorization code and store encrypted account credentials.
Use returnTo for the browser destination after Kavenio completes the
connection.
Kavenio registers a reusable OAuth app per Mastodon instance, callback URL, and
scope set. After the first registration, repeat connects for the same instance
reuse the cached app registration instead of calling the instance app
registration endpoint again. If an instance rate-limits app registration before
the cache exists, the API returns a provider rate-limit error with retry timing
when the instance supplies it.
Publishing
Kavenio supports Mastodon text posts, images, GIFs, videos, audio, replies, quote references on compatible instances, content warnings, sensitive-media flags, language, visibility, and polls. Use KavenioscheduledFor for scheduled publishing. Provider-native
scheduledAt is not accepted because Kavenio’s durable publish worker remains
the authoritative schedule and status source.
Quote posts require Mastodon 4.5 or API version 7 support and cannot be combined
with media or polls. Kavenio checks the connected instance before publishing a
quote. localOnly is not exposed as generic Mastodon functionality because it
is a server-fork extension rather than part of the standard Mastodon statuses
API.
Engagement
Connected Mastodon accounts can list notifications, dismiss notifications, list persisted notification, conversation, and status-reply engagement items synced by background jobs, list direct conversations, mark conversations read, fetch status context, read and reply to published-status comments through the generic post comments API, and run status actions such as favourite, unfavourite, boost, unboost, bookmark, unbookmark, mute, and unmute. The shared engagement inbox atGET /v1/inbox/engagement lists persisted
Mastodon notifications and status replies across connected Mastodon accounts.
Direct conversations are excluded unless includeDirect=true is supplied.
Limits
- Text, URL, media, MIME, byte, dimension, frame-rate, alt-description, and poll limits are read from the connected instance. Kavenio uses conservative Mastodon defaults when an instance does not return a value.
- Polls cannot be combined with media.
- Engagement APIs require the matching Mastodon OAuth scopes. Reconnect the account if an older connection is missing a required scope.