...

Text file src/github.com/go-openapi/validate/fixtures/bugs/2649/swagger.yaml

Documentation: github.com/go-openapi/validate/fixtures/bugs/2649

     1basePath: /
     2definitions:
     3    EmojiUpdateType:
     4        title: EmojiUpdateType models an admin update action to take on a custom emoji.
     5        type: string
     6        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
     7    InstanceConfigurationEmojis:
     8        properties:
     9            emoji_size_limit:
    10                description: Max allowed emoji image size in bytes.
    11                example: 51200
    12                format: int64
    13                type: integer
    14                x-go-name: EmojiSizeLimit
    15        title: InstanceConfigurationEmojis models instance emoji config parameters.
    16        type: object
    17        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
    18    Link:
    19        description: See https://webfinger.net/
    20        properties:
    21            href:
    22                type: string
    23                x-go-name: Href
    24            rel:
    25                type: string
    26                x-go-name: Rel
    27            template:
    28                type: string
    29                x-go-name: Template
    30            type:
    31                type: string
    32                x-go-name: Type
    33        title: Link represents one 'link' in a slice of links returned from a lookup request.
    34        type: object
    35        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
    36    Mention:
    37        properties:
    38            acct:
    39                description: |-
    40                    The account URI as discovered via webfinger.
    41                    Equal to username for local users, or username@domain for remote users.
    42                example: some_user@example.org
    43                type: string
    44                x-go-name: Acct
    45            id:
    46                description: The ID of the mentioned account.
    47                example: 01FBYJHQWQZAVWFRK9PDYTKGMB
    48                type: string
    49                x-go-name: ID
    50            url:
    51                description: The web URL of the mentioned account's profile.
    52                example: https://example.org/@some_user
    53                type: string
    54                x-go-name: URL
    55            username:
    56                description: The username of the mentioned account.
    57                example: some_user
    58                type: string
    59                x-go-name: Username
    60        title: Mention represents a mention of another account.
    61        type: object
    62        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
    63    NodeInfoServices:
    64        properties:
    65            inbound:
    66                items:
    67                    type: string
    68                type: array
    69                x-go-name: Inbound
    70            outbound:
    71                items:
    72                    type: string
    73                type: array
    74                x-go-name: Outbound
    75        title: NodeInfoServices represents inbound and outbound services that this node offers connections to.
    76        type: object
    77        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
    78    NodeInfoSoftware:
    79        properties:
    80            name:
    81                example: gotosocial
    82                type: string
    83                x-go-name: Name
    84            version:
    85                example: 0.1.2 1234567
    86                type: string
    87                x-go-name: Version
    88        title: NodeInfoSoftware represents the name and version number of the software of this node.
    89        type: object
    90        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
    91    NodeInfoUsage:
    92        properties:
    93            localPosts:
    94                format: int64
    95                type: integer
    96                x-go-name: LocalPosts
    97            users:
    98                $ref: '#/definitions/NodeInfoUsers'
    99        title: NodeInfoUsage represents usage information about this server, such as number of users.
   100        type: object
   101        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   102    NodeInfoUsers:
   103        properties:
   104            total:
   105                format: int64
   106                type: integer
   107                x-go-name: Total
   108        title: NodeInfoUsers represents aggregate information about the users on the server.
   109        type: object
   110        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   111    Source:
   112        description: Returned as an additional entity when verifying and updated credentials, as an attribute of Account.
   113        properties:
   114            fields:
   115                description: Metadata about the account.
   116                items:
   117                    $ref: '#/definitions/field'
   118                type: array
   119                x-go-name: Fields
   120            follow_requests_count:
   121                description: The number of pending follow requests.
   122                format: int64
   123                type: integer
   124                x-go-name: FollowRequestsCount
   125            language:
   126                description: The default posting language for new statuses.
   127                type: string
   128                x-go-name: Language
   129            note:
   130                description: Profile bio.
   131                type: string
   132                x-go-name: Note
   133            privacy:
   134                description: |-
   135                    The default post privacy to be used for new statuses.
   136                    public = Public post
   137                    unlisted = Unlisted post
   138                    private = Followers-only post
   139                    direct = Direct post
   140                type: string
   141                x-go-name: Privacy
   142            sensitive:
   143                description: Whether new statuses should be marked sensitive by default.
   144                type: boolean
   145                x-go-name: Sensitive
   146            status_format:
   147                description: The default posting format for new statuses.
   148                type: string
   149                x-go-name: StatusFormat
   150        title: Source represents display or publishing preferences of user's own account.
   151        type: object
   152        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   153    account:
   154        description: The modelled account can be either a remote account, or one on this instance.
   155        properties:
   156            acct:
   157                description: |-
   158                    The account URI as discovered via webfinger.
   159                    Equal to username for local users, or username@domain for remote users.
   160                example: some_user@example.org
   161                type: string
   162                x-go-name: Acct
   163            avatar:
   164                description: Web location of the account's avatar.
   165                example: https://example.org/media/some_user/avatar/original/avatar.jpeg
   166                type: string
   167                x-go-name: Avatar
   168            avatar_static:
   169                description: |-
   170                    Web location of a static version of the account's avatar.
   171                    Only relevant when the account's main avatar is a video or a gif.
   172                example: https://example.org/media/some_user/avatar/static/avatar.png
   173                type: string
   174                x-go-name: AvatarStatic
   175            bot:
   176                description: Account identifies as a bot.
   177                type: boolean
   178                x-go-name: Bot
   179            created_at:
   180                description: When the account was created (ISO 8601 Datetime).
   181                example: "2021-07-30T09:20:25+00:00"
   182                type: string
   183                x-go-name: CreatedAt
   184            custom_css:
   185                description: CustomCSS to include when rendering this account's profile or statuses.
   186                type: string
   187                x-go-name: CustomCSS
   188            discoverable:
   189                description: Account has opted into discovery features.
   190                type: boolean
   191                x-go-name: Discoverable
   192            display_name:
   193                description: The account's display name.
   194                example: big jeff (he/him)
   195                type: string
   196                x-go-name: DisplayName
   197            emojis:
   198                description: Array of custom emojis used in this account's note or display name.
   199                items:
   200                    $ref: '#/definitions/emoji'
   201                type: array
   202                x-go-name: Emojis
   203            enable_rss:
   204                description: Account has enabled RSS feed.
   205                type: boolean
   206                x-go-name: EnableRSS
   207            fields:
   208                description: Additional metadata attached to this account's profile.
   209                items:
   210                    $ref: '#/definitions/field'
   211                type: array
   212                x-go-name: Fields
   213            followers_count:
   214                description: Number of accounts following this account, according to our instance.
   215                format: int64
   216                type: integer
   217                x-go-name: FollowersCount
   218            following_count:
   219                description: Number of account's followed by this account, according to our instance.
   220                format: int64
   221                type: integer
   222                x-go-name: FollowingCount
   223            header:
   224                description: Web location of the account's header image.
   225                example: https://example.org/media/some_user/header/original/header.jpeg
   226                type: string
   227                x-go-name: Header
   228            header_static:
   229                description: |-
   230                    Web location of a static version of the account's header.
   231                    Only relevant when the account's main header is a video or a gif.
   232                example: https://example.org/media/some_user/header/static/header.png
   233                type: string
   234                x-go-name: HeaderStatic
   235            id:
   236                description: The account id.
   237                example: 01FBVD42CQ3ZEEVMW180SBX03B
   238                type: string
   239                x-go-name: ID
   240            last_status_at:
   241                description: When the account's most recent status was posted (ISO 8601 Datetime).
   242                example: "2021-07-30T09:20:25+00:00"
   243                type: string
   244                x-go-name: LastStatusAt
   245            locked:
   246                description: Account manually approves follow requests.
   247                type: boolean
   248                x-go-name: Locked
   249            mute_expires_at:
   250                description: If this account has been muted, when will the mute expire (ISO 8601 Datetime).
   251                example: "2021-07-30T09:20:25+00:00"
   252                type: string
   253                x-go-name: MuteExpiresAt
   254            note:
   255                description: Bio/description of this account.
   256                type: string
   257                x-go-name: Note
   258            role:
   259                $ref: '#/definitions/accountRole'
   260            source:
   261                $ref: '#/definitions/Source'
   262            statuses_count:
   263                description: Number of statuses posted by this account, according to our instance.
   264                format: int64
   265                type: integer
   266                x-go-name: StatusesCount
   267            suspended:
   268                description: Account has been suspended by our instance.
   269                type: boolean
   270                x-go-name: Suspended
   271            url:
   272                description: Web location of the account's profile page.
   273                example: https://example.org/@some_user
   274                type: string
   275                x-go-name: URL
   276            username:
   277                description: The username of the account, not including domain.
   278                example: some_user
   279                type: string
   280                x-go-name: Username
   281        title: Account models a fediverse account.
   282        type: object
   283        x-go-name: Account
   284        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   285    accountRelationship:
   286        properties:
   287            blocked_by:
   288                description: This account is blocking you.
   289                type: boolean
   290                x-go-name: BlockedBy
   291            blocking:
   292                description: You are blocking this account.
   293                type: boolean
   294                x-go-name: Blocking
   295            domain_blocking:
   296                description: You are blocking this account's domain.
   297                type: boolean
   298                x-go-name: DomainBlocking
   299            endorsed:
   300                description: You are featuring this account on your profile.
   301                type: boolean
   302                x-go-name: Endorsed
   303            followed_by:
   304                description: This account follows you.
   305                type: boolean
   306                x-go-name: FollowedBy
   307            following:
   308                description: You are following this account.
   309                type: boolean
   310                x-go-name: Following
   311            id:
   312                description: The account id.
   313                example: 01FBW9XGEP7G6K88VY4S9MPE1R
   314                type: string
   315                x-go-name: ID
   316            muting:
   317                description: You are muting this account.
   318                type: boolean
   319                x-go-name: Muting
   320            muting_notifications:
   321                description: You are muting notifications from this account.
   322                type: boolean
   323                x-go-name: MutingNotifications
   324            note:
   325                description: Your note on this account.
   326                type: string
   327                x-go-name: Note
   328            notifying:
   329                description: You are seeing notifications when this account posts.
   330                type: boolean
   331                x-go-name: Notifying
   332            requested:
   333                description: You have requested to follow this account, and the request is pending.
   334                type: boolean
   335                x-go-name: Requested
   336            showing_reblogs:
   337                description: You are seeing reblogs/boosts from this account in your home timeline.
   338                type: boolean
   339                x-go-name: ShowingReblogs
   340        title: Relationship represents a relationship between accounts.
   341        type: object
   342        x-go-name: Relationship
   343        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   344    accountRole:
   345        properties:
   346            name:
   347                type: string
   348                x-go-name: Name
   349        title: AccountRole models the role of an account.
   350        type: object
   351        x-go-name: AccountRole
   352        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   353    adminAccountInfo:
   354        properties:
   355            account:
   356                $ref: '#/definitions/account'
   357            approved:
   358                description: Whether the account is currently approved.
   359                type: boolean
   360                x-go-name: Approved
   361            confirmed:
   362                description: Whether the account has confirmed their email address.
   363                type: boolean
   364                x-go-name: Confirmed
   365            created_at:
   366                description: When the account was first discovered. (ISO 8601 Datetime)
   367                example: "2021-07-30T09:20:25+00:00"
   368                type: string
   369                x-go-name: CreatedAt
   370            created_by_application_id:
   371                description: The ID of the application that created this account.
   372                type: string
   373                x-go-name: CreatedByApplicationID
   374            disabled:
   375                description: Whether the account is currently disabled.
   376                type: boolean
   377                x-go-name: Disabled
   378            domain:
   379                description: |-
   380                    The domain of the account.
   381                    Null for local accounts.
   382                example: example.org
   383                type: string
   384                x-go-name: Domain
   385            email:
   386                description: |-
   387                    The email address associated with the account.
   388                    Empty string for remote accounts or accounts with
   389                    no known email address.
   390                example: someone@somewhere.com
   391                type: string
   392                x-go-name: Email
   393            id:
   394                description: The ID of the account in the database.
   395                example: 01GQ4PHNT622DQ9X95XQX4KKNR
   396                type: string
   397                x-go-name: ID
   398            invite_request:
   399                description: |-
   400                    The reason given when requesting an invite.
   401                    Null if not known / remote account.
   402                example: Pleaaaaaaaaaaaaaaase!!
   403                type: string
   404                x-go-name: InviteRequest
   405            invited_by_account_id:
   406                description: The ID of the account that invited this user
   407                type: string
   408                x-go-name: InvitedByAccountID
   409            ip:
   410                description: |-
   411                    The IP address last used to login to this account.
   412                    Null if not known.
   413                example: 192.0.2.1
   414                type: string
   415                x-go-name: IP
   416            ips:
   417                description: |-
   418                    All known IP addresses associated with this account.
   419                    NOT IMPLEMENTED (will always be empty array).
   420                example: []
   421                items: {}
   422                type: array
   423                x-go-name: IPs
   424            locale:
   425                description: The locale of the account. (ISO 639 Part 1 two-letter language code)
   426                example: en
   427                type: string
   428                x-go-name: Locale
   429            role:
   430                $ref: '#/definitions/accountRole'
   431            silenced:
   432                description: Whether the account is currently silenced
   433                type: boolean
   434                x-go-name: Silenced
   435            suspended:
   436                description: Whether the account is currently suspended.
   437                type: boolean
   438                x-go-name: Suspended
   439            username:
   440                description: The username of the account.
   441                example: dril
   442                type: string
   443                x-go-name: Username
   444        title: AdminAccountInfo models the admin view of an account's details.
   445        type: object
   446        x-go-name: AdminAccountInfo
   447        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   448    adminEmojiCategory:
   449      description: Used for sorting custom emoji in the picker.
   450      example: blobcats
   451      type: string
   452      x-go-name: Category
   453    adminEmoji:
   454        properties:
   455            category:
   456                $ref: '#/definitions/adminEmojiCategory'
   457            content_type:
   458                description: The MIME content type of the emoji.
   459                example: image/png
   460                type: string
   461                x-go-name: ContentType
   462            disabled:
   463                description: True if this emoji has been disabled by an admin action.
   464                example: false
   465                type: boolean
   466                x-go-name: Disabled
   467            domain:
   468                description: The domain from which the emoji originated. Only defined for remote domains, otherwise key will not be set.
   469                example: example.org
   470                type: string
   471                x-go-name: Domain
   472            id:
   473                description: The ID of the emoji.
   474                example: 01GEM7SFDZ7GZNRXFVZ3X4E4N1
   475                type: string
   476                x-go-name: ID
   477            shortcode:
   478                description: The name of the custom emoji.
   479                example: blobcat_uwu
   480                type: string
   481                x-go-name: Shortcode
   482            static_url:
   483                description: A link to a static copy of the custom emoji.
   484                example: https://example.org/fileserver/emojis/blogcat_uwu.png
   485                type: string
   486                x-go-name: StaticURL
   487            total_file_size:
   488                description: The total file size taken up by the emoji in bytes, including static and animated versions.
   489                example: 69420
   490                format: int64
   491                type: integer
   492                x-go-name: TotalFileSize
   493            updated_at:
   494                description: Time when the emoji image was last updated.
   495                example: "2022-10-05T09:21:26.419Z"
   496                type: string
   497                x-go-name: UpdatedAt
   498            uri:
   499                description: The ActivityPub URI of the emoji.
   500                example: https://example.org/emojis/016T5Q3SQKBT337DAKVSKNXXW1
   501                type: string
   502                x-go-name: URI
   503            url:
   504                description: Web URL of the custom emoji.
   505                example: https://example.org/fileserver/emojis/blogcat_uwu.gif
   506                type: string
   507                x-go-name: URL
   508            visible_in_picker:
   509                description: Emoji is visible in the emoji picker of the instance.
   510                example: true
   511                type: boolean
   512                x-go-name: VisibleInPicker
   513        title: AdminEmoji models the admin view of a custom emoji.
   514        type: object
   515        x-go-name: AdminEmoji
   516        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   517    adminReport:
   518        properties:
   519            account:
   520                $ref: '#/definitions/adminAccountInfo'
   521            action_taken:
   522                description: Whether an action has been taken by an admin in response to this report.
   523                example: false
   524                type: boolean
   525                x-go-name: ActionTaken
   526            action_taken_at:
   527                description: |-
   528                    If an action was taken, at what time was this done? (ISO 8601 Datetime)
   529                    Will be null if not set / no action yet taken.
   530                example: "2021-07-30T09:20:25+00:00"
   531                type: string
   532                x-go-name: ActionTakenAt
   533            action_taken_by_account:
   534                $ref: '#/definitions/adminAccountInfo'
   535            action_taken_comment:
   536                description: |-
   537                    If an action was taken, what comment was made by the admin on the taken action?
   538                    Will be null if not set / no action yet taken.
   539                example: Account was suspended.
   540                type: string
   541                x-go-name: ActionTakenComment
   542            assigned_account:
   543                $ref: '#/definitions/adminAccountInfo'
   544            category:
   545                description: Under what category was this report created?
   546                example: spam
   547                type: string
   548                x-go-name: Category
   549            comment:
   550                description: |-
   551                    Comment submitted when the report was created.
   552                    Will be empty if no comment was submitted.
   553                example: This person has been harassing me.
   554                type: string
   555                x-go-name: Comment
   556            created_at:
   557                description: The date when this report was created (ISO 8601 Datetime).
   558                example: "2021-07-30T09:20:25+00:00"
   559                type: string
   560                x-go-name: CreatedAt
   561            forwarded:
   562                description: Bool to indicate that report should be federated to remote instance.
   563                example: true
   564                type: boolean
   565                x-go-name: Forwarded
   566            id:
   567                description: ID of the report.
   568                example: 01FBVD42CQ3ZEEVMW180SBX03B
   569                type: string
   570                x-go-name: ID
   571            rule_ids:
   572                description: |-
   573                    Array of rule IDs that were submitted along with this report.
   574                    NOT IMPLEMENTED, will always be empty array.
   575                items: {}
   576                type: array
   577                x-go-name: Rules
   578            statuses:
   579                description: |-
   580                    Array of  statuses that were submitted along with this report.
   581                    Will be empty if no status IDs were submitted with the report.
   582                items:
   583                    $ref: '#/definitions/status'
   584                type: array
   585                x-go-name: Statuses
   586            target_account:
   587                $ref: '#/definitions/adminAccountInfo'
   588            updated_at:
   589                description: Time of last action on this report (ISO 8601 Datetime).
   590                example: "2021-07-30T09:20:25+00:00"
   591                type: string
   592                x-go-name: UpdatedAt
   593        title: AdminReport models the admin view of a report.
   594        type: object
   595        x-go-name: AdminReport
   596        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   597    advancedVisibilityFlagsForm:
   598        description: |-
   599            AdvancedVisibilityFlagsForm allows a few more advanced flags to be set on new statuses, in addition
   600            to the standard mastodon-compatible ones.
   601        properties:
   602            boostable:
   603                description: This status can be boosted/reblogged.
   604                type: boolean
   605                x-go-name: Boostable
   606            federated:
   607                description: This status will be federated beyond the local timeline(s).
   608                type: boolean
   609                x-go-name: Federated
   610            likeable:
   611                description: This status can be liked/faved.
   612                type: boolean
   613                x-go-name: Likeable
   614            replyable:
   615                description: This status can be replied to.
   616                type: boolean
   617                x-go-name: Replyable
   618        type: object
   619        x-go-name: AdvancedVisibilityFlagsForm
   620        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   621    announcement:
   622        properties:
   623            all_day:
   624                description: Announcement doesn't have begin time and end time, but begin day and end day.
   625                type: boolean
   626                x-go-name: AllDay
   627            content:
   628                description: |-
   629                    The body of the announcement.
   630                    Should be HTML formatted.
   631                example: <p>This is an announcement. No malarky.</p>
   632                type: string
   633                x-go-name: Content
   634            emoji:
   635                description: Emojis used in this announcement.
   636                items:
   637                    $ref: '#/definitions/emoji'
   638                type: array
   639                x-go-name: Emojis
   640            ends_at:
   641                description: |-
   642                    When the announcement should stop being displayed (ISO 8601 Datetime).
   643                    If the announcement has no end time, this will be omitted or empty.
   644                example: "2021-07-30T09:20:25+00:00"
   645                type: string
   646                x-go-name: EndsAt
   647            id:
   648                description: The ID of the announcement.
   649                example: 01FC30T7X4TNCZK0TH90QYF3M4
   650                type: string
   651                x-go-name: ID
   652            mentions:
   653                description: Mentions this announcement contains.
   654                items:
   655                    $ref: '#/definitions/Mention'
   656                type: array
   657                x-go-name: Mentions
   658            published:
   659                description: |-
   660                    Announcement is 'published', ie., visible to users.
   661                    Announcements that are not published should be shown only to admins.
   662                type: boolean
   663                x-go-name: Published
   664            published_at:
   665                description: When the announcement was first published (ISO 8601 Datetime).
   666                example: "2021-07-30T09:20:25+00:00"
   667                type: string
   668                x-go-name: PublishedAt
   669            reactions:
   670                description: Reactions to this announcement.
   671                items:
   672                    $ref: '#/definitions/announcementReaction'
   673                type: array
   674                x-go-name: Reactions
   675            read:
   676                description: Requesting account has seen this announcement.
   677                type: boolean
   678                x-go-name: Read
   679            starts_at:
   680                description: |-
   681                    When the announcement should begin to be displayed (ISO 8601 Datetime).
   682                    If the announcement has no start time, this will be omitted or empty.
   683                example: "2021-07-30T09:20:25+00:00"
   684                type: string
   685                x-go-name: StartsAt
   686            statuses:
   687                description: Statuses contained in this announcement.
   688                items:
   689                    $ref: '#/definitions/status'
   690                type: array
   691                x-go-name: Statuses
   692            tags:
   693                description: Tags used in this announcement.
   694                items:
   695                    $ref: '#/definitions/tag'
   696                type: array
   697                x-go-name: Tags
   698            updated_at:
   699                description: When the announcement was last updated (ISO 8601 Datetime).
   700                example: "2021-07-30T09:20:25+00:00"
   701                type: string
   702                x-go-name: UpdatedAt
   703        title: Announcement models an admin announcement for the instance.
   704        type: object
   705        x-go-name: Announcement
   706        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   707    announcementReaction:
   708        properties:
   709            count:
   710                description: The total number of users who have added this reaction.
   711                example: 5
   712                format: int64
   713                type: integer
   714                x-go-name: Count
   715            me:
   716                description: This reaction belongs to the account viewing it.
   717                type: boolean
   718                x-go-name: Me
   719            name:
   720                description: The emoji used for the reaction. Either a unicode emoji, or a custom emoji's shortcode.
   721                example: blobcat_uwu
   722                type: string
   723                x-go-name: Name
   724            static_url:
   725                description: |-
   726                    Web link to a non-animated image of the custom emoji.
   727                    Empty for unicode emojis.
   728                example: https://example.org/custom_emojis/statuc/blobcat_uwu.png
   729                type: string
   730                x-go-name: StaticURL
   731            url:
   732                description: |-
   733                    Web link to the image of the custom emoji.
   734                    Empty for unicode emojis.
   735                example: https://example.org/custom_emojis/original/blobcat_uwu.png
   736                type: string
   737                x-go-name: URL
   738        title: AnnouncementReaction models a user reaction to an announcement.
   739        type: object
   740        x-go-name: AnnouncementReaction
   741        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   742    application:
   743        properties:
   744            client_id:
   745                description: Client ID associated with this application.
   746                type: string
   747                x-go-name: ClientID
   748            client_secret:
   749                description: Client secret associated with this application.
   750                type: string
   751                x-go-name: ClientSecret
   752            id:
   753                description: The ID of the application.
   754                example: 01FBVD42CQ3ZEEVMW180SBX03B
   755                type: string
   756                x-go-name: ID
   757            name:
   758                description: The name of the application.
   759                example: Tusky
   760                type: string
   761                x-go-name: Name
   762            redirect_uri:
   763                description: Post-authorization redirect URI for the application (OAuth2).
   764                example: https://example.org/callback?some=query
   765                type: string
   766                x-go-name: RedirectURI
   767            vapid_key:
   768                description: Push API key for this application.
   769                type: string
   770                x-go-name: VapidKey
   771            website:
   772                description: The website associated with the application (url)
   773                example: https://tusky.app
   774                type: string
   775                x-go-name: Website
   776        title: Application models an api application.
   777        type: object
   778        x-go-name: Application
   779        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   780    attachment:
   781        properties:
   782            blurhash:
   783                description: |-
   784                    A hash computed by the BlurHash algorithm, for generating colorful preview thumbnails when media has not been downloaded yet.
   785                    See https://github.com/woltapp/blurhash
   786                type: string
   787                x-go-name: Blurhash
   788            description:
   789                description: Alt text that describes what is in the media attachment.
   790                example: This is a picture of a kitten.
   791                type: string
   792                x-go-name: Description
   793            id:
   794                description: The ID of the attachment.
   795                example: 01FC31DZT1AYWDZ8XTCRWRBYRK
   796                type: string
   797                x-go-name: ID
   798            meta:
   799                $ref: '#/definitions/mediaMeta'
   800            preview_remote_url:
   801                description: |-
   802                    The location of a scaled-down preview of the attachment on the remote server.
   803                    Only defined for instances other than our own.
   804                example: https://some-other-server.org/attachments/small/ahhhhh.jpeg
   805                type: string
   806                x-go-name: PreviewRemoteURL
   807            preview_url:
   808                description: The location of a scaled-down preview of the attachment.
   809                example: https://example.org/fileserver/some_id/attachments/some_id/small/attachment.jpeg
   810                type: string
   811                x-go-name: PreviewURL
   812            remote_url:
   813                description: |-
   814                    The location of the full-size original attachment on the remote server.
   815                    Only defined for instances other than our own.
   816                example: https://some-other-server.org/attachments/original/ahhhhh.jpeg
   817                type: string
   818                x-go-name: RemoteURL
   819            text_url:
   820                description: |-
   821                    A shorter URL for the attachment.
   822                    In our case, we just give the URL again since we don't create smaller URLs.
   823                type: string
   824                x-go-name: TextURL
   825            type:
   826                description: The type of the attachment.
   827                example: image
   828                type: string
   829                x-go-name: Type
   830            url:
   831                description: The location of the original full-size attachment.
   832                example: https://example.org/fileserver/some_id/attachments/some_id/original/attachment.jpeg
   833                type: string
   834                x-go-name: URL
   835        title: Attachment models a media attachment.
   836        type: object
   837        x-go-name: Attachment
   838        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   839    card:
   840        properties:
   841            author_name:
   842                description: The author of the original resource.
   843                example: weewee@buzzfeed.com
   844                type: string
   845                x-go-name: AuthorName
   846            author_url:
   847                description: A link to the author of the original resource.
   848                example: https://buzzfeed.com/authors/weewee
   849                type: string
   850                x-go-name: AuthorURL
   851            blurhash:
   852                description: A hash computed by the BlurHash algorithm, for generating colorful preview thumbnails when media has not been downloaded yet.
   853                type: string
   854                x-go-name: Blurhash
   855            description:
   856                description: Description of preview.
   857                example: Is water wet? We're not sure. In this article, we ask an expert...
   858                type: string
   859                x-go-name: Description
   860            embed_url:
   861                description: Used for photo embeds, instead of custom html.
   862                type: string
   863                x-go-name: EmbedURL
   864            height:
   865                description: Height of preview, in pixels.
   866                format: int64
   867                type: integer
   868                x-go-name: Height
   869            html:
   870                description: HTML to be used for generating the preview card.
   871                type: string
   872                x-go-name: HTML
   873            image:
   874                description: Preview thumbnail.
   875                example: https://example.org/fileserver/preview/thumb.jpg
   876                type: string
   877                x-go-name: Image
   878            provider_name:
   879                description: The provider of the original resource.
   880                example: Buzzfeed
   881                type: string
   882                x-go-name: ProviderName
   883            provider_url:
   884                description: A link to the provider of the original resource.
   885                example: https://buzzfeed.com
   886                type: string
   887                x-go-name: ProviderURL
   888            title:
   889                description: Title of linked resource.
   890                example: Buzzfeed - Is Water Wet?
   891                type: string
   892                x-go-name: Title
   893            type:
   894                description: The type of the preview card.
   895                example: link
   896                type: string
   897                x-go-name: Type
   898            url:
   899                description: Location of linked resource.
   900                example: https://buzzfeed.com/some/fuckin/buzzfeed/article
   901                type: string
   902                x-go-name: URL
   903            width:
   904                description: Width of preview, in pixels.
   905                format: int64
   906                type: integer
   907                x-go-name: Width
   908        title: Card represents a rich preview card that is generated using OpenGraph tags from a URL.
   909        type: object
   910        x-go-name: Card
   911        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   912    domain:
   913        description: Domain represents a remote domain
   914        properties:
   915            domain:
   916                description: The hostname of the domain.
   917                example: example.org
   918                type: string
   919                x-go-name: Domain
   920            public_comment:
   921                description: If the domain is blocked, what's the publicly-stated reason for the block.
   922                example: they smell
   923                type: string
   924                x-go-name: PublicComment
   925            silenced_at:
   926                description: Time at which this domain was silenced. Key will not be present on open domains.
   927                example: "2021-07-30T09:20:25+00:00"
   928                type: string
   929                x-go-name: SilencedAt
   930            suspended_at:
   931                description: Time at which this domain was suspended. Key will not be present on open domains.
   932                example: "2021-07-30T09:20:25+00:00"
   933                type: string
   934                x-go-name: SuspendedAt
   935        type: object
   936        x-go-name: Domain
   937        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   938    domainBlock:
   939        description: DomainBlock represents a block on one domain
   940        properties:
   941            created_at:
   942                description: Time at which this block was created (ISO 8601 Datetime).
   943                example: "2021-07-30T09:20:25+00:00"
   944                type: string
   945                x-go-name: CreatedAt
   946            created_by:
   947                description: ID of the account that created this domain block.
   948                example: 01FBW2758ZB6PBR200YPDDJK4C
   949                type: string
   950                x-go-name: CreatedBy
   951            domain:
   952                description: The hostname of the domain.
   953                example: example.org
   954                type: string
   955                x-go-name: Domain
   956            id:
   957                description: The ID of the domain block.
   958                example: 01FBW21XJA09XYX51KV5JVBW0F
   959                readOnly: true
   960                type: string
   961                x-go-name: ID
   962            obfuscate:
   963                description: |-
   964                    Obfuscate the domain name when serving this domain block publicly.
   965                    A useful anti-harassment tool.
   966                example: false
   967                type: boolean
   968                x-go-name: Obfuscate
   969            private_comment:
   970                description: Private comment for this block, visible to our instance admins only.
   971                example: they are poopoo
   972                type: string
   973                x-go-name: PrivateComment
   974            public_comment:
   975                description: If the domain is blocked, what's the publicly-stated reason for the block.
   976                example: they smell
   977                type: string
   978                x-go-name: PublicComment
   979            silenced_at:
   980                description: Time at which this domain was silenced. Key will not be present on open domains.
   981                example: "2021-07-30T09:20:25+00:00"
   982                type: string
   983                x-go-name: SilencedAt
   984            subscription_id:
   985                description: The ID of the subscription that created/caused this domain block.
   986                example: 01FBW25TF5J67JW3HFHZCSD23K
   987                type: string
   988                x-go-name: SubscriptionID
   989            suspended_at:
   990                description: Time at which this domain was suspended. Key will not be present on open domains.
   991                example: "2021-07-30T09:20:25+00:00"
   992                type: string
   993                x-go-name: SuspendedAt
   994        type: object
   995        x-go-name: DomainBlock
   996        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
   997    domainBlockCreateRequest:
   998        properties:
   999            domain:
  1000                description: hostname/domain to block
  1001                type: string
  1002                x-go-name: Domain
  1003            domains:
  1004                description: A list of domains to block. Only used if import=true is specified.
  1005                x-go-name: Domains
  1006            obfuscate:
  1007                description: whether the domain should be obfuscated when being displayed publicly
  1008                type: boolean
  1009                x-go-name: Obfuscate
  1010            private_comment:
  1011                description: private comment for other admins on why the domain was blocked
  1012                type: string
  1013                x-go-name: PrivateComment
  1014            public_comment:
  1015                description: public comment on the reason for the domain block
  1016                type: string
  1017                x-go-name: PublicComment
  1018        title: DomainBlockCreateRequest is the form submitted as a POST to /api/v1/admin/domain_blocks to create a new block.
  1019        type: object
  1020        x-go-name: DomainBlockCreateRequest
  1021        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1022    emoji:
  1023        properties:
  1024            category:
  1025                description: Used for sorting custom emoji in the picker.
  1026                example: blobcats
  1027                type: string
  1028                x-go-name: Category
  1029            shortcode:
  1030                description: The name of the custom emoji.
  1031                example: blobcat_uwu
  1032                type: string
  1033                x-go-name: Shortcode
  1034            static_url:
  1035                description: A link to a static copy of the custom emoji.
  1036                example: https://example.org/fileserver/emojis/blogcat_uwu.png
  1037                type: string
  1038                x-go-name: StaticURL
  1039            url:
  1040                description: Web URL of the custom emoji.
  1041                example: https://example.org/fileserver/emojis/blogcat_uwu.gif
  1042                type: string
  1043                x-go-name: URL
  1044            visible_in_picker:
  1045                description: Emoji is visible in the emoji picker of the instance.
  1046                example: true
  1047                type: boolean
  1048                x-go-name: VisibleInPicker
  1049        title: Emoji represents a custom emoji.
  1050        type: object
  1051        x-go-name: Emoji
  1052        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1053    emojiCategory:
  1054        properties:
  1055            id:
  1056                description: The ID of the custom emoji category.
  1057                type: string
  1058                x-go-name: ID
  1059            name:
  1060                description: The name of the custom emoji category.
  1061                type: string
  1062                x-go-name: Name
  1063        title: EmojiCategory represents a custom emoji category.
  1064        type: object
  1065        x-go-name: EmojiCategory
  1066        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1067    emojiCreateRequest:
  1068        properties:
  1069            CategoryName:
  1070                description: |-
  1071                    Category in which to place the new emoji. Will be uncategorized by default.
  1072                    CategoryName length should not exceed 64 characters.
  1073                type: string
  1074            Image:
  1075                description: Image file to use for the emoji. Must be png or gif and no larger than 50kb.
  1076            Shortcode:
  1077                description: Desired shortcode for the emoji, without surrounding colons. This must be unique for the domain.
  1078                example: blobcat_uwu
  1079                type: string
  1080        title: EmojiCreateRequest represents a request to create a custom emoji made through the admin API.
  1081        type: object
  1082        x-go-name: EmojiCreateRequest
  1083        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1084    emojiUpdateRequest:
  1085        properties:
  1086            CategoryName:
  1087                description: Category in which to place the emoji.
  1088                type: string
  1089            Image:
  1090                description: |-
  1091                    Image file to use for the emoji.
  1092                    Must be png or gif and no larger than 50kb.
  1093            Shortcode:
  1094                description: Desired shortcode for the emoji, without surrounding colons. This must be unique for the domain.
  1095                example: blobcat_uwu
  1096                type: string
  1097            type:
  1098                $ref: '#/definitions/EmojiUpdateType'
  1099        title: EmojiUpdateRequest represents a request to update a custom emoji, made through the admin API.
  1100        type: object
  1101        x-go-name: EmojiUpdateRequest
  1102        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1103    field:
  1104        properties:
  1105            name:
  1106                description: The key/name of this field.
  1107                example: pronouns
  1108                type: string
  1109                x-go-name: Name
  1110            value:
  1111                description: The value of this field.
  1112                example: they/them
  1113                type: string
  1114                x-go-name: Value
  1115            verified_at:
  1116                description: If this field has been verified, when did this occur? (ISO 8601 Datetime).
  1117                example: "2021-07-30T09:20:25+00:00"
  1118                type: string
  1119                x-go-name: VerifiedAt
  1120        title: Field represents a name/value pair to display on an account's profile.
  1121        type: object
  1122        x-go-name: Field
  1123        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1124    instanceConfigurationAccounts:
  1125        properties:
  1126            allow_custom_css:
  1127                description: Whether or not accounts on this instance are allowed to upload custom CSS for profiles and statuses.
  1128                example: false
  1129                type: boolean
  1130                x-go-name: AllowCustomCSS
  1131            max_featured_tags:
  1132                description: |-
  1133                    The maximum number of featured tags allowed for each account.
  1134                    Currently not implemented, so this is hardcoded to 10.
  1135                format: int64
  1136                type: integer
  1137                x-go-name: MaxFeaturedTags
  1138        title: InstanceConfigurationAccounts models instance account config parameters.
  1139        type: object
  1140        x-go-name: InstanceConfigurationAccounts
  1141        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1142    instanceConfigurationMediaAttachments:
  1143        properties:
  1144            image_matrix_limit:
  1145                description: |-
  1146                    Max allowed image size in pixels as height*width.
  1147
  1148                    GtS doesn't set a limit on this, but for compatibility
  1149                    we give Mastodon's 4096x4096px value here.
  1150                example: 16777216
  1151                format: int64
  1152                type: integer
  1153                x-go-name: ImageMatrixLimit
  1154            image_size_limit:
  1155                description: Max allowed image size in bytes
  1156                example: 2097152
  1157                format: int64
  1158                type: integer
  1159                x-go-name: ImageSizeLimit
  1160            supported_mime_types:
  1161                description: List of mime types that it's possible to upload to this instance.
  1162                example:
  1163                    - image/jpeg
  1164                    - image/gif
  1165                items:
  1166                    type: string
  1167                type: array
  1168                x-go-name: SupportedMimeTypes
  1169            video_frame_rate_limit:
  1170                description: Max allowed video frame rate.
  1171                example: 60
  1172                format: int64
  1173                type: integer
  1174                x-go-name: VideoFrameRateLimit
  1175            video_matrix_limit:
  1176                description: |-
  1177                    Max allowed video size in pixels as height*width.
  1178
  1179                    GtS doesn't set a limit on this, but for compatibility
  1180                    we give Mastodon's 4096x4096px value here.
  1181                example: 16777216
  1182                format: int64
  1183                type: integer
  1184                x-go-name: VideoMatrixLimit
  1185            video_size_limit:
  1186                description: Max allowed video size in bytes
  1187                example: 10485760
  1188                format: int64
  1189                type: integer
  1190                x-go-name: VideoSizeLimit
  1191        title: InstanceConfigurationMediaAttachments models instance media attachment config parameters.
  1192        type: object
  1193        x-go-name: InstanceConfigurationMediaAttachments
  1194        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1195    instanceConfigurationPolls:
  1196        properties:
  1197            max_characters_per_option:
  1198                description: Number of characters allowed per option in the poll.
  1199                example: 50
  1200                format: int64
  1201                type: integer
  1202                x-go-name: MaxCharactersPerOption
  1203            max_expiration:
  1204                description: Maximum expiration time of the poll in seconds.
  1205                example: 2629746
  1206                format: int64
  1207                type: integer
  1208                x-go-name: MaxExpiration
  1209            max_options:
  1210                description: Number of options permitted in a poll on this instance.
  1211                example: 4
  1212                format: int64
  1213                type: integer
  1214                x-go-name: MaxOptions
  1215            min_expiration:
  1216                description: Minimum expiration time of the poll in seconds.
  1217                example: 300
  1218                format: int64
  1219                type: integer
  1220                x-go-name: MinExpiration
  1221        title: InstanceConfigurationPolls models instance poll config parameters.
  1222        type: object
  1223        x-go-name: InstanceConfigurationPolls
  1224        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1225    instanceConfigurationStatuses:
  1226        properties:
  1227            characters_reserved_per_url:
  1228                description: Amount of characters clients should assume a url takes up.
  1229                example: 25
  1230                format: int64
  1231                type: integer
  1232                x-go-name: CharactersReservedPerURL
  1233            max_characters:
  1234                description: Maximum allowed length of a post on this instance, in characters.
  1235                example: 5000
  1236                format: int64
  1237                type: integer
  1238                x-go-name: MaxCharacters
  1239            max_media_attachments:
  1240                description: Max number of attachments allowed on a status.
  1241                example: 4
  1242                format: int64
  1243                type: integer
  1244                x-go-name: MaxMediaAttachments
  1245        title: InstanceConfigurationStatuses models instance status config parameters.
  1246        type: object
  1247        x-go-name: InstanceConfigurationStatuses
  1248        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1249    instanceV1:
  1250        properties:
  1251            account_domain:
  1252                description: |-
  1253                    The domain of accounts on this instance.
  1254                    This will not necessarily be the same as
  1255                    simply the Host part of the URI.
  1256                example: example.org
  1257                type: string
  1258                x-go-name: AccountDomain
  1259            approval_required:
  1260                description: New account registrations require admin approval.
  1261                type: boolean
  1262                x-go-name: ApprovalRequired
  1263            configuration:
  1264                $ref: '#/definitions/instanceV1Configuration'
  1265            contact_account:
  1266                $ref: '#/definitions/account'
  1267            description:
  1268                description: |-
  1269                    Description of the instance.
  1270
  1271                    Should be HTML formatted, but might be plaintext.
  1272
  1273                    This should be displayed on the 'about' page for an instance.
  1274                type: string
  1275                x-go-name: Description
  1276            email:
  1277                description: An email address that may be used for inquiries.
  1278                example: admin@example.org
  1279                type: string
  1280                x-go-name: Email
  1281            invites_enabled:
  1282                description: Invites are enabled on this instance.
  1283                type: boolean
  1284                x-go-name: InvitesEnabled
  1285            languages:
  1286                description: Primary language of the instance.
  1287                example: en
  1288                items:
  1289                    type: string
  1290                type: array
  1291                x-go-name: Languages
  1292            max_toot_chars:
  1293                description: |-
  1294                    Maximum allowed length of a post on this instance, in characters.
  1295
  1296                    This is provided for compatibility with Tusky and other apps.
  1297                example: 5000
  1298                format: uint64
  1299                type: integer
  1300                x-go-name: MaxTootChars
  1301            registrations:
  1302                description: New account registrations are enabled on this instance.
  1303                type: boolean
  1304                x-go-name: Registrations
  1305            short_description:
  1306                description: |-
  1307                    A shorter description of the instance.
  1308
  1309                    Should be HTML formatted, but might be plaintext.
  1310
  1311                    This should be displayed on the instance splash/landing page.
  1312                type: string
  1313                x-go-name: ShortDescription
  1314            stats:
  1315                additionalProperties:
  1316                    format: int64
  1317                    type: integer
  1318                description: 'Statistics about the instance: number of posts, accounts, etc.'
  1319                type: object
  1320                x-go-name: Stats
  1321            thumbnail:
  1322                description: URL of the instance avatar/banner image.
  1323                example: https://example.org/files/instance/thumbnail.jpeg
  1324                type: string
  1325                x-go-name: Thumbnail
  1326            thumbnail_description:
  1327                description: Description of the instance thumbnail.
  1328                example: picture of a cute lil' friendly sloth
  1329                type: string
  1330                x-go-name: ThumbnailDescription
  1331            thumbnail_type:
  1332                description: MIME type of the instance thumbnail.
  1333                example: image/png
  1334                type: string
  1335                x-go-name: ThumbnailType
  1336            title:
  1337                description: The title of the instance.
  1338                example: GoToSocial Example Instance
  1339                type: string
  1340                x-go-name: Title
  1341            uri:
  1342                description: The URI of the instance.
  1343                example: https://gts.example.org
  1344                type: string
  1345                x-go-name: URI
  1346            urls:
  1347                $ref: '#/definitions/instanceV1URLs'
  1348            version:
  1349                description: |-
  1350                    The version of GoToSocial installed on the instance.
  1351
  1352                    This will contain at least a semantic version number.
  1353
  1354                    It may also contain, after a space, the short git commit ID of the running software.
  1355                example: 0.1.1 cb85f65
  1356                type: string
  1357                x-go-name: Version
  1358        title: InstanceV1 models information about this instance.
  1359        type: object
  1360        x-go-name: InstanceV1
  1361        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1362    instanceV1Configuration:
  1363        properties:
  1364            accounts:
  1365                $ref: '#/definitions/instanceConfigurationAccounts'
  1366            emojis:
  1367                $ref: '#/definitions/InstanceConfigurationEmojis'
  1368            media_attachments:
  1369                $ref: '#/definitions/instanceConfigurationMediaAttachments'
  1370            polls:
  1371                $ref: '#/definitions/instanceConfigurationPolls'
  1372            statuses:
  1373                $ref: '#/definitions/instanceConfigurationStatuses'
  1374        title: InstanceV1Configuration models instance configuration parameters.
  1375        type: object
  1376        x-go-name: InstanceV1Configuration
  1377        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1378    instanceV1URLs:
  1379        properties:
  1380            streaming_api:
  1381                description: Websockets address for status and notification streaming.
  1382                example: wss://example.org
  1383                type: string
  1384                x-go-name: StreamingAPI
  1385        title: InstanceV1URLs models instance-relevant URLs for client application consumption.
  1386        type: object
  1387        x-go-name: InstanceV1URLs
  1388        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1389    instanceV2:
  1390        properties:
  1391            account_domain:
  1392                description: |-
  1393                    The domain of accounts on this instance.
  1394                    This will not necessarily be the same as
  1395                    domain.
  1396                example: example.org
  1397                type: string
  1398                x-go-name: AccountDomain
  1399            configuration:
  1400                $ref: '#/definitions/instanceV2Configuration'
  1401            contact:
  1402                $ref: '#/definitions/instanceV2Contact'
  1403            description:
  1404                description: |-
  1405                    Description of the instance.
  1406
  1407                    Should be HTML formatted, but might be plaintext.
  1408
  1409                    This should be displayed on the 'about' page for an instance.
  1410                type: string
  1411                x-go-name: Description
  1412            domain:
  1413                description: The domain of the instance.
  1414                example: gts.example.org
  1415                type: string
  1416                x-go-name: Domain
  1417            languages:
  1418                description: Primary languages of the instance + moderators/admins.
  1419                example:
  1420                    - en
  1421                items:
  1422                    type: string
  1423                type: array
  1424                x-go-name: Languages
  1425            registrations:
  1426                $ref: '#/definitions/instanceV2Registrations'
  1427            rules:
  1428                description: |-
  1429                    An itemized list of rules for this website.
  1430                    Currently not implemented (will always be empty array).
  1431                items: {}
  1432                type: array
  1433                x-go-name: Rules
  1434            source_url:
  1435                description: The URL for the source code of the software running on this instance, in keeping with AGPL license requirements.
  1436                example: https://github.com/superseriousbusiness/gotosocial
  1437                type: string
  1438                x-go-name: SourceURL
  1439            thumbnail:
  1440                $ref: '#/definitions/instanceV2Thumbnail'
  1441            title:
  1442                description: The title of the instance.
  1443                example: GoToSocial Example Instance
  1444                type: string
  1445                x-go-name: Title
  1446            usage:
  1447                $ref: '#/definitions/instanceV2Usage'
  1448            version:
  1449                description: |-
  1450                    The version of GoToSocial installed on the instance.
  1451
  1452                    This will contain at least a semantic version number.
  1453
  1454                    It may also contain, after a space, the short git commit ID of the running software.
  1455                example: 0.1.1 cb85f65
  1456                type: string
  1457                x-go-name: Version
  1458        title: InstanceV2 models information about this instance.
  1459        type: object
  1460        x-go-name: InstanceV2
  1461        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1462    instanceV2Configuration:
  1463        properties:
  1464            accounts:
  1465                $ref: '#/definitions/instanceConfigurationAccounts'
  1466            emojis:
  1467                $ref: '#/definitions/InstanceConfigurationEmojis'
  1468            media_attachments:
  1469                $ref: '#/definitions/instanceConfigurationMediaAttachments'
  1470            polls:
  1471                $ref: '#/definitions/instanceConfigurationPolls'
  1472            statuses:
  1473                $ref: '#/definitions/instanceConfigurationStatuses'
  1474            translation:
  1475                $ref: '#/definitions/instanceV2ConfigurationTranslation'
  1476            urls:
  1477                $ref: '#/definitions/instanceV1URLs'
  1478        title: Configured values and limits for this instance.
  1479        type: object
  1480        x-go-name: InstanceV2Configuration
  1481        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1482    instanceV2ConfigurationTranslation:
  1483        properties:
  1484            enabled:
  1485                description: |-
  1486                    Whether the Translations API is available on this instance.
  1487                    Not implemented so this value is always false.
  1488                type: boolean
  1489                x-go-name: Enabled
  1490        title: Hints related to translation.
  1491        type: object
  1492        x-go-name: InstanceV2ConfigurationTranslation
  1493        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1494    instanceV2Contact:
  1495        properties:
  1496            account:
  1497                $ref: '#/definitions/account'
  1498            email:
  1499                description: |-
  1500                    An email address that can be messaged regarding inquiries or issues.
  1501                    Empty string if no email address set.
  1502                example: someone@example.org
  1503                type: string
  1504                x-go-name: Email
  1505        title: Hints related to contacting a representative of the instance.
  1506        type: object
  1507        x-go-name: InstanceV2Contact
  1508        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1509    instanceV2Registrations:
  1510        properties:
  1511            approval_required:
  1512                description: Whether registrations require moderator approval.
  1513                example: true
  1514                type: boolean
  1515                x-go-name: ApprovalRequired
  1516            enabled:
  1517                description: Whether registrations are enabled.
  1518                example: false
  1519                type: boolean
  1520                x-go-name: Enabled
  1521            message:
  1522                description: |-
  1523                    A custom message (html string) to be shown when registrations are closed.
  1524                    Value will be null if no message is set.
  1525                example: <p>Registrations are currently closed on example.org because of spam bots!</p>
  1526                type: string
  1527                x-go-name: Message
  1528        title: Information about registering for this instance.
  1529        type: object
  1530        x-go-name: InstanceV2Registrations
  1531        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1532    instanceV2Thumbnail:
  1533        properties:
  1534            blurhash:
  1535                description: |-
  1536                    A hash computed by the BlurHash algorithm, for generating colorful preview thumbnails when media has not been downloaded yet.
  1537                    Key/value not set if no blurhash available.
  1538                example: UeKUpFxuo~R%0nW;WCnhF6RjaJt757oJodS$
  1539                type: string
  1540                x-go-name: Blurhash
  1541            thumbnail_description:
  1542                description: |-
  1543                    Description of the instance thumbnail.
  1544                    Key/value not set if no description available.
  1545                example: picture of a cute lil' friendly sloth
  1546                type: string
  1547                x-go-name: Description
  1548            thumbnail_type:
  1549                description: |-
  1550                    MIME type of the instance thumbnail.
  1551                    Key/value not set if thumbnail image type unknown.
  1552                example: image/png
  1553                type: string
  1554                x-go-name: Type
  1555            url:
  1556                description: The URL for the thumbnail image.
  1557                example: https://example.org/fileserver/01BPSX2MKCRVMD4YN4D71G9CP5/attachment/original/01H88X0KQ2DFYYDSWYP93VDJZA.png
  1558                type: string
  1559                x-go-name: URL
  1560            versions:
  1561                $ref: '#/definitions/instanceV2ThumbnailVersions'
  1562        title: An image used to represent this instance.
  1563        type: object
  1564        x-go-name: InstanceV2Thumbnail
  1565        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1566    instanceV2ThumbnailVersions:
  1567        properties:
  1568            '@1x':
  1569                description: |-
  1570                    The URL for the thumbnail image at 1x resolution.
  1571                    Key/value not set if scaled versions not available.
  1572                type: string
  1573                x-go-name: Size1URL
  1574            '@2x':
  1575                description: |-
  1576                    The URL for the thumbnail image at 2x resolution.
  1577                    Key/value not set if scaled versions not available.
  1578                type: string
  1579                x-go-name: Size2URL
  1580        title: Links to scaled resolution images, for high DPI screens.
  1581        type: object
  1582        x-go-name: InstanceV2ThumbnailVersions
  1583        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1584    instanceV2Usage:
  1585        properties:
  1586            users:
  1587                $ref: '#/definitions/instanceV2Users'
  1588        title: Usage data for this instance.
  1589        type: object
  1590        x-go-name: InstanceV2Usage
  1591        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1592    instanceV2Users:
  1593        properties:
  1594            active_month:
  1595                description: |-
  1596                    The number of active users in the past 4 weeks.
  1597                    Currently not implemented: will always be 0.
  1598                example: 0
  1599                format: int64
  1600                type: integer
  1601                x-go-name: ActiveMonth
  1602        title: Usage data related to users on this instance.
  1603        type: object
  1604        x-go-name: InstanceV2Users
  1605        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1606    mediaDimensions:
  1607        properties:
  1608            aspect:
  1609                description: |-
  1610                    Aspect ratio of the media.
  1611                    Equal to width / height.
  1612                example: 1.777777778
  1613                format: float
  1614                type: number
  1615                x-go-name: Aspect
  1616            bitrate:
  1617                description: Bitrate of the media in bits per second.
  1618                example: 1000000
  1619                format: int64
  1620                type: integer
  1621                x-go-name: Bitrate
  1622            duration:
  1623                description: |-
  1624                    Duration of the media in seconds.
  1625                    Only set for video and audio.
  1626                example: 5.43
  1627                format: float
  1628                type: number
  1629                x-go-name: Duration
  1630            frame_rate:
  1631                description: |-
  1632                    Framerate of the media.
  1633                    Only set for video and gifs.
  1634                example: "30"
  1635                type: string
  1636                x-go-name: FrameRate
  1637            height:
  1638                description: |-
  1639                    Height of the media in pixels.
  1640                    Not set for audio.
  1641                example: 1080
  1642                format: int64
  1643                type: integer
  1644                x-go-name: Height
  1645            size:
  1646                description: |-
  1647                    Size of the media, in the format `[width]x[height]`.
  1648                    Not set for audio.
  1649                example: 1920x1080
  1650                type: string
  1651                x-go-name: Size
  1652            width:
  1653                description: |-
  1654                    Width of the media in pixels.
  1655                    Not set for audio.
  1656                example: 1920
  1657                format: int64
  1658                type: integer
  1659                x-go-name: Width
  1660        title: MediaDimensions models detailed properties of a piece of media.
  1661        type: object
  1662        x-go-name: MediaDimensions
  1663        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1664    mediaFocus:
  1665        properties:
  1666            x:
  1667                description: |-
  1668                    x position of the focus
  1669                    should be between -1 and 1
  1670                format: float
  1671                type: number
  1672                x-go-name: X
  1673            "y":
  1674                description: |-
  1675                    y position of the focus
  1676                    should be between -1 and 1
  1677                format: float
  1678                type: number
  1679                x-go-name: "Y"
  1680        title: MediaFocus models the focal point of a piece of media.
  1681        type: object
  1682        x-go-name: MediaFocus
  1683        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1684    mediaMeta:
  1685        description: This can be metadata about an image, an audio file, video, etc.
  1686        properties:
  1687            focus:
  1688                $ref: '#/definitions/mediaFocus'
  1689            original:
  1690                $ref: '#/definitions/mediaDimensions'
  1691            small:
  1692                $ref: '#/definitions/mediaDimensions'
  1693        title: MediaMeta models media metadata.
  1694        type: object
  1695        x-go-name: MediaMeta
  1696        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1697    nodeinfo:
  1698        description: 'See: https://nodeinfo.diaspora.software/schema.html'
  1699        properties:
  1700            metadata:
  1701                additionalProperties: {}
  1702                description: Free form key value pairs for software specific values. Clients should not rely on any specific key present.
  1703                type: object
  1704                x-go-name: Metadata
  1705            openRegistrations:
  1706                description: Whether this server allows open self-registration.
  1707                example: false
  1708                type: boolean
  1709                x-go-name: OpenRegistrations
  1710            protocols:
  1711                description: The protocols supported on this server.
  1712                items:
  1713                    type: string
  1714                type: array
  1715                x-go-name: Protocols
  1716            services:
  1717                $ref: '#/definitions/NodeInfoServices'
  1718            software:
  1719                $ref: '#/definitions/NodeInfoSoftware'
  1720            usage:
  1721                $ref: '#/definitions/NodeInfoUsage'
  1722            version:
  1723                description: The schema version
  1724                example: "2.0"
  1725                type: string
  1726                x-go-name: Version
  1727        title: Nodeinfo represents a version 2.1 or version 2.0 nodeinfo schema.
  1728        type: object
  1729        x-go-name: Nodeinfo
  1730        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1731    notification:
  1732        properties:
  1733            account:
  1734                $ref: '#/definitions/account'
  1735            created_at:
  1736                description: The timestamp of the notification (ISO 8601 Datetime)
  1737                type: string
  1738                x-go-name: CreatedAt
  1739            id:
  1740                description: The id of the notification in the database.
  1741                type: string
  1742                x-go-name: ID
  1743            status:
  1744                $ref: '#/definitions/status'
  1745            type:
  1746                description: |-
  1747                    The type of event that resulted in the notification.
  1748                    follow = Someone followed you
  1749                    follow_request = Someone requested to follow you
  1750                    mention = Someone mentioned you in their status
  1751                    reblog = Someone boosted one of your statuses
  1752                    favourite = Someone favourited one of your statuses
  1753                    poll = A poll you have voted in or created has ended
  1754                    status = Someone you enabled notifications for has posted a status
  1755                type: string
  1756                x-go-name: Type
  1757        title: Notification represents a notification of an event relevant to the user.
  1758        type: object
  1759        x-go-name: Notification
  1760        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1761    oauthToken:
  1762        properties:
  1763            access_token:
  1764                description: Access token used for authorization.
  1765                type: string
  1766                x-go-name: AccessToken
  1767            created_at:
  1768                description: When the OAuth token was generated (UNIX timestamp seconds).
  1769                example: 1627644520
  1770                format: int64
  1771                type: integer
  1772                x-go-name: CreatedAt
  1773            scope:
  1774                description: OAuth scopes granted by this token, space-separated.
  1775                example: read write admin
  1776                type: string
  1777                x-go-name: Scope
  1778            token_type:
  1779                description: OAuth token type. Will always be 'Bearer'.
  1780                example: bearer
  1781                type: string
  1782                x-go-name: TokenType
  1783        title: Token represents an OAuth token used for authenticating with the GoToSocial API and performing actions.
  1784        type: object
  1785        x-go-name: Token
  1786        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1787    poll:
  1788        properties:
  1789            emojis:
  1790                description: Custom emoji to be used for rendering poll options.
  1791                items:
  1792                    $ref: '#/definitions/emoji'
  1793                type: array
  1794                x-go-name: Emojis
  1795            expired:
  1796                description: Is the poll currently expired?
  1797                type: boolean
  1798                x-go-name: Expired
  1799            expires_at:
  1800                description: When the poll ends. (ISO 8601 Datetime), or null if the poll does not end
  1801                type: string
  1802                x-go-name: ExpiresAt
  1803            id:
  1804                description: The ID of the poll in the database.
  1805                example: 01FBYKMD1KBMJ0W6JF1YZ3VY5D
  1806                type: string
  1807                x-go-name: ID
  1808            multiple:
  1809                description: Does the poll allow multiple-choice answers?
  1810                type: boolean
  1811                x-go-name: Multiple
  1812            options:
  1813                description: Possible answers for the poll.
  1814                items:
  1815                    $ref: '#/definitions/pollOptions'
  1816                type: array
  1817                x-go-name: Options
  1818            own_votes:
  1819                description: When called with a user token, which options has the authorized user chosen? Contains an array of index values for options.
  1820                items:
  1821                    format: int64
  1822                    type: integer
  1823                type: array
  1824                x-go-name: OwnVotes
  1825            voted:
  1826                description: When called with a user token, has the authorized user voted?
  1827                type: boolean
  1828                x-go-name: Voted
  1829            voters_count:
  1830                description: How many unique accounts have voted on a multiple-choice poll. Null if multiple is false.
  1831                format: int64
  1832                type: integer
  1833                x-go-name: VotersCount
  1834            votes_count:
  1835                description: How many votes have been received.
  1836                format: int64
  1837                type: integer
  1838                x-go-name: VotesCount
  1839        title: Poll represents a poll attached to a status.
  1840        type: object
  1841        x-go-name: Poll
  1842        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1843    pollOptions:
  1844        properties:
  1845            title:
  1846                description: The text value of the poll option. String.
  1847                type: string
  1848                x-go-name: Title
  1849            votes_count:
  1850                description: |-
  1851                    The number of received votes for this option.
  1852                    Number, or null if results are not published yet.
  1853                format: int64
  1854                type: integer
  1855                x-go-name: VotesCount
  1856        title: PollOptions represents the current vote counts for different poll options.
  1857        type: object
  1858        x-go-name: PollOptions
  1859        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1860    report:
  1861        properties:
  1862            action_taken:
  1863                description: Whether an action has been taken by an admin in response to this report.
  1864                example: false
  1865                type: boolean
  1866                x-go-name: ActionTaken
  1867            action_taken_at:
  1868                description: |-
  1869                    If an action was taken, at what time was this done? (ISO 8601 Datetime)
  1870                    Will be null if not set / no action yet taken.
  1871                example: "2021-07-30T09:20:25+00:00"
  1872                type: string
  1873                x-go-name: ActionTakenAt
  1874            action_taken_comment:
  1875                description: |-
  1876                    If an action was taken, what comment was made by the admin on the taken action?
  1877                    Will be null if not set / no action yet taken.
  1878                example: Account was suspended.
  1879                type: string
  1880                x-go-name: ActionTakenComment
  1881            category:
  1882                description: Under what category was this report created?
  1883                example: spam
  1884                type: string
  1885                x-go-name: Category
  1886            comment:
  1887                description: |-
  1888                    Comment submitted when the report was created.
  1889                    Will be empty if no comment was submitted.
  1890                example: This person has been harassing me.
  1891                type: string
  1892                x-go-name: Comment
  1893            created_at:
  1894                description: The date when this report was created (ISO 8601 Datetime).
  1895                example: "2021-07-30T09:20:25+00:00"
  1896                type: string
  1897                x-go-name: CreatedAt
  1898            forwarded:
  1899                description: Bool to indicate that report should be federated to remote instance.
  1900                example: true
  1901                type: boolean
  1902                x-go-name: Forwarded
  1903            id:
  1904                description: ID of the report.
  1905                example: 01FBVD42CQ3ZEEVMW180SBX03B
  1906                type: string
  1907                x-go-name: ID
  1908            rule_ids:
  1909                description: |-
  1910                    Array of rule IDs that were submitted along with this report.
  1911                    Will be empty if no rule IDs were submitted.
  1912                example:
  1913                    - 1
  1914                    - 2
  1915                items:
  1916                    format: int64
  1917                    type: integer
  1918                type: array
  1919                x-go-name: RuleIDs
  1920            status_ids:
  1921                description: |-
  1922                    Array of IDs of statuses that were submitted along with this report.
  1923                    Will be empty if no status IDs were submitted.
  1924                example:
  1925                    - 01GPBN5YDY6JKBWE44H7YQBDCQ
  1926                    - 01GPBN65PDWSBPWVDD0SQCFFY3
  1927                items:
  1928                    type: string
  1929                type: array
  1930                x-go-name: StatusIDs
  1931            target_account:
  1932                $ref: '#/definitions/account'
  1933        title: Report models a moderation report submitted to the instance, either via the client API or via the federated API.
  1934        type: object
  1935        x-go-name: Report
  1936        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1937    searchResult:
  1938        properties:
  1939            accounts:
  1940                items:
  1941                    $ref: '#/definitions/account'
  1942                type: array
  1943                x-go-name: Accounts
  1944            hashtags:
  1945                items:
  1946                    $ref: '#/definitions/tag'
  1947                type: array
  1948                x-go-name: Hashtags
  1949            statuses:
  1950                items:
  1951                    $ref: '#/definitions/status'
  1952                type: array
  1953                x-go-name: Statuses
  1954        title: SearchResult models a search result.
  1955        type: object
  1956        x-go-name: SearchResult
  1957        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  1958    status:
  1959        properties:
  1960            account:
  1961                $ref: '#/definitions/account'
  1962            application:
  1963                $ref: '#/definitions/application'
  1964            bookmarked:
  1965                description: This status has been bookmarked by the account viewing it.
  1966                type: boolean
  1967                x-go-name: Bookmarked
  1968            card:
  1969                $ref: '#/definitions/card'
  1970            content:
  1971                description: The content of this status. Should be HTML, but might also be plaintext in some cases.
  1972                example: <p>Hey this is a status!</p>
  1973                type: string
  1974                x-go-name: Content
  1975            created_at:
  1976                description: The date when this status was created (ISO 8601 Datetime).
  1977                example: "2021-07-30T09:20:25+00:00"
  1978                type: string
  1979                x-go-name: CreatedAt
  1980            emojis:
  1981                description: Custom emoji to be used when rendering status content.
  1982                items:
  1983                    $ref: '#/definitions/emoji'
  1984                type: array
  1985                x-go-name: Emojis
  1986            favourited:
  1987                description: This status has been favourited by the account viewing it.
  1988                type: boolean
  1989                x-go-name: Favourited
  1990            favourites_count:
  1991                description: Number of favourites/likes this status has received, according to our instance.
  1992                format: int64
  1993                type: integer
  1994                x-go-name: FavouritesCount
  1995            id:
  1996                description: ID of the status.
  1997                example: 01FBVD42CQ3ZEEVMW180SBX03B
  1998                type: string
  1999                x-go-name: ID
  2000            in_reply_to_account_id:
  2001                description: ID of the account being replied to.
  2002                example: 01FBVD42CQ3ZEEVMW180SBX03B
  2003                type: string
  2004                x-go-name: InReplyToAccountID
  2005            in_reply_to_id:
  2006                description: ID of the status being replied to.
  2007                example: 01FBVD42CQ3ZEEVMW180SBX03B
  2008                type: string
  2009                x-go-name: InReplyToID
  2010            language:
  2011                description: |-
  2012                    Primary language of this status (ISO 639 Part 1 two-letter language code).
  2013                    Will be null if language is not known.
  2014                example: en
  2015                type: string
  2016                x-go-name: Language
  2017            media_attachments:
  2018                description: Media that is attached to this status.
  2019                items:
  2020                    $ref: '#/definitions/attachment'
  2021                type: array
  2022                x-go-name: MediaAttachments
  2023            mentions:
  2024                description: Mentions of users within the status content.
  2025                items:
  2026                    $ref: '#/definitions/Mention'
  2027                type: array
  2028                x-go-name: Mentions
  2029            muted:
  2030                description: Replies to this status have been muted by the account viewing it.
  2031                type: boolean
  2032                x-go-name: Muted
  2033            pinned:
  2034                description: This status has been pinned by the account viewing it (only relevant for your own statuses).
  2035                type: boolean
  2036                x-go-name: Pinned
  2037            poll:
  2038                $ref: '#/definitions/poll'
  2039            reblog:
  2040                $ref: '#/definitions/statusReblogged'
  2041            reblogged:
  2042                description: This status has been boosted/reblogged by the account viewing it.
  2043                type: boolean
  2044                x-go-name: Reblogged
  2045            reblogs_count:
  2046                description: Number of times this status has been boosted/reblogged, according to our instance.
  2047                format: int64
  2048                type: integer
  2049                x-go-name: ReblogsCount
  2050            replies_count:
  2051                description: Number of replies to this status, according to our instance.
  2052                format: int64
  2053                type: integer
  2054                x-go-name: RepliesCount
  2055            sensitive:
  2056                description: Status contains sensitive content.
  2057                example: false
  2058                type: boolean
  2059                x-go-name: Sensitive
  2060            spoiler_text:
  2061                description: Subject, summary, or content warning for the status.
  2062                example: warning nsfw
  2063                type: string
  2064                x-go-name: SpoilerText
  2065            tags:
  2066                description: Hashtags used within the status content.
  2067                items:
  2068                    $ref: '#/definitions/tag'
  2069                type: array
  2070                x-go-name: Tags
  2071            text:
  2072                description: |-
  2073                    Plain-text source of a status. Returned instead of content when status is deleted,
  2074                    so the user may redraft from the source text without the client having to reverse-engineer
  2075                    the original text from the HTML content.
  2076                type: string
  2077                x-go-name: Text
  2078            uri:
  2079                description: ActivityPub URI of the status. Equivalent to the status's activitypub ID.
  2080                example: https://example.org/users/some_user/statuses/01FBVD42CQ3ZEEVMW180SBX03B
  2081                type: string
  2082                x-go-name: URI
  2083            url:
  2084                description: The status's publicly available web URL. This link will only work if the visibility of the status is 'public'.
  2085                example: https://example.org/@some_user/statuses/01FBVD42CQ3ZEEVMW180SBX03B
  2086                type: string
  2087                x-go-name: URL
  2088            visibility:
  2089                description: Visibility of this status.
  2090                example: unlisted
  2091                type: string
  2092                x-go-name: Visibility
  2093        title: Status models a status or post.
  2094        type: object
  2095        x-go-name: Status
  2096        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  2097    statusContext:
  2098        properties:
  2099            ancestors:
  2100                description: Parents in the thread.
  2101                items:
  2102                    $ref: '#/definitions/status'
  2103                type: array
  2104                x-go-name: Ancestors
  2105            descendants:
  2106                description: Children in the thread.
  2107                items:
  2108                    $ref: '#/definitions/status'
  2109                type: array
  2110                x-go-name: Descendants
  2111        title: Context models the tree around a given status.
  2112        type: object
  2113        x-go-name: Context
  2114        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  2115    statusCreateRequest:
  2116        properties:
  2117            format:
  2118                description: |-
  2119                    Format to use when parsing this status.
  2120                    in: formData
  2121                type: string
  2122                x-go-name: Format
  2123            in_reply_to_id:
  2124                description: |-
  2125                    ID of the status being replied to, if status is a reply.
  2126                    in: formData
  2127                type: string
  2128                x-go-name: InReplyToID
  2129            language:
  2130                description: |-
  2131                    ISO 639 language code for this status.
  2132                    in: formData
  2133                type: string
  2134                x-go-name: Language
  2135            media_ids:
  2136                description: |-
  2137                    Array of Attachment ids to be attached as media.
  2138                    If provided, status becomes optional, and poll cannot be used.
  2139
  2140                    If the status is being submitted as a form, the key is 'media_ids[]',
  2141                    but if it's json or xml, the key is 'media_ids'.
  2142
  2143                    in: formData
  2144                items:
  2145                    type: string
  2146                type: array
  2147                x-go-name: MediaIDs
  2148            scheduled_at:
  2149                description: |-
  2150                    ISO 8601 Datetime at which to schedule a status.
  2151                    Providing this parameter will cause ScheduledStatus to be returned instead of Status.
  2152                    Must be at least 5 minutes in the future.
  2153                    in: formData
  2154                type: string
  2155                x-go-name: ScheduledAt
  2156            sensitive:
  2157                description: |-
  2158                    Status and attached media should be marked as sensitive.
  2159                    in: formData
  2160                type: boolean
  2161                x-go-name: Sensitive
  2162            spoiler_text:
  2163                description: |-
  2164                    Text to be shown as a warning or subject before the actual content.
  2165                    Statuses are generally collapsed behind this field.
  2166                    in: formData
  2167                type: string
  2168                x-go-name: SpoilerText
  2169            status:
  2170                description: |-
  2171                    Text content of the status.
  2172                    If media_ids is provided, this becomes optional.
  2173                    Attaching a poll is optional while status is provided.
  2174                    in: formData
  2175                type: string
  2176                x-go-name: Status
  2177            visibility:
  2178                description: |-
  2179                    Visibility of the posted status.
  2180                    in: formData
  2181                type: string
  2182                x-go-name: Visibility
  2183        title: StatusCreateRequest models status creation parameters.
  2184        type: object
  2185        x-go-name: StatusCreateRequest
  2186        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  2187    statusReblogged:
  2188        properties:
  2189            account:
  2190                $ref: '#/definitions/account'
  2191            application:
  2192                $ref: '#/definitions/application'
  2193            bookmarked:
  2194                description: This status has been bookmarked by the account viewing it.
  2195                type: boolean
  2196                x-go-name: Bookmarked
  2197            card:
  2198                $ref: '#/definitions/card'
  2199            content:
  2200                description: The content of this status. Should be HTML, but might also be plaintext in some cases.
  2201                example: <p>Hey this is a status!</p>
  2202                type: string
  2203                x-go-name: Content
  2204            created_at:
  2205                description: The date when this status was created (ISO 8601 Datetime).
  2206                example: "2021-07-30T09:20:25+00:00"
  2207                type: string
  2208                x-go-name: CreatedAt
  2209            emojis:
  2210                description: Custom emoji to be used when rendering status content.
  2211                items:
  2212                    $ref: '#/definitions/emoji'
  2213                type: array
  2214                x-go-name: Emojis
  2215            favourited:
  2216                description: This status has been favourited by the account viewing it.
  2217                type: boolean
  2218                x-go-name: Favourited
  2219            favourites_count:
  2220                description: Number of favourites/likes this status has received, according to our instance.
  2221                format: int64
  2222                type: integer
  2223                x-go-name: FavouritesCount
  2224            id:
  2225                description: ID of the status.
  2226                example: 01FBVD42CQ3ZEEVMW180SBX03B
  2227                type: string
  2228                x-go-name: ID
  2229            in_reply_to_account_id:
  2230                description: ID of the account being replied to.
  2231                example: 01FBVD42CQ3ZEEVMW180SBX03B
  2232                type: string
  2233                x-go-name: InReplyToAccountID
  2234            in_reply_to_id:
  2235                description: ID of the status being replied to.
  2236                example: 01FBVD42CQ3ZEEVMW180SBX03B
  2237                type: string
  2238                x-go-name: InReplyToID
  2239            language:
  2240                description: |-
  2241                    Primary language of this status (ISO 639 Part 1 two-letter language code).
  2242                    Will be null if language is not known.
  2243                example: en
  2244                type: string
  2245                x-go-name: Language
  2246            media_attachments:
  2247                description: Media that is attached to this status.
  2248                items:
  2249                    $ref: '#/definitions/attachment'
  2250                type: array
  2251                x-go-name: MediaAttachments
  2252            mentions:
  2253                description: Mentions of users within the status content.
  2254                items:
  2255                    $ref: '#/definitions/Mention'
  2256                type: array
  2257                x-go-name: Mentions
  2258            muted:
  2259                description: Replies to this status have been muted by the account viewing it.
  2260                type: boolean
  2261                x-go-name: Muted
  2262            pinned:
  2263                description: This status has been pinned by the account viewing it (only relevant for your own statuses).
  2264                type: boolean
  2265                x-go-name: Pinned
  2266            poll:
  2267                $ref: '#/definitions/poll'
  2268            reblog:
  2269                $ref: '#/definitions/statusReblogged'
  2270            reblogged:
  2271                description: This status has been boosted/reblogged by the account viewing it.
  2272                type: boolean
  2273                x-go-name: Reblogged
  2274            reblogs_count:
  2275                description: Number of times this status has been boosted/reblogged, according to our instance.
  2276                format: int64
  2277                type: integer
  2278                x-go-name: ReblogsCount
  2279            replies_count:
  2280                description: Number of replies to this status, according to our instance.
  2281                format: int64
  2282                type: integer
  2283                x-go-name: RepliesCount
  2284            sensitive:
  2285                description: Status contains sensitive content.
  2286                example: false
  2287                type: boolean
  2288                x-go-name: Sensitive
  2289            spoiler_text:
  2290                description: Subject, summary, or content warning for the status.
  2291                example: warning nsfw
  2292                type: string
  2293                x-go-name: SpoilerText
  2294            tags:
  2295                description: Hashtags used within the status content.
  2296                items:
  2297                    $ref: '#/definitions/tag'
  2298                type: array
  2299                x-go-name: Tags
  2300            text:
  2301                description: |-
  2302                    Plain-text source of a status. Returned instead of content when status is deleted,
  2303                    so the user may redraft from the source text without the client having to reverse-engineer
  2304                    the original text from the HTML content.
  2305                type: string
  2306                x-go-name: Text
  2307            uri:
  2308                description: ActivityPub URI of the status. Equivalent to the status's activitypub ID.
  2309                example: https://example.org/users/some_user/statuses/01FBVD42CQ3ZEEVMW180SBX03B
  2310                type: string
  2311                x-go-name: URI
  2312            url:
  2313                description: The status's publicly available web URL. This link will only work if the visibility of the status is 'public'.
  2314                example: https://example.org/@some_user/statuses/01FBVD42CQ3ZEEVMW180SBX03B
  2315                type: string
  2316                x-go-name: URL
  2317            visibility:
  2318                description: Visibility of this status.
  2319                example: unlisted
  2320                type: string
  2321                x-go-name: Visibility
  2322        title: StatusReblogged represents a reblogged status.
  2323        type: object
  2324        x-go-name: StatusReblogged
  2325        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  2326    swaggerCollection:
  2327        properties:
  2328            '@context':
  2329                description: ActivityStreams context.
  2330                example: https://www.w3.org/ns/activitystreams
  2331                type: string
  2332                x-go-name: Context
  2333            first:
  2334                $ref: '#/definitions/swaggerCollectionPage'
  2335            id:
  2336                description: ActivityStreams ID.
  2337                example: https://example.org/users/some_user/statuses/106717595988259568/replies
  2338                type: string
  2339                x-go-name: ID
  2340            last:
  2341                $ref: '#/definitions/swaggerCollectionPage'
  2342            type:
  2343                description: ActivityStreams type.
  2344                example: Collection
  2345                type: string
  2346                x-go-name: Type
  2347        title: SwaggerCollection represents an activitypub collection.
  2348        type: object
  2349        x-go-name: SwaggerCollection
  2350        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/activitypub/users
  2351    swaggerCollectionPage:
  2352        properties:
  2353            id:
  2354                description: ActivityStreams ID.
  2355                example: https://example.org/users/some_user/statuses/106717595988259568/replies?page=true
  2356                type: string
  2357                x-go-name: ID
  2358            items:
  2359                description: Items on this page.
  2360                example:
  2361                    - https://example.org/users/some_other_user/statuses/086417595981111564
  2362                    - https://another.example.com/users/another_user/statuses/01FCN8XDV3YG7B4R42QA6YQZ9R
  2363                items:
  2364                    type: string
  2365                type: array
  2366                x-go-name: Items
  2367            next:
  2368                description: Link to the next page.
  2369                example: https://example.org/users/some_user/statuses/106717595988259568/replies?only_other_accounts=true&page=true
  2370                type: string
  2371                x-go-name: Next
  2372            partOf:
  2373                description: Collection this page belongs to.
  2374                example: https://example.org/users/some_user/statuses/106717595988259568/replies
  2375                type: string
  2376                x-go-name: PartOf
  2377            type:
  2378                description: ActivityStreams type.
  2379                example: CollectionPage
  2380                type: string
  2381                x-go-name: Type
  2382        title: SwaggerCollectionPage represents one page of a collection.
  2383        type: object
  2384        x-go-name: SwaggerCollectionPage
  2385        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/activitypub/users
  2386    tag:
  2387        properties:
  2388            name:
  2389                description: 'The value of the hashtag after the # sign.'
  2390                example: helloworld
  2391                type: string
  2392                x-go-name: Name
  2393            url:
  2394                description: Web link to the hashtag.
  2395                example: https://example.org/tags/helloworld
  2396                type: string
  2397                x-go-name: URL
  2398        title: Tag represents a hashtag used within the content of a status.
  2399        type: object
  2400        x-go-name: Tag
  2401        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  2402    updateField:
  2403        description: By default, max 4 fields and 255 characters per property/value.
  2404        properties:
  2405            name:
  2406                description: Name of the field
  2407                type: string
  2408                x-go-name: Name
  2409            value:
  2410                description: Value of the field
  2411                type: string
  2412                x-go-name: Value
  2413        title: UpdateField is to be used specifically in an UpdateCredentialsRequest.
  2414        type: object
  2415        x-go-name: UpdateField
  2416        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  2417    updateSource:
  2418        properties:
  2419            language:
  2420                description: Default language to use for authored statuses. (ISO 6391)
  2421                type: string
  2422                x-go-name: Language
  2423            privacy:
  2424                description: Default post privacy for authored statuses.
  2425                type: string
  2426                x-go-name: Privacy
  2427            sensitive:
  2428                description: Mark authored statuses as sensitive by default.
  2429                type: boolean
  2430                x-go-name: Sensitive
  2431            status_format:
  2432                description: Default format for authored statuses (plain or markdown).
  2433                type: string
  2434                x-go-name: StatusFormat
  2435        title: UpdateSource is to be used specifically in an UpdateCredentialsRequest.
  2436        type: object
  2437        x-go-name: UpdateSource
  2438        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  2439    wellKnownResponse:
  2440        description: See https://webfinger.net/
  2441        properties:
  2442            aliases:
  2443                items:
  2444                    type: string
  2445                type: array
  2446                x-go-name: Aliases
  2447            links:
  2448                items:
  2449                    $ref: '#/definitions/Link'
  2450                type: array
  2451                x-go-name: Links
  2452            subject:
  2453                type: string
  2454                x-go-name: Subject
  2455        title: |-
  2456            WellKnownResponse represents the response to either a webfinger request for an 'acct' resource, or a request to nodeinfo.
  2457            For example, it would be returned from https://example.org/.well-known/webfinger?resource=acct:some_username@example.org
  2458        type: object
  2459        x-go-name: WellKnownResponse
  2460        x-go-package: github.com/superseriousbusiness/gotosocial/internal/api/model
  2461host: example.org
  2462info:
  2463    contact:
  2464        email: admin@gotosocial.org
  2465        name: GoToSocial Authors
  2466    license:
  2467        name: AGPL3
  2468        url: https://www.gnu.org/licenses/agpl-3.0.en.html
  2469    title: GoToSocial Swagger documentation.
  2470    version: REPLACE_ME
  2471paths:
  2472    /.well-known/nodeinfo:
  2473        get:
  2474            description: |-
  2475                eg. `{"links":[{"rel":"http://nodeinfo.diaspora.software/ns/schema/2.0","href":"http://example.org/nodeinfo/2.0"}]}`
  2476                See: https://nodeinfo.diaspora.software/protocol.html
  2477            operationId: nodeInfoWellKnownGet
  2478            produces:
  2479                - application/json
  2480            responses:
  2481                "200":
  2482                    description: ""
  2483                    schema:
  2484                        $ref: '#/definitions/wellKnownResponse'
  2485            summary: Returns a well-known response which redirects callers to `/nodeinfo/2.0`.
  2486            tags:
  2487                - .well-known
  2488    /.well-known/webfinger:
  2489        get:
  2490            description: |-
  2491                For example, a GET to `https://goblin.technology/.well-known/webfinger?resource=acct:tobi@goblin.technology` would return:
  2492
  2493                ```
  2494
  2495                {"subject":"acct:tobi@goblin.technology","aliases":["https://goblin.technology/users/tobi","https://goblin.technology/@tobi"],"links":[{"rel":"http://webfinger.net/rel/profile-page","type":"text/html","href":"https://goblin.technology/@tobi"},{"rel":"self","type":"application/activity+json","href":"https://goblin.technology/users/tobi"}]}
  2496
  2497                ```
  2498
  2499                See: https://webfinger.net/
  2500            operationId: webfingerGet
  2501            produces:
  2502                - application/json
  2503            responses:
  2504                "200":
  2505                    description: ""
  2506                    schema:
  2507                        $ref: '#/definitions/wellKnownResponse'
  2508            summary: Handles webfinger account lookup requests.
  2509            tags:
  2510                - .well-known
  2511    /api/{api_version}/media:
  2512        post:
  2513            consumes:
  2514                - multipart/form-data
  2515            operationId: mediaCreate
  2516            parameters:
  2517                - description: Version of the API to use. Must be either `v1` or `v2`.
  2518                  in: path
  2519                  name: api_version
  2520                  required: true
  2521                  type: string
  2522                - description: Image or media description to use as alt-text on the attachment. This is very useful for users of screenreaders! May or may not be required, depending on your instance settings.
  2523                  in: formData
  2524                  name: description
  2525                  type: string
  2526                - default: 0,0
  2527                  description: 'Focus of the media file. If present, it should be in the form of two comma-separated floats between -1 and 1. For example: `-0.5,0.25`.'
  2528                  in: formData
  2529                  name: focus
  2530                  type: string
  2531                - description: The media attachment to upload.
  2532                  in: formData
  2533                  name: file
  2534                  required: true
  2535                  type: file
  2536            produces:
  2537                - application/json
  2538            responses:
  2539                "200":
  2540                    description: The newly-created media attachment.
  2541                    schema:
  2542                        $ref: '#/definitions/attachment'
  2543                "400":
  2544                    description: bad request
  2545                "401":
  2546                    description: unauthorized
  2547                "422":
  2548                    description: unprocessable
  2549                "500":
  2550                    description: internal server error
  2551            security:
  2552                - OAuth2 Bearer:
  2553                    - write:media
  2554            summary: Upload a new media attachment.
  2555            tags:
  2556                - media
  2557    /api/v1/accounts:
  2558        post:
  2559            consumes:
  2560                - application/json
  2561                - application/xml
  2562                - application/x-www-form-urlencoded
  2563            description: |-
  2564                The parameters can also be given in the body of the request, as JSON, if the content-type is set to 'application/json'.
  2565                The parameters can also be given in the body of the request, as XML, if the content-type is set to 'application/xml'.
  2566            operationId: accountCreate
  2567            parameters:
  2568                - description: Text that will be reviewed by moderators if registrations require manual approval.
  2569                  in: query
  2570                  name: reason
  2571                  type: string
  2572                  x-go-name: Reason
  2573                - description: The desired username for the account.
  2574                  in: query
  2575                  name: username
  2576                  type: string
  2577                  x-go-name: Username
  2578                - description: The email address to be used for login.
  2579                  in: query
  2580                  name: email
  2581                  type: string
  2582                  x-go-name: Email
  2583                - description: The password to be used for login. This will be hashed before storage.
  2584                  in: query
  2585                  name: password
  2586                  type: string
  2587                  x-go-name: Password
  2588                - description: The user agrees to the terms, conditions, and policies of the instance.
  2589                  in: query
  2590                  name: agreement
  2591                  type: boolean
  2592                  x-go-name: Agreement
  2593                - description: The language of the confirmation email that will be sent.
  2594                  in: query
  2595                  name: locale
  2596                  type: string
  2597                  x-go-name: Locale
  2598            produces:
  2599                - application/json
  2600            responses:
  2601                "200":
  2602                    description: An OAuth2 access token for the newly-created account.
  2603                    schema:
  2604                        $ref: '#/definitions/oauthToken'
  2605                "400":
  2606                    description: bad request
  2607                "401":
  2608                    description: unauthorized
  2609                "404":
  2610                    description: not found
  2611                "406":
  2612                    description: not acceptable
  2613                "500":
  2614                    description: internal server error
  2615            security:
  2616                - OAuth2 Application:
  2617                    - write:accounts
  2618            summary: Create a new account using an application token.
  2619            tags:
  2620                - accounts
  2621    /api/v1/accounts/{id}:
  2622        get:
  2623            operationId: accountGet
  2624            parameters:
  2625                - description: The id of the requested account.
  2626                  in: path
  2627                  name: id
  2628                  required: true
  2629                  type: string
  2630            produces:
  2631                - application/json
  2632            responses:
  2633                "200":
  2634                    description: The requested account.
  2635                    schema:
  2636                        $ref: '#/definitions/account'
  2637                "400":
  2638                    description: bad request
  2639                "401":
  2640                    description: unauthorized
  2641                "404":
  2642                    description: not found
  2643                "406":
  2644                    description: not acceptable
  2645                "500":
  2646                    description: internal server error
  2647            security:
  2648                - OAuth2 Bearer:
  2649                    - read:accounts
  2650            summary: Get information about an account with the given ID.
  2651            tags:
  2652                - accounts
  2653    /api/v1/accounts/{id}/block:
  2654        post:
  2655            operationId: accountBlock
  2656            parameters:
  2657                - description: The id of the account to block.
  2658                  in: path
  2659                  name: id
  2660                  required: true
  2661                  type: string
  2662            produces:
  2663                - application/json
  2664            responses:
  2665                "200":
  2666                    description: Your relationship to the account.
  2667                    schema:
  2668                        $ref: '#/definitions/accountRelationship'
  2669                "400":
  2670                    description: bad request
  2671                "401":
  2672                    description: unauthorized
  2673                "404":
  2674                    description: not found
  2675                "406":
  2676                    description: not acceptable
  2677                "500":
  2678                    description: internal server error
  2679            security:
  2680                - OAuth2 Bearer:
  2681                    - write:blocks
  2682            summary: Block account with id.
  2683            tags:
  2684                - accounts
  2685    /api/v1/accounts/{id}/follow:
  2686        post:
  2687            consumes:
  2688                - application/json
  2689                - application/xml
  2690                - application/x-www-form-urlencoded
  2691            description: |-
  2692                The parameters can also be given in the body of the request, as JSON, if the content-type is set to 'application/json'.
  2693                The parameters can also be given in the body of the request, as XML, if the content-type is set to 'application/xml'.
  2694            operationId: accountFollow
  2695            parameters:
  2696                - description: ID of the account to follow.
  2697                  in: path
  2698                  name: id
  2699                  required: true
  2700                  type: string
  2701                - default: true
  2702                  description: Show reblogs from this account.
  2703                  in: formData
  2704                  name: reblogs
  2705                  type: boolean
  2706                - default: false
  2707                  description: Notify when this account posts.
  2708                  in: formData
  2709                  name: notify
  2710                  type: boolean
  2711            produces:
  2712                - application/json
  2713            responses:
  2714                "200":
  2715                    description: Your relationship to this account.
  2716                    schema:
  2717                        $ref: '#/definitions/accountRelationship'
  2718                "400":
  2719                    description: bad request
  2720                "401":
  2721                    description: unauthorized
  2722                "404":
  2723                    description: not found
  2724                "406":
  2725                    description: not acceptable
  2726                "500":
  2727                    description: internal server error
  2728            security:
  2729                - OAuth2 Bearer:
  2730                    - write:follows
  2731            summary: Follow account with id.
  2732            tags:
  2733                - accounts
  2734    /api/v1/accounts/{id}/followers:
  2735        get:
  2736            operationId: accountFollowers
  2737            parameters:
  2738                - description: Account ID.
  2739                  in: path
  2740                  name: id
  2741                  required: true
  2742                  type: string
  2743            produces:
  2744                - application/json
  2745            responses:
  2746                "200":
  2747                    description: Array of accounts that follow this account.
  2748                    schema:
  2749                        items:
  2750                            $ref: '#/definitions/account'
  2751                        type: array
  2752                "400":
  2753                    description: bad request
  2754                "401":
  2755                    description: unauthorized
  2756                "404":
  2757                    description: not found
  2758                "406":
  2759                    description: not acceptable
  2760                "500":
  2761                    description: internal server error
  2762            security:
  2763                - OAuth2 Bearer:
  2764                    - read:accounts
  2765            summary: See followers of account with given id.
  2766            tags:
  2767                - accounts
  2768    /api/v1/accounts/{id}/following:
  2769        get:
  2770            operationId: accountFollowing
  2771            parameters:
  2772                - description: Account ID.
  2773                  in: path
  2774                  name: id
  2775                  required: true
  2776                  type: string
  2777            produces:
  2778                - application/json
  2779            responses:
  2780                "200":
  2781                    description: Array of accounts that are followed by this account.
  2782                "400":
  2783                    description: bad request
  2784                "401":
  2785                    description: unauthorized
  2786                "404":
  2787                    description: not found
  2788                "406":
  2789                    description: not acceptable
  2790                "500":
  2791                    description: internal server error
  2792            security:
  2793                - OAuth2 Bearer:
  2794                    - read:accounts
  2795            summary: See accounts followed by given account id.
  2796            tags:
  2797                - accounts
  2798    /api/v1/accounts/{id}/statuses:
  2799        get:
  2800            description: The statuses will be returned in descending chronological order (newest first), with sequential IDs (bigger = newer).
  2801            operationId: accountStatuses
  2802            parameters:
  2803                - description: Account ID.
  2804                  in: path
  2805                  name: id
  2806                  required: true
  2807                  type: string
  2808                - default: 30
  2809                  description: Number of statuses to return.
  2810                  in: query
  2811                  name: limit
  2812                  type: integer
  2813                - default: false
  2814                  description: Exclude statuses that are a reply to another status.
  2815                  in: query
  2816                  name: exclude_replies
  2817                  type: boolean
  2818                - default: false
  2819                  description: Exclude statuses that are a reblog/boost of another status.
  2820                  in: query
  2821                  name: exclude_reblogs
  2822                  type: boolean
  2823                - description: Return only statuses *OLDER* than the given max status ID. The status with the specified ID will not be included in the response.
  2824                  in: query
  2825                  name: max_id
  2826                  type: string
  2827                - description: Return only statuses *NEWER* than the given min status ID. The status with the specified ID will not be included in the response.
  2828                  in: query
  2829                  name: min_id
  2830                  type: string
  2831                - default: false
  2832                  description: Show only pinned statuses. In other words, exclude statuses that are not pinned to the given account ID.
  2833                  in: query
  2834                  name: pinned_only
  2835                  type: boolean
  2836                - default: false
  2837                  description: Show only statuses with media attachments.
  2838                  in: query
  2839                  name: only_media
  2840                  type: boolean
  2841                - default: false
  2842                  description: Show only statuses with a privacy setting of 'public'.
  2843                  in: query
  2844                  name: only_public
  2845                  type: boolean
  2846            produces:
  2847                - application/json
  2848            responses:
  2849                "200":
  2850                    description: Array of statuses.
  2851                    schema:
  2852                        items:
  2853                            $ref: '#/definitions/status'
  2854                        type: array
  2855                "400":
  2856                    description: bad request
  2857                "401":
  2858                    description: unauthorized
  2859                "404":
  2860                    description: not found
  2861                "406":
  2862                    description: not acceptable
  2863                "500":
  2864                    description: internal server error
  2865            security:
  2866                - OAuth2 Bearer:
  2867                    - read:accounts
  2868            summary: See statuses posted by the requested account.
  2869            tags:
  2870                - accounts
  2871    /api/v1/accounts/{id}/unblock:
  2872        post:
  2873            operationId: accountUnblock
  2874            parameters:
  2875                - description: The id of the account to unblock.
  2876                  in: path
  2877                  name: id
  2878                  required: true
  2879                  type: string
  2880            produces:
  2881                - application/json
  2882            responses:
  2883                "200":
  2884                    description: Your relationship to this account.
  2885                    schema:
  2886                        $ref: '#/definitions/accountRelationship'
  2887                "400":
  2888                    description: bad request
  2889                "401":
  2890                    description: unauthorized
  2891                "404":
  2892                    description: not found
  2893                "406":
  2894                    description: not acceptable
  2895                "500":
  2896                    description: internal server error
  2897            security:
  2898                - OAuth2 Bearer:
  2899                    - write:blocks
  2900            summary: Unblock account with ID.
  2901            tags:
  2902                - accounts
  2903    /api/v1/accounts/{id}/unfollow:
  2904        post:
  2905            operationId: accountUnfollow
  2906            parameters:
  2907                - description: The id of the account to unfollow.
  2908                  in: path
  2909                  name: id
  2910                  required: true
  2911                  type: string
  2912            produces:
  2913                - application/json
  2914            responses:
  2915                "200":
  2916                    description: Your relationship to this account.
  2917                    schema:
  2918                        $ref: '#/definitions/accountRelationship'
  2919                "400":
  2920                    description: bad request
  2921                "401":
  2922                    description: unauthorized
  2923                "404":
  2924                    description: not found
  2925                "406":
  2926                    description: not acceptable
  2927                "500":
  2928                    description: internal server error
  2929            security:
  2930                - OAuth2 Bearer:
  2931                    - write:follows
  2932            summary: Unfollow account with id.
  2933            tags:
  2934                - accounts
  2935    /api/v1/accounts/delete:
  2936        post:
  2937            consumes:
  2938                - multipart/form-data
  2939            operationId: accountDelete
  2940            parameters:
  2941                - description: Password of the account user, for confirmation.
  2942                  in: formData
  2943                  name: password
  2944                  required: true
  2945                  type: string
  2946            responses:
  2947                "202":
  2948                    description: The account deletion has been accepted and the account will be deleted.
  2949                "400":
  2950                    description: bad request
  2951                "401":
  2952                    description: unauthorized
  2953                "404":
  2954                    description: not found
  2955                "406":
  2956                    description: not acceptable
  2957                "500":
  2958                    description: internal server error
  2959            security:
  2960                - OAuth2 Bearer:
  2961                    - write:accounts
  2962            summary: Delete your account.
  2963            tags:
  2964                - accounts
  2965    /api/v1/accounts/relationships:
  2966        get:
  2967            operationId: accountRelationships
  2968            parameters:
  2969                - description: Account IDs.
  2970                  in: query
  2971                  items:
  2972                    type: string
  2973                  name: id
  2974                  required: true
  2975                  type: array
  2976            produces:
  2977                - application/json
  2978            responses:
  2979                "200":
  2980                    description: Array of account relationships.
  2981                    schema:
  2982                        items:
  2983                            $ref: '#/definitions/accountRelationship'
  2984                        type: array
  2985                "400":
  2986                    description: bad request
  2987                "401":
  2988                    description: unauthorized
  2989                "404":
  2990                    description: not found
  2991                "406":
  2992                    description: not acceptable
  2993                "500":
  2994                    description: internal server error
  2995            security:
  2996                - OAuth2 Bearer:
  2997                    - read:accounts
  2998            summary: See your account's relationships with the given account IDs.
  2999            tags:
  3000                - accounts
  3001    /api/v1/accounts/update_credentials:
  3002        patch:
  3003            consumes:
  3004                - multipart/form-data
  3005            operationId: accountUpdate
  3006            parameters:
  3007                - description: Account should be made discoverable and shown in the profile directory (if enabled).
  3008                  in: formData
  3009                  name: discoverable
  3010                  type: boolean
  3011                - description: Account is flagged as a bot.
  3012                  in: formData
  3013                  name: bot
  3014                  type: boolean
  3015                - allowEmptyValue: true
  3016                  description: The display name to use for the account.
  3017                  in: formData
  3018                  name: display_name
  3019                  type: string
  3020                - allowEmptyValue: true
  3021                  description: Bio/description of this account.
  3022                  in: formData
  3023                  name: note
  3024                  type: string
  3025                - description: Avatar of the user.
  3026                  in: formData
  3027                  name: avatar
  3028                  type: file
  3029                - description: Header of the user.
  3030                  in: formData
  3031                  name: header
  3032                  type: file
  3033                - description: Require manual approval of follow requests.
  3034                  in: formData
  3035                  name: locked
  3036                  type: boolean
  3037                - description: Default post privacy for authored statuses.
  3038                  in: formData
  3039                  name: source[privacy]
  3040                  type: string
  3041                - description: Mark authored statuses as sensitive by default.
  3042                  in: formData
  3043                  name: source[sensitive]
  3044                  type: boolean
  3045                - description: Default language to use for authored statuses (ISO 6391).
  3046                  in: formData
  3047                  name: source[language]
  3048                  type: string
  3049                - description: Default format to use for authored statuses (plain or markdown).
  3050                  in: formData
  3051                  name: source[status_format]
  3052                  type: string
  3053                - description: Custom CSS to use when rendering this account's profile or statuses. String must be no more than 5,000 characters (~5kb).
  3054                  in: formData
  3055                  name: custom_css
  3056                  type: string
  3057                - description: Enable RSS feed for this account's Public posts at `/[username]/feed.rss`
  3058                  in: formData
  3059                  name: enable_rss
  3060                  type: boolean
  3061            produces:
  3062                - application/json
  3063            responses:
  3064                "200":
  3065                    description: The newly updated account.
  3066                    schema:
  3067                        $ref: '#/definitions/account'
  3068                "400":
  3069                    description: bad request
  3070                "401":
  3071                    description: unauthorized
  3072                "404":
  3073                    description: not found
  3074                "406":
  3075                    description: not acceptable
  3076                "500":
  3077                    description: internal server error
  3078            security:
  3079                - OAuth2 Bearer:
  3080                    - write:accounts
  3081            summary: Update your account.
  3082            tags:
  3083                - accounts
  3084    /api/v1/accounts/verify_credentials:
  3085        get:
  3086            operationId: accountVerify
  3087            produces:
  3088                - application/json
  3089            responses:
  3090                "200":
  3091                    description: ""
  3092                    schema:
  3093                        $ref: '#/definitions/account'
  3094                "400":
  3095                    description: bad request
  3096                "401":
  3097                    description: unauthorized
  3098                "404":
  3099                    description: not found
  3100                "406":
  3101                    description: not acceptable
  3102                "500":
  3103                    description: internal server error
  3104            security:
  3105                - OAuth2 Bearer:
  3106                    - read:accounts
  3107            summary: Verify a token by returning account details pertaining to it.
  3108            tags:
  3109                - accounts
  3110    /api/v1/admin/accounts/{id}/action:
  3111        post:
  3112            consumes:
  3113                - multipart/form-data
  3114            operationId: adminAccountAction
  3115            parameters:
  3116                - description: ID of the account.
  3117                  in: path
  3118                  name: id
  3119                  required: true
  3120                  type: string
  3121                - description: Type of action to be taken (`disable`, `silence`, or `suspend`).
  3122                  in: formData
  3123                  name: type
  3124                  required: true
  3125                  type: string
  3126                - description: Optional text describing why this action was taken.
  3127                  in: formData
  3128                  name: text
  3129                  type: string
  3130            produces:
  3131                - application/json
  3132            responses:
  3133                "200":
  3134                    description: OK
  3135                "400":
  3136                    description: bad request
  3137                "401":
  3138                    description: unauthorized
  3139                "403":
  3140                    description: forbidden
  3141                "404":
  3142                    description: not found
  3143                "406":
  3144                    description: not acceptable
  3145                "500":
  3146                    description: internal server error
  3147            security:
  3148                - OAuth2 Bearer:
  3149                    - admin
  3150            summary: Perform an admin action on an account.
  3151            tags:
  3152                - admin
  3153    /api/v1/admin/custom_emojis:
  3154        get:
  3155            description: |-
  3156                The next and previous queries can be parsed from the returned Link header.
  3157                Example:
  3158
  3159                `<http://localhost:8080/api/v1/admin/custom_emojis?limit=30&max_shortcode_domain=yell@fossbros-anonymous.io&filter=domain:all>; rel="next", <http://localhost:8080/api/v1/admin/custom_emojis?limit=30&min_shortcode_domain=rainbow@&filter=domain:all>; rel="prev"`
  3160            operationId: emojisGet
  3161            parameters:
  3162                - default: domain:all
  3163                  description: |-
  3164                    Comma-separated list of filters to apply to results. Recognized filters are:
  3165
  3166                    `domain:[domain]` -- show emojis from the given domain, eg `?filter=domain:example.org` will show emojis from `example.org` only.
  3167                    Instead of giving a specific domain, you can also give either one of the key words `local` or `all` to show either local emojis only (`domain:local`) or show all emojis from all domains (`domain:all`).
  3168                    Note: `domain:*` is equivalent to `domain:all` (including local).
  3169                    If no domain filter is provided, `domain:all` will be assumed.
  3170
  3171                    `disabled` -- include emojis that have been disabled.
  3172
  3173                    `enabled` -- include emojis that are enabled.
  3174
  3175                    `shortcode:[shortcode]` -- show only emojis with the given shortcode, eg `?filter=shortcode:blob_cat_uwu` will show only emojis with the shortcode `blob_cat_uwu` (case sensitive).
  3176
  3177                    If neither `disabled` or `enabled` are provided, both disabled and enabled emojis will be shown.
  3178
  3179                    If no filter query string is provided, the default `domain:all` will be used, which will show all emojis from all domains.
  3180                  in: query
  3181                  name: filter
  3182                  type: string
  3183                - default: 50
  3184                  description: Number of emojis to return. Less than 1, or not set, means unlimited (all emojis).
  3185                  in: query
  3186                  name: limit
  3187                  type: integer
  3188                - description: |-
  3189                    Return only emojis with `[shortcode]@[domain]` *LOWER* (alphabetically) than given `[shortcode]@[domain]`. For example, if `max_shortcode_domain=beep@example.org`, then returned values might include emojis with `[shortcode]@[domain]`s like `car@example.org`, `debian@aaa.com`, `test@` (local emoji), etc.
  3190                    Emoji with the given `[shortcode]@[domain]` will not be included in the result set.
  3191                  in: query
  3192                  name: max_shortcode_domain
  3193                  type: string
  3194                - description: |-
  3195                    Return only emojis with `[shortcode]@[domain]` *HIGHER* (alphabetically) than given `[shortcode]@[domain]`. For example, if `max_shortcode_domain=beep@example.org`, then returned values might include emojis with `[shortcode]@[domain]`s like `arse@test.com`, `0101_binary@hackers.net`, `bee@` (local emoji), etc.
  3196                    Emoji with the given `[shortcode]@[domain]` will not be included in the result set.
  3197                  in: query
  3198                  name: min_shortcode_domain
  3199                  type: string
  3200            produces:
  3201                - application/json
  3202            responses:
  3203                "200":
  3204                    description: An array of emojis, arranged alphabetically by shortcode and domain.
  3205                    headers:
  3206                        Link:
  3207                            description: Links to the next and previous queries.
  3208                            type: string
  3209                    schema:
  3210                        items:
  3211                            $ref: '#/definitions/adminEmoji'
  3212                        type: array
  3213                "400":
  3214                    description: bad request
  3215                "401":
  3216                    description: unauthorized
  3217                "403":
  3218                    description: forbidden
  3219                "404":
  3220                    description: not found
  3221                "406":
  3222                    description: not acceptable
  3223                "500":
  3224                    description: internal server error
  3225            summary: View local and remote emojis available to / known by this instance.
  3226            tags:
  3227                - admin
  3228        post:
  3229            consumes:
  3230                - multipart/form-data
  3231            operationId: emojiCreate
  3232            parameters:
  3233                - description: The code to use for the emoji, which will be used by instance denizens to select it. This must be unique on the instance.
  3234                  in: formData
  3235                  name: shortcode
  3236                  pattern: \w{2,30}
  3237                  required: true
  3238                  type: string
  3239                - description: A png or gif image of the emoji. Animated pngs work too! To ensure compatibility with other fedi implementations, emoji size limit is 50kb by default.
  3240                  in: formData
  3241                  name: image
  3242                  required: true
  3243                  type: file
  3244                - description: Category in which to place the new emoji. 64 characters or less. If left blank, emoji will be uncategorized. If a category with the given name doesn't exist yet, it will be created.
  3245                  in: formData
  3246                  name: category
  3247                  type: string
  3248            produces:
  3249                - application/json
  3250            responses:
  3251                "200":
  3252                    description: The newly-created emoji.
  3253                    schema:
  3254                        $ref: '#/definitions/emoji'
  3255                "400":
  3256                    description: bad request
  3257                "401":
  3258                    description: unauthorized
  3259                "403":
  3260                    description: forbidden
  3261                "404":
  3262                    description: not found
  3263                "406":
  3264                    description: not acceptable
  3265                "409":
  3266                    description: conflict -- shortcode for this emoji is already in use
  3267                "500":
  3268                    description: internal server error
  3269            security:
  3270                - OAuth2 Bearer:
  3271                    - admin
  3272            summary: Upload and create a new instance emoji.
  3273            tags:
  3274                - admin
  3275    /api/v1/admin/custom_emojis/{id}:
  3276        delete:
  3277            description: |-
  3278                Emoji with the given ID will no longer be available to use on the instance.
  3279
  3280                If you just want to update the emoji image instead, use the `/api/v1/admin/custom_emojis/{id}` PATCH route.
  3281
  3282                To disable emojis from **remote** instances, use the `/api/v1/admin/custom_emojis/{id}` PATCH route.
  3283            operationId: emojiDelete
  3284            parameters:
  3285                - description: The id of the emoji.
  3286                  in: path
  3287                  name: id
  3288                  required: true
  3289                  type: string
  3290            produces:
  3291                - application/json
  3292            responses:
  3293                "200":
  3294                    description: The deleted emoji will be returned to the caller in case further processing is necessary.
  3295                    schema:
  3296                        $ref: '#/definitions/adminEmoji'
  3297                "400":
  3298                    description: bad request
  3299                "401":
  3300                    description: unauthorized
  3301                "403":
  3302                    description: forbidden
  3303                "404":
  3304                    description: not found
  3305                "406":
  3306                    description: not acceptable
  3307                "500":
  3308                    description: internal server error
  3309            security:
  3310                - OAuth2 Bearer:
  3311                    - admin
  3312            summary: Delete a **local** emoji with the given ID from the instance.
  3313            tags:
  3314                - admin
  3315        get:
  3316            operationId: emojiGet
  3317            parameters:
  3318                - description: The id of the emoji.
  3319                  in: path
  3320                  name: id
  3321                  required: true
  3322                  type: string
  3323            produces:
  3324                - application/json
  3325            responses:
  3326                "200":
  3327                    description: A single emoji.
  3328                    schema:
  3329                        $ref: '#/definitions/adminEmoji'
  3330                "400":
  3331                    description: bad request
  3332                "401":
  3333                    description: unauthorized
  3334                "403":
  3335                    description: forbidden
  3336                "404":
  3337                    description: not found
  3338                "406":
  3339                    description: not acceptable
  3340                "500":
  3341                    description: internal server error
  3342            summary: Get the admin view of a single emoji.
  3343            tags:
  3344                - admin
  3345        patch:
  3346            consumes:
  3347                - multipart/form-data
  3348            description: |-
  3349                Action performed depends upon the action `type` provided.
  3350
  3351                `disable`: disable a REMOTE emoji from being used/displayed on this instance. Does not work for local emojis.
  3352
  3353                `copy`: copy a REMOTE emoji to this instance. When doing this action, a shortcode MUST be provided, and it must
  3354                be unique among emojis already present on this instance. A category MAY be provided, and the copied emoji will then
  3355                be put into the provided category.
  3356
  3357                `modify`: modify a LOCAL emoji. You can provide a new image for the emoji and/or update the category.
  3358
  3359                Local emojis cannot be deleted using this endpoint. To delete a local emoji, check DELETE /api/v1/admin/custom_emojis/{id} instead.
  3360            operationId: emojiUpdate
  3361            parameters:
  3362                - description: The id of the emoji.
  3363                  in: path
  3364                  name: id
  3365                  required: true
  3366                  type: string
  3367                - description: |-
  3368                    Type of action to be taken. One of: (`disable`, `copy`, `modify`).
  3369                    For REMOTE emojis, `copy` or `disable` are supported.
  3370                    For LOCAL emojis, only `modify` is supported.
  3371                  in: formData
  3372                  name: type
  3373                  required: true
  3374                  type: string
  3375                - description: The code to use for the emoji, which will be used by instance denizens to select it. This must be unique on the instance. Works for the `copy` action type only.
  3376                  in: formData
  3377                  name: shortcode
  3378                  pattern: \w{2,30}
  3379                  type: string
  3380                - description: A new png or gif image to use for the emoji. Animated pngs work too! To ensure compatibility with other fedi implementations, emoji size limit is 50kb by default. Works for LOCAL emojis only.
  3381                  in: formData
  3382                  name: image
  3383                  type: file
  3384                - description: Category in which to place the emoji. 64 characters or less. If a category with the given name doesn't exist yet, it will be created.
  3385                  in: formData
  3386                  name: category
  3387                  type: string
  3388            produces:
  3389                - application/json
  3390            responses:
  3391                "200":
  3392                    description: The updated emoji.
  3393                    schema:
  3394                        $ref: '#/definitions/adminEmoji'
  3395                "400":
  3396                    description: bad request
  3397                "401":
  3398                    description: unauthorized
  3399                "403":
  3400                    description: forbidden
  3401                "404":
  3402                    description: not found
  3403                "406":
  3404                    description: not acceptable
  3405                "500":
  3406                    description: internal server error
  3407            security:
  3408                - OAuth2 Bearer:
  3409                    - admin
  3410            summary: Perform admin action on a local or remote emoji known to this instance.
  3411            tags:
  3412                - admin
  3413    /api/v1/admin/custom_emojis/{id}/categories:
  3414        get:
  3415            operationId: emojiCategoriesGet
  3416            parameters:
  3417                - description: The id of the emoji.
  3418                  in: path
  3419                  name: id
  3420                  required: true
  3421                  type: string
  3422            produces:
  3423                - application/json
  3424            responses:
  3425                "200":
  3426                    description: Array of existing emoji categories.
  3427                    schema:
  3428                        items:
  3429                            $ref: '#/definitions/adminEmojiCategory'
  3430                        type: array
  3431                "400":
  3432                    description: bad request
  3433                "401":
  3434                    description: unauthorized
  3435                "403":
  3436                    description: forbidden
  3437                "404":
  3438                    description: not found
  3439                "406":
  3440                    description: not acceptable
  3441                "500":
  3442                    description: internal server error
  3443            summary: Get a list of existing emoji categories.
  3444            tags:
  3445                - admin
  3446    /api/v1/admin/domain_blocks:
  3447        get:
  3448            operationId: domainBlocksGet
  3449            parameters:
  3450                - description: If set to `true`, then each entry in the returned list of domain blocks will only consist of the fields `domain` and `public_comment`. This is perfect for when you want to save and share a list of all the domains you have blocked on your instance, so that someone else can easily import them, but you don't want them to see the database IDs of your blocks, or private comments etc.
  3451                  in: query
  3452                  name: export
  3453                  type: boolean
  3454            produces:
  3455                - application/json
  3456            responses:
  3457                "200":
  3458                    description: All domain blocks currently in place.
  3459                    schema:
  3460                        items:
  3461                            $ref: '#/definitions/domainBlock'
  3462                        type: array
  3463                "400":
  3464                    description: bad request
  3465                "401":
  3466                    description: unauthorized
  3467                "403":
  3468                    description: forbidden
  3469                "404":
  3470                    description: not found
  3471                "406":
  3472                    description: not acceptable
  3473                "500":
  3474                    description: internal server error
  3475            security:
  3476                - OAuth2 Bearer:
  3477                    - admin
  3478            summary: View all domain blocks currently in place.
  3479            tags:
  3480                - admin
  3481        post:
  3482            consumes:
  3483                - multipart/form-data
  3484            description: |-
  3485                You have two options when using this endpoint: either you can set `import` to `true` and
  3486                upload a file containing multiple domain blocks, JSON-formatted, or you can leave import as
  3487                `false`, and just add one domain block.
  3488
  3489                The format of the json file should be something like: `[{"domain":"example.org"},{"domain":"whatever.com","public_comment":"they smell"}]`
  3490            operationId: domainBlockCreate
  3491            parameters:
  3492                - default: false
  3493                  description: Signal that a list of domain blocks is being imported as a file. If set to `true`, then 'domains' must be present as a JSON-formatted file. If set to `false`, then `domains` will be ignored, and `domain` must be present.
  3494                  in: query
  3495                  name: import
  3496                  type: boolean
  3497                - description: JSON-formatted list of domain blocks to import. This is only used if `import` is set to `true`.
  3498                  in: formData
  3499                  name: domains
  3500                  type: file
  3501                - description: Single domain to block. Used only if `import` is not `true`.
  3502                  in: formData
  3503                  name: domain
  3504                  type: string
  3505                - description: Obfuscate the name of the domain when serving it publicly. Eg., `example.org` becomes something like `ex***e.org`. Used only if `import` is not `true`.
  3506                  in: formData
  3507                  name: obfuscate
  3508                  type: boolean
  3509                - description: Public comment about this domain block. This will be displayed alongside the domain block if you choose to share blocks. Used only if `import` is not `true`.
  3510                  in: formData
  3511                  name: public_comment
  3512                  type: string
  3513                - description: Private comment about this domain block. Will only be shown to other admins, so this is a useful way of internally keeping track of why a certain domain ended up blocked. Used only if `import` is not `true`.
  3514                  in: formData
  3515                  name: private_comment
  3516                  type: string
  3517            produces:
  3518                - application/json
  3519            responses:
  3520                "200":
  3521                    description: The newly created domain block, if `import` != `true`. If a list has been imported, then an `array` of newly created domain blocks will be returned instead.
  3522                    schema:
  3523                        $ref: '#/definitions/domainBlock'
  3524                "400":
  3525                    description: bad request
  3526                "401":
  3527                    description: unauthorized
  3528                "403":
  3529                    description: forbidden
  3530                "404":
  3531                    description: not found
  3532                "406":
  3533                    description: not acceptable
  3534                "500":
  3535                    description: internal server error
  3536            security:
  3537                - OAuth2 Bearer:
  3538                    - admin
  3539            summary: Create one or more domain blocks, from a string or a file.
  3540            tags:
  3541                - admin
  3542    /api/v1/admin/domain_blocks/{id}:
  3543        delete:
  3544            operationId: domainBlockDelete
  3545            parameters:
  3546                - description: The id of the domain block.
  3547                  in: path
  3548                  name: id
  3549                  required: true
  3550                  type: string
  3551            produces:
  3552                - application/json
  3553            responses:
  3554                "200":
  3555                    description: The domain block that was just deleted.
  3556                    schema:
  3557                        $ref: '#/definitions/domainBlock'
  3558                "400":
  3559                    description: bad request
  3560                "401":
  3561                    description: unauthorized
  3562                "403":
  3563                    description: forbidden
  3564                "404":
  3565                    description: not found
  3566                "406":
  3567                    description: not acceptable
  3568                "500":
  3569                    description: internal server error
  3570            security:
  3571                - OAuth2 Bearer:
  3572                    - admin
  3573            summary: Delete domain block with the given ID.
  3574            tags:
  3575                - admin
  3576        get:
  3577            operationId: domainBlockGet
  3578            parameters:
  3579                - description: The id of the domain block.
  3580                  in: path
  3581                  name: id
  3582                  required: true
  3583                  type: string
  3584            produces:
  3585                - application/json
  3586            responses:
  3587                "200":
  3588                    description: The requested domain block.
  3589                    schema:
  3590                        $ref: '#/definitions/domainBlock'
  3591                "400":
  3592                    description: bad request
  3593                "401":
  3594                    description: unauthorized
  3595                "403":
  3596                    description: forbidden
  3597                "404":
  3598                    description: not found
  3599                "406":
  3600                    description: not acceptable
  3601                "500":
  3602                    description: internal server error
  3603            security:
  3604                - OAuth2 Bearer:
  3605                    - admin
  3606            summary: View domain block with the given ID.
  3607            tags:
  3608                - admin
  3609    /api/v1/admin/media_cleanup:
  3610        post:
  3611            consumes:
  3612                - application/json
  3613                - application/xml
  3614                - application/x-www-form-urlencoded
  3615            description: Also cleans up unused headers + avatars from the media cache and prunes orphaned items from storage.
  3616            operationId: mediaCleanup
  3617            parameters:
  3618                - description: |-
  3619                    Number of days of remote media to keep. Native values will be treated as 0.
  3620                    If value is not specified, the value of media-remote-cache-days in the server config will be used.
  3621                  format: int64
  3622                  in: query
  3623                  name: remote_cache_days
  3624                  type: integer
  3625                  x-go-name: RemoteCacheDays
  3626            produces:
  3627                - application/json
  3628            responses:
  3629                "200":
  3630                    description: Echos the number of days requested. The cleanup is performed asynchronously after the request completes.
  3631                "400":
  3632                    description: bad request
  3633                "401":
  3634                    description: unauthorized
  3635                "403":
  3636                    description: forbidden
  3637                "404":
  3638                    description: not found
  3639                "406":
  3640                    description: not acceptable
  3641                "500":
  3642                    description: internal server error
  3643            security:
  3644                - OAuth2 Bearer:
  3645                    - admin
  3646            summary: Clean up remote media older than the specified number of days.
  3647            tags:
  3648                - admin
  3649    /api/v1/admin/media_refetch:
  3650        post:
  3651            description: |-
  3652                Currently, this only includes remote emojis.
  3653                This endpoint is useful when data loss has occurred, and you want to try to recover to a working state.
  3654            operationId: mediaRefetch
  3655            parameters:
  3656                - description: Domain to refetch media from. If empty, all domains will be refetched.
  3657                  in: query
  3658                  name: domain
  3659                  type: string
  3660            produces:
  3661                - application/json
  3662            responses:
  3663                "202":
  3664                    description: Request accepted and will be processed. Check the logs for progress / errors.
  3665                "400":
  3666                    description: bad request
  3667                "401":
  3668                    description: unauthorized
  3669                "403":
  3670                    description: forbidden
  3671                "404":
  3672                    description: not found
  3673                "406":
  3674                    description: not acceptable
  3675                "500":
  3676                    description: internal server error
  3677            security:
  3678                - OAuth2 Bearer:
  3679                    - admin
  3680            summary: Refetch media specified in the database but missing from storage.
  3681            tags:
  3682                - admin
  3683    /api/v1/admin/reports:
  3684        get:
  3685            description: |-
  3686                The reports will be returned in descending chronological order (newest first), with sequential IDs (bigger = newer).
  3687
  3688                The next and previous queries can be parsed from the returned Link header.
  3689
  3690                Example:
  3691
  3692                ```
  3693                <https://example.org/api/v1/admin/reports?limit=20&max_id=01FC0SKA48HNSVR6YKZCQGS2V8>; rel="next", <https://example.org/api/v1/admin/reports?limit=20&min_id=01FC0SKW5JK2Q4EVAV2B462YY0>; rel="prev"
  3694                ````
  3695            operationId: adminReports
  3696            parameters:
  3697                - description: If set to true, only resolved reports will be returned. If false, only unresolved reports will be returned. If unset, reports will not be filtered on their resolved status.
  3698                  in: query
  3699                  name: resolved
  3700                  type: boolean
  3701                - description: Return only reports created by the given account id.
  3702                  in: query
  3703                  name: account_id
  3704                  type: string
  3705                - description: Return only reports that target the given account id.
  3706                  in: query
  3707                  name: target_account_id
  3708                  type: string
  3709                - description: Return only reports *OLDER* than the given max ID. The report with the specified ID will not be included in the response.
  3710                  in: query
  3711                  name: max_id
  3712                  type: string
  3713                - description: Return only reports *NEWER* than the given since ID. The report with the specified ID will not be included in the response. This parameter is functionally equivalent to min_id.
  3714                  in: query
  3715                  name: since_id
  3716                  type: string
  3717                - description: Return only reports *NEWER* than the given min ID. The report with the specified ID will not be included in the response. This parameter is functionally equivalent to since_id.
  3718                  in: query
  3719                  name: min_id
  3720                  type: string
  3721                - default: 20
  3722                  description: Number of reports to return. If less than 1, will be clamped to 1. If more than 100, will be clamped to 100.
  3723                  in: query
  3724                  name: limit
  3725                  type: integer
  3726            produces:
  3727                - application/json
  3728            responses:
  3729                "200":
  3730                    description: Array of reports.
  3731                    schema:
  3732                        items:
  3733                            $ref: '#/definitions/adminReport'
  3734                        type: array
  3735                "400":
  3736                    description: bad request
  3737                "401":
  3738                    description: unauthorized
  3739                "404":
  3740                    description: not found
  3741                "406":
  3742                    description: not acceptable
  3743                "500":
  3744                    description: internal server error
  3745            security:
  3746                - OAuth2 Bearer:
  3747                    - admin
  3748            summary: View user moderation reports.
  3749            tags:
  3750                - admin
  3751    /api/v1/admin/reports/{id}:
  3752        get:
  3753            operationId: adminReportGet
  3754            parameters:
  3755                - description: The id of the report.
  3756                  in: path
  3757                  name: id
  3758                  required: true
  3759                  type: string
  3760            produces:
  3761                - application/json
  3762            responses:
  3763                "200":
  3764                    description: The requested report.
  3765                    schema:
  3766                        $ref: '#/definitions/adminReport'
  3767                "400":
  3768                    description: bad request
  3769                "401":
  3770                    description: unauthorized
  3771                "404":
  3772                    description: not found
  3773                "406":
  3774                    description: not acceptable
  3775                "500":
  3776                    description: internal server error
  3777            security:
  3778                - OAuth2 Bearer:
  3779                    - admin
  3780            summary: View user moderation report with the given id.
  3781            tags:
  3782                - admin
  3783    /api/v1/admin/reports/{id}/resolve:
  3784        post:
  3785            consumes:
  3786                - application/json
  3787                - application/xml
  3788                - multipart/form-data
  3789            operationId: adminReportResolve
  3790            parameters:
  3791                - description: The id of the report.
  3792                  in: path
  3793                  name: id
  3794                  required: true
  3795                  type: string
  3796                - description: Optional admin comment on the action taken in response to this report. Useful for providing an explanation about what action was taken (if any) before the report was marked as resolved. This will be visible to the user that created the report!
  3797                  x-example: The reported account was suspended.
  3798                  in: formData
  3799                  name: action_taken_comment
  3800                  type: string
  3801            produces:
  3802                - application/json
  3803            responses:
  3804                "200":
  3805                    description: The resolved report.
  3806                    schema:
  3807                        $ref: '#/definitions/adminReport'
  3808                "400":
  3809                    description: bad request
  3810                "401":
  3811                    description: unauthorized
  3812                "404":
  3813                    description: not found
  3814                "406":
  3815                    description: not acceptable
  3816                "500":
  3817                    description: internal server error
  3818            security:
  3819                - OAuth2 Bearer:
  3820                    - admin
  3821            summary: Mark a report as resolved.
  3822            tags:
  3823                - admin
  3824    /api/v1/apps:
  3825        post:
  3826            consumes:
  3827                - application/json
  3828                - application/xml
  3829                - application/x-www-form-urlencoded
  3830            description: |-
  3831                The registered application can be used to obtain an application token.
  3832                This can then be used to register a new account, or (through user auth) obtain an access token.
  3833
  3834                The parameters can also be given in the body of the request, as JSON, if the content-type is set to 'application/json'.
  3835                The parameters can also be given in the body of the request, as XML, if the content-type is set to 'application/xml'.
  3836            operationId: appCreate
  3837            parameters:
  3838                - description: The name of the application.
  3839                  in: formData
  3840                  name: client_name
  3841                  required: true
  3842                  type: string
  3843                  x-go-name: ClientName
  3844                - description: |-
  3845                    Where the user should be redirected after authorization.
  3846
  3847                    To display the authorization code to the user instead of redirecting to a web page, use `urn:ietf:wg:oauth:2.0:oob` in this parameter.
  3848                  in: formData
  3849                  name: redirect_uris
  3850                  required: true
  3851                  type: string
  3852                  x-go-name: RedirectURIs
  3853                - description: |-
  3854                    Space separated list of scopes.
  3855
  3856                    If no scopes are provided, defaults to `read`.
  3857                  in: formData
  3858                  name: scopes
  3859                  type: string
  3860                  x-go-name: Scopes
  3861                - description: A URL to the web page of the app (optional).
  3862                  in: formData
  3863                  name: website
  3864                  type: string
  3865                  x-go-name: Website
  3866            produces:
  3867                - application/json
  3868            responses:
  3869                "200":
  3870                    description: The newly-created application.
  3871                    schema:
  3872                        $ref: '#/definitions/application'
  3873                "400":
  3874                    description: bad request
  3875                "401":
  3876                    description: unauthorized
  3877                "403":
  3878                    description: forbidden
  3879                "404":
  3880                    description: not found
  3881                "406":
  3882                    description: not acceptable
  3883                "500":
  3884                    description: internal server error
  3885            summary: Register a new application on this instance.
  3886            tags:
  3887                - apps
  3888    /api/v1/blocks:
  3889        get:
  3890            description: |-
  3891                The next and previous queries can be parsed from the returned Link header.
  3892                Example:
  3893
  3894                ```
  3895                <https://example.org/api/v1/blocks?limit=80&max_id=01FC0SKA48HNSVR6YKZCQGS2V8>; rel="next", <https://example.org/api/v1/blocks?limit=80&min_id=01FC0SKW5JK2Q4EVAV2B462YY0>; rel="prev"
  3896                ````
  3897            operationId: blocksGet
  3898            parameters:
  3899                - default: 20
  3900                  description: Number of blocks to return.
  3901                  in: query
  3902                  name: limit
  3903                  type: integer
  3904                - description: Return only blocks *OLDER* than the given block ID. The block with the specified ID will not be included in the response.
  3905                  in: query
  3906                  name: max_id
  3907                  type: string
  3908                - description: Return only blocks *NEWER* than the given block ID. The block with the specified ID will not be included in the response.
  3909                  in: query
  3910                  name: since_id
  3911                  type: string
  3912            produces:
  3913                - application/json
  3914            responses:
  3915                "200":
  3916                    description: ""
  3917                    headers:
  3918                        Link:
  3919                            description: Links to the next and previous queries.
  3920                            type: string
  3921                    schema:
  3922                        items:
  3923                            $ref: '#/definitions/account'
  3924                        type: array
  3925                "400":
  3926                    description: bad request
  3927                "401":
  3928                    description: unauthorized
  3929                "404":
  3930                    description: not found
  3931                "406":
  3932                    description: not acceptable
  3933                "500":
  3934                    description: internal server error
  3935            security:
  3936                - OAuth2 Bearer:
  3937                    - read:blocks
  3938            summary: Get an array of accounts that requesting account has blocked.
  3939            tags:
  3940                - blocks
  3941    /api/v1/bookmarks:
  3942        get:
  3943            description: Get an array of statuses bookmarked in the instance
  3944            operationId: bookmarksGet
  3945            produces:
  3946                - application/json
  3947            responses:
  3948                "200":
  3949                    description: Array of bookmarked statuses
  3950                    headers:
  3951                        Link:
  3952                            description: Links to the next and previous queries.
  3953                            type: string
  3954                    schema:
  3955                        items:
  3956                            $ref: '#/definitions/status'
  3957                        type: array
  3958                "401":
  3959                    description: unauthorized
  3960                "406":
  3961                    description: not acceptable
  3962                "500":
  3963                    description: internal server error
  3964            security:
  3965                - OAuth2 Bearer:
  3966                    - read:bookmarks
  3967            tags:
  3968                - bookmarks
  3969    /api/v1/custom_emojis:
  3970        get:
  3971            operationId: customEmojisGet
  3972            produces:
  3973                - application/json
  3974            responses:
  3975                "200":
  3976                    description: Array of custom emojis.
  3977                    schema:
  3978                        items:
  3979                            $ref: '#/definitions/emoji'
  3980                        type: array
  3981                "401":
  3982                    description: unauthorized
  3983                "406":
  3984                    description: not acceptable
  3985                "500":
  3986                    description: internal server error
  3987            security:
  3988                - OAuth2 Bearer:
  3989                    - read:custom_emojis
  3990            summary: Get an array of custom emojis available on the instance.
  3991            tags:
  3992                - custom_emojis
  3993    /api/v1/favourites:
  3994        get:
  3995            description: |-
  3996                The next and previous queries can be parsed from the returned Link header.
  3997                Example:
  3998
  3999                ```
  4000                <https://example.org/api/v1/favourites?limit=80&max_id=01FC0SKA48HNSVR6YKZCQGS2V8>; rel="next", <https://example.org/api/v1/favourites?limit=80&min_id=01FC0SKW5JK2Q4EVAV2B462YY0>; rel="prev"
  4001                ````
  4002            operationId: favouritesGet
  4003            parameters:
  4004                - default: 20
  4005                  description: Number of statuses to return.
  4006                  in: query
  4007                  name: limit
  4008                  type: integer
  4009                - description: Return only favourited statuses *OLDER* than the given favourite ID. The status with the corresponding fave ID will not be included in the response.
  4010                  in: query
  4011                  name: max_id
  4012                  type: string
  4013                - description: Return only favourited statuses *NEWER* than the given favourite ID. The status with the corresponding fave ID will not be included in the response.
  4014                  in: query
  4015                  name: min_id
  4016                  type: string
  4017            produces:
  4018                - application/json
  4019            responses:
  4020                "200":
  4021                    description: ""
  4022                    headers:
  4023                        Link:
  4024                            description: Links to the next and previous queries.
  4025                            type: string
  4026                    schema:
  4027                        items:
  4028                            $ref: '#/definitions/status'
  4029                        type: array
  4030                "400":
  4031                    description: bad request
  4032                "401":
  4033                    description: unauthorized
  4034                "404":
  4035                    description: not found
  4036                "406":
  4037                    description: not acceptable
  4038                "500":
  4039                    description: internal server error
  4040            security:
  4041                - OAuth2 Bearer:
  4042                    - read:favourites
  4043            summary: Get an array of statuses that the requesting account has favourited.
  4044            tags:
  4045                - favourites
  4046    /api/v1/featured_tags:
  4047        get:
  4048            description: 'THIS ENDPOINT IS CURRENTLY NOT FULLY IMPLEMENTED: it will always return an empty array.'
  4049            operationId: getFeaturedTags
  4050            produces:
  4051                - application/json
  4052            responses:
  4053                "200":
  4054                    description: ""
  4055                    schema:
  4056                        items:
  4057                            type: object
  4058                        type: array
  4059                "400":
  4060                    description: bad request
  4061                "401":
  4062                    description: unauthorized
  4063                "404":
  4064                    description: not found
  4065                "406":
  4066                    description: not acceptable
  4067                "500":
  4068                    description: internal server error
  4069            security:
  4070                - OAuth2 Bearer:
  4071                    - read:accounts
  4072            summary: Get an array of all hashtags that you currently have featured on your profile.
  4073            tags:
  4074                - featured_tags
  4075    /api/v1/follow_requests:
  4076        get:
  4077            description: Accounts will be sorted in order of follow request date descending (newest first).
  4078            operationId: getFollowRequests
  4079            parameters:
  4080                - default: 40
  4081                  description: Number of accounts to return.
  4082                  in: query
  4083                  name: limit
  4084                  type: integer
  4085            produces:
  4086                - application/json
  4087            responses:
  4088                "200":
  4089                    description: ""
  4090                    headers:
  4091                        Link:
  4092                            description: Links to the next and previous queries.
  4093                            type: string
  4094                    schema:
  4095                        items:
  4096                            $ref: '#/definitions/account'
  4097                        type: array
  4098                "400":
  4099                    description: bad request
  4100                "401":
  4101                    description: unauthorized
  4102                "404":
  4103                    description: not found
  4104                "406":
  4105                    description: not acceptable
  4106                "500":
  4107                    description: internal server error
  4108            security:
  4109                - OAuth2 Bearer:
  4110                    - read:follows
  4111            summary: Get an array of accounts that have requested to follow you.
  4112            tags:
  4113                - follow_requests
  4114    /api/v1/follow_requests/{account_id}/authorize:
  4115        post:
  4116            description: Accept a follow request and put the requesting account in your 'followers' list.
  4117            operationId: authorizeFollowRequest
  4118            parameters:
  4119                - description: ID of the account requesting to follow you.
  4120                  in: path
  4121                  name: account_id
  4122                  required: true
  4123                  type: string
  4124            produces:
  4125                - application/json
  4126            responses:
  4127                "200":
  4128                    description: Your relationship to this account.
  4129                    schema:
  4130                        $ref: '#/definitions/accountRelationship'
  4131                "400":
  4132                    description: bad request
  4133                "401":
  4134                    description: unauthorized
  4135                "404":
  4136                    description: not found
  4137                "406":
  4138                    description: not acceptable
  4139                "500":
  4140                    description: internal server error
  4141            security:
  4142                - OAuth2 Bearer:
  4143                    - write:follows
  4144            summary: Accept/authorize follow request from the given account ID.
  4145            tags:
  4146                - follow_requests
  4147    /api/v1/follow_requests/{account_id}/reject:
  4148        post:
  4149            operationId: rejectFollowRequest
  4150            parameters:
  4151                - description: ID of the account requesting to follow you.
  4152                  in: path
  4153                  name: account_id
  4154                  required: true
  4155                  type: string
  4156            produces:
  4157                - application/json
  4158            responses:
  4159                "200":
  4160                    description: Your relationship to this account.
  4161                    schema:
  4162                        $ref: '#/definitions/accountRelationship'
  4163                "400":
  4164                    description: bad request
  4165                "401":
  4166                    description: unauthorized
  4167                "404":
  4168                    description: not found
  4169                "406":
  4170                    description: not acceptable
  4171                "500":
  4172                    description: internal server error
  4173            security:
  4174                - OAuth2 Bearer:
  4175                    - write:follows
  4176            summary: Reject/deny follow request from the given account ID.
  4177            tags:
  4178                - follow_requests
  4179    /api/v1/instance:
  4180        get:
  4181            operationId: instanceGetV1
  4182            produces:
  4183                - application/json
  4184            responses:
  4185                "200":
  4186                    description: Instance information.
  4187                    schema:
  4188                        $ref: '#/definitions/instanceV1'
  4189                "406":
  4190                    description: not acceptable
  4191                "500":
  4192                    description: internal error
  4193            summary: View instance information.
  4194            tags:
  4195                - instance
  4196        patch:
  4197            consumes:
  4198                - multipart/form-data
  4199            description: This requires admin permissions on the instance.
  4200            operationId: instanceUpdate
  4201            parameters:
  4202                - allowEmptyValue: true
  4203                  description: Title to use for the instance.
  4204                  in: formData
  4205                  maximum: 40
  4206                  name: title
  4207                  type: string
  4208                - allowEmptyValue: true
  4209                  description: Username of the contact account. This must be the username of an instance admin.
  4210                  in: formData
  4211                  name: contact_username
  4212                  type: string
  4213                - allowEmptyValue: true
  4214                  description: Email address to use as the instance contact.
  4215                  in: formData
  4216                  name: contact_email
  4217                  type: string
  4218                - allowEmptyValue: true
  4219                  description: Short description of the instance.
  4220                  in: formData
  4221                  maximum: 500
  4222                  name: short_description
  4223                  type: string
  4224                - allowEmptyValue: true
  4225                  description: Longer description of the instance.
  4226                  in: formData
  4227                  maximum: 5000
  4228                  name: description
  4229                  type: string
  4230                - allowEmptyValue: true
  4231                  description: Terms and conditions of the instance.
  4232                  in: formData
  4233                  maximum: 5000
  4234                  name: terms
  4235                  type: string
  4236                - description: Thumbnail image to use for the instance.
  4237                  in: formData
  4238                  name: thumbnail
  4239                  type: file
  4240                - description: Image description of the submitted instance thumbnail.
  4241                  in: formData
  4242                  name: thumbnail_description
  4243                  type: string
  4244                - description: Header image to use for the instance.
  4245                  in: formData
  4246                  name: header
  4247                  type: file
  4248            produces:
  4249                - application/json
  4250            responses:
  4251                "200":
  4252                    description: The newly updated instance.
  4253                    schema:
  4254                        $ref: '#/definitions/instanceV1'
  4255                "400":
  4256                    description: bad request
  4257                "401":
  4258                    description: unauthorized
  4259                "403":
  4260                    description: forbidden
  4261                "404":
  4262                    description: not found
  4263                "406":
  4264                    description: not acceptable
  4265                "500":
  4266                    description: internal server error
  4267            security:
  4268                - OAuth2 Bearer:
  4269                    - admin
  4270            summary: Update your instance information and/or upload a new avatar/header for the instance.
  4271            tags:
  4272                - instance
  4273    /api/v1/instance/peers:
  4274        get:
  4275            operationId: instancePeersGet
  4276            parameters:
  4277                - default: open
  4278                  description: |-
  4279                    Comma-separated list of filters to apply to results. Recognized filters are:
  4280                      - `open` -- include peers that are not suspended or silenced
  4281                      - `suspended` -- include peers that have been suspended.
  4282
  4283                    If filter is `open`, only instances that haven't been suspended or silenced will be returned.
  4284
  4285                    If filter is `suspended`, only suspended instances will be shown.
  4286
  4287                    If filter is `open,suspended`, then all known instances will be returned.
  4288
  4289                    If filter is an empty string or not set, then `open` will be assumed as the default.
  4290                  in: query
  4291                  name: filter
  4292                  type: string
  4293            produces:
  4294                - application/json
  4295            responses:
  4296                "200":
  4297                    description: |-
  4298                        If no filter parameter is provided, or filter is empty, then a legacy, Mastodon-API compatible response will be returned. This will consist of just a 'flat' array of strings like `["example.com", "example.org"]`, which corresponds to domains this instance peers with.
  4299
  4300                        If a filter parameter is provided, then an array of objects with at least a `domain` key set on each object will be returned.
  4301
  4302                        Domains that are silenced or suspended will also have a key `suspended_at` or `silenced_at` that contains an iso8601 date string. If one of these keys is not present on the domain object, it is open. Suspended instances may in some cases be obfuscated, which means they will have some letters replaced by `*` to make it more difficult for bad actors to target instances with harassment.
  4303
  4304                        Whether a flat response or a more detailed response is returned, domains will be sorted alphabetically by hostname.
  4305                    schema:
  4306                        items:
  4307                            $ref: '#/definitions/domain'
  4308                        type: array
  4309                "400":
  4310                    description: bad request
  4311                "401":
  4312                    description: unauthorized
  4313                "403":
  4314                    description: forbidden
  4315                "404":
  4316                    description: not found
  4317                "406":
  4318                    description: not acceptable
  4319                "500":
  4320                    description: internal server error
  4321            tags:
  4322                - instance
  4323    /api/v1/media/{id}:
  4324        get:
  4325            operationId: mediaGet
  4326            parameters:
  4327                - description: id of the attachment
  4328                  in: path
  4329                  name: id
  4330                  required: true
  4331                  type: string
  4332            produces:
  4333                - application/json
  4334            responses:
  4335                "200":
  4336                    description: The requested media attachment.
  4337                    schema:
  4338                        $ref: '#/definitions/attachment'
  4339                "400":
  4340                    description: bad request
  4341                "401":
  4342                    description: unauthorized
  4343                "404":
  4344                    description: not found
  4345                "406":
  4346                    description: not acceptable
  4347                "500":
  4348                    description: internal server error
  4349            security:
  4350                - OAuth2 Bearer:
  4351                    - read:media
  4352            summary: Get a media attachment that you own.
  4353            tags:
  4354                - media
  4355        put:
  4356            consumes:
  4357                - application/json
  4358                - application/xml
  4359                - application/x-www-form-urlencoded
  4360            description: |-
  4361                You must own the media attachment, and the attachment must not yet be attached to a status.
  4362
  4363                The parameters can also be given in the body of the request, as JSON, if the content-type is set to 'application/json'.
  4364                The parameters can also be given in the body of the request, as XML, if the content-type is set to 'application/xml'.
  4365            operationId: mediaUpdate
  4366            parameters:
  4367                - description: id of the attachment to update
  4368                  in: path
  4369                  name: id
  4370                  required: true
  4371                  type: string
  4372                - allowEmptyValue: true
  4373                  description: Image or media description to use as alt-text on the attachment. This is very useful for users of screenreaders! May or may not be required, depending on your instance settings.
  4374                  in: formData
  4375                  name: description
  4376                  type: string
  4377                - allowEmptyValue: true
  4378                  default: 0,0
  4379                  description: 'Focus of the media file. If present, it should be in the form of two comma-separated floats between -1 and 1. For example: `-0.5,0.25`.'
  4380                  in: formData
  4381                  name: focus
  4382                  type: string
  4383            produces:
  4384                - application/json
  4385            responses:
  4386                "200":
  4387                    description: The newly-updated media attachment.
  4388                    schema:
  4389                        $ref: '#/definitions/attachment'
  4390                "400":
  4391                    description: bad request
  4392                "401":
  4393                    description: unauthorized
  4394                "404":
  4395                    description: not found
  4396                "406":
  4397                    description: not acceptable
  4398                "500":
  4399                    description: internal server error
  4400            security:
  4401                - OAuth2 Bearer:
  4402                    - write:media
  4403            summary: Update a media attachment.
  4404            tags:
  4405                - media
  4406    /api/v1/notifications:
  4407        get:
  4408            description: |-
  4409                The notifications will be returned in descending chronological order (newest first), with sequential IDs (bigger = newer).
  4410
  4411                The next and previous queries can be parsed from the returned Link header.
  4412                Example:
  4413
  4414                ```
  4415                <https://example.org/api/v1/notifications?limit=80&max_id=01FC0SKA48HNSVR6YKZCQGS2V8>; rel="next", <https://example.org/api/v1/notifications?limit=80&since_id=01FC0SKW5JK2Q4EVAV2B462YY0>; rel="prev"
  4416                ````
  4417            operationId: notifications
  4418            parameters:
  4419                - default: 20
  4420                  description: Number of notifications to return.
  4421                  in: query
  4422                  name: limit
  4423                  type: integer
  4424                - in: query
  4425                  items:
  4426                    type: string
  4427                  name: exclude_types
  4428                  type: array
  4429                - description: Return only notifications *OLDER* than the given max status ID. The status with the specified ID will not be included in the response.
  4430                  in: query
  4431                  name: max_id
  4432                  type: string
  4433                - description: |-
  4434                    Return only notifications *NEWER* than the given since status ID.
  4435                    The status with the specified ID will not be included in the response.
  4436                  in: query
  4437                  name: since_id
  4438                  type: string
  4439            produces:
  4440                - application/json
  4441            responses:
  4442                "200":
  4443                    description: Array of notifications.
  4444                    headers:
  4445                        Link:
  4446                            description: Links to the next and previous queries.
  4447                            type: string
  4448                    schema:
  4449                        items:
  4450                            $ref: '#/definitions/notification'
  4451                        type: array
  4452                "400":
  4453                    description: bad request
  4454                "401":
  4455                    description: unauthorized
  4456                "404":
  4457                    description: not found
  4458                "406":
  4459                    description: not acceptable
  4460                "500":
  4461                    description: internal server error
  4462            security:
  4463                - OAuth2 Bearer:
  4464                    - read:notifications
  4465            summary: Get notifications for currently authorized user.
  4466            tags:
  4467                - notifications
  4468        post:
  4469            description: Will return an empty object `{}` to indicate success.
  4470            operationId: clearNotifications
  4471            produces:
  4472                - application/json
  4473            responses:
  4474                "200":
  4475                    description: ""
  4476                    schema:
  4477                        type: object
  4478                "400":
  4479                    description: bad request
  4480                "401":
  4481                    description: unauthorized
  4482                "404":
  4483                    description: not found
  4484                "406":
  4485                    description: not acceptable
  4486                "500":
  4487                    description: internal server error
  4488            security:
  4489                - OAuth2 Bearer:
  4490                    - read:notifications
  4491            summary: Clear/delete all notifications for currently authorized user.
  4492            tags:
  4493                - notifications
  4494    /api/v1/reports:
  4495        get:
  4496            description: |-
  4497                The reports will be returned in descending chronological order (newest first), with sequential IDs (bigger = newer).
  4498
  4499                The next and previous queries can be parsed from the returned Link header.
  4500
  4501                Example:
  4502
  4503                ```
  4504                <https://example.org/api/v1/reports?limit=20&max_id=01FC0SKA48HNSVR6YKZCQGS2V8>; rel="next", <https://example.org/api/v1/reports?limit=20&min_id=01FC0SKW5JK2Q4EVAV2B462YY0>; rel="prev"
  4505                ````
  4506            operationId: reports
  4507            parameters:
  4508                - description: If set to true, only resolved reports will be returned. If false, only unresolved reports will be returned. If unset, reports will not be filtered on their resolved status.
  4509                  in: query
  4510                  name: resolved
  4511                  type: boolean
  4512                - description: Return only reports that target the given account id.
  4513                  in: query
  4514                  name: target_account_id
  4515                  type: string
  4516                - description: Return only reports *OLDER* than the given max ID. The report with the specified ID will not be included in the response.
  4517                  in: query
  4518                  name: max_id
  4519                  type: string
  4520                - description: Return only reports *NEWER* than the given since ID. The report with the specified ID will not be included in the response. This parameter is functionally equivalent to min_id.
  4521                  in: query
  4522                  name: since_id
  4523                  type: string
  4524                - description: Return only reports *NEWER* than the given min ID. The report with the specified ID will not be included in the response. This parameter is functionally equivalent to since_id.
  4525                  in: query
  4526                  name: min_id
  4527                  type: string
  4528                - default: 20
  4529                  description: Number of reports to return. If less than 1, will be clamped to 1. If more than 100, will be clamped to 100.
  4530                  in: query
  4531                  name: limit
  4532                  type: integer
  4533            produces:
  4534                - application/json
  4535            responses:
  4536                "200":
  4537                    description: Array of reports.
  4538                    schema:
  4539                        items:
  4540                            $ref: '#/definitions/report'
  4541                        type: array
  4542                "400":
  4543                    description: bad request
  4544                "401":
  4545                    description: unauthorized
  4546                "404":
  4547                    description: not found
  4548                "406":
  4549                    description: not acceptable
  4550                "500":
  4551                    description: internal server error
  4552            security:
  4553                - OAuth2 Bearer:
  4554                    - read:reports
  4555            summary: See reports created by the requesting account.
  4556            tags:
  4557                - reports
  4558        post:
  4559            consumes:
  4560                - application/json
  4561                - application/xml
  4562                - application/x-www-form-urlencoded
  4563            operationId: reportCreate
  4564            parameters:
  4565                - description: ID of the account to report.
  4566                  x-example: 01GPE75FXSH2EGFBF85NXPH3KP
  4567                  in: formData
  4568                  name: account_id
  4569                  required: true
  4570                  type: string
  4571                  x-go-name: AccountID
  4572                - description: IDs of statuses to attach to the report to provide additional context.
  4573                  x-example:
  4574                    - 01GPE76N4SBVRZ8K24TW51ZZQ4
  4575                    - 01GPE76WN9JZE62EPT3Q9FRRD4
  4576                  in: formData
  4577                  items:
  4578                    type: string
  4579                  name: status_ids
  4580                  type: array
  4581                  x-go-name: StatusIDs
  4582                - description: The reason for the report. Default maximum of 1000 characters.
  4583                  x-example: Anti-Blackness, transphobia.
  4584                  in: formData
  4585                  name: comment
  4586                  type: string
  4587                  x-go-name: Comment
  4588                - default: false
  4589                  description: If the account is remote, should the report be forwarded to the remote admin?
  4590                  x-example: true
  4591                  in: formData
  4592                  name: forward
  4593                  type: boolean
  4594                  x-go-name: Forward
  4595                - default: other
  4596                  description: |-
  4597                    Specify if the report is due to spam, violation of enumerated instance rules, or some other reason.
  4598                    Currently only 'other' is supported.
  4599                  x-example: other
  4600                  in: formData
  4601                  name: category
  4602                  type: string
  4603                  x-go-name: Category
  4604                - description: |-
  4605                    IDs of rules on this instance which have been broken according to the reporter.
  4606                    This is currently not supported, provided only for API compatibility.
  4607                  x-example:
  4608                    - 1
  4609                    - 2
  4610                    - 3
  4611                  in: formData
  4612                  items:
  4613                    format: int64
  4614                    type: integer
  4615                  name: rule_ids
  4616                  type: array
  4617                  x-go-name: RuleIDs
  4618            produces:
  4619                - application/json
  4620            responses:
  4621                "200":
  4622                    description: The created report.
  4623                    schema:
  4624                        $ref: '#/definitions/report'
  4625                "400":
  4626                    description: bad request
  4627                "401":
  4628                    description: unauthorized
  4629                "404":
  4630                    description: not found
  4631                "406":
  4632                    description: not acceptable
  4633                "500":
  4634                    description: internal server error
  4635            security:
  4636                - OAuth2 Bearer:
  4637                    - write:reports
  4638            summary: Create a new user report with the given parameters.
  4639            tags:
  4640                - reports
  4641    /api/v1/reports/{id}:
  4642        get:
  4643            operationId: reportGet
  4644            parameters:
  4645                - description: ID of the report
  4646                  in: path
  4647                  name: id
  4648                  required: true
  4649                  type: string
  4650            produces:
  4651                - application/json
  4652            responses:
  4653                "200":
  4654                    description: The requested report.
  4655                    schema:
  4656                        $ref: '#/definitions/report'
  4657                "400":
  4658                    description: bad request
  4659                "401":
  4660                    description: unauthorized
  4661                "404":
  4662                    description: not found
  4663                "406":
  4664                    description: not acceptable
  4665                "500":
  4666                    description: internal server error
  4667            security:
  4668                - OAuth2 Bearer:
  4669                    - read:reports
  4670            summary: Get one report with the given id.
  4671            tags:
  4672                - reports
  4673    /api/v1/search:
  4674        get:
  4675            description: If statuses are in the result, they will be returned in descending chronological order (newest first), with sequential IDs (bigger = newer).
  4676            operationId: searchGet
  4677            parameters:
  4678                - description: If type is `statuses`, then statuses returned will be authored only by this account.
  4679                  in: query
  4680                  name: account_id
  4681                  type: string
  4682                  x-go-name: AccountID
  4683                - description: |-
  4684                    Return results *older* than this id.
  4685
  4686                    The entry with this ID will not be included in the search results.
  4687                  in: query
  4688                  name: max_id
  4689                  type: string
  4690                  x-go-name: MaxID
  4691                - description: |-
  4692                    Return results *newer* than this id.
  4693
  4694                    The entry with this ID will not be included in the search results.
  4695                  in: query
  4696                  name: min_id
  4697                  type: string
  4698                  x-go-name: MinID
  4699                - description: |-
  4700                    Type of the search query to perform.
  4701
  4702                    Must be one of: `accounts`, `hashtags`, `statuses`.
  4703                  in: query
  4704                  name: type
  4705                  required: true
  4706                  type: string
  4707                  x-go-name: Type
  4708                - default: false
  4709                  description: Filter out tags that haven't been reviewed and approved by an instance admin.
  4710                  in: query
  4711                  name: exclude_unreviewed
  4712                  type: boolean
  4713                  x-go-name: ExcludeUnreviewed
  4714                - description: |-
  4715                    String to use as a search query.
  4716
  4717                    For accounts, this should be in the format `@someaccount@some.instance.com`, or the format `https://some.instance.com/@someaccount`
  4718
  4719                    For a status, this can be in the format: `https://some.instance.com/@someaccount/SOME_ID_OF_A_STATUS`
  4720                  in: query
  4721                  name: q
  4722                  required: true
  4723                  type: string
  4724                  x-go-name: Query
  4725                - default: false
  4726                  description: Attempt to resolve the query by performing a remote webfinger lookup, if the query includes a remote host.
  4727                  in: query
  4728                  name: resolve
  4729                  type: boolean
  4730                  x-go-name: Resolve
  4731                - default: 20
  4732                  description: Maximum number of results to load, per type.
  4733                  format: int64
  4734                  in: query
  4735                  maximum: 40
  4736                  minimum: 1
  4737                  name: limit
  4738                  type: integer
  4739                  x-go-name: Limit
  4740                - default: 0
  4741                  description: Offset for paginating search results.
  4742                  format: int64
  4743                  in: query
  4744                  name: offset
  4745                  type: integer
  4746                  x-go-name: Offset
  4747                - default: false
  4748                  description: Only include accounts that the searching account is following.
  4749                  in: query
  4750                  name: following
  4751                  type: boolean
  4752                  x-go-name: Following
  4753            responses:
  4754                "200":
  4755                    description: Results of the search.
  4756                    schema:
  4757                        items:
  4758                            $ref: '#/definitions/searchResult'
  4759                        type: array
  4760                "400":
  4761                    description: bad request
  4762                "401":
  4763                    description: unauthorized
  4764                "404":
  4765                    description: not found
  4766                "406":
  4767                    description: not acceptable
  4768                "500":
  4769                    description: internal server error
  4770            security:
  4771                - OAuth2 Bearer:
  4772                    - read:search
  4773            summary: Search for statuses, accounts, or hashtags, on this instance or elsewhere.
  4774            tags:
  4775                - search
  4776    /api/v1/statuses:
  4777        post:
  4778            consumes:
  4779                - application/json
  4780                - application/xml
  4781                - application/x-www-form-urlencoded
  4782            description: |-
  4783                The parameters can also be given in the body of the request, as JSON, if the content-type is set to 'application/json'.
  4784                The parameters can also be given in the body of the request, as XML, if the content-type is set to 'application/xml'.
  4785            operationId: statusCreate
  4786            parameters:
  4787                - description: |-
  4788                    Text content of the status.
  4789                    If media_ids is provided, this becomes optional.
  4790                    Attaching a poll is optional while status is provided.
  4791                  in: formData
  4792                  name: status
  4793                  type: string
  4794                  x-go-name: Status
  4795                - description: |-
  4796                    Array of Attachment ids to be attached as media.
  4797                    If provided, status becomes optional, and poll cannot be used.
  4798
  4799                    If the status is being submitted as a form, the key is 'media_ids[]',
  4800                    but if it's json or xml, the key is 'media_ids'.
  4801                  in: formData
  4802                  items:
  4803                    type: string
  4804                  name: media_ids
  4805                  type: array
  4806                  x-go-name: MediaIDs
  4807                - description: ID of the status being replied to, if status is a reply.
  4808                  in: formData
  4809                  name: in_reply_to_id
  4810                  type: string
  4811                  x-go-name: InReplyToID
  4812                - description: Status and attached media should be marked as sensitive.
  4813                  in: formData
  4814                  name: sensitive
  4815                  type: boolean
  4816                  x-go-name: Sensitive
  4817                - description: |-
  4818                    Text to be shown as a warning or subject before the actual content.
  4819                    Statuses are generally collapsed behind this field.
  4820                  in: formData
  4821                  name: spoiler_text
  4822                  type: string
  4823                  x-go-name: SpoilerText
  4824                - description: Visibility of the posted status.
  4825                  in: formData
  4826                  name: visibility
  4827                  type: string
  4828                  x-go-name: Visibility
  4829                - description: |-
  4830                    ISO 8601 Datetime at which to schedule a status.
  4831                    Providing this parameter will cause ScheduledStatus to be returned instead of Status.
  4832                    Must be at least 5 minutes in the future.
  4833                  in: formData
  4834                  name: scheduled_at
  4835                  type: string
  4836                  x-go-name: ScheduledAt
  4837                - description: ISO 639 language code for this status.
  4838                  in: formData
  4839                  name: language
  4840                  type: string
  4841                  x-go-name: Language
  4842                - description: Format to use when parsing this status.
  4843                  in: formData
  4844                  name: format
  4845                  type: string
  4846                  x-go-name: Format
  4847                - description: This status will be federated beyond the local timeline(s).
  4848                  in: query
  4849                  name: federated
  4850                  type: boolean
  4851                  x-go-name: Federated
  4852                - description: This status can be boosted/reblogged.
  4853                  in: query
  4854                  name: boostable
  4855                  type: boolean
  4856                  x-go-name: Boostable
  4857                - description: This status can be replied to.
  4858                  in: query
  4859                  name: replyable
  4860                  type: boolean
  4861                  x-go-name: Replyable
  4862                - description: This status can be liked/faved.
  4863                  in: query
  4864                  name: likeable
  4865                  type: boolean
  4866                  x-go-name: Likeable
  4867            produces:
  4868                - application/json
  4869            responses:
  4870                "200":
  4871                    description: The newly created status.
  4872                    schema:
  4873                        $ref: '#/definitions/status'
  4874                "400":
  4875                    description: bad request
  4876                "401":
  4877                    description: unauthorized
  4878                "403":
  4879                    description: forbidden
  4880                "404":
  4881                    description: not found
  4882                "406":
  4883                    description: not acceptable
  4884                "500":
  4885                    description: internal server error
  4886            security:
  4887                - OAuth2 Bearer:
  4888                    - write:statuses
  4889            summary: Create a new status.
  4890            tags:
  4891                - statuses
  4892    /api/v1/statuses/{id}:
  4893        delete:
  4894            description: |-
  4895                The deleted status will be returned in the response. The `text` field will contain the original text of the status as it was submitted.
  4896                This is useful when doing a 'delete and redraft' type operation.
  4897            operationId: statusDelete
  4898            parameters:
  4899                - description: Target status ID.
  4900                  in: path
  4901                  name: id
  4902                  required: true
  4903                  type: string
  4904            produces:
  4905                - application/json
  4906            responses:
  4907                "200":
  4908                    description: The status that was just deleted.
  4909                    schema:
  4910                        $ref: '#/definitions/status'
  4911                "400":
  4912                    description: bad request
  4913                "401":
  4914                    description: unauthorized
  4915                "403":
  4916                    description: forbidden
  4917                "404":
  4918                    description: not found
  4919                "406":
  4920                    description: not acceptable
  4921                "500":
  4922                    description: internal server error
  4923            security:
  4924                - OAuth2 Bearer:
  4925                    - write:statuses
  4926            summary: Delete status with the given ID. The status must belong to you.
  4927            tags:
  4928                - statuses
  4929        get:
  4930            operationId: statusGet
  4931            parameters:
  4932                - description: Target status ID.
  4933                  in: path
  4934                  name: id
  4935                  required: true
  4936                  type: string
  4937            produces:
  4938                - application/json
  4939            responses:
  4940                "200":
  4941                    description: The requested status.
  4942                    schema:
  4943                        $ref: '#/definitions/status'
  4944                "400":
  4945                    description: bad request
  4946                "401":
  4947                    description: unauthorized
  4948                "403":
  4949                    description: forbidden
  4950                "404":
  4951                    description: not found
  4952                "406":
  4953                    description: not acceptable
  4954                "500":
  4955                    description: internal server error
  4956            security:
  4957                - OAuth2 Bearer:
  4958                    - read:statuses
  4959            summary: View status with the given ID.
  4960            tags:
  4961                - statuses
  4962    /api/v1/statuses/{id}/bookmark:
  4963        post:
  4964            operationId: statusBookmark
  4965            parameters:
  4966                - description: Target status ID.
  4967                  in: path
  4968                  name: id
  4969                  required: true
  4970                  type: string
  4971            produces:
  4972                - application/json
  4973            responses:
  4974                "200":
  4975                    description: The status.
  4976                    schema:
  4977                        $ref: '#/definitions/status'
  4978                "400":
  4979                    description: bad request
  4980                "401":
  4981                    description: unauthorized
  4982                "403":
  4983                    description: forbidden
  4984                "404":
  4985                    description: not found
  4986                "406":
  4987                    description: not acceptable
  4988                "500":
  4989                    description: internal server error
  4990            security:
  4991                - OAuth2 Bearer:
  4992                    - write:statuses
  4993            summary: Bookmark status with the given ID.
  4994            tags:
  4995                - statuses
  4996    /api/v1/statuses/{id}/context:
  4997        get:
  4998            description: The returned statuses will be ordered in a thread structure, so they are suitable to be displayed in the order in which they were returned.
  4999            operationId: statusContext
  5000            parameters:
  5001                - description: Target status ID.
  5002                  in: path
  5003                  name: id
  5004                  required: true
  5005                  type: string
  5006            produces:
  5007                - application/json
  5008            responses:
  5009                "200":
  5010                    description: Status context object.
  5011                    schema:
  5012                        $ref: '#/definitions/statusContext'
  5013                "400":
  5014                    description: bad request
  5015                "401":
  5016                    description: unauthorized
  5017                "403":
  5018                    description: forbidden
  5019                "404":
  5020                    description: not found
  5021                "406":
  5022                    description: not acceptable
  5023                "500":
  5024                    description: internal server error
  5025            security:
  5026                - OAuth2 Bearer:
  5027                    - read:statuses
  5028            summary: Return ancestors and descendants of the given status.
  5029            tags:
  5030                - statuses
  5031    /api/v1/statuses/{id}/favourite:
  5032        post:
  5033            operationId: statusFave
  5034            parameters:
  5035                - description: Target status ID.
  5036                  in: path
  5037                  name: id
  5038                  required: true
  5039                  type: string
  5040            produces:
  5041                - application/json
  5042            responses:
  5043                "200":
  5044                    description: The newly faved status.
  5045                    schema:
  5046                        $ref: '#/definitions/status'
  5047                "400":
  5048                    description: bad request
  5049                "401":
  5050                    description: unauthorized
  5051                "403":
  5052                    description: forbidden
  5053                "404":
  5054                    description: not found
  5055                "406":
  5056                    description: not acceptable
  5057                "500":
  5058                    description: internal server error
  5059            security:
  5060                - OAuth2 Bearer:
  5061                    - write:statuses
  5062            summary: Star/like/favourite the given status, if permitted.
  5063            tags:
  5064                - statuses
  5065    /api/v1/statuses/{id}/favourited_by:
  5066        get:
  5067            operationId: statusFavedBy
  5068            parameters:
  5069                - description: Target status ID.
  5070                  in: path
  5071                  name: id
  5072                  required: true
  5073                  type: string
  5074            produces:
  5075                - application/json
  5076            responses:
  5077                "200":
  5078                    description: ""
  5079                    schema:
  5080                        items:
  5081                            $ref: '#/definitions/account'
  5082                        type: array
  5083                "400":
  5084                    description: bad request
  5085                "401":
  5086                    description: unauthorized
  5087                "403":
  5088                    description: forbidden
  5089                "404":
  5090                    description: not found
  5091                "406":
  5092                    description: not acceptable
  5093                "500":
  5094                    description: internal server error
  5095            security:
  5096                - OAuth2 Bearer:
  5097                    - read:accounts
  5098            summary: View accounts that have faved/starred/liked the target status.
  5099            tags:
  5100                - statuses
  5101    /api/v1/statuses/{id}/reblog:
  5102        post:
  5103            description: |-
  5104                If the target status is rebloggable/boostable, it will be shared with your followers.
  5105                This is equivalent to an ActivityPub 'Announce' activity.
  5106            operationId: statusReblog
  5107            parameters:
  5108                - description: Target status ID.
  5109                  in: path
  5110                  name: id
  5111                  required: true
  5112                  type: string
  5113            produces:
  5114                - application/json
  5115            responses:
  5116                "200":
  5117                    description: The boost of the status.
  5118                    schema:
  5119                        $ref: '#/definitions/status'
  5120                "400":
  5121                    description: bad request
  5122                "401":
  5123                    description: unauthorized
  5124                "403":
  5125                    description: forbidden
  5126                "404":
  5127                    description: not found
  5128                "406":
  5129                    description: not acceptable
  5130                "500":
  5131                    description: internal server error
  5132            security:
  5133                - OAuth2 Bearer:
  5134                    - write:statuses
  5135            summary: Reblog/boost status with the given ID.
  5136            tags:
  5137                - statuses
  5138    /api/v1/statuses/{id}/reblogged_by:
  5139        get:
  5140            operationId: statusBoostedBy
  5141            parameters:
  5142                - description: Target status ID.
  5143                  in: path
  5144                  name: id
  5145                  required: true
  5146                  type: string
  5147            produces:
  5148                - application/json
  5149            responses:
  5150                "200":
  5151                    description: ""
  5152                    schema:
  5153                        items:
  5154                            $ref: '#/definitions/account'
  5155                        type: array
  5156                "400":
  5157                    description: bad request
  5158                "401":
  5159                    description: unauthorized
  5160                "403":
  5161                    description: forbidden
  5162                "404":
  5163                    description: not found
  5164            security:
  5165                - OAuth2 Bearer:
  5166                    - read:accounts
  5167            summary: View accounts that have reblogged/boosted the target status.
  5168            tags:
  5169                - statuses
  5170    /api/v1/statuses/{id}/unbookmark:
  5171        post:
  5172            operationId: statusUnbookmark
  5173            parameters:
  5174                - description: Target status ID.
  5175                  in: path
  5176                  name: id
  5177                  required: true
  5178                  type: string
  5179            produces:
  5180                - application/json
  5181            responses:
  5182                "200":
  5183                    description: The status.
  5184                    schema:
  5185                        $ref: '#/definitions/status'
  5186                "400":
  5187                    description: bad request
  5188                "401":
  5189                    description: unauthorized
  5190                "403":
  5191                    description: forbidden
  5192                "404":
  5193                    description: not found
  5194                "406":
  5195                    description: not acceptable
  5196                "500":
  5197                    description: internal server error
  5198            security:
  5199                - OAuth2 Bearer:
  5200                    - write:statuses
  5201            summary: Unbookmark status with the given ID.
  5202            tags:
  5203                - statuses
  5204    /api/v1/statuses/{id}/unfavourite:
  5205        post:
  5206            operationId: statusUnfave
  5207            parameters:
  5208                - description: Target status ID.
  5209                  in: path
  5210                  name: id
  5211                  required: true
  5212                  type: string
  5213            produces:
  5214                - application/json
  5215            responses:
  5216                "200":
  5217                    description: The unfaved status.
  5218                    schema:
  5219                        $ref: '#/definitions/status'
  5220                "400":
  5221                    description: bad request
  5222                "401":
  5223                    description: unauthorized
  5224                "403":
  5225                    description: forbidden
  5226                "404":
  5227                    description: not found
  5228                "406":
  5229                    description: not acceptable
  5230                "500":
  5231                    description: internal server error
  5232            security:
  5233                - OAuth2 Bearer:
  5234                    - write:statuses
  5235            summary: Unstar/unlike/unfavourite the given status.
  5236            tags:
  5237                - statuses
  5238    /api/v1/statuses/{id}/unreblog:
  5239        post:
  5240            operationId: statusUnreblog
  5241            parameters:
  5242                - description: Target status ID.
  5243                  in: path
  5244                  name: id
  5245                  required: true
  5246                  type: string
  5247            produces:
  5248                - application/json
  5249            responses:
  5250                "200":
  5251                    description: The unboosted status.
  5252                    schema:
  5253                        $ref: '#/definitions/status'
  5254                "400":
  5255                    description: bad request
  5256                "401":
  5257                    description: unauthorized
  5258                "403":
  5259                    description: forbidden
  5260                "404":
  5261                    description: not found
  5262                "406":
  5263                    description: not acceptable
  5264                "500":
  5265                    description: internal server error
  5266            security:
  5267                - OAuth2 Bearer:
  5268                    - write:statuses
  5269            summary: Unreblog/unboost status with the given ID.
  5270            tags:
  5271                - statuses
  5272    /api/v1/streaming:
  5273        get:
  5274            description: |-
  5275                The scheme used should *always* be `wss`. The streaming basepath can be viewed at `/api/v1/instance`.
  5276
  5277                On a successful connection, a code `101` will be returned, which indicates that the connection is being upgraded to a secure websocket connection.
  5278
  5279                As long as the connection is open, various message types will be streamed into it.
  5280
  5281                GoToSocial will ping the connection every 30 seconds to check whether the client is still receiving.
  5282
  5283                If the ping fails, or something else goes wrong during transmission, then the connection will be dropped, and the client will be expected to start it again.
  5284            operationId: streamGet
  5285            parameters:
  5286                - description: Access token for the requesting account.
  5287                  in: query
  5288                  name: access_token
  5289                  required: true
  5290                  type: string
  5291                - description: |-
  5292                    Type of stream to request.
  5293
  5294                    Options are:
  5295
  5296                    `user`: receive updates for the account's home timeline.
  5297                    `public`: receive updates for the public timeline.
  5298                    `public:local`: receive updates for the local timeline.
  5299                    `hashtag`: receive updates for a given hashtag.
  5300                    `hashtag:local`: receive local updates for a given hashtag.
  5301                    `list`: receive updates for a certain list of accounts.
  5302                    `direct`: receive updates for direct messages.
  5303                  in: query
  5304                  name: stream
  5305                  required: true
  5306                  type: string
  5307            produces:
  5308                - application/json
  5309            responses:
  5310                "101":
  5311                    description: ""
  5312                    schema:
  5313                        properties:
  5314                            event:
  5315                                description: |-
  5316                                    The type of event being received.
  5317
  5318                                    `update`: a new status has been received.
  5319                                    `notification`: a new notification has been received.
  5320                                    `delete`: a status has been deleted.
  5321                                    `filters_changed`: not implemented.
  5322                                enum:
  5323                                    - update
  5324                                    - notification
  5325                                    - delete
  5326                                    - filters_changed
  5327                                type: string
  5328                            payload:
  5329                                description: |-
  5330                                    The payload of the streamed message.
  5331                                    Different depending on the `event` type.
  5332
  5333                                    If present, it should be parsed as a string.
  5334
  5335                                    If `event` = `update`, then the payload will be a JSON string of a status.
  5336                                    If `event` = `notification`, then the payload will be a JSON string of a notification.
  5337                                    If `event` = `delete`, then the payload will be a status ID.
  5338                                example: '{"id":"01FC3TZ5CFG6H65GCKCJRKA669","created_at":"2021-08-02T16:25:52Z","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://gts.superseriousbusiness.org/users/dumpsterqueer/statuses/01FC3TZ5CFG6H65GCKCJRKA669","url":"https://gts.superseriousbusiness.org/@dumpsterqueer/statuses/01FC3TZ5CFG6H65GCKCJRKA669","replies_count":0,"reblogs_count":0,"favourites_count":0,"favourited":false,"reblogged":false,"muted":false,"bookmarked":fals…//gts.superseriousbusiness.org/fileserver/01JNN207W98SGG3CBJ76R5MVDN/header/original/019036W043D8FXPJKSKCX7G965.png","header_static":"https://gts.superseriousbusiness.org/fileserver/01JNN207W98SGG3CBJ76R5MVDN/header/small/019036W043D8FXPJKSKCX7G965.png","followers_count":33,"following_count":28,"statuses_count":126,"last_status_at":"2021-08-02T16:25:52Z","emojis":[],"fields":[]},"media_attachments":[],"mentions":[],"tags":[],"emojis":[],"card":null,"poll":null,"text":"a"}'
  5339                                type: string
  5340                            stream:
  5341                                items:
  5342                                    enum:
  5343                                        - user
  5344                                        - public
  5345                                        - public:local
  5346                                        - hashtag
  5347                                        - hashtag:local
  5348                                        - list
  5349                                        - direct
  5350                                    type: string
  5351                                type: array
  5352                        type: object
  5353                "400":
  5354                    description: bad request
  5355                "401":
  5356                    description: unauthorized
  5357            schemes:
  5358                - wss
  5359            security:
  5360                - OAuth2 Bearer:
  5361                    - read:streaming
  5362            summary: Initiate a websocket connection for live streaming of statuses and notifications.
  5363            tags:
  5364                - streaming
  5365    /api/v1/timelines/home:
  5366        get:
  5367            description: |-
  5368                The statuses will be returned in descending chronological order (newest first), with sequential IDs (bigger = newer).
  5369
  5370                The returned Link header can be used to generate the previous and next queries when scrolling up or down a timeline.
  5371
  5372                Example:
  5373
  5374                ```
  5375                <https://example.org/api/v1/timelines/home?limit=20&max_id=01FC3GSQ8A3MMJ43BPZSGEG29M>; rel="next", <https://example.org/api/v1/timelines/home?limit=20&min_id=01FC3KJW2GYXSDDRA6RWNDM46M>; rel="prev"
  5376                ````
  5377            operationId: homeTimeline
  5378            parameters:
  5379                - description: Return only statuses *OLDER* than the given max status ID. The status with the specified ID will not be included in the response.
  5380                  in: query
  5381                  name: max_id
  5382                  type: string
  5383                - description: Return only statuses *NEWER* than the given since status ID. The status with the specified ID will not be included in the response.
  5384                  in: query
  5385                  name: since_id
  5386                  type: string
  5387                - description: Return only statuses *NEWER* than the given since status ID. The status with the specified ID will not be included in the response.
  5388                  in: query
  5389                  name: min_id
  5390                  type: string
  5391                - default: 20
  5392                  description: Number of statuses to return.
  5393                  in: query
  5394                  name: limit
  5395                  type: integer
  5396                - default: false
  5397                  description: Show only statuses posted by local accounts.
  5398                  in: query
  5399                  name: local
  5400                  type: boolean
  5401            produces:
  5402                - application/json
  5403            responses:
  5404                "200":
  5405                    description: Array of statuses.
  5406                    headers:
  5407                        Link:
  5408                            description: Links to the next and previous queries.
  5409                            type: string
  5410                    schema:
  5411                        items:
  5412                            $ref: '#/definitions/status'
  5413                        type: array
  5414                "400":
  5415                    description: bad request
  5416                "401":
  5417                    description: unauthorized
  5418            security:
  5419                - OAuth2 Bearer:
  5420                    - read:statuses
  5421            summary: See statuses/posts by accounts you follow.
  5422            tags:
  5423                - timelines
  5424    /api/v1/timelines/public:
  5425        get:
  5426            description: |-
  5427                The statuses will be returned in descending chronological order (newest first), with sequential IDs (bigger = newer).
  5428
  5429                The returned Link header can be used to generate the previous and next queries when scrolling up or down a timeline.
  5430
  5431                Example:
  5432
  5433                ```
  5434                <https://example.org/api/v1/timelines/public?limit=20&max_id=01FC3GSQ8A3MMJ43BPZSGEG29M>; rel="next", <https://example.org/api/v1/timelines/public?limit=20&min_id=01FC3KJW2GYXSDDRA6RWNDM46M>; rel="prev"
  5435                ````
  5436            operationId: publicTimeline
  5437            parameters:
  5438                - description: Return only statuses *OLDER* than the given max status ID. The status with the specified ID will not be included in the response.
  5439                  in: query
  5440                  name: max_id
  5441                  type: string
  5442                - description: Return only statuses *NEWER* than the given since status ID. The status with the specified ID will not be included in the response.
  5443                  in: query
  5444                  name: since_id
  5445                  type: string
  5446                - description: Return only statuses *NEWER* than the given since status ID. The status with the specified ID will not be included in the response.
  5447                  in: query
  5448                  name: min_id
  5449                  type: string
  5450                - default: 20
  5451                  description: Number of statuses to return.
  5452                  in: query
  5453                  name: limit
  5454                  type: integer
  5455                - default: false
  5456                  description: Show only statuses posted by local accounts.
  5457                  in: query
  5458                  name: local
  5459                  type: boolean
  5460            produces:
  5461                - application/json
  5462            responses:
  5463                "200":
  5464                    description: Array of statuses.
  5465                    headers:
  5466                        Link:
  5467                            description: Links to the next and previous queries.
  5468                            type: string
  5469                    schema:
  5470                        items:
  5471                            $ref: '#/definitions/status'
  5472                        type: array
  5473                "400":
  5474                    description: bad request
  5475                "401":
  5476                    description: unauthorized
  5477            security:
  5478                - OAuth2 Bearer:
  5479                    - read:statuses
  5480            summary: See public statuses/posts that your instance is aware of.
  5481            tags:
  5482                - timelines
  5483    /api/v1/user/password_change:
  5484        post:
  5485            consumes:
  5486                - application/json
  5487                - application/xml
  5488                - application/x-www-form-urlencoded
  5489            description: |-
  5490                The parameters can also be given in the body of the request, as JSON, if the content-type is set to 'application/json'.
  5491                The parameters can also be given in the body of the request, as XML, if the content-type is set to 'application/xml'.
  5492            operationId: userPasswordChange
  5493            parameters:
  5494                - description: User's previous password.
  5495                  in: formData
  5496                  name: old_password
  5497                  required: true
  5498                  type: string
  5499                  x-go-name: OldPassword
  5500                - description: |-
  5501                    Desired new password.
  5502                    If the password does not have high enough entropy, it will be rejected.
  5503                    See https://github.com/wagslane/go-password-validator
  5504                  in: formData
  5505                  name: new_password
  5506                  required: true
  5507                  type: string
  5508                  x-go-name: NewPassword
  5509            produces:
  5510                - application/json
  5511            responses:
  5512                "200":
  5513                    description: Change successful
  5514                "400":
  5515                    description: bad request
  5516                "401":
  5517                    description: unauthorized
  5518                "403":
  5519                    description: forbidden
  5520                "406":
  5521                    description: not acceptable
  5522                "500":
  5523                    description: internal error
  5524            security:
  5525                - OAuth2 Bearer:
  5526                    - write:user
  5527            summary: Change the password of authenticated user.
  5528            tags:
  5529                - user
  5530    /api/v2/instance:
  5531        get:
  5532            operationId: instanceGetV2
  5533            produces:
  5534                - application/json
  5535            responses:
  5536                "200":
  5537                    description: Instance information.
  5538                    schema:
  5539                        $ref: '#/definitions/instanceV2'
  5540                "406":
  5541                    description: not acceptable
  5542                "500":
  5543                    description: internal error
  5544            summary: View instance information.
  5545            tags:
  5546                - instance
  5547    /nodeinfo/2.0:
  5548        get:
  5549            description: 'See: https://nodeinfo.diaspora.software/schema.html'
  5550            operationId: nodeInfoGet
  5551            produces:
  5552                - application/json; profile="http://nodeinfo.diaspora.software/ns/schema/2.0#"
  5553            responses:
  5554                "200":
  5555                    description: ""
  5556                    schema:
  5557                        $ref: '#/definitions/nodeinfo'
  5558            summary: Returns a compliant nodeinfo response to node info queries.
  5559            tags:
  5560                - nodeinfo
  5561    /users/{username}/outbox:
  5562        get:
  5563            description: |-
  5564                Note that the response will be a Collection with a page as `first`, as shown below, if `page` is `false`.
  5565
  5566                If `page` is `true`, then the response will be a single `CollectionPage` without the wrapping `Collection`.
  5567
  5568                HTTP signature is required on the request.
  5569            operationId: s2sOutboxGet
  5570            parameters:
  5571                - description: Username of the account.
  5572                  in: path
  5573                  name: username
  5574                  required: true
  5575                  type: string
  5576                - default: false
  5577                  description: Return response as a CollectionPage.
  5578                  in: query
  5579                  name: page
  5580                  type: boolean
  5581                - description: Minimum ID of the next status, used for paging.
  5582                  in: query
  5583                  name: min_id
  5584                  type: string
  5585                - description: Maximum ID of the next status, used for paging.
  5586                  in: query
  5587                  name: max_id
  5588                  type: string
  5589            produces:
  5590                - application/activity+json
  5591            responses:
  5592                "200":
  5593                    description: ""
  5594                    schema:
  5595                        $ref: '#/definitions/swaggerCollection'
  5596                "400":
  5597                    description: bad request
  5598                "401":
  5599                    description: unauthorized
  5600                "403":
  5601                    description: forbidden
  5602                "404":
  5603                    description: not found
  5604            summary: Get the public outbox collection for an actor.
  5605            tags:
  5606                - s2s/federation
  5607    /users/{username}/statuses/{status}/replies:
  5608        get:
  5609            description: |-
  5610                Note that the response will be a Collection with a page as `first`, as shown below, if `page` is `false`.
  5611
  5612                If `page` is `true`, then the response will be a single `CollectionPage` without the wrapping `Collection`.
  5613
  5614                HTTP signature is required on the request.
  5615            operationId: s2sRepliesGet
  5616            parameters:
  5617                - description: Username of the account.
  5618                  in: path
  5619                  name: username
  5620                  required: true
  5621                  type: string
  5622                - description: ID of the status.
  5623                  in: path
  5624                  name: status
  5625                  required: true
  5626                  type: string
  5627                - default: false
  5628                  description: Return response as a CollectionPage.
  5629                  in: query
  5630                  name: page
  5631                  type: boolean
  5632                - default: false
  5633                  description: Return replies only from accounts other than the status owner.
  5634                  in: query
  5635                  name: only_other_accounts
  5636                  type: boolean
  5637                - description: Minimum ID of the next status, used for paging.
  5638                  in: query
  5639                  name: min_id
  5640                  type: string
  5641            produces:
  5642                - application/activity+json
  5643            responses:
  5644                "200":
  5645                    description: ""
  5646                    schema:
  5647                        $ref: '#/definitions/swaggerCollection'
  5648                "400":
  5649                    description: bad request
  5650                "401":
  5651                    description: unauthorized
  5652                "403":
  5653                    description: forbidden
  5654                "404":
  5655                    description: not found
  5656            summary: Get the replies collection for a status.
  5657            tags:
  5658                - s2s/federation
  5659schemes:
  5660    - https
  5661    - http
  5662securityDefinitions:
  5663    OAuth2 Application:
  5664        flow: application
  5665        scopes:
  5666            write:accounts: grants write access to accounts
  5667        tokenUrl: https://example.org/oauth/token
  5668        type: oauth2
  5669    OAuth2 Bearer:
  5670        authorizationUrl: https://example.org/oauth/authorize
  5671        flow: accessCode
  5672        scopes:
  5673            admin: grants admin access to everything
  5674            admin:accounts: grants admin access to accounts
  5675            read: grants read access to everything
  5676            read:accounts: grants read access to accounts
  5677            read:blocks: grant read access to blocks
  5678            read:custom_emojis: grant read access to custom_emojis
  5679            read:favourites: grant read access to favourites
  5680            read:follows: grant read access to follows
  5681            read:media: grant read access to media
  5682            read:notifications: grants read access to notifications
  5683            read:search: grant read access to searches
  5684            read:statuses: grants read access to statuses
  5685            read:streaming: grants read access to streaming api
  5686            read:user: grants read access to user-level info
  5687            write: grants write access to everything
  5688            write:accounts: grants write access to accounts
  5689            write:blocks: grants write access to blocks
  5690            write:follows: grants write access to follows
  5691            write:media: grants write access to media
  5692            write:statuses: grants write access to statuses
  5693            write:user: grants write access to user-level info
  5694        tokenUrl: https://example.org/oauth/token
  5695        type: oauth2
  5696swagger: "2.0"

View as plain text