API operational
All platform guides
Platform guide

Mastodon

Requires an account on an HTTPS Mastodon instance that allows third-party applications.

available500 characters4 media items

Capabilities at a glance

AnalyticsNot availableCommentsSupportedMessagesNot availableRemote deletionSupportedToken refreshNot available
01

Connect Mastodon

Create the hosted connection URL on your server. The customer completes OAuth or the provider-specific credential form directly on PostGate.

Connection requestPostGate API
curl -X POST https://postgate.studio/api/profiles/connect \
  -H "Authorization: Bearer $POSTGATE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "platform": "mastodon",
  "profile_group_id": "grp_acme123",
  "return_url": "https://app.example.com/settings/social",
  "instance_url": "https://mastodon.social"
}'
02

Publish to Mastodon

Use the connected profile ID as the target. Provider-specific fields live under post.options.mastodon so the unified envelope remains stable.

Post envelopePostGate API
{
  "post": {
    "body": "Launch day.",
    "options": {
      "mastodon": {
        "visibility": "public"
      }
    }
  },
  "profiles": [
    "pro_mastodon123"
  ],
  "media": [
    "med_01JXYZ"
  ]
}
03

Media and content limits

PostGate validates the request at creation and again at delivery. Account-level provider limits can be narrower than the general contract.

Text500 characters
LinksAllowed
Mediaimages and video · Up to 4
Image sizeProvider default
Video sizeProvider default
Video durationUp to Provider default
04

Operational notes

These constraints affect approval, connection health, or delivery behavior for this provider.

  • Text and media limits vary by instance and are verified on connect.

Check live capability before showing the option
Call GET /api/platforms. A provider appears only when it is enabled and configured for the current workspace.
Next guideBuild the complete post envelopeCompareAll platform capabilities