1
0
mirror of https://github.com/mastodon/documentation synced 2025-04-11 22:56:17 +02:00
trwnh 3628b6d434
Update content for 4.0 (part 1) (#991)
* add rules

* join date on profiles

* deprecate follow scope

* deprecate identity proofs

* familiar followers

* use definition lists instead of tables for defining activitypub properties

* reformat notifications page into markdown

* fix broken links to publicKey header

* Application website is now nullable

* update environment variables added and removed

* fix typo

* fix heading level

* min_id and max_id can be used at the same time (3.3)

* fix typo

* new tootctl options

* reformat tootctl page to use definition lists for params

* add rules and configuration to Instance

* fix typo

* refactor instance api page

* 3.3.0 duration on mutes

* 3.3.0 mute_expires_at

* improve section headings

* 3.4.0 resend email confirmation api

* 3.4.0 policy on push subscriptions

* 3.4.0 add details to account registration error

* refactor accounts api page and start adding relrefs to entity pages

* 3.4.0 accounts/lookup api

* add see also to accounts methods

* add more see-also links

* 3.5.0 appeal mod decisions

* 3.5.0 reformat reports and add category/rule_ids params

* document report entity and missing responses

* fix typos

* fix relrefs and url schema, add aliases to old urls

* add archetypes for new methods/entities

* update archetypes with see-also stubs

* clearer presentation of rate limits

* announcements api methods

* refactor apps methods

* refactor bookmarks methods + some anchors

* refactor conversations methods

* custom_emojis methods refactor

* anchors

* refactor directory methods

* refactor domain_blocks methods

* add see also to emails methods

* fix page relref shortcodes to specific methods + refactor endorsements methods

* min_id max_id

* refactor favourites methods

* refactor featured_tags methods

* refactor filters methods, make path params consistent, i18n required shortcode

* follow_requests methods

* lists methods

* markers methods

* forgot to add entity links

* media methods, also fix formatting of some json errors

* mutes methods, add more see-also links

* oembed methods

* preferences methods

* proofs methods

* push methods

* suggestions methods

* 3.5.0 add new trend types, fix formatting

* refactor streaming methods

* refactor oauth methods

* note that streaming api casts payload to string

* refactor search methods

* refactor polls methods

* remove unnecessary link

* reformat scheduled_statuses methods

* reformat timelines methods

* reformat statuses methods

* 3.5.0 editing statuses

* consistent use of array brackets in form data parameters

* update dev setup guide, add vagrant and clean up text

* add admin/accounts methods

* 3.6 role entity

* admin/accounts methods v2

* minor fix

* stub admin/reports methods

* document admin reports

* add 403 example to methods archetype

* cleanup entities for admin reports and add new attrs

* 3.6.0 domain allows methods + normalize admin entity namespace

* fix search-and-replace error

* add aliases for admin entities

* 3.6.0 canonical email blocks entity

* 3.5.0 admin/retention api

* 3.5.0 add admin::ip doc

* 3.5.0 admin/reports

* 3.6.0 admin/domain_allows

* 3.5.0 admin/dimensions

* 3.6.0 permissions and roles

* minor formatting fix

* add anchor link to headings

* checkpoint

* add update commands to dev env setup guide

* change mentions of v3.6 to v4.0

* tootctl now uses custom roles

* fix formatting

* v2 instance api

* update frontmatter, add better titles to pages

* minor wording change

* consistency

* add more aliases

* add placeholders and WIP notices

* explain link pagination and stub out todos

* switch baseURL to https

* 422 on reports with rules but category!=violation

* document bug fixes

* fix typo

* remove duplicate API method definition

* s/tootsuite/mastodon for github links

* remove unnecessary escaping

* s/tootsuite/mastodon in Entity archetype

* add missing nullable shortcode

* clarify oauth scope when requesting a user token

* api/v2/media now synchronous for images

* DISALLOW_UNAUTHENTICATED_API_ACCESS

* add undocumented env variables

* add instance domain blocks and extended description api

* add SMTP_ENABLE_STARTTLS

* add description to SMTP_ENABLE_STARTTLS

* take suggestions from open PRs

* normalize links and flavour language

* Fully document streaming API based on source code

* Add mention of MIME types

* bump to ruby 3.0.4

* clarify how to check on async media processing

* validation of replies_policy

* remove TODOs on admin account action

* EmailDomainBlocks

* IpBlocks

* Admin::DomainBlock

* remove TODOs

* following hashtags

* followed_tags

* remove reference to unused parameter

* add new oauth scopes for admin blocks and allows

* fix command signature for i18n-tasks normalize

* reformat code structure page

* document fixes for following tags (assume 4.0.3)

* Add warning about pre-4.0 hardcoded roles

* add note about case sensitivity

* remove use of 'simply' from docs

* remove reference to silencing

* add reference to IDN normalization for verified links

* add lang parameter
2022-11-20 07:34:38 +01:00

13 KiB

title description menu aliases
Instance Represents the software instance of Mastodon running on this domain.
docs
parent
entities
/entities/instance
/entities/Instance
/api/entities/instance
/api/entities/Instance

Example

{
  "domain": "mastodon.social",
  "title": "Mastodon",
  "version": "4.0.0rc1",
  "source_url": "https://github.com/mastodon/mastodon",
  "description": "The original server operated by the Mastodon gGmbH non-profit",
  "usage": {
    "users": {
      "active_month": 123122
    }
  },
  "thumbnail": {
    "url": "https://files.mastodon.social/site_uploads/files/000/000/001/@1x/57c12f441d083cde.png",
    "blurhash": "UeKUpFxuo~R%0nW;WCnhF6RjaJt757oJodS$",
    "versions": {
      "@1x": "https://files.mastodon.social/site_uploads/files/000/000/001/@1x/57c12f441d083cde.png",
      "@2x": "https://files.mastodon.social/site_uploads/files/000/000/001/@2x/57c12f441d083cde.png"
    }
  },
  "languages": [
    "en"
  ],
  "configuration": {
    "urls": {
      "streaming": "wss://mastodon.social"
    },
    "accounts": {
      "max_featured_tags": 10
    },
    "statuses": {
      "max_characters": 500,
      "max_media_attachments": 4,
      "characters_reserved_per_url": 23
    },
    "media_attachments": {
      "supported_mime_types": [
        "image/jpeg",
        "image/png",
        "image/gif",
        "image/heic",
        "image/heif",
        "image/webp",
        "video/webm",
        "video/mp4",
        "video/quicktime",
        "video/ogg",
        "audio/wave",
        "audio/wav",
        "audio/x-wav",
        "audio/x-pn-wave",
        "audio/vnd.wave",
        "audio/ogg",
        "audio/vorbis",
        "audio/mpeg",
        "audio/mp3",
        "audio/webm",
        "audio/flac",
        "audio/aac",
        "audio/m4a",
        "audio/x-m4a",
        "audio/mp4",
        "audio/3gpp",
        "video/x-ms-asf"
      ],
      "image_size_limit": 10485760,
      "image_matrix_limit": 16777216,
      "video_size_limit": 41943040,
      "video_frame_rate_limit": 60,
      "video_matrix_limit": 2304000
    },
    "polls": {
      "max_options": 4,
      "max_characters_per_option": 50,
      "min_expiration": 300,
      "max_expiration": 2629746
    },
    "translation": {
      "enabled": true
    }
  },
  "registrations": {
    "enabled": false,
    "approval_required": false,
    "message": null
  },
  "contact": {
    "email": "staff@mastodon.social",
    "account": {
      "id": "1",
      "username": "Gargron",
      "acct": "Gargron",
      "display_name": "Eugen 💀",
      "locked": false,
      "bot": false,
      "discoverable": true,
      "group": false,
      "created_at": "2016-03-16T00:00:00.000Z",
      "note": "<p>Founder, CEO and lead developer <span class=\"h-card\"><a href=\"https://mastodon.social/@Mastodon\" class=\"u-url mention\">@<span>Mastodon</span></a></span>, Germany.</p>",
      "url": "https://mastodon.social/@Gargron",
      "avatar": "https://files.mastodon.social/accounts/avatars/000/000/001/original/dc4286ceb8fab734.jpg",
      "avatar_static": "https://files.mastodon.social/accounts/avatars/000/000/001/original/dc4286ceb8fab734.jpg",
      "header": "https://files.mastodon.social/accounts/headers/000/000/001/original/3b91c9965d00888b.jpeg",
      "header_static": "https://files.mastodon.social/accounts/headers/000/000/001/original/3b91c9965d00888b.jpeg",
      "followers_count": 133026,
      "following_count": 311,
      "statuses_count": 72605,
      "last_status_at": "2022-10-31",
      "noindex": false,
      "emojis": [],
      "fields": [
        {
          "name": "Patreon",
          "value": "<a href=\"https://www.patreon.com/mastodon\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\"><span class=\"invisible\">https://www.</span><span class=\"\">patreon.com/mastodon</span><span class=\"invisible\"></span></a>",
          "verified_at": null
        }
      ]
    }
  },
  "rules": [
    {
      "id": "1",
      "text": "Sexually explicit or violent media must be marked as sensitive when posting"
    },
    {
      "id": "2",
      "text": "No racism, sexism, homophobia, transphobia, xenophobia, or casteism"
    },
    {
      "id": "3",
      "text": "No incitement of violence or promotion of violent ideologies"
    },
    {
      "id": "4",
      "text": "No harassment, dogpiling or doxxing of other users"
    },
    {
      "id": "5",
      "text": "No content illegal in Germany"
    },
    {
      "id": "7",
      "text": "Do not share intentionally false or misleading information"
    }
  ]
}

Attributes

domain

Description: The domain name of the instance.
Type: String
Version history:
4.0.0 - added

title

Description: The title of the website.
Type: String
Version history:
4.0.0 - added

version

Description: The version of Mastodon installed on the instance.
Type: String
Version history:
4.0.0 - added

source_url

Description: The URL for the source code of the software running on this instance, in keeping with AGPL license requirements.
Type: String (URL)
Version history:
4.0.0 - added

description

Description: A short, plain-text description defined by the admin.
Type: String
Version history:
4.0.0 - added

usage

Description: Usage data for this instance.
Type: Hash
Version history:
4.0.0 - added

usage[users]

Description: Usage data related to users on this instance.
Type: Hash
Version history:
4.0.0 - added

usage[users][active_month]

Description: The number of active users in the past 4 weeks.
Type: Integer
Version history:
4.0.0 - added

thumbnail

Description: An image used to represent this instance.
Type: Hash
Version history:
4.0.0 - added

thumbnail[url]

Description: The URL for the thumbnail image.
Type: String (URL)
Version history:
4.0.0 - added

thumbnail[blurhash] {{}}

Description: A hash computed by the BlurHash algorithm, for generating colorful preview thumbnails when media has not been downloaded yet.
Type: String (Blurhash)
Version history:
4.0.0 - added

thumbnail[versions] {{}}

Description: Links to scaled resolution images, for high DPI screens.
Type: Hash
Version history:
4.0.0 - added

thumbnail[versions][@1x] {{}}

Description: The URL for the thumbnail image at 1x resolution.
Type: String (URL)
Version history:
4.0.0 - added

thumbnail[versions][@2x] {{}}

Description: The URL for the thumbnail image at 2x resolution.
Type: String (URL)
Version history:
4.0.0 - added

languages

Description: Primary languages of the website and its staff.
Type: Array of String (ISO 639-1 two-letter code)
Version history:
4.0.0 - added

configuration

Description: Configured values and limits for this website.
Type: Hash
Version history:
4.0.0 - added

configuration[urls]

Description: URLs of interest for clients apps.
Type: Hash
Version history:
4.0.0 - added

configuration[urls][streaming_api]

Description: The Websockets URL for connecting to the streaming API.
Type: String (URL)
Version history:
4.0.0 - added

configuration[accounts]

Description: Limits related to accounts.
Type: Hash
Version history:
4.0.0 - added

Description: The maximum number of featured tags allowed for each account.
Type: Integer
Version history:
4.0.0 - added

configuration[statuses]

Description: Limits related to authoring statuses.
Type: Hash
Version history:
4.0.0 - added

configuration[statuses][max_characters]

Description: The maximum number of allowed characters per status.
Type: Integer
Version history:
4.0.0 - added

configuration[statuses][max_media_attachments]

Description: The maximum number of media attachments that can be added to a status.
Type: Integer
Version history:
4.0.0 - added

configuration[statuses][characters_reserved_per_url]

Description: Each URL in a status will be assumed to be exactly this many characters.
Type: Integer
Version history:
4.0.0 - added

configuration[media_attachments]

Description: Hints for which attachments will be accepted.
Type: Hash
Version history:
4.0.0 - added

configuration[media_attachments][supported_mime_types]

Description: Contains MIME types that can be uploaded.
Type: Array of String
Version history:
4.0.0 - added

configuration[media_attachments][image_size_limit]

Description: The maximum size of any uploaded image, in bytes.
Type: Integer
Version history:
4.0.0 - added

configuration[media_attachments][image_matrix_limit]

Description: The maximum number of pixels (width times height) for image uploads.
Type: Integer
Version history:
4.0.0 - added

configuration[media_attachments][video_size_limit]

Description: The maximum size of any uploaded video, in bytes.
Type: Integer
Version history:
4.0.0 - added

configuration[media_attachments][video_frame_rate_limit]

Description: The maximum frame rate for any uploaded video.
Type: Integer
Version history:
4.0.0 - added

configuration[media_attachments][video_matrix_limit]

Description: The maximum number of pixels (width times height) for video uploads.
Type: Integer
Version history:
4.0.0 - added

configuration[polls]

Description: Limits related to polls.
Type: Hash
Version history:
4.0.0 - added

configuration[polls][max_options]

Description: Each poll is allowed to have up to this many options.
Type: Integer
Version history:
4.0.0 - added

configuration[polls][max_characters_per_option]

Description: Each poll option is allowed to have this many characters.
Type: Integer
Version history:
4.0.0 - added

configuration[polls][min_expiration]

Description: The shortest allowed poll duration, in seconds.
Type: Integer
Version history:
4.0.0 - added

configuration[polls][max_expiration]

Description: The longest allowed poll duration, in seconds.
Type: Integer
Version history:
4.0.0 - added

configuration[translation]

Description: Hints related to translation.
Type: Hash
Version history:
4.0.0 - added

configuration[translation][enabled]

Description: Whether the Translations API is available on this instance.
Type: Boolean
Version history:
4.0.0 - added

registrations

Description: Information about registering for this website.
Type: Hash
Version history:
4.0.0 - added

registrations[enabled]

Description: Whether registrations are enabled.
Type: Boolean
Version history:
4.0.0 - added

registrations[approval_required]

Description: Whether registrations require moderator approval.
Type: Boolean
Version history:
4.0.0 - added

registrations[message]

Description: A custom message to be shown when registrations are closed.
Type: {{}} String (HTML) or null
Version history:
4.0.0 - added

contact

Description: Hints related to contacting a representative of the website.
Type: Hash
Version history:
4.0.0 - added

contact[email]

Description: An email address that can be messaged regarding inquiries or issues.
Type: String (Email)
Version history:
4.0.0 - added

contact[account]

Description: An account that can be contacted natively over the network regarding inquiries or issues.
Type: [Account]({{< relref "entities/Account" >}})
Version history:
4.0.0 - added

rules

Description: An itemized list of rules for this website.
Type: Array of [Rule]({{< relref "entities/Rule" >}})
Version history:
4.0.0 - added

See also

{{< page-relref ref="methods/instance#v2" caption="GET /api/v2/instance" >}}

{{< caption-link url="https://github.com/mastodon/mastodon/blob/main/app/serializers/rest/instance_serializer.rb" caption="app/serializers/rest/instance_serializer.rb" >}}