diff --git a/docs/02_return_values.rst b/docs/02_return_values.rst index 223e516..8f12b13 100644 --- a/docs/02_return_values.rst +++ b/docs/02_return_values.rst @@ -24,761 +24,324 @@ you can also just write and everything will work as intended. The class used for this is exposed as `AttribAccessDict`. -Currently, some of these may be out of date - refer to the Mastodon documentation at -https://docs.joinmastodon.org/entities/ for when fields seem to be missing. This will -be addressed in the next version of Mastodon.py. - -User / account dicts --------------------- -.. _user dict: -.. _user dicts: -.. _account dict: -.. _account dicts: - -.. code-block:: python - - mastodon.account() - # Returns the following dictionary: - { - 'id': # Same as - 'username': # The username (what you @ them with) - 'acct': # The user's account name as username@domain (@domain omitted for local users) - 'display_name': # The user's display name - 'discoverable': # True if the user is listed in the user directory, false if not. None - # for remote users. - 'group': # A boolean indicating whether the account represents a group rather than an - # individual. - 'locked': # Denotes whether the account can be followed without a follow request - 'created_at': # Account creation time - 'following_count': # How many people they follow - 'followers_count': # How many followers they have - 'statuses_count': # How many statuses they have - 'note': # Their bio - 'url': # Their URL; for example 'https://mastodon.social/users/' - 'avatar': # URL for their avatar, can be animated - 'header': # URL for their header image, can be animated - 'avatar_static': # URL for their avatar, never animated - 'header_static': # URL for their header image, never animated - 'source': # Additional information - only present for user dict returned - # from account_verify_credentials() - 'moved_to_account': # If set, a user dict of the account this user has - # set up as their moved-to address. - 'bot': # Boolean indicating whether this account is automated. - 'fields': # List of up to four dicts with free-form 'name' and 'value' profile info. - # For fields with "this is me" type verification, verified_at is set to the - # last verification date (It is None otherwise) - 'emojis': # List of custom emoji used in name, bio or fields - 'discoverable': # Indicates whether or not a user is visible on the discovery page - } - - mastodon.account_verify_credentials()["source"] - # Returns the following dictionary: - { - 'privacy': # The user's default visibility setting ("private", "unlisted" or "public") - 'sensitive': # Denotes whether user media should be marked sensitive by default - 'note': # Plain text version of the user's bio - } - -Toot / Status dicts ----------- -.. _toot dict: -.. _toot dicts: -.. _status dict: -.. _status dicts: - -.. code-block:: python - - mastodon.toot("Hello from Python") - # Returns the following dictionary: - { - 'id': # Numerical id of this toot - 'uri': # Descriptor for the toot - # EG 'tag:mastodon.social,2016-11-25:objectId=:objectType=Status' - 'url': # URL of the toot - 'account': # User dict for the account which posted the status - 'in_reply_to_id': # Numerical id of the toot this toot is in response to - 'in_reply_to_account_id': # Numerical id of the account this toot is in response to - 'reblog': # Denotes whether the toot is a reblog. If so, set to the original toot dict. - 'content': # Content of the toot, as HTML: '

Hello from Python

' - 'created_at': # Creation time - 'reblogs_count': # Number of reblogs - 'favourites_count': # Number of favourites - 'reblogged': # Denotes whether the logged in user has boosted this toot - 'favourited': # Denotes whether the logged in user has favourited this toot - 'sensitive': # Denotes whether media attachments to the toot are marked sensitive - 'spoiler_text': # Warning text that should be displayed before the toot content - 'visibility': # Toot visibility ('public', 'unlisted', 'private', or 'direct') - 'mentions': # A list of users dicts mentioned in the toot, as Mention dicts - 'media_attachments': # A list of media dicts of attached files - 'emojis': # A list of custom emojis used in the toot, as Emoji dicts - 'tags': # A list of hashtag used in the toot, as Hashtag dicts - 'bookmarked': # True if the status is bookmarked by the logged in user, False if not. - 'application': # Application dict for the client used to post the toot (Does not federate - # and is therefore always None for remote toots, can also be None for - # local toots for some legacy applications). - 'language': # The language of the toot, if specified by the server, - # as ISO 639-1 (two-letter) language code. - 'muted': # Boolean denoting whether the user has muted this status by - # way of conversation muting - 'pinned': # Boolean denoting whether or not the status is currently pinned for the - # associated account. - 'replies_count': # The number of replies to this status. - 'card': # A preview card for links from the status, if present at time of delivery, - # as card dict. - 'poll': # A poll dict if a poll is attached to this status. - } - -Status edit dicts ------------------ -.. _status edit dict: - -.. code-block:: python - - mastodonstatus_history(id)[0] - # Returns the following dictionary - { - 'content': # Content for this version of the status - 'spoiler_text': # CW / Spoiler text for this version of the status - 'sensitive': # Whether media in this version of the status is marked as sensitive - 'created_at': # Time at which this version of the status was posted - 'account': # Account dict of the user that posted the status - 'media_attachments': # List of media dicts with the attached media for this version of the status - 'emojis'# List of emoji dicts for this version of the status - } - -Mention dicts -------------- -.. _mention dict: - -.. code-block:: python - - { - 'url': # Mentioned user's profile URL (potentially remote) - 'username': # Mentioned user's user name (not including domain) - 'acct': # Mentioned user's account name (including domain) - 'id': # Mentioned user's (local) account ID - } - -Scheduled status / toot dicts ------------------------------ -.. _scheduled status dict: -.. _scheduled status dicts: -.. _scheduled toot dict: -.. _scheduled toot dicts: - -.. code-block:: python - - mastodon.status_post("text", scheduled_at=the_future) - # Returns the following dictionary: - { - 'id': # Scheduled toot ID (note: Not the id of the toot once it gets posted!) - 'scheduled_at': # datetime object describing when the toot is to be posted - 'params': # Parameters for the scheduled toot, specifically - { - 'text': # Toot text - 'in_reply_to_id': # ID of the toot this one is a reply to - 'media_ids': # IDs of media attached to this toot - 'sensitive': # Whether this toot is sensitive or not - 'visibility': # Visibility of the toot - 'idempotency': # Idempotency key for the scheduled toot - 'scheduled_at': # Present, but generally "None" - 'spoiler_text': # CW text for this toot - 'application_id': # ID of the application that scheduled the toot - 'poll': # Poll parameters, as a poll dict - }, - 'media_attachments': # Array of media dicts for the attachments to the scheduled toot - } - -Poll dicts ----------- -.. _poll dict: - -.. code-block:: python - - # Returns the following dictionary: - mastodon.poll(id) - { - 'id': # The polls ID - 'expires_at': # The time at which the poll is set to expire - 'expired': # Boolean denoting whether you can still vote in this poll - 'multiple': # Boolean indicating whether it is allowed to vote for more than one option - 'votes_count': # Total number of votes cast in this poll - 'voted': # Boolean indicating whether the logged-in user has already voted in this poll - 'options': # The poll options as a list of dicts, each option with a title and a - # votes_count field. votes_count can be None if the poll creator has - # chosen to hide vote totals until the poll expires and it hasn't yet. - 'emojis': # List of emoji dicts for all emoji used in answer strings, - 'own_votes': # The logged-in users votes, as a list of indices to the options. - } - - -Conversation dicts ------------------- -.. _conversation dict: - -.. code-block:: python - - mastodon.conversations()[0] - # Returns the following dictionary: - { - 'id': # The ID of this conversation object - 'unread': # Boolean indicating whether this conversation has yet to be - # read by the user - 'accounts': # List of accounts (other than the logged-in account) that - # are part of this conversation - 'last_status': # The newest status in this conversation - } - -Hashtag dicts -------------- -.. _hashtag dict: - -.. code-block:: python - - { - 'name': # Hashtag name (not including the #) - 'url': # Hashtag URL (can be remote) - 'history': # List of usage history dicts for up to 7 days. Not present in statuses. - } - -Hashtag usage history dicts ---------------------------- -.. _hashtag usage history dict: - -.. code-block:: python - - { - 'day': # Date of the day this history dict is for - 'uses': # Number of statuses using this hashtag on that day - 'accounts': # Number of accounts using this hashtag in at least one status on that day - } - -Emoji dicts ------------ -.. _emoji dict: - -.. code-block:: python - - { - 'shortcode': # Emoji shortcode, without surrounding colons - 'url': # URL for the emoji image, can be animated - 'static_url': # URL for the emoji image, never animated - 'visible_in_picker': # True if the emoji is enabled, False if not. - 'category': # The category to display the emoji under (not present if none is set) - } - -Application dicts ------------------ - .. _application dict: - -.. code-block:: python - - { - 'name': # The applications name - 'website': # The applications website - 'vapid_key': # A vapid key that can be used in web applications - } - - -Relationship dicts ------------------- -.. _relationship dict: - -.. code-block:: python - - mastodon.account_follow() - # Returns the following dictionary: - { - 'id': # Numerical id (same one as ) - 'following': # Boolean denoting whether the logged-in user follows the specified user - 'followed_by': # Boolean denoting whether the specified user follows the logged-in user - 'blocking': # Boolean denoting whether the logged-in user has blocked the specified user - 'blocked_by': # Boolean denoting whether the logged-in user has been blocked by the specified user, if information is available - 'muting': # Boolean denoting whether the logged-in user has muted the specified user - 'muting_notifications': # Boolean denoting wheter the logged-in user has muted notifications - # related to the specified user - 'requested': # Boolean denoting whether the logged-in user has sent the specified - # user a follow request - 'domain_blocking': # Boolean denoting whether the logged-in user has blocked the - # specified users domain - 'showing_reblogs': # Boolean denoting whether the specified users reblogs show up on the - # logged-in users Timeline - 'endorsed': # Boolean denoting wheter the specified user is being endorsed / featured by the - # logged-in user - 'note': # A free text note the logged in user has created for this account (not publicly visible) - 'notifying' # Boolean denoting whether the logged-in user has requested to get notified every time the followed user posts - } - -Filter dicts ------------- -.. _filter dict: - -.. code-block:: python - - mastodon.filter() - # Returns the following dictionary: - { - 'id': # Numerical id of the filter - 'phrase': # Filtered keyword or phrase - 'context': # List of places where the filters are applied ('home', 'notifications', 'public', 'thread') - 'expires_at': # Expiry date for the filter - 'irreversible': # Boolean denoting if this filter is executed server-side - # or if it should be ran client-side. - 'whole_word': # Boolean denoting whether this filter can match partial words - } - -Notification dicts ------------------- -.. _notification dict: - -.. code-block:: python - - mastodon.notifications()[0] - # Returns the following dictionary: - { - 'id': # id of the notification - 'type': # "mention", "reblog", "favourite", "follow", "poll" or "follow_request" - 'created_at': # The time the notification was created - 'account': # User dict of the user from whom the notification originates - 'status': # In case of "mention", the mentioning status - # In case of reblog / favourite, the reblogged / favourited status - } - -Context dicts -------------- -.. _context dict: - -.. code-block:: python - - mastodon.status_context() - # Returns the following dictionary: - { - 'ancestors': # A list of toot dicts - 'descendants': # A list of toot dicts - } - -List dicts ----------- -.. _list dict: - -.. code-block:: python - - mastodon.list() - # Returns the following dictionary: - { - 'id': # id of the list - 'title': # title of the list - } - -Media dicts ------------ -.. _media dict: - -.. code-block:: python - - mastodon.media_post("image.jpg", "image/jpeg") - # Returns the following dictionary: - { - 'id': # The ID of the attachment. - 'type': # Media type: 'image', 'video', 'gifv', 'audio' or 'unknown'. - 'url': # The URL for the image in the local cache - 'remote_url': # The remote URL for the media (if the image is from a remote instance) - 'preview_url': # The URL for the media preview - 'text_url': # The display text for the media (what shows up in toots) - 'meta': # Dictionary of two metadata dicts (see below), - # 'original' and 'small' (preview). Either may be empty. - # May additionally contain an "fps" field giving a videos frames per second (possibly - # rounded), and a "length" field giving a videos length in a human-readable format. - # Note that a video may have an image as preview. - # May also contain a 'focus' dict and a media 'colors' dict. - 'blurhash': # The blurhash for the image, used for preview / placeholder generation - 'description': # If set, the user-provided description for this media. - } - - # Metadata dicts (image) - all fields are optional: - { - 'width': # Width of the image in pixels - 'height': # Height of the image in pixels - 'aspect': # Aspect ratio of the image as a floating point number - 'size': # Textual representation of the image size in pixels, e.g. '800x600' - } - - # Metadata dicts (video, gifv) - all fields are optional: - { - 'width': # Width of the video in pixels - 'heigh': # Height of the video in pixels - 'frame_rate': # Exact frame rate of the video in frames per second. - # Can be an integer fraction (i.e. "20/7") - 'duration': # Duration of the video in seconds - 'bitrate': # Average bit-rate of the video in bytes per second - } - - # Metadata dicts (audio) - all fields are optional: - { - 'duration': # Duration of the audio file in seconds - 'bitrate': # Average bit-rate of the audio file in bytes per second - } - - # Focus Metadata dict: - { - 'x': # Focus point x coordinate (between -1 and 1) - 'y': # Focus point x coordinate (between -1 and 1) - } - - # Media colors dict: - { - 'foreground': # Estimated foreground colour for the attachment thumbnail - 'background': # Estimated background colour for the attachment thumbnail - 'accent': # Estimated accent colour for the attachment thumbnail - } - -Card dicts ----------- -.. _card dict: - -.. code-block:: python - - mastodon.status_card(): - # Returns the following dictionary - { - 'url': # The URL of the card. - 'title': # The title of the card. - 'description': # The description of the card. - 'type': # Embed type: 'link', 'photo', 'video', or 'rich' - 'image': # (optional) The image associated with the card. - - # OEmbed data (all optional): - 'author_name': # Name of the embedded contents author - 'author_url': # URL pointing to the embedded contents author - 'description': # Description of the embedded content - 'width': # Width of the embedded object - 'height': # Height of the embedded object - 'html': # HTML string of the embed - 'provider_name': # Name of the provider from which the embed originates - 'provider_url': # URL pointing to the embeds provider - 'blurhash': # (optional) Blurhash of the preview image - } - -Search result dicts -------------------- -.. _search result dict: - -.. code-block:: python - - mastodon.search("") - # Returns the following dictionary - { - 'accounts': # List of user dicts resulting from the query - 'hashtags': # List of hashtag dicts resulting from the query - 'statuses': # List of toot dicts resulting from the query - } - -Instance dicts --------------- -.. _instance dict: - -.. code-block:: python - - mastodon.instance() - # Returns the following dictionary - { - 'domain': # The instances domain name - 'description': # A brief instance description set by the admin - 'short_description': # An even briefer instance description - 'email': # The admin contact email - 'title': # The instance's title - 'uri': # The instance's URL - 'version': # The instance's Mastodon version - 'urls': # Additional URLs dict, presently only 'streaming_api' with the - # stream websocket address. - 'stats': # A dictionary containing three stats, user_count (number of local users), - # status_count (number of local statuses) and domain_count (number of known - # instance domains other than this one). - 'contact_account': # User dict of the primary contact for the instance - 'languages': # Array of ISO 639-1 (two-letter) language codes the instance - # has chosen to advertise. - 'registrations': # Boolean indication whether registrations on this instance are open - # (True) or not (False) - 'approval_required': # True if account approval is required when registering, - 'rules': # List of dicts with `id` and `text` fields, one for each server rule set by the admin - } - -Activity dicts --------------- -.. _activity dict: - -.. code-block:: python - - mastodon.instance_activity()[0] - # Returns the following dictionary - { - 'week': # Date of the first day of the week the stats were collected for - 'logins': # Number of users that logged in that week - 'registrations': # Number of new users that week - 'statuses': # Number of statuses posted that week - } - -Report dicts ------------- -.. _report dict: - -.. code-block:: python - - mastodon.admin_reports()[0] - # Returns the following dictionary - { - 'id': # Numerical id of the report - 'action_taken': # True if a moderator or admin has processed the - # report, False otherwise. - - # The following fields are only present in the report dicts returned by moderation API: - 'comment': # Text comment submitted with the report - 'created_at': # Time at which this report was created, as a datetime object - 'updated_at': # Last time this report has been updated, as a datetime object - 'account': # User dict of the user that filed this report - 'target_account': # Account that has been reported with this report - 'assigned_account': # If the report as been assigned to an account, - # User dict of that account (None if not) - 'action_taken_by_account': # User dict of the account that processed this report - 'statuses': # List of statuses attached to the report, as toot dicts - } - -Push subscription dicts ------------------------ -.. _push subscription dict: - -.. code-block:: python - - mastodon.push_subscription() - # Returns the following dictionary - { - 'id': # Numerical id of the push subscription - 'endpoint': # Endpoint URL for the subscription - 'server_key': # Server pubkey used for signature verification - 'alerts': # Subscribed events - dict that may contain keys 'follow', - # 'favourite', 'reblog' and 'mention', with value True - # if webpushes have been requested for those events. - } - -Push notification dicts ------------------------ -.. _push notification dict: - -.. code-block:: python - - mastodon.push_subscription_decrypt_push(...) - # Returns the following dictionary - { - 'access_token': # Access token that can be used to access the API as the - # notified user - 'body': # Text body of the notification - 'icon': # URL to an icon for the notification - 'notification_id': # ID that can be passed to notification() to get the full - # notification object, - 'notification_type': # 'mention', 'reblog', 'follow' or 'favourite' - 'preferred_locale': # The user's preferred locale - 'title': # Title for the notification - } - -Preference dicts ----------------- -.. _preference dict: - -.. code-block:: python - - mastodon.preferences() - # Returns the following dictionary - { - 'posting:default:visibility': # The default visibility setting for the user's posts, - # as a string - 'posting:default:sensitive': # Boolean indicating whether the user's uploads should - # be marked sensitive by default - 'posting:default:language': # The user's default post language, if set (None if not) - 'reading:expand:media': # How the user wishes to be shown sensitive media. Can be - # 'default' (hide if sensitive), 'hide_all' or 'show_all' - 'reading:expand:spoilers': # Boolean indicating whether the user wishes to expand - # content warnings by default - } - -Featured tag dicts ------------------- -.. _featured tag dict: - -.. code-block:: python - - mastodon.featured_tags()[0] - # Returns the following dictionary: - { - 'id': # The featured tags id - 'name': # The featured tags name (without leading #) - 'statuses_count': # Number of publicly visible statuses posted with this hashtag that this instance knows about - 'last_status_at': # The last time a public status containing this hashtag was added to this instance's database - # (can be None if there are none) - } - -Read marker dicts ------------------ -.. _read marker dict: - -.. code-block:: python - - mastodon.markers_get()["home"] - # Returns the following dictionary: - { - 'last_read_id': # ID of the last read object in the timeline - 'version': # A counter that is incremented whenever the marker is set to a new status - 'updated_at': # The time the marker was last set, as a datetime object - } - -Announcement dicts ------------------- -.. _announcement dict: - -.. code-block:: python - - mastodon.annoucements()[0] - # Returns the following dictionary: - { - 'id': # The annoucements id - 'content': # The contents of the annoucement, as an html string - 'starts_at': # The annoucements start time, as a datetime object. Can be None - 'ends_at': # The annoucements end time, as a datetime object. Can be None - 'all_day': # Boolean indicating whether the annoucement represents an "all day" event - 'published_at': # The annoucements publish time, as a datetime object - 'updated_at': # The annoucements last updated time, as a datetime object - 'read': # A boolean indicating whether the logged in user has dismissed the annoucement - 'mentions': # Users mentioned in the annoucement, as a list of mention dicts - 'tags': # Hashtags mentioned in the announcement, as a list of hashtag dicts - 'emojis': # Custom emoji used in the annoucement, as a list of emoji dicts - 'reactions': # Reactions to the annoucement, as a list of reaction dicts (documented inline here): - [ { - 'name': # Name of the custom emoji or unicode emoji of the reaction - 'count': # Reaction counter (i.e. number of users who have added this reaction) - 'me': # True if the logged-in user has reacted with this emoji, false otherwise - 'url': # URL for the custom emoji image - 'static_url': # URL for a never-animated version of the custom emoji image - } ], - } - -Familiar follower dicts ------------------------ -.. _familiar follower dict: - -.. code-block:: python - - mastodon.account_familiar_followers(1)[0] - # Returns the following dictionary: - { - 'id': # ID of the account for which the familiar followers are being returned - 'accounts': # List of account dicts of the familiar followers - } - -Admin account dicts -------------------- -.. _admin account dict: - -.. code-block:: python - - mastodon.admin_account(id) - # Returns the following dictionary - { - 'id': # The users id, - 'username': # The users username, no leading @ - 'domain': # The users domain - 'created_at': # The time of account creation - 'email': # For local users, the user's email - 'ip': # For local users, the user's last known IP address - 'role': # 'admin', 'moderator' or None - 'confirmed': # For local users, False if the user has not confirmed their email, True otherwise - 'suspended': # Boolean indicating whether the user has been suspended - 'silenced': # Boolean indicating whether the user has been suspended - 'disabled': # For local users, boolean indicating whether the user has had their login disabled - 'approved': # For local users, False if the user is pending, True otherwise - 'locale': # For local users, the locale the user has set, - 'invite_request': # If the user requested an invite, the invite request comment of that user. - 'invited_by_account_id': # Present if the user was invited by another user and set to the inviting users id. - 'account': # The user's account, as a standard user dict - } - -Admin domain block dicts ------------------------- -.. _admin domain block dict: - -.. code-block::python - - mastodon.domain_blocks(id=1) - #Returns the following dictionary: - { - 'id': #Str. The database id of a domain block, - 'domain': #Str. The root domain of a block, ie: "example.com", - 'created_at': #Datetime of the block creation. - 'severity': #Str. Severity of the domain block, ie: "suspend". - 'reject_media': #Boolean. True if media is not downloaded from this domain. - 'reject_reports': #Boolean. True if reports are automatically ignored from this domain. - 'private_comment': #Str. Private admin comment for a block. None if not set. - 'public_comment': #Str. Publicly viewable (depending on settings) comment about this domain. None if not set. - 'obfuscate': #Boolean. True if domain name is obfuscated when listing. - } - -Admin measure dicts -------------------- -.. _admin measure dict: - -.. code-block:: python - - api.admin_measures(datetime.now() - timedelta(hours=24*5), datetime.now(), active_users=True) - # Returns the following dictionary - { - 'key': # Name of the measure returned - 'unit': # Unit for the measure, if available - 'total': # Value of the measure returned - 'human_value': # Human readable variant of the measure returned - 'data': # A list of dicts with the measure broken down by date, as below - } - - # The data dicts: - [ - 'date': # Date for this row - 'value': # Value of the measure for this row - } - -Admin dimension dicts ---------------------- -.. _admin dimension dict: - -.. code-block:: python - - api.admin_dimensions(datetime.now() - timedelta(hours=24*5), datetime.now(), languages=True) - # Returns the following dictionary - { - 'key': # Name of the dimension returned - 'data': # A list of data dicts, as below - } - - # the data dicts: - { - 'key': # category for this row - 'human_key': # Human readable name for the category for this row, when available - 'value': # Numeric value for the category - }, -Admin retention dicts ---------------------- -.. _admin retention dict: - -.. code-block:: python - - api.admin_retention(datetime.now() - timedelta(hours=24*5), datetime.now()) - # Returns the following dictionary - { - 'period': # Starting time of the period that the data is being returned for - 'frequency': # Time resolution (day or month) for the returned data - 'data': # List of data dicts, as below - } - - # the data dicts: - { - 'date': # Date for this entry - 'rate': # Fraction of users retained - 'value': # Absolute number of users retained - } - +Base types +========== +.. autoclass:: mastodon.types_base.AttribAccessDict + :members: + +.. autoclass:: mastodon.types_base.PaginatableList + :members: + +.. autoclass:: mastodon.types_base.NonPaginatableList + :members: + +.. autoclass:: mastodon.types_base.MaybeSnowflakeIdType + :members: + +.. autoclass:: mastodon.types_base.IdType + :members: + +.. autoclass:: mastodon.types_base.Entity + :members: + +.. autoclass:: mastodon.types_base.EntityList + :members: + +Return types +============ +.. autoclass:: mastodon.return_types.WebPushSubscriptionAlerts + :members: + +.. autoclass:: mastodon.return_types.WebPushSubscription + :members: + +.. autoclass:: mastodon.return_types.UserList + :members: + +.. autoclass:: mastodon.return_types.Translation + :members: + +.. autoclass:: mastodon.return_types.TagHistory + :members: + +.. autoclass:: mastodon.return_types.Tag + :members: + +.. autoclass:: mastodon.return_types.Suggestion + :members: + +.. autoclass:: mastodon.return_types.StreamReaction + :members: + +.. autoclass:: mastodon.return_types.StatusSource + :members: + +.. autoclass:: mastodon.return_types.StatusMention + :members: + +.. autoclass:: mastodon.return_types.StatusEdit + :members: + +.. autoclass:: mastodon.return_types.Status + :members: + +.. autoclass:: mastodon.return_types.SearchV2 + :members: + +.. autoclass:: mastodon.return_types.Search + :members: + +.. autoclass:: mastodon.return_types.ScheduledStatusParams + :members: + +.. autoclass:: mastodon.return_types.ScheduledStatus + :members: + +.. autoclass:: mastodon.return_types.Rule + :members: + +.. autoclass:: mastodon.return_types.Role + :members: + +.. autoclass:: mastodon.return_types.Report + :members: + +.. autoclass:: mastodon.return_types.Relationship + :members: + +.. autoclass:: mastodon.return_types.Reaction + :members: + +.. autoclass:: mastodon.return_types.PushNotification + :members: + +.. autoclass:: mastodon.return_types.PreviewCardAuthor + :members: + +.. autoclass:: mastodon.return_types.PreviewCard + :members: + +.. autoclass:: mastodon.return_types.Preferences + :members: + +.. autoclass:: mastodon.return_types.PollOption + :members: + +.. autoclass:: mastodon.return_types.Poll + :members: + +.. autoclass:: mastodon.return_types.Notification + :members: + +.. autoclass:: mastodon.return_types.NodeinfoUsageUsers + :members: + +.. autoclass:: mastodon.return_types.NodeinfoUsage + :members: + +.. autoclass:: mastodon.return_types.NodeinfoSoftware + :members: + +.. autoclass:: mastodon.return_types.NodeinfoServices + :members: + +.. autoclass:: mastodon.return_types.NodeinfoMetadata + :members: + +.. autoclass:: mastodon.return_types.Nodeinfo + :members: + +.. autoclass:: mastodon.return_types.MediaAttachmentVideoMetadata + :members: + +.. autoclass:: mastodon.return_types.MediaAttachmentMetadataContainer + :members: + +.. autoclass:: mastodon.return_types.MediaAttachmentImageMetadata + :members: + +.. autoclass:: mastodon.return_types.MediaAttachmentFocusPoint + :members: + +.. autoclass:: mastodon.return_types.MediaAttachmentColors + :members: + +.. autoclass:: mastodon.return_types.MediaAttachmentAudioMetadata + :members: + +.. autoclass:: mastodon.return_types.MediaAttachment + :members: + +.. autoclass:: mastodon.return_types.Marker + :members: + +.. autoclass:: mastodon.return_types.InstanceVapidKey + :members: + +.. autoclass:: mastodon.return_types.InstanceV2 + :members: + +.. autoclass:: mastodon.return_types.InstanceUsageUsers + :members: + +.. autoclass:: mastodon.return_types.InstanceUsage + :members: + +.. autoclass:: mastodon.return_types.InstanceURLsV2 + :members: + +.. autoclass:: mastodon.return_types.InstanceURLs + :members: + +.. autoclass:: mastodon.return_types.InstanceTranslationConfiguration + :members: + +.. autoclass:: mastodon.return_types.InstanceThumbnailVersions + :members: + +.. autoclass:: mastodon.return_types.InstanceThumbnail + :members: + +.. autoclass:: mastodon.return_types.InstanceStatusConfiguration + :members: + +.. autoclass:: mastodon.return_types.InstanceStatistics + :members: + +.. autoclass:: mastodon.return_types.InstanceRegistrations + :members: + +.. autoclass:: mastodon.return_types.InstancePollConfiguration + :members: + +.. autoclass:: mastodon.return_types.InstanceMediaConfiguration + :members: + +.. autoclass:: mastodon.return_types.InstanceIcon + :members: + +.. autoclass:: mastodon.return_types.InstanceContact + :members: + +.. autoclass:: mastodon.return_types.InstanceConfigurationV2 + :members: + +.. autoclass:: mastodon.return_types.InstanceConfiguration + :members: + +.. autoclass:: mastodon.return_types.InstanceAccountConfiguration + :members: + +.. autoclass:: mastodon.return_types.Instance + :members: + +.. autoclass:: mastodon.return_types.IdentityProof + :members: + +.. autoclass:: mastodon.return_types.FilterV2 + :members: + +.. autoclass:: mastodon.return_types.FilterStatus + :members: + +.. autoclass:: mastodon.return_types.FilterResult + :members: + +.. autoclass:: mastodon.return_types.FilterKeyword + :members: + +.. autoclass:: mastodon.return_types.Filter + :members: + +.. autoclass:: mastodon.return_types.FeaturedTag + :members: + +.. autoclass:: mastodon.return_types.FamiliarFollowers + :members: + +.. autoclass:: mastodon.return_types.ExtendedDescription + :members: + +.. autoclass:: mastodon.return_types.DomainBlock + :members: + +.. autoclass:: mastodon.return_types.CustomEmoji + :members: + +.. autoclass:: mastodon.return_types.CredentialAccountSource + :members: + +.. autoclass:: mastodon.return_types.Conversation + :members: + +.. autoclass:: mastodon.return_types.Context + :members: + +.. autoclass:: mastodon.return_types.Application + :members: + +.. autoclass:: mastodon.return_types.Announcement + :members: + +.. autoclass:: mastodon.return_types.AdminRetention + :members: + +.. autoclass:: mastodon.return_types.AdminReport + :members: + +.. autoclass:: mastodon.return_types.AdminMeasureData + :members: + +.. autoclass:: mastodon.return_types.AdminMeasure + :members: + +.. autoclass:: mastodon.return_types.AdminIpBlock + :members: + +.. autoclass:: mastodon.return_types.AdminIp + :members: + +.. autoclass:: mastodon.return_types.AdminEmailDomainBlockHistory + :members: + +.. autoclass:: mastodon.return_types.AdminEmailDomainBlock + :members: + +.. autoclass:: mastodon.return_types.AdminDomainBlock + :members: + +.. autoclass:: mastodon.return_types.AdminDomainAllow + :members: + +.. autoclass:: mastodon.return_types.AdminDimensionData + :members: + +.. autoclass:: mastodon.return_types.AdminDimension + :members: + +.. autoclass:: mastodon.return_types.AdminCohort + :members: + +.. autoclass:: mastodon.return_types.AdminCanonicalEmailBlock + :members: + +.. autoclass:: mastodon.return_types.AdminAccount + :members: + +.. autoclass:: mastodon.return_types.Activity + :members: + +.. autoclass:: mastodon.return_types.AccountField + :members: + +.. autoclass:: mastodon.return_types.AccountCreationErrorDetailsField + :members: + +.. autoclass:: mastodon.return_types.AccountCreationErrorDetails + :members: + +.. autoclass:: mastodon.return_types.AccountCreationError + :members: + +.. autoclass:: mastodon.return_types.Account + :members: diff --git a/mastodon/admin.py b/mastodon/admin.py index 0974c34..a974927 100644 --- a/mastodon/admin.py +++ b/mastodon/admin.py @@ -19,7 +19,7 @@ class Mastodon(Internals): def admin_accounts_v2(self, origin: Optional[str] = None, by_domain: Optional[str] = None, status: Optional[str] = None, username: Optional[str] = None, display_name: Optional[str] = None, email: Optional[str] = None, ip: Optional[str] = None, permissions: Optional[str] = None, invited_by: Union[Account, IdType] = None, role_ids: Optional[List[IdType]] = None, max_id: Optional[IdType] = None, min_id: Optional[IdType] = None, - since_id: Optional[IdType] = None, limit: Optional[int] = None) -> AdminAccount: + since_id: Optional[IdType] = None, limit: Optional[int] = None) -> List[AdminAccount]: """ Fetches a list of accounts that match given criteria. By default, local accounts are returned. diff --git a/mastodon/return_types.py b/mastodon/return_types.py index d22a5ed..2579620 100644 --- a/mastodon/return_types.py +++ b/mastodon/return_types.py @@ -2655,7 +2655,7 @@ class InstanceV2(AttribAccessDict): icon: "EntityList[InstanceIcon]" """ - The instance icon, as a list of `InstanceIcon`s, with entries representing different available size variants. + The instance icon, as a list of `InstanceIcon` , with entries representing different available size variants. Should contain (as text): URL Version history: diff --git a/mastodon/types_base.py b/mastodon/types_base.py index feb0002..af5e2a3 100644 --- a/mastodon/types_base.py +++ b/mastodon/types_base.py @@ -362,8 +362,9 @@ class NonPaginatableList(List[T]): """ pass -"""Lists in Mastodon.py are either regular or paginatable""" EntityList = Union[NonPaginatableList[T], PaginatableList[T]] +"""Lists in Mastodon.py are either regular or paginatable, so this is a union of + :class:`NonPaginatableList` and :class:`PaginatableList`.""" try: OrderedStrDict = OrderedDict[str, Any] @@ -510,14 +511,15 @@ class AttribAccessDict(OrderedStrDict): pass return False -"""An entity returned by the Mastodon API is either a dict or a list""" + Entity = Union[AttribAccessDict, EntityList] +"""Base class for everything returned by the API. This is a union of :class:`AttribAccessDict` and :class:`EntityList`.""" -"""A type containing the parameters for a encrypting webpush data. Considered opaque / implementation detail.""" WebpushCryptoParamsPubkey = Dict[str, str] +"""A type containing the parameters for a encrypting webpush data. Considered opaque / implementation detail.""" -"""A type containing the parameters for a derypting webpush data. Considered opaque / implementation detail.""" WebpushCryptoParamsPrivkey = Dict[str, str] +"""A type containing the parameters for a derypting webpush data. Considered opaque / implementation detail.""" -"""Backwards compatibility alias""" AttribAccessList = PaginatableList +"""Backwards compatibility alias""" \ No newline at end of file diff --git a/srcgen/ValidateEntities.ipynb b/srcgen/ValidateEntities.ipynb index c0e8d99..b52343b 100644 --- a/srcgen/ValidateEntities.ipynb +++ b/srcgen/ValidateEntities.ipynb @@ -10,9 +10,17 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 2, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "../mastodon/__init__.py\n" + ] + } + ], "source": [ "# Super special from this directory for sure and guaranteed import\n", "import importlib.util\n", @@ -29,7 +37,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ @@ -41,7 +49,7 @@ "import pickle as pkl\n", "\n", "# Mastodon.py imports\n", - "from mastodon.types import *\n", + "from mastodon.return_types import *\n", "from mastodon.types_base import real_issubclass" ] }, @@ -232,9 +240,5302 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 5, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "from __future__ import annotations # python< 3.9 compat\n", + "from datetime import datetime\n", + "from typing import Union, Optional, Tuple, List, IO, Dict\n", + "from mastodon.types_base import AttribAccessDict, IdType, MaybeSnowflakeIdType, PaginationInfo, PrimitiveIdType, EntityList, PaginatableList, NonPaginatableList, PathOrFile, WebpushCryptoParamsPubkey, WebpushCryptoParamsPrivkey, try_cast_recurse, try_cast, real_issubclass\n", + "\n", + "class Account(AttribAccessDict):\n", + " \"\"\"\n", + " A user acccount, local or remote.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Account/\n", + " \"\"\"\n", + "\n", + " id: \"MaybeSnowflakeIdType\"\n", + " \"\"\"\n", + " The accounts id.\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " username: \"str\"\n", + " \"\"\"\n", + " The username, without the domain part.\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " acct: \"str\"\n", + " \"\"\"\n", + " The user's account name as username@domain (@domain omitted for local users).\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " display_name: \"str\"\n", + " \"\"\"\n", + " The user's display name.\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " discoverable: \"Optional[bool]\"\n", + " \"\"\"\n", + " Indicates whether or not a user is visible on the discovery page. (nullable)\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " group: \"bool\"\n", + " \"\"\"\n", + " A boolean indicating whether the account represents a group rather than an individual.\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " locked: \"bool\"\n", + " \"\"\"\n", + " Denotes whether the account can be followed without a follow request.\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " created_at: \"datetime\"\n", + " \"\"\"\n", + " The accounts creation time.\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " * 3.4.0: now resolves to midnight instead of an exact time\n", + " \"\"\"\n", + "\n", + " following_count: \"int\"\n", + " \"\"\"\n", + " How many accounts this account follows.\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " followers_count: \"int\"\n", + " \"\"\"\n", + " How many followers this account has.\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " statuses_count: \"int\"\n", + " \"\"\"\n", + " How many statuses this account has created, excluding: 1) later deleted posts 2) direct messages / 'mentined users only' posts, except in earlier versions mastodon.\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " * 2.4.2: no longer includes direct / mentioned-only visibility statuses\n", + " \"\"\"\n", + "\n", + " note: \"str\"\n", + " \"\"\"\n", + " The users bio / profile text / 'note'.\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " url: \"str\"\n", + " \"\"\"\n", + " A URL pointing to this users profile page (can be remote).\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " uri: \"str\"\n", + " \"\"\"\n", + " Webfinger-resolvable URI for this account.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 4.2.0: added\n", + " \"\"\"\n", + "\n", + " avatar: \"str\"\n", + " \"\"\"\n", + " URL for this users avatar, can be animated.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " header: \"str\"\n", + " \"\"\"\n", + " URL for this users header image, can be animated.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " avatar_static: \"str\"\n", + " \"\"\"\n", + " URL for this users avatar, never animated.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 1.1.2: added\n", + " \"\"\"\n", + "\n", + " header_static: \"str\"\n", + " \"\"\"\n", + " URL for this users header image, never animated.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 1.1.2: added\n", + " \"\"\"\n", + "\n", + " moved_to_account: \"Optional[Account]\"\n", + " \"\"\"\n", + " If set, Account that this user has set up as their moved-to address. (optional)\n", + "\n", + " Version history:\n", + " * 2.1.0: added\n", + " \"\"\"\n", + "\n", + " suspended: \"Optional[bool]\"\n", + " \"\"\"\n", + " Boolean indicating whether the user has been suspended. (optional)\n", + "\n", + " Version history:\n", + " * 3.3.0: added\n", + " \"\"\"\n", + "\n", + " limited: \"Optional[bool]\"\n", + " \"\"\"\n", + " Boolean indicating whether the user has been silenced. (optional)\n", + "\n", + " Version history:\n", + " * 3.5.3: added\n", + " \"\"\"\n", + "\n", + " bot: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether this account is automated.\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " fields: \"EntityList[AccountField]\"\n", + " \"\"\"\n", + " List of up to four (by default) AccountFields.\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " emojis: \"EntityList[CustomEmoji]\"\n", + " \"\"\"\n", + " List of custom emoji used in name, bio or fields.\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " last_status_at: \"Optional[datetime]\"\n", + " \"\"\"\n", + " When the most recent status was posted. (nullable)\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " * 3.1.0: now returns date only, no time\n", + " \"\"\"\n", + "\n", + " noindex: \"Optional[bool]\"\n", + " \"\"\"\n", + " Whether the local user has opted out of being indexed by search engines. (nullable)\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " roles: \"Optional[EntityList]\"\n", + " \"\"\"\n", + " THIS FIELD IS DEPRECATED. IT IS RECOMMENDED THAT YOU DO NOT USE IT.\n", + "\n", + " Deprecated. Was a list of strings with the users roles. Now just an empty list. Mastodon.py makes no attempt to fill it, and the field may be removed if Mastodon removes it. Use the `role` field instead. (optional, nullable)\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " * 4.0.0: deprecated\n", + " \"\"\"\n", + "\n", + " role: \"Optional[Role]\"\n", + " \"\"\"\n", + " The users role. Only present for account returned from account_verify_credentials(). (optional)\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " source: \"Optional[CredentialAccountSource]\"\n", + " \"\"\"\n", + " Additional information about the account, useful for profile editing. Only present for account returned from account_verify_credentials(). (optional)\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " mute_expires_at: \"Optional[datetime]\"\n", + " \"\"\"\n", + " If the user is muted by the logged in user with a timed mute, when the mute expires. (nullable)\n", + "\n", + " Version history:\n", + " * 3.3.0: added\n", + " \"\"\"\n", + "\n", + " indexable: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether public posts by this account should be searchable by anyone.\n", + "\n", + " Version history:\n", + " * 4.2.0: added\n", + " \"\"\"\n", + "\n", + " hide_collections: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether a user has chosen to hide their network (followers/followed accounts).\n", + "\n", + " Version history:\n", + " * 4.1.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.2.0\"\n", + "\n", + "class AccountField(AttribAccessDict):\n", + " \"\"\"\n", + " A field, displayed on a users profile (e.g. \"Pronouns\", \"Favorite color\").\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Account/\n", + " \"\"\"\n", + "\n", + " name: \"str\"\n", + " \"\"\"\n", + " The key of a given field's key-value pair.\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " value: \"str\"\n", + " \"\"\"\n", + " The value associated with the `name` key.\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " verified_at: \"Optional[str]\"\n", + " \"\"\"\n", + " Timestamp of when the server verified a URL value for a rel=\"me\" link. (nullable)\n", + "\n", + " Version history:\n", + " * 2.6.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"2.6.0\"\n", + "\n", + "class Role(AttribAccessDict):\n", + " \"\"\"\n", + " A role granting a user a set of permissions.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Role/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " The ID of the Role in the database.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " name: \"str\"\n", + " \"\"\"\n", + " The name of the role.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " permissions: \"str\"\n", + " \"\"\"\n", + " A bitmask that represents the sum of all permissions granted to the role.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " color: \"str\"\n", + " \"\"\"\n", + " The hex code assigned to this role. If no hex code is assigned, the string will be empty.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " highlighted: \"bool\"\n", + " \"\"\"\n", + " Whether the role is publicly visible as a badge on user profiles.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class CredentialAccountSource(AttribAccessDict):\n", + " \"\"\"\n", + " Source values useful for editing a user's profile.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Account/\n", + " \"\"\"\n", + "\n", + " privacy: \"str\"\n", + " \"\"\"\n", + " The user's default visibility setting (\"private\", \"unlisted\" or \"public\").\n", + "\n", + " Version history:\n", + " * 1.5.0: added\n", + " \"\"\"\n", + "\n", + " sensitive: \"bool\"\n", + " \"\"\"\n", + " Denotes whether user media should be marked sensitive by default.\n", + "\n", + " Version history:\n", + " * 1.5.0: added\n", + " \"\"\"\n", + "\n", + " note: \"str\"\n", + " \"\"\"\n", + " Plain text version of the user's bio.\n", + "\n", + " Version history:\n", + " * 1.5.0: added\n", + " \"\"\"\n", + "\n", + " language: \"Optional[str]\"\n", + " \"\"\"\n", + " The default posting language for new statuses. (nullable)\n", + " Should contain (as text): TwoLetterLanguageCodeEnum\n", + "\n", + " Version history:\n", + " * 2.4.2: added\n", + " \"\"\"\n", + "\n", + " fields: \"EntityList[AccountField]\"\n", + " \"\"\"\n", + " Metadata about the account.\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " follow_requests_count: \"int\"\n", + " \"\"\"\n", + " The number of pending follow requests.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " indexable: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether public posts by this user should be searchable by anyone.\n", + "\n", + " Version history:\n", + " * 4.2.0: added\n", + " \"\"\"\n", + "\n", + " hide_collections: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether the user has chosen to hide their network (followers/followed accounts).\n", + "\n", + " Version history:\n", + " * 4.1.0: added\n", + " \"\"\"\n", + "\n", + " discoverable: \"Optional[bool]\"\n", + " \"\"\"\n", + " Indicates whether or not the user is visible on the discovery page. (nullable)\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.2.0\"\n", + "\n", + "class Status(AttribAccessDict):\n", + " \"\"\"\n", + " A single status / toot / post.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Status/\n", + " \"\"\"\n", + "\n", + " id: \"MaybeSnowflakeIdType\"\n", + " \"\"\"\n", + " Id of this status.\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " uri: \"str\"\n", + " \"\"\"\n", + " Descriptor for the status EG 'tag:mastodon.social,2016-11-25:objectId=:objectType=Status'.\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " url: \"Optional[str]\"\n", + " \"\"\"\n", + " URL of the status. (nullable)\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " account: \"Account\"\n", + " \"\"\"\n", + " Account which posted the status.\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " in_reply_to_id: \"Optional[MaybeSnowflakeIdType]\"\n", + " \"\"\"\n", + " Id of the status this status is in response to. (nullable)\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " in_reply_to_account_id: \"Optional[MaybeSnowflakeIdType]\"\n", + " \"\"\"\n", + " Id of the account this status is in response to. (nullable)\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " reblog: \"Optional[Status]\"\n", + " \"\"\"\n", + " Denotes whether the status is a reblog. If so, set to the original status. (nullable)\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " content: \"str\"\n", + " \"\"\"\n", + " Content of the status, as HTML: '

Hello from Python

'.\n", + " Should contain (as text): HTML\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " created_at: \"datetime\"\n", + " \"\"\"\n", + " Creation time.\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " reblogs_count: \"int\"\n", + " \"\"\"\n", + " Number of reblogs.\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " favourites_count: \"int\"\n", + " \"\"\"\n", + " Number of favourites.\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " reblogged: \"Optional[bool]\"\n", + " \"\"\"\n", + " Denotes whether the logged in user has boosted this status. (optional)\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " favourited: \"Optional[bool]\"\n", + " \"\"\"\n", + " Denotes whether the logged in user has favourited this status. (optional)\n", + "\n", + " Version history:\n", + " * 0.1.0: added\n", + " \"\"\"\n", + "\n", + " sensitive: \"bool\"\n", + " \"\"\"\n", + " Denotes whether media attachments to the status are marked sensitive.\n", + "\n", + " Version history:\n", + " * 0.9.9: added\n", + " \"\"\"\n", + "\n", + " spoiler_text: \"str\"\n", + " \"\"\"\n", + " Warning text that should be displayed before the status content.\n", + "\n", + " Version history:\n", + " * 1.0.0: added\n", + " \"\"\"\n", + "\n", + " visibility: \"str\"\n", + " \"\"\"\n", + " Toot visibility.\n", + " Should contain (as text): VisibilityEnum\n", + "\n", + " Version history:\n", + " * 0.9.9: added\n", + " \"\"\"\n", + "\n", + " mentions: \"EntityList[StatusMention]\"\n", + " \"\"\"\n", + " A list of StatusMention this status includes.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " media_attachments: \"EntityList[MediaAttachment]\"\n", + " \"\"\"\n", + " List files attached to this status.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " emojis: \"EntityList[CustomEmoji]\"\n", + " \"\"\"\n", + " A list of CustomEmoji used in the status.\n", + "\n", + " Version history:\n", + " * 2.0.0: added\n", + " \"\"\"\n", + "\n", + " tags: \"EntityList[Tag]\"\n", + " \"\"\"\n", + " A list of Tags used in the status.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " bookmarked: \"Optional[bool]\"\n", + " \"\"\"\n", + " True if the status is bookmarked by the logged in user, False if not. (optional)\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " application: \"Optional[Application]\"\n", + " \"\"\"\n", + " Application for the client used to post the status (Does not federate and is therefore always None for remote statuses, can also be None for local statuses for some legacy applications registered before this field was introduced). (optional)\n", + "\n", + " Version history:\n", + " * 0.9.9: added\n", + " \"\"\"\n", + "\n", + " language: \"Optional[str]\"\n", + " \"\"\"\n", + " The language of the status, if specified by the server, as ISO 639-1 (two-letter) language code. (nullable)\n", + " Should contain (as text): TwoLetterLanguageCodeEnum\n", + "\n", + " Version history:\n", + " * 1.4.0: added\n", + " \"\"\"\n", + "\n", + " muted: \"Optional[bool]\"\n", + " \"\"\"\n", + " Boolean denoting whether the user has muted this status by way of conversation muting. (optional)\n", + "\n", + " Version history:\n", + " * 1.4.0: added\n", + " \"\"\"\n", + "\n", + " pinned: \"Optional[bool]\"\n", + " \"\"\"\n", + " Boolean denoting whether or not the status is currently pinned for the associated account. (optional)\n", + "\n", + " Version history:\n", + " * 1.6.0: added\n", + " \"\"\"\n", + "\n", + " replies_count: \"int\"\n", + " \"\"\"\n", + " The number of replies to this status.\n", + "\n", + " Version history:\n", + " * 2.5.0: added\n", + " \"\"\"\n", + "\n", + " card: \"Optional[PreviewCard]\"\n", + " \"\"\"\n", + " A preview card for links from the status, if present at time of delivery. (nullable)\n", + "\n", + " Version history:\n", + " * 2.6.0: added\n", + " \"\"\"\n", + "\n", + " poll: \"Optional[Poll]\"\n", + " \"\"\"\n", + " A poll object if a poll is attached to this status. (nullable)\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " edited_at: \"Optional[datetime]\"\n", + " \"\"\"\n", + " Time the status was last edited. (nullable)\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " filtered: \"Optional[EntityList[FilterResult]]\"\n", + " \"\"\"\n", + " If present, a list of filter application results that indicate which of the users filters matched and what actions should be taken. (optional)\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class StatusEdit(AttribAccessDict):\n", + " \"\"\"\n", + " An object representing a past version of an edited status.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/StatusEdit/\n", + " \"\"\"\n", + "\n", + " content: \"str\"\n", + " \"\"\"\n", + " Content for this version of the status.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " spoiler_text: \"str\"\n", + " \"\"\"\n", + " CW / Spoiler text for this version of the status.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " sensitive: \"bool\"\n", + " \"\"\"\n", + " Whether media in this version of the status is marked as sensitive.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " created_at: \"datetime\"\n", + " \"\"\"\n", + " Time at which this version of the status was posted.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " account: \"Account\"\n", + " \"\"\"\n", + " Account object of the user that posted the status.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " media_attachments: \"EntityList[MediaAttachment]\"\n", + " \"\"\"\n", + " List of MediaAttachment objects with the attached media for this version of the status.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " emojis: \"EntityList[CustomEmoji]\"\n", + " \"\"\"\n", + " List of custom emoji used in this version of the status.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " poll: \"Optional[Poll]\"\n", + " \"\"\"\n", + " The current state of the poll options at this revision. Note that edits changing the poll options will be collapsed together into one edit, since this action resets the poll. (optional)\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.5.0\"\n", + "\n", + "class FilterResult(AttribAccessDict):\n", + " \"\"\"\n", + " A filter action that should be taken on a status.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/FilterResult/\n", + " \"\"\"\n", + "\n", + " filter: \"Union[Filter, FilterV2]\"\n", + " \"\"\"\n", + " The filter that was matched.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " keyword_matches: \"Optional[EntityList[str]]\"\n", + " \"\"\"\n", + " The keyword within the filter that was matched. (nullable)\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " status_matches: \"Optional[EntityList]\"\n", + " \"\"\"\n", + " The status ID within the filter that was matched. (nullable)\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class StatusMention(AttribAccessDict):\n", + " \"\"\"\n", + " A mention of a user within a status.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Mention/\n", + " \"\"\"\n", + "\n", + " url: \"str\"\n", + " \"\"\"\n", + " Mentioned user's profile URL (potentially remote).\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " username: \"str\"\n", + " \"\"\"\n", + " Mentioned user's user name (not including domain).\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " acct: \"str\"\n", + " \"\"\"\n", + " Mentioned user's account name (including domain).\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " Mentioned user's (local) account ID.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"0.6.0\"\n", + "\n", + "class ScheduledStatus(AttribAccessDict):\n", + " \"\"\"\n", + " A scheduled status / toot to be eventually posted.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/ScheduledStatus/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " Scheduled status ID (note: Not the id of the status once it gets posted!).\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " scheduled_at: \"datetime\"\n", + " \"\"\"\n", + " datetime object describing when the status is to be posted.\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " params: \"ScheduledStatusParams\"\n", + " \"\"\"\n", + " Parameters for the scheduled status, specifically.\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " media_attachments: \"EntityList\"\n", + " \"\"\"\n", + " Array of MediaAttachment objects for the attachments to the scheduled status.\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"2.7.0\"\n", + "\n", + "class ScheduledStatusParams(AttribAccessDict):\n", + " \"\"\"\n", + " Parameters for a status / toot to be posted in the future.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/ScheduledStatus/\n", + " \"\"\"\n", + "\n", + " text: \"str\"\n", + " \"\"\"\n", + " Toot text.\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " in_reply_to_id: \"Optional[MaybeSnowflakeIdType]\"\n", + " \"\"\"\n", + " ID of the status this one is a reply to. (nullable)\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " media_ids: \"Optional[EntityList[str]]\"\n", + " \"\"\"\n", + " IDs of media attached to this status. (nullable)\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " sensitive: \"Optional[bool]\"\n", + " \"\"\"\n", + " Whether this status is sensitive or not. (nullable)\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " visibility: \"Optional[str]\"\n", + " \"\"\"\n", + " Visibility of the status. (nullable)\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " idempotency: \"Optional[str]\"\n", + " \"\"\"\n", + " Idempotency key for the scheduled status. (nullable)\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " scheduled_at: \"Optional[datetime]\"\n", + " \"\"\"\n", + " Present, but generally \"None\". Unsure what this is for - the actual scheduled_at is in the ScheduledStatus object, not here. If you know, let me know. (nullable)\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " spoiler_text: \"Optional[str]\"\n", + " \"\"\"\n", + " CW text for this status. (nullable)\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " application_id: \"IdType\"\n", + " \"\"\"\n", + " ID of the application that scheduled the status.\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " poll: \"Optional[Poll]\"\n", + " \"\"\"\n", + " Poll parameters. (nullable)\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " language: \"Optional[str]\"\n", + " \"\"\"\n", + " The language that will be used for the status. (nullable)\n", + " Should contain (as text): TwoLetterLanguageCodeEnum\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " allowed_mentions: \"Optional[EntityList[str]]\"\n", + " \"\"\"\n", + " Undocumented. If you know what this does, please let me know. (nullable)\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " with_rate_limit: \"bool\"\n", + " \"\"\"\n", + " Whether the status should be rate limited. It is unclear to me what this does. If you know, please let met know.\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"2.8.0\"\n", + "\n", + "class Poll(AttribAccessDict):\n", + " \"\"\"\n", + " A poll attached to a status.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Poll/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " The polls ID.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " expires_at: \"Optional[datetime]\"\n", + " \"\"\"\n", + " The time at which the poll is set to expire. (nullable)\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " expired: \"bool\"\n", + " \"\"\"\n", + " Boolean denoting whether users can still vote in this poll.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " multiple: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether it is allowed to vote for more than one option.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " votes_count: \"int\"\n", + " \"\"\"\n", + " Total number of votes cast in this poll.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " voted: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether the logged-in user has already voted in this poll.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " options: \"EntityList[PollOption]\"\n", + " \"\"\"\n", + " The poll options.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " emojis: \"EntityList[CustomEmoji]\"\n", + " \"\"\"\n", + " List of CustomEmoji used in answer strings,.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " own_votes: \"EntityList[int]\"\n", + " \"\"\"\n", + " The logged-in users votes, as a list of indices to the options.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " voters_count: \"Optional[int]\"\n", + " \"\"\"\n", + " How many unique accounts have voted on a multiple-choice poll. (nullable)\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"2.8.0\"\n", + "\n", + "class PollOption(AttribAccessDict):\n", + " \"\"\"\n", + " A poll option within a poll.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Poll/\n", + " \"\"\"\n", + "\n", + " title: \"str\"\n", + " \"\"\"\n", + " Text of the option.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " votes_count: \"Optional[int]\"\n", + " \"\"\"\n", + " Count of votes for the option. Can be None if the poll creator has chosen to hide vote totals until the poll expires and it hasn't yet. (nullable)\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"2.8.0\"\n", + "\n", + "class Conversation(AttribAccessDict):\n", + " \"\"\"\n", + " A conversation (using direct / mentions-only visibility) between two or more users.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Conversation/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " The ID of this conversation object.\n", + "\n", + " Version history:\n", + " * 2.6.0: added\n", + " \"\"\"\n", + "\n", + " unread: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether this conversation has yet to be read by the user.\n", + "\n", + " Version history:\n", + " * 2.6.0: added\n", + " \"\"\"\n", + "\n", + " accounts: \"EntityList[Account]\"\n", + " \"\"\"\n", + " List of accounts (other than the logged-in account) that are part of this conversation.\n", + "\n", + " Version history:\n", + " * 2.6.0: added\n", + " \"\"\"\n", + "\n", + " last_status: \"Optional[Status]\"\n", + " \"\"\"\n", + " The newest status in this conversation. (nullable)\n", + "\n", + " Version history:\n", + " * 2.6.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"2.6.0\"\n", + "\n", + "class Tag(AttribAccessDict):\n", + " \"\"\"\n", + " A hashtag, as part of a status or on its own (e.g. trending).\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Tag/\n", + " \"\"\"\n", + "\n", + " name: \"str\"\n", + " \"\"\"\n", + " Hashtag name (not including the #).\n", + "\n", + " Version history:\n", + " * 0.9.0: added\n", + " \"\"\"\n", + "\n", + " url: \"str\"\n", + " \"\"\"\n", + " Hashtag URL (can be remote).\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 0.9.0: added\n", + " \"\"\"\n", + "\n", + " history: \"Optional[EntityList[TagHistory]]\"\n", + " \"\"\"\n", + " List of TagHistory for up to 7 days. Not present in statuses. (optional)\n", + "\n", + " Version history:\n", + " * 2.4.1: added\n", + " \"\"\"\n", + "\n", + " following: \"Optional[bool]\"\n", + " \"\"\"\n", + " Boolean indicating whether the logged-in user is following this tag. (optional)\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class TagHistory(AttribAccessDict):\n", + " \"\"\"\n", + " Usage history for a hashtag.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Tag/\n", + " \"\"\"\n", + "\n", + " day: \"datetime\"\n", + " \"\"\"\n", + " Date of the day this TagHistory is for.\n", + " Should contain (as text): datetime\n", + "\n", + " Version history:\n", + " * 2.4.1: added\n", + " \"\"\"\n", + "\n", + " uses: \"str\"\n", + " \"\"\"\n", + " Number of statuses using this hashtag on that day.\n", + "\n", + " Version history:\n", + " * 2.4.1: added\n", + " \"\"\"\n", + "\n", + " accounts: \"str\"\n", + " \"\"\"\n", + " Number of accounts using this hashtag in at least one status on that day.\n", + "\n", + " Version history:\n", + " * 2.4.1: added\n", + " \"\"\"\n", + "\n", + " _version = \"2.4.1\"\n", + "\n", + "class CustomEmoji(AttribAccessDict):\n", + " \"\"\"\n", + " A custom emoji.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/CustomEmoji/\n", + " \"\"\"\n", + "\n", + " shortcode: \"str\"\n", + " \"\"\"\n", + " Emoji shortcode, without surrounding colons.\n", + "\n", + " Version history:\n", + " * 2.0.0: added\n", + " \"\"\"\n", + "\n", + " url: \"str\"\n", + " \"\"\"\n", + " URL for the emoji image, can be animated.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 2.0.0: added\n", + " \"\"\"\n", + "\n", + " static_url: \"str\"\n", + " \"\"\"\n", + " URL for the emoji image, never animated.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 2.0.0: added\n", + " \"\"\"\n", + "\n", + " visible_in_picker: \"bool\"\n", + " \"\"\"\n", + " True if the emoji is enabled, False if not.\n", + "\n", + " Version history:\n", + " * 2.0.0: added\n", + " \"\"\"\n", + "\n", + " category: \"Optional[str]\"\n", + " \"\"\"\n", + " The category to display the emoji under (not present if none is set). (nullable)\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.0.0\"\n", + "\n", + "class Application(AttribAccessDict):\n", + " \"\"\"\n", + " Information about an app (in terms of the API).\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Application/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " ID of the application.\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " name: \"str\"\n", + " \"\"\"\n", + " The applications name.\n", + "\n", + " Version history:\n", + " * 0.9.9: added\n", + " \"\"\"\n", + "\n", + " website: \"Optional[str]\"\n", + " \"\"\"\n", + " The applications website. (nullable)\n", + "\n", + " Version history:\n", + " * 0.9.9: added\n", + " * 3.5.1: this property is now nullable\n", + " \"\"\"\n", + "\n", + " vapid_key: \"str\"\n", + " \"\"\"\n", + " THIS FIELD IS DEPRECATED. IT IS RECOMMENDED THAT YOU DO NOT USE IT.\n", + "\n", + " A vapid key that can be used in web applications.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " * 4.3.0: deprecated\n", + " \"\"\"\n", + "\n", + " redirect_uri: \"str\"\n", + " \"\"\"\n", + " THIS FIELD IS DEPRECATED. IT IS RECOMMENDED THAT YOU DO NOT USE IT.\n", + "\n", + " The applications redirect URI or urn:ietf:wg:oauth:2.0:oob. Deprecated, it is recommended to use redirect_uris instead.\n", + "\n", + " Version history:\n", + " * 0.0.0: added\n", + " * 4.3.0: deprecated\n", + " \"\"\"\n", + "\n", + " redirect_uris: \"EntityList[str]\"\n", + " \"\"\"\n", + " The applications redirect URI or urn:ietf:wg:oauth:2.0:oob. Deprecated, it is recommended to use redirect_uris instead.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 4.3.0: added\n", + " \"\"\"\n", + "\n", + " scopes: \"EntityList[str]\"\n", + " \"\"\"\n", + " The applications available scopes.\n", + " Should contain (as text): Scopes\n", + "\n", + " Version history:\n", + " * 4.3.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.3.0\"\n", + "\n", + "class Relationship(AttribAccessDict):\n", + " \"\"\"\n", + " Information about the relationship between two users.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Relationship/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " ID of the relationship object.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " following: \"bool\"\n", + " \"\"\"\n", + " Boolean denoting whether the logged-in user follows the specified user.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " followed_by: \"bool\"\n", + " \"\"\"\n", + " Boolean denoting whether the specified user follows the logged-in user.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " blocking: \"bool\"\n", + " \"\"\"\n", + " Boolean denoting whether the logged-in user has blocked the specified user.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " blocked_by: \"bool\"\n", + " \"\"\"\n", + " Boolean denoting whether the logged-in user has been blocked by the specified user, if information is available.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " muting: \"bool\"\n", + " \"\"\"\n", + " Boolean denoting whether the logged-in user has muted the specified user.\n", + "\n", + " Version history:\n", + " * 1.1.0: added\n", + " \"\"\"\n", + "\n", + " muting_notifications: \"bool\"\n", + " \"\"\"\n", + " Boolean denoting wheter the logged-in user has muted notifications related to the specified user.\n", + "\n", + " Version history:\n", + " * 2.1.0: added\n", + " \"\"\"\n", + "\n", + " requested: \"bool\"\n", + " \"\"\"\n", + " Boolean denoting whether the logged-in user has sent the specified user a follow request.\n", + "\n", + " Version history:\n", + " * 0.9.9: added\n", + " \"\"\"\n", + "\n", + " domain_blocking: \"bool\"\n", + " \"\"\"\n", + " Boolean denoting whether the logged-in user has blocked the specified users domain.\n", + "\n", + " Version history:\n", + " * 1.4.0: added\n", + " \"\"\"\n", + "\n", + " showing_reblogs: \"bool\"\n", + " \"\"\"\n", + " Boolean denoting whether the specified users reblogs show up on the logged-in users Timeline.\n", + "\n", + " Version history:\n", + " * 2.1.0: added\n", + " \"\"\"\n", + "\n", + " endorsed: \"bool\"\n", + " \"\"\"\n", + " Boolean denoting wheter the specified user is being endorsed / featured by the logged-in user.\n", + "\n", + " Version history:\n", + " * 2.5.0: added\n", + " \"\"\"\n", + "\n", + " note: \"str\"\n", + " \"\"\"\n", + " A free text note the logged in user has created for this account (not publicly visible).\n", + "\n", + " Version history:\n", + " * 3.2.0: added\n", + " \"\"\"\n", + "\n", + " notifying: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether the logged-in user has enabled notifications for this users posts.\n", + "\n", + " Version history:\n", + " * 3.3.0: added\n", + " \"\"\"\n", + "\n", + " languages: \"Optional[EntityList[str]]\"\n", + " \"\"\"\n", + " List of languages that the logged in user is following this user for (if any). (nullable)\n", + " Should contain (as text): TwoLetterLanguageCodeEnum\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " requested_by: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether the specified user has sent the logged-in user a follow request.\n", + "\n", + " Version history:\n", + " * 0.9.9: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class Filter(AttribAccessDict):\n", + " \"\"\"\n", + " Information about a keyword / status filter.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/V1_Filter/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " Id of the filter.\n", + "\n", + " Version history:\n", + " * 2.4.3: added\n", + " \"\"\"\n", + "\n", + " phrase: \"str\"\n", + " \"\"\"\n", + " Filtered keyword or phrase.\n", + "\n", + " Version history:\n", + " * 2.4.3: added\n", + " \"\"\"\n", + "\n", + " context: \"EntityList[str]\"\n", + " \"\"\"\n", + " List of places where the filters are applied.\n", + " Should contain (as text): FilterContextEnum\n", + "\n", + " Version history:\n", + " * 2.4.3: added\n", + " * 3.1.0: added `account`\n", + " \"\"\"\n", + "\n", + " expires_at: \"Optional[datetime]\"\n", + " \"\"\"\n", + " Expiry date for the filter. (nullable)\n", + "\n", + " Version history:\n", + " * 2.4.3: added\n", + " \"\"\"\n", + "\n", + " irreversible: \"bool\"\n", + " \"\"\"\n", + " Boolean denoting if this filter is executed server-side or if it should be ran client-side.\n", + "\n", + " Version history:\n", + " * 2.4.3: added\n", + " \"\"\"\n", + "\n", + " whole_word: \"bool\"\n", + " \"\"\"\n", + " Boolean denoting whether this filter can match partial words.\n", + "\n", + " Version history:\n", + " * 2.4.3: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.1.0\"\n", + "\n", + "class FilterV2(AttribAccessDict):\n", + " \"\"\"\n", + " Information about a keyword / status filter.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Filter/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " Id of the filter.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " context: \"EntityList[str]\"\n", + " \"\"\"\n", + " List of places where the filters are applied.\n", + " Should contain (as text): FilterContextEnum\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " expires_at: \"Optional[datetime]\"\n", + " \"\"\"\n", + " Expiry date for the filter. (nullable)\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " title: \"str\"\n", + " \"\"\"\n", + " Name the user has chosen for this filter.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " filter_action: \"str\"\n", + " \"\"\"\n", + " The action to be taken when a status matches this filter.\n", + " Should contain (as text): FilterActionEnum\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " keywords: \"EntityList[FilterKeyword]\"\n", + " \"\"\"\n", + " A list of keywords that will trigger this filter.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " statuses: \"EntityList[FilterStatus]\"\n", + " \"\"\"\n", + " A list of statuses that will trigger this filter.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class Notification(AttribAccessDict):\n", + " \"\"\"\n", + " A notification about some event, like a new reply or follower.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Notification/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " id of the notification.\n", + "\n", + " Version history:\n", + " * 0.9.9: added\n", + " \"\"\"\n", + "\n", + " type: \"str\"\n", + " \"\"\"\n", + " \"mention\", \"reblog\", \"favourite\", \"follow\", \"poll\" or \"follow_request\".\n", + " Should contain (as text): NotificationTypeEnum\n", + "\n", + " Version history:\n", + " * 0.9.9: added\n", + " * 2.8.0: added `poll`\n", + " * 3.1.0: added `follow_request`\n", + " * 3.3.0: added `status`\n", + " * 3.5.0: added `update` and `admin.sign_up`\n", + " * 4.0.0: added `admin.report`\n", + " \"\"\"\n", + "\n", + " created_at: \"datetime\"\n", + " \"\"\"\n", + " The time the notification was created.\n", + "\n", + " Version history:\n", + " * 0.9.9: added\n", + " \"\"\"\n", + "\n", + " account: \"Account\"\n", + " \"\"\"\n", + " Account of the user from whom the notification originates.\n", + "\n", + " Version history:\n", + " * 0.9.9: added\n", + " \"\"\"\n", + "\n", + " status: \"Optional[Status]\"\n", + " \"\"\"\n", + " In case of \"mention\", the mentioning status In case of reblog / favourite, the reblogged / favourited status. (optional)\n", + "\n", + " Version history:\n", + " * 0.9.9: added\n", + " * 4.0.0: is now optional\n", + " \"\"\"\n", + "\n", + " group_key: \"str\"\n", + " \"\"\"\n", + " A key to group notifications by. Structure is unspecified and subject to change, so please do not make assumptions about it.\n", + "\n", + " Version history:\n", + " * 4.3.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.3.0\"\n", + "\n", + "class Context(AttribAccessDict):\n", + " \"\"\"\n", + " The conversation context for a given status, i.e. its predecessors (that it replies to) and successors (that reply to it).\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Context/\n", + " \"\"\"\n", + "\n", + " ancestors: \"EntityList[Status]\"\n", + " \"\"\"\n", + " A list of Statuses that the Status with this Context is a reply to.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " descendants: \"EntityList[Status]\"\n", + " \"\"\"\n", + " A list of Statuses that are replies to the Status with this Context.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"0.6.0\"\n", + "\n", + "class UserList(AttribAccessDict):\n", + " \"\"\"\n", + " A list of users.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/List/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " id of the list.\n", + "\n", + " Version history:\n", + " * 2.1.0: added\n", + " \"\"\"\n", + "\n", + " title: \"str\"\n", + " \"\"\"\n", + " title of the list.\n", + "\n", + " Version history:\n", + " * 2.1.0: added\n", + " \"\"\"\n", + "\n", + " replies_policy: \"str\"\n", + " \"\"\"\n", + " Which replies should be shown in the list.\n", + " Should contain (as text): RepliesPolicyEnum\n", + "\n", + " Version history:\n", + " * 3.3.0: added\n", + " \"\"\"\n", + "\n", + " exclusive: \"Optional[bool]\"\n", + " \"\"\"\n", + " Boolean indicating whether users on this list are removed from the home feed (appearing exclusively as part of the list). nb: This setting applies to posts at the time they are put into a feed. (optional)\n", + "\n", + " Version history:\n", + " * 4.2.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.2.0\"\n", + "\n", + "class MediaAttachment(AttribAccessDict):\n", + " \"\"\"\n", + " A piece of media (like an image, video, or audio file) that can be or has been attached to a status.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/MediaAttachment/\n", + " \"\"\"\n", + "\n", + " id: \"MaybeSnowflakeIdType\"\n", + " \"\"\"\n", + " The ID of the attachment.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " type: \"str\"\n", + " \"\"\"\n", + " Media type: 'image', 'video', 'gifv', 'audio' or 'unknown'.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " * 2.9.1: added `audio`\n", + " \"\"\"\n", + "\n", + " url: \"str\"\n", + " \"\"\"\n", + " The URL for the image in the local cache.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " remote_url: \"Optional[str]\"\n", + " \"\"\"\n", + " The remote URL for the media (if the image is from a remote instance). (nullable)\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " preview_url: \"Optional[str]\"\n", + " \"\"\"\n", + " The URL for the media preview. (nullable)\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " text_url: \"Optional[str]\"\n", + " \"\"\"\n", + " THIS FIELD IS DEPRECATED. IT IS RECOMMENDED THAT YOU DO NOT USE IT.\n", + "\n", + " Deprecated. The display text for the media (what shows up in text). May not be present in mastodon versions after 3.5.0. (optional)\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " * 3.5.0: removed\n", + " \"\"\"\n", + "\n", + " meta: \"MediaAttachmentMetadataContainer\"\n", + " \"\"\"\n", + " MediaAttachmentMetadataContainer that contains metadata for 'original' and 'small' (preview) versions of the MediaAttachment. Either may be empty. May additionally contain an \"fps\" field giving a videos frames per second (possibly rounded), and a \"length\" field giving a videos length in a human-readable format. Note that a video may have an image as preview. May also contain a 'focus' object and a media 'colors' object.\n", + "\n", + " Version history:\n", + " * 1.5.0: added\n", + " * 2.3.0: added focus\n", + " * 4.0.0: added colors\n", + " \"\"\"\n", + "\n", + " blurhash: \"str\"\n", + " \"\"\"\n", + " The blurhash for the image, used for preview / placeholder generation.\n", + " Should contain (as text): Blurhash\n", + "\n", + " Version history:\n", + " * 2.8.1: added\n", + " \"\"\"\n", + "\n", + " description: \"Optional[str]\"\n", + " \"\"\"\n", + " If set, the user-provided description for this media. (nullable)\n", + "\n", + " Version history:\n", + " * 2.0.0: added\n", + " \"\"\"\n", + "\n", + " preview_remote_url: \"Optional[str]\"\n", + " \"\"\"\n", + " If set, the remote URL for the thumbnail of this media attachment on the or originating instance. (nullable)\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class MediaAttachmentMetadataContainer(AttribAccessDict):\n", + " \"\"\"\n", + " An object holding metadata about a media attachment and its thumbnail. In addition to the documented fields, there may be additional fields. These are not documented, not guaranteed to be present (they are a Mastodon implementation detail), and may change without notice, so relying on them is not recommended.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/MediaAttachment/\n", + " \"\"\"\n", + "\n", + " original: \"Union[MediaAttachmentImageMetadata, MediaAttachmentVideoMetadata, MediaAttachmentAudioMetadata]\"\n", + " \"\"\"\n", + " Metadata for the original media attachment.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " small: \"MediaAttachmentImageMetadata\"\n", + " \"\"\"\n", + " Metadata for the thumbnail of this media attachment.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " colors: \"Optional[MediaAttachmentColors]\"\n", + " \"\"\"\n", + " Information about accent colors for the media. (optional)\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " focus: \"Optional[MediaAttachmentFocusPoint]\"\n", + " \"\"\"\n", + " Information about the focus point for the media. (optional)\n", + "\n", + " Version history:\n", + " * 3.3.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class MediaAttachmentImageMetadata(AttribAccessDict):\n", + " \"\"\"\n", + " Metadata for an image media attachment.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/MediaAttachment/\n", + " \"\"\"\n", + "\n", + " width: \"int\"\n", + " \"\"\"\n", + " Width of the image in pixels.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " height: \"int\"\n", + " \"\"\"\n", + " Height of the image in pixels.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " aspect: \"float\"\n", + " \"\"\"\n", + " Aspect ratio of the image as a floating point number.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " size: \"str\"\n", + " \"\"\"\n", + " Textual representation of the image size in pixels, e.g. '800x600'.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"0.6.0\"\n", + "\n", + "class MediaAttachmentVideoMetadata(AttribAccessDict):\n", + " \"\"\"\n", + " Metadata for a video attachment. This can be a proper video, or a gifv (a looping, soundless animation). Both use the same data model currently, though there is a possibility that they could be split in the future.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/MediaAttachment/\n", + " \"\"\"\n", + "\n", + " width: \"int\"\n", + " \"\"\"\n", + " Width of the video in pixels.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " height: \"int\"\n", + " \"\"\"\n", + " Height of the video in pixels.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " frame_rate: \"str\"\n", + " \"\"\"\n", + " Exact frame rate of the video in frames per second. Can be an integer fraction (i.e. \"20/7\").\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " duration: \"float\"\n", + " \"\"\"\n", + " Duration of the video in seconds.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " bitrate: \"int\"\n", + " \"\"\"\n", + " Average bit-rate of the video in bytes per second.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"0.6.0\"\n", + "\n", + "class MediaAttachmentAudioMetadata(AttribAccessDict):\n", + " \"\"\"\n", + " Metadata for an audio media attachment.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/MediaAttachment/\n", + " \"\"\"\n", + "\n", + " duration: \"float\"\n", + " \"\"\"\n", + " Duration of the audio file in seconds.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " bitrate: \"int\"\n", + " \"\"\"\n", + " Average bit-rate of the audio file in bytes per second.\n", + "\n", + " Version history:\n", + " * 0.6.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"0.6.0\"\n", + "\n", + "class MediaAttachmentFocusPoint(AttribAccessDict):\n", + " \"\"\"\n", + " The focus point for a media attachment, for cropping purposes.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/MediaAttachment/\n", + " \"\"\"\n", + "\n", + " x: \"float\"\n", + " \"\"\"\n", + " Focus point x coordinate (between -1 and 1), with 0 being the center and -1 and 1 being the left and right edges respectively.\n", + "\n", + " Version history:\n", + " * 2.3.0: added\n", + " \"\"\"\n", + "\n", + " y: \"float\"\n", + " \"\"\"\n", + " Focus point x coordinate (between -1 and 1), with 0 being the center and -1 and 1 being the upper and lower edges respectively.\n", + "\n", + " Version history:\n", + " * 2.3.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"2.3.0\"\n", + "\n", + "class MediaAttachmentColors(AttribAccessDict):\n", + " \"\"\"\n", + " Object describing the accent colors for a media attachment.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/MediaAttachment/\n", + " \"\"\"\n", + "\n", + " foreground: \"str\"\n", + " \"\"\"\n", + " Estimated foreground colour for the attachment thumbnail, as a html format hex color (#rrggbb).\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " background: \"str\"\n", + " \"\"\"\n", + " Estimated background colour for the attachment thumbnail, as a html format hex color (#rrggbb).\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " accent: \"str\"\n", + " \"\"\"\n", + " Estimated accent colour for the attachment thumbnail.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class PreviewCard(AttribAccessDict):\n", + " \"\"\"\n", + " A preview card attached to a status, e.g. for an embedded video or link.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/PreviewCard/\n", + " \"\"\"\n", + "\n", + " url: \"str\"\n", + " \"\"\"\n", + " The URL of the card.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 1.0.0: added\n", + " \"\"\"\n", + "\n", + " title: \"str\"\n", + " \"\"\"\n", + " The title of the card.\n", + "\n", + " Version history:\n", + " * 1.0.0: added\n", + " \"\"\"\n", + "\n", + " description: \"str\"\n", + " \"\"\"\n", + " Description of the embedded content.\n", + "\n", + " Version history:\n", + " * 1.0.0: added\n", + " \"\"\"\n", + "\n", + " type: \"str\"\n", + " \"\"\"\n", + " Embed type: 'link', 'photo', 'video', or 'rich'.\n", + "\n", + " Version history:\n", + " * 1.3.0: added\n", + " \"\"\"\n", + "\n", + " image: \"Optional[str]\"\n", + " \"\"\"\n", + " (optional) The image associated with the card. (nullable)\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 1.0.0: added\n", + " \"\"\"\n", + "\n", + " author_name: \"str\"\n", + " \"\"\"\n", + " THIS FIELD IS DEPRECATED. IT IS RECOMMENDED THAT YOU DO NOT USE IT.\n", + "\n", + " Name of the embedded contents author. Deprecated in favour of the `authors` field.\n", + "\n", + " Version history:\n", + " * 1.3.0: added\n", + " * 4.3.0: deprecated\n", + " \"\"\"\n", + "\n", + " author_url: \"str\"\n", + " \"\"\"\n", + " URL pointing to the embedded contents author. Deprecated in favour of the `authors` field.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 1.3.0: added\n", + " * 4.3.0: deprecated\n", + " \"\"\"\n", + "\n", + " width: \"int\"\n", + " \"\"\"\n", + " Width of the embedded object.\n", + "\n", + " Version history:\n", + " * 1.3.0: added\n", + " \"\"\"\n", + "\n", + " height: \"int\"\n", + " \"\"\"\n", + " Height of the embedded object.\n", + "\n", + " Version history:\n", + " * 1.3.0: added\n", + " \"\"\"\n", + "\n", + " html: \"str\"\n", + " \"\"\"\n", + " HTML string representing the embed.\n", + " Should contain (as text): HTML\n", + "\n", + " Version history:\n", + " * 1.3.0: added\n", + " \"\"\"\n", + "\n", + " provider_name: \"str\"\n", + " \"\"\"\n", + " Name of the provider from which the embed originates.\n", + "\n", + " Version history:\n", + " * 1.3.0: added\n", + " \"\"\"\n", + "\n", + " provider_url: \"str\"\n", + " \"\"\"\n", + " URL pointing to the embeds provider.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 1.3.0: added\n", + " \"\"\"\n", + "\n", + " blurhash: \"Optional[str]\"\n", + " \"\"\"\n", + " Blurhash of the preview image. (nullable)\n", + " Should contain (as text): Blurhash\n", + "\n", + " Version history:\n", + " * 3.2.0: added\n", + " \"\"\"\n", + "\n", + " language: \"Optional[str]\"\n", + " \"\"\"\n", + " Language of the embedded content. (optional)\n", + " Should contain (as text): TwoLetterLanguageCodeEnum\n", + "\n", + " Version history:\n", + " * 1.3.0: added\n", + " \"\"\"\n", + "\n", + " embed_url: \"str\"\n", + " \"\"\"\n", + " Used for photo embeds, instead of custom `html`.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 2.1.0: added\n", + " \"\"\"\n", + "\n", + " authors: \"EntityList[PreviewCardAuthor]\"\n", + " \"\"\"\n", + " List of fediverse accounts of the authors of this post, as `PreviewCardAuthor`.\n", + "\n", + " Version history:\n", + " * 4.3.0: added\n", + " \"\"\"\n", + "\n", + " image_description: \"str\"\n", + " \"\"\"\n", + " Alt text / image description for the image preview for the card.\n", + "\n", + " Version history:\n", + " * 4.2.0: added\n", + " \"\"\"\n", + "\n", + " published_at: \"Optional[datetime]\"\n", + " \"\"\"\n", + " Publication time of the embedded content, if available, as a `datetime` object. (nullable)\n", + "\n", + " Version history:\n", + " * 4.2.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.3.0\"\n", + "\n", + "class PreviewCardAuthor(AttribAccessDict):\n", + " \"\"\"\n", + " A preview card attached to a status, e.g. for an embedded video or link.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/PreviewCardAuthor/\n", + " \"\"\"\n", + "\n", + " name: \"str\"\n", + " \"\"\"\n", + " THIS FIELD IS DEPRECATED. IT IS RECOMMENDED THAT YOU DO NOT USE IT.\n", + "\n", + " Name of the embedded contents author.\n", + "\n", + " Version history:\n", + " * 4.3.0: added\n", + " \"\"\"\n", + "\n", + " url: \"str\"\n", + " \"\"\"\n", + " URL pointing to the embedded contents author.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 4.3.0: added\n", + " \"\"\"\n", + "\n", + " account: \"Account\"\n", + " \"\"\"\n", + " Account of the author of this post, as `Account`.\n", + "\n", + " Version history:\n", + " * 4.3.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.3.0\"\n", + "\n", + "class Search(AttribAccessDict):\n", + " \"\"\"\n", + " A search result, with accounts, hashtags and statuses.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Search/\n", + " \"\"\"\n", + "\n", + " accounts: \"EntityList[Account]\"\n", + " \"\"\"\n", + " List of Accounts resulting from the query.\n", + "\n", + " Version history:\n", + " * 1.1.0: added\n", + " \"\"\"\n", + "\n", + " hashtags: \"EntityList[str]\"\n", + " \"\"\"\n", + " THIS FIELD IS DEPRECATED. IT IS RECOMMENDED THAT YOU DO NOT USE IT.\n", + "\n", + " List of Tags resulting from the query.\n", + "\n", + " Version history:\n", + " * 1.1.0: added\n", + " * 2.4.1: v1 search deprecated because it returns a list of strings. v2 search added which returns a list of tags.\n", + " * 3.0.0: v1 removed\n", + " \"\"\"\n", + "\n", + " statuses: \"EntityList[Status]\"\n", + " \"\"\"\n", + " List of Statuses resulting from the query.\n", + "\n", + " Version history:\n", + " * 1.1.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.0.0\"\n", + "\n", + "class SearchV2(AttribAccessDict):\n", + " \"\"\"\n", + " A search result, with accounts, hashtags and statuses.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Search/\n", + " \"\"\"\n", + "\n", + " accounts: \"EntityList[Account]\"\n", + " \"\"\"\n", + " List of Accounts resulting from the query.\n", + "\n", + " Version history:\n", + " * 1.1.0: added\n", + " \"\"\"\n", + "\n", + " hashtags: \"EntityList[Tag]\"\n", + " \"\"\"\n", + " List of Tags resulting from the query.\n", + "\n", + " Version history:\n", + " * 2.4.1: added\n", + " \"\"\"\n", + "\n", + " statuses: \"EntityList[Status]\"\n", + " \"\"\"\n", + " List of Statuses resulting from the query.\n", + "\n", + " Version history:\n", + " * 1.1.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"2.4.1\"\n", + "\n", + "class Instance(AttribAccessDict):\n", + " \"\"\"\n", + " Information about an instance. V1 API version.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/V1_Instance/\n", + " \"\"\"\n", + "\n", + " uri: \"str\"\n", + " \"\"\"\n", + " The instance's domain name. Moved to 'domain' for the v2 API, though Mastodon.py will mirror it here for backwards compatibility.\n", + " Should contain (as text): DomainName\n", + "\n", + " Version history:\n", + " * 1.1.0: added\n", + " \"\"\"\n", + "\n", + " title: \"str\"\n", + " \"\"\"\n", + " The instance's title.\n", + "\n", + " Version history:\n", + " * 1.1.0: added\n", + " \"\"\"\n", + "\n", + " short_description: \"str\"\n", + " \"\"\"\n", + " An very brief text only instance description. Moved to 'description' for the v2 API.\n", + "\n", + " Version history:\n", + " * 2.9.2: added\n", + " \"\"\"\n", + "\n", + " description: \"str\"\n", + " \"\"\"\n", + " THIS FIELD IS DEPRECATED. IT IS RECOMMENDED THAT YOU DO NOT USE IT.\n", + "\n", + " A brief instance description set by the admin. The V1 variant could contain html, but this is now deprecated. Likely to be empty on many instances.\n", + " Should contain (as text): HTML\n", + "\n", + " Version history:\n", + " * 1.1.0: added\n", + " * 4.0.0: deprecated - likely to be empty.\n", + " \"\"\"\n", + "\n", + " email: \"str\"\n", + " \"\"\"\n", + " The admin contact email. Moved to InstanceContacts for the v2 API, though Mastodon.py will mirror it here for backwards compatibility.\n", + " Should contain (as text): Email\n", + "\n", + " Version history:\n", + " * 1.1.0: added\n", + " \"\"\"\n", + "\n", + " version: \"str\"\n", + " \"\"\"\n", + " The instance's Mastodon version. For a more robust parsed major/minor/patch version see TODO IMPLEMENT FUNCTION TO RETURN VERSIONS.\n", + "\n", + " Version history:\n", + " * 1.3.0: added\n", + " \"\"\"\n", + "\n", + " urls: \"InstanceURLs\"\n", + " \"\"\"\n", + " Additional InstanceURLs, in the v1 api version likely to be just 'streaming_api' with the stream server websocket address.\n", + "\n", + " Version history:\n", + " * 1.4.2: added\n", + " \"\"\"\n", + "\n", + " stats: \"Optional[InstanceStatistics]\"\n", + " \"\"\"\n", + " InstanceStatistics containing three stats, user_count (number of local users), status_count (number of local statuses) and domain_count (number of known instance domains other than this one). This information is not present in the v2 API variant in this form - there is a 'usage' field instead. (optional)\n", + "\n", + " Version history:\n", + " * 1.6.0: added\n", + " \"\"\"\n", + "\n", + " thumbnail: \"Optional[str]\"\n", + " \"\"\"\n", + " Information about thumbnails to represent the instance. In the v1 API variant, simply an URL pointing to a banner image representing the instance. The v2 API provides a more complex structure with a list of thumbnails of different sizes in this field. (nullable)\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 1.6.1: added\n", + " \"\"\"\n", + "\n", + " languages: \"EntityList[str]\"\n", + " \"\"\"\n", + " Array of ISO 639-1 (two-letter) language codes the instance has chosen to advertise.\n", + " Should contain (as text): TwoLetterLanguageCodeEnum\n", + "\n", + " Version history:\n", + " * 2.3.0: added\n", + " \"\"\"\n", + "\n", + " registrations: \"bool\"\n", + " \"\"\"\n", + " A boolean indication whether registrations on this instance are open (True) or not (False). The v2 API variant instead provides a dict with more information about possible registration requirements here.\n", + "\n", + " Version history:\n", + " * 1.6.0: added\n", + " \"\"\"\n", + "\n", + " approval_required: \"bool\"\n", + " \"\"\"\n", + " True if account approval is required when registering, False if not. Moved to InstanceRegistrations object for the v2 API.\n", + "\n", + " Version history:\n", + " * 2.9.2: added\n", + " \"\"\"\n", + "\n", + " invites_enabled: \"bool\"\n", + " \"\"\"\n", + " THIS FIELD IS DEPRECATED. IT IS RECOMMENDED THAT YOU DO NOT USE IT.\n", + "\n", + " Boolean indicating whether invites are enabled on this instance. Changed in 4.0.0 from being true when the instance setting to enable invites is true to be true when the default user role has invites enabled (i.e. everyone can invite people). The v2 API does not contain this field, and it is not clear whether it will stay around.\n", + "\n", + " Version history:\n", + " * 3.1.4: added\n", + " * 4.0.0: changed specifics of when field is true, deprecated\n", + " \"\"\"\n", + "\n", + " configuration: \"InstanceConfiguration\"\n", + " \"\"\"\n", + " Various instance configuration settings - especially various limits (character counts, media upload sizes, ...).\n", + "\n", + " Version history:\n", + " * 3.1.4: added\n", + " \"\"\"\n", + "\n", + " contact_account: \"Account\"\n", + " \"\"\"\n", + " Account of the primary contact for the instance. Moved to InstanceContacts for the v2 API.\n", + "\n", + " Version history:\n", + " * 1.1.0: added\n", + " \"\"\"\n", + "\n", + " rules: \"EntityList[Rule]\"\n", + " \"\"\"\n", + " List of Rules with `id` and `text` fields, one for each server rule set by the admin.\n", + "\n", + " Version history:\n", + " * 3.4.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + " _access_map = {\n", + " \"uri\": \"domain\",\n", + " \"short_description\": \"description\",\n", + " \"email\": \"contact.email\",\n", + " \"urls\": \"configuration.urls\",\n", + " \"contact_account\": \"contact.account\",\n", + " }\n", + "\n", + "class InstanceConfiguration(AttribAccessDict):\n", + " \"\"\"\n", + " Configuration values for this instance, especially limits and enabled features.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/methods/instance/\n", + " \"\"\"\n", + "\n", + " accounts: \"InstanceAccountConfiguration\"\n", + " \"\"\"\n", + " Account-related instance configuration fields.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " statuses: \"InstanceStatusConfiguration\"\n", + " \"\"\"\n", + " Status-related instance configuration fields.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " media_attachments: \"InstanceMediaConfiguration\"\n", + " \"\"\"\n", + " Media-related instance configuration fields.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " polls: \"InstancePollConfiguration\"\n", + " \"\"\"\n", + " Poll-related instance configuration fields.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.4.2\"\n", + "\n", + "class InstanceURLs(AttribAccessDict):\n", + " \"\"\"\n", + " A list of URLs related to an instance.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/V1_Instance/\n", + " \"\"\"\n", + "\n", + " streaming_api: \"str\"\n", + " \"\"\"\n", + " The Websockets URL for connecting to the streaming API. Renamed to 'streaming' for the v2 API.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.4.2\"\n", + " _access_map = {\n", + " \"streaming_api\": \"streaming\",\n", + " }\n", + "\n", + "class InstanceV2(AttribAccessDict):\n", + " \"\"\"\n", + " Information about an instance.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Instance/\n", + " \"\"\"\n", + "\n", + " domain: \"str\"\n", + " \"\"\"\n", + " The instances domain name.\n", + " Should contain (as text): DomainName\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " title: \"str\"\n", + " \"\"\"\n", + " The instance's title.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " version: \"str\"\n", + " \"\"\"\n", + " The instance's Mastodon version. For a more robust parsed major/minor/patch version see TODO IMPLEMENT FUNCTION TO RETURN VERSIONS.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " source_url: \"str\"\n", + " \"\"\"\n", + " URL pointing to a copy of the source code that is used to run this instance. For Mastodon instances, the AGPL requires that this code be available.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " description: \"str\"\n", + " \"\"\"\n", + " A brief instance description set by the admin. Contains what in the v1 version was the short description.\n", + " Should contain (as text): HTML\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " usage: \"InstanceUsage\"\n", + " \"\"\"\n", + " Information about recent activity on this instance.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " thumbnail: \"Optional[InstanceThumbnail]\"\n", + " \"\"\"\n", + " Information about thumbnails to represent the instance. (nullable)\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " languages: \"EntityList[str]\"\n", + " \"\"\"\n", + " Array of ISO 639-1 (two-letter) language codes the instance has chosen to advertise.\n", + " Should contain (as text): TwoLetterLanguageCodeEnum\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " configuration: \"InstanceConfigurationV2\"\n", + " \"\"\"\n", + " Various instance configuration settings - especially various limits (character counts, media upload sizes, ...).\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " registrations: \"InstanceRegistrations\"\n", + " \"\"\"\n", + " InstanceRegistrations object with information about how users can sign up on this instance.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " contact: \"InstanceContact\"\n", + " \"\"\"\n", + " Contact information for this instance.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " rules: \"EntityList[Rule]\"\n", + " \"\"\"\n", + " List of Rules with `id` and `text` fields, one for each server rule set by the admin.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " icon: \"EntityList[InstanceIcon]\"\n", + " \"\"\"\n", + " The instance icon, as a list of `InstanceIcon`s, with entries representing different available size variants.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 4.3.0: added\n", + " \"\"\"\n", + "\n", + " api_versions: \"AttribAccessDict\"\n", + " \"\"\"\n", + " A list of API versions supported by this instance, each as an entry in a dict with the name of the implementation as the key (such as 'mastodon'). The exact format is unspecified, any fork or implementation can put what if feels like there. Mastodon currently puts just '2'.\n", + "\n", + " Version history:\n", + " * 4.3.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.3.0\"\n", + "\n", + "class InstanceIcon(AttribAccessDict):\n", + " \"\"\"\n", + " Icon for the instance, in a specific size.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/methods/instance/#InstanceIcon\n", + " \"\"\"\n", + "\n", + " src: \"str\"\n", + " \"\"\"\n", + " URL for this icon size.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 4.3.0: added\n", + " \"\"\"\n", + "\n", + " size: \"str\"\n", + " \"\"\"\n", + " Textual representation of the icon size in pixels as (width)x(height) string, e.g. '64x64'.\n", + "\n", + " Version history:\n", + " * 4.3.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.3.0\"\n", + "\n", + "class InstanceConfigurationV2(AttribAccessDict):\n", + " \"\"\"\n", + " Configuration values for this instance, especially limits and enabled features.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/methods/instance/\n", + " \"\"\"\n", + "\n", + " accounts: \"InstanceAccountConfiguration\"\n", + " \"\"\"\n", + " Account-related instance configuration fields.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " statuses: \"InstanceStatusConfiguration\"\n", + " \"\"\"\n", + " Status-related instance configuration fields.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " media_attachments: \"InstanceMediaConfiguration\"\n", + " \"\"\"\n", + " Media-related instance configuration fields.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " polls: \"InstancePollConfiguration\"\n", + " \"\"\"\n", + " Poll-related instance configuration fields.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " translation: \"InstanceTranslationConfiguration\"\n", + " \"\"\"\n", + " Translation-related instance configuration fields. Only present for the v2 API variant of the instance API.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " urls: \"InstanceURLsV2\"\n", + " \"\"\"\n", + " Instance related URLs. Only present for the v2 API variant of the instance API.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " vapid: \"InstanceVapidKey\"\n", + " \"\"\"\n", + " VAPID key used by this instance to sign webpush requests. Only present for the v2 API variant of the instance API.\n", + "\n", + " Version history:\n", + " * 4.3.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.3.0\"\n", + "\n", + "class InstanceVapidKey(AttribAccessDict):\n", + " \"\"\"\n", + " The VAPID key used by this instance to sign webpush requests.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/methods/instance/\n", + " \"\"\"\n", + "\n", + " public_key: \"str\"\n", + " \"\"\"\n", + " The public key in VAPID format.\n", + "\n", + " Version history:\n", + " * 4.3.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.3.0\"\n", + "\n", + "class InstanceURLsV2(AttribAccessDict):\n", + " \"\"\"\n", + " A list of URLs related to an instance.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Instance/\n", + " \"\"\"\n", + "\n", + " streaming: \"str\"\n", + " \"\"\"\n", + " The Websockets URL for connecting to the streaming API.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " status: \"Optional[str]\"\n", + " \"\"\"\n", + " If present, a URL where the status and possibly current issues with the instance can be checked. (optional)\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class InstanceThumbnail(AttribAccessDict):\n", + " \"\"\"\n", + " Extended information about an instances thumbnail.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/V1_Instance/\n", + " \"\"\"\n", + "\n", + " url: \"str\"\n", + " \"\"\"\n", + " The URL for an image representing the instance.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " blurhash: \"Optional[str]\"\n", + " \"\"\"\n", + " The blurhash for the image representing the instance. (optional)\n", + " Should contain (as text): Blurhash\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " versions: \"Optional[InstanceThumbnailVersions]\"\n", + " \"\"\"\n", + " Different resolution versions of the image representing the instance. (optional)\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class InstanceThumbnailVersions(AttribAccessDict):\n", + " \"\"\"\n", + " Different resolution versions of the image representing the instance.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Instance/\n", + " \"\"\"\n", + "\n", + " at1x: \"Optional[str]\"\n", + " \"\"\"\n", + " The URL for an image representing the instance, for devices with 1x resolution / 96 dpi. (optional)\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " at2x: \"Optional[str]\"\n", + " \"\"\"\n", + " The URL for the image representing the instance, for devices with 2x resolution / 192 dpi. (optional)\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + " _rename_map = {\n", + " \"at1x\": \"@1x\",\n", + " \"at2x\": \"@2x\",\n", + " }\n", + "\n", + "class InstanceStatistics(AttribAccessDict):\n", + " \"\"\"\n", + " Usage statistics for an instance.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Instance/\n", + " \"\"\"\n", + "\n", + " user_count: \"int\"\n", + " \"\"\"\n", + " The total number of accounts that have been created on this instance.\n", + "\n", + " Version history:\n", + " * 1.6.0: added\n", + " \"\"\"\n", + "\n", + " status_count: \"int\"\n", + " \"\"\"\n", + " The total number of local posts that have been made on this instance.\n", + "\n", + " Version history:\n", + " * 1.6.0: added\n", + " \"\"\"\n", + "\n", + " domain_count: \"int\"\n", + " \"\"\"\n", + " The total number of other instances that this instance is aware of.\n", + "\n", + " Version history:\n", + " * 1.6.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"1.6.0\"\n", + "\n", + "class InstanceUsage(AttribAccessDict):\n", + " \"\"\"\n", + " Usage / recent activity information for this instance.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Instance/\n", + " \"\"\"\n", + "\n", + " users: \"InstanceUsageUsers\"\n", + " \"\"\"\n", + " Information about user counts on this instance.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.0.0\"\n", + "\n", + "class InstanceUsageUsers(AttribAccessDict):\n", + " \"\"\"\n", + " Recent active user information about this instance.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Instance/\n", + " \"\"\"\n", + "\n", + " active_month: \"int\"\n", + " \"\"\"\n", + " This instances most recent monthly active user count.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.0.0\"\n", + "\n", + "class Rule(AttribAccessDict):\n", + " \"\"\"\n", + " A rule that instance staff has specified users must follow on this instance.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Rule/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " An identifier for the rule.\n", + "\n", + " Version history:\n", + " * 3.4.0: added\n", + " \"\"\"\n", + "\n", + " text: \"str\"\n", + " \"\"\"\n", + " The rule to be followed, in few words.\n", + "\n", + " Version history:\n", + " * 3.4.0: added\n", + " \"\"\"\n", + "\n", + " hint: \"str\"\n", + " \"\"\"\n", + " Potentially, the rule to be followed, in more words.\n", + "\n", + " Version history:\n", + " * 4.3.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.3.0\"\n", + "\n", + "class InstanceRegistrations(AttribAccessDict):\n", + " \"\"\"\n", + " Registration information for this instance, like whether registrations are open and whether they require approval.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Instance/\n", + " \"\"\"\n", + "\n", + " approval_required: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether registrations on the instance require approval.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " enabled: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether registrations are enabled on this instance.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " message: \"Optional[str]\"\n", + " \"\"\"\n", + " A message to be shown instead of the sign-up form when registrations are closed. (nullable)\n", + " Should contain (as text): HTML\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " url: \"Optional[str]\"\n", + " \"\"\"\n", + " Presumably, a registration related URL. It is unclear what this is for. (nullable)\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class InstanceContact(AttribAccessDict):\n", + " \"\"\"\n", + " Contact information for this instances' staff.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Instance/\n", + " \"\"\"\n", + "\n", + " account: \"Account\"\n", + " \"\"\"\n", + " Account that has been designated as the instances contact account.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " email: \"str\"\n", + " \"\"\"\n", + " E-mail address that can be used to contact the instance staff.\n", + " Should contain (as text): Email\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class InstanceAccountConfiguration(AttribAccessDict):\n", + " \"\"\"\n", + " Configuration values relating to accounts.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/methods/instance/\n", + " \"\"\"\n", + "\n", + " max_featured_tags: \"int\"\n", + " \"\"\"\n", + " The maximum number of featured tags that can be displayed on a profile.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " max_pinned_statuses: \"int\"\n", + " \"\"\"\n", + " The maximum number of pinned statuses for an account.\n", + "\n", + " Version history:\n", + " * 4.3.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.3.0\"\n", + "\n", + "class InstanceStatusConfiguration(AttribAccessDict):\n", + " \"\"\"\n", + " Configuration values relating to statuses.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/methods/instance/\n", + " \"\"\"\n", + "\n", + " max_characters: \"int\"\n", + " \"\"\"\n", + " Maximum number of characters in a status this instance allows local users to use.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " max_media_attachments: \"int\"\n", + " \"\"\"\n", + " Maximum number of media attachments per status this instance allows local users to use.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " characters_reserved_per_url: \"int\"\n", + " \"\"\"\n", + " Number of characters that this instance counts a URL as when counting charaters.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.4.2\"\n", + "\n", + "class InstanceTranslationConfiguration(AttribAccessDict):\n", + " \"\"\"\n", + " Configuration values relating to translation.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/methods/instance/\n", + " \"\"\"\n", + "\n", + " enabled: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether the translation API is enabled on this instance.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class InstanceMediaConfiguration(AttribAccessDict):\n", + " \"\"\"\n", + " Configuration values relating to media attachments.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/methods/instance/\n", + " \"\"\"\n", + "\n", + " supported_mime_types: \"EntityList[str]\"\n", + " \"\"\"\n", + " Mime types the instance accepts for media attachment uploads.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " image_size_limit: \"int\"\n", + " \"\"\"\n", + " Maximum size (in bytes) the instance will accept for image uploads.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " image_matrix_limit: \"int\"\n", + " \"\"\"\n", + " Maximum total number of pixels (i.e. width * height) the instance will accept for image uploads.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " video_size_limit: \"int\"\n", + " \"\"\"\n", + " Maximum size (in bytes) the instance will accept for video uploads.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " video_frame_rate_limit: \"int\"\n", + " \"\"\"\n", + " Maximum frame rate the instance will accept for video uploads.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " video_matrix_limit: \"int\"\n", + " \"\"\"\n", + " Maximum total number of pixels (i.e. width * height) the instance will accept for video uploads.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.4.2\"\n", + "\n", + "class InstancePollConfiguration(AttribAccessDict):\n", + " \"\"\"\n", + " Configuration values relating to polls.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/methods/instance/\n", + " \"\"\"\n", + "\n", + " max_options: \"int\"\n", + " \"\"\"\n", + " How many poll options this instance allows local users to use per poll.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " max_characters_per_option: \"int\"\n", + " \"\"\"\n", + " Maximum number of characters this instance allows local users to use per poll option.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " min_expiration: \"int\"\n", + " \"\"\"\n", + " The shortest allowed duration for a poll on this instance, in seconds.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " max_expiration: \"int\"\n", + " \"\"\"\n", + " The longest allowed duration for a poll on this instance, in seconds.\n", + "\n", + " Version history:\n", + " * 3.4.2: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.4.2\"\n", + "\n", + "class Nodeinfo(AttribAccessDict):\n", + " \"\"\"\n", + " The instances standardized NodeInfo data.\n", + "\n", + " See also (Mastodon API documentation): https://github.com/jhass/nodeinfo\n", + " \"\"\"\n", + "\n", + " version: \"str\"\n", + " \"\"\"\n", + " Version of the nodeinfo schema spec that was used for this response.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " software: \"NodeinfoSoftware\"\n", + " \"\"\"\n", + " Information about the server software being used on this instance.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " protocols: \"EntityList[str]\"\n", + " \"\"\"\n", + " A list of strings specifying the federation protocols this instance supports. Typically, just \"activitypub\".\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " services: \"NodeinfoServices\"\n", + " \"\"\"\n", + " Services that this instance can retrieve messages from or send messages to.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " usage: \"NodeinfoUsage\"\n", + " \"\"\"\n", + " Information about recent activity on this instance.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " openRegistrations: \"bool\"\n", + " \"\"\"\n", + " Bool indicating whether the instance is open for registrations.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " metadata: \"NodeinfoMetadata\"\n", + " \"\"\"\n", + " Additional node metadata. On Mastodon, typically an empty object with no fields.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.0.0\"\n", + "\n", + "class NodeinfoSoftware(AttribAccessDict):\n", + " \"\"\"\n", + " NodeInfo software-related information.\n", + "\n", + " See also (Mastodon API documentation): https://github.com/jhass/nodeinfo\n", + " \"\"\"\n", + "\n", + " name: \"str\"\n", + " \"\"\"\n", + " Name of the software used by this instance.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " version: \"str\"\n", + " \"\"\"\n", + " String indicating the version of the software used by this instance.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.0.0\"\n", + "\n", + "class NodeinfoServices(AttribAccessDict):\n", + " \"\"\"\n", + " Nodeinfo services-related information.\n", + "\n", + " See also (Mastodon API documentation): https://github.com/jhass/nodeinfo\n", + " \"\"\"\n", + "\n", + " outbound: \"EntityList\"\n", + " \"\"\"\n", + " List of services that this instance can send messages to. On Mastodon, typically an empty list.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " inbound: \"EntityList\"\n", + " \"\"\"\n", + " List of services that this instance can retrieve messages from. On Mastodon, typically an empty list.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.0.0\"\n", + "\n", + "class NodeinfoUsage(AttribAccessDict):\n", + " \"\"\"\n", + " Nodeinfo usage-related information.\n", + "\n", + " See also (Mastodon API documentation): https://github.com/jhass/nodeinfo\n", + " \"\"\"\n", + "\n", + " users: \"NodeinfoUsageUsers\"\n", + " \"\"\"\n", + " Information about user counts on this instance.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " localPosts: \"int\"\n", + " \"\"\"\n", + " The total number of local posts that have been made on this instance.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.0.0\"\n", + "\n", + "class NodeinfoUsageUsers(AttribAccessDict):\n", + " \"\"\"\n", + " Nodeinfo user count statistics.\n", + "\n", + " See also (Mastodon API documentation): https://github.com/jhass/nodeinfo\n", + " \"\"\"\n", + "\n", + " total: \"int\"\n", + " \"\"\"\n", + " The total number of accounts that have been created on this instance.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " activeMonth: \"int\"\n", + " \"\"\"\n", + " Number of users that have been active, by some definition (Mastodon: Have logged in at least once) in the last month.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " activeHalfyear: \"int\"\n", + " \"\"\"\n", + " Number of users that have been active, by some definition (Mastodon: Have logged in at least once) in the last half year.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.0.0\"\n", + "\n", + "class NodeinfoMetadata(AttribAccessDict):\n", + " \"\"\"\n", + " Nodeinfo extra metadata. Entirely freeform, be careful about consuming it programatically. Survey of real world usage: https://codeberg.org/thefederationinfo/nodeinfo_metadata_survey.\n", + "\n", + " See also (Mastodon API documentation): https://github.com/jhass/nodeinfo\n", + " \"\"\"\n", + "\n", + " _version = \"0.0.0\"\n", + "\n", + "class Activity(AttribAccessDict):\n", + " \"\"\"\n", + " Information about recent activity on an instance.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/methods/instance/#activity\n", + " \"\"\"\n", + "\n", + " week: \"datetime\"\n", + " \"\"\"\n", + " Date of the first day of the week the stats were collected for.\n", + "\n", + " Version history:\n", + " * 2.1.2: added\n", + " \"\"\"\n", + "\n", + " logins: \"int\"\n", + " \"\"\"\n", + " Number of users that logged in that week.\n", + "\n", + " Version history:\n", + " * 2.1.2: added\n", + " \"\"\"\n", + "\n", + " registrations: \"int\"\n", + " \"\"\"\n", + " Number of new users that week.\n", + "\n", + " Version history:\n", + " * 2.1.2: added\n", + " \"\"\"\n", + "\n", + " statuses: \"int\"\n", + " \"\"\"\n", + " Number of statuses posted that week.\n", + "\n", + " Version history:\n", + " * 2.1.2: added\n", + " \"\"\"\n", + "\n", + " _version = \"2.1.2\"\n", + "\n", + "class Report(AttribAccessDict):\n", + " \"\"\"\n", + " Information about a report that has been filed against a user. Currently largely pointless, as updated reports cannot be fetched.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Report/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " Id of the report.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " action_taken: \"bool\"\n", + " \"\"\"\n", + " True if a moderator or admin has processed the report, False otherwise.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " comment: \"str\"\n", + " \"\"\"\n", + " Text comment submitted with the report.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " created_at: \"datetime\"\n", + " \"\"\"\n", + " Time at which this report was created, as a datetime object.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " target_account: \"Account\"\n", + " \"\"\"\n", + " Account that has been reported with this report.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " status_ids: \"EntityList[IdType]\"\n", + " \"\"\"\n", + " List of status IDs attached to the report.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " action_taken_at: \"Optional[datetime]\"\n", + " \"\"\"\n", + " When an action was taken, if this report is currently resolved. (nullable)\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " category: \"str\"\n", + " \"\"\"\n", + " The category under which the report is classified.\n", + " Should contain (as text): ReportReasonEnum\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " forwarded: \"bool\"\n", + " \"\"\"\n", + " Whether a report was forwarded to a remote instance.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " rules_ids: \"EntityList[IdType]\"\n", + " \"\"\"\n", + " IDs of the rules selected for this report.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class AdminReport(AttribAccessDict):\n", + " \"\"\"\n", + " Information about a report that has been filed against a user.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Admin_Report/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " Id of the report.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " action_taken: \"bool\"\n", + " \"\"\"\n", + " True if a moderator or admin has processed the report, False otherwise.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " comment: \"str\"\n", + " \"\"\"\n", + " Text comment submitted with the report.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " created_at: \"datetime\"\n", + " \"\"\"\n", + " Time at which this report was created, as a datetime object.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " updated_at: \"datetime\"\n", + " \"\"\"\n", + " Last time this report has been updated, as a datetime object.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " account: \"Account\"\n", + " \"\"\"\n", + " Account of the user that filed this report.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " target_account: \"Account\"\n", + " \"\"\"\n", + " Account that has been reported with this report.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " assigned_account: \"Optional[AdminAccount]\"\n", + " \"\"\"\n", + " If the report as been assigned to an account, that Account (None if not). (nullable)\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " action_taken_by_account: \"Optional[AdminAccount]\"\n", + " \"\"\"\n", + " Account that processed this report. (nullable)\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " statuses: \"EntityList[Status]\"\n", + " \"\"\"\n", + " List of Statuses attached to the report.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " action_taken_at: \"Optional[datetime]\"\n", + " \"\"\"\n", + " When an action was taken, if this report is currently resolved. (nullable)\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " category: \"str\"\n", + " \"\"\"\n", + " The category under which the report is classified.\n", + " Should contain (as text): ReportReasonEnum\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " forwarded: \"Optional[bool]\"\n", + " \"\"\"\n", + " Whether a report was forwarded to a remote instance. Can be None. (nullable)\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " rules: \"EntityList[Rule]\"\n", + " \"\"\"\n", + " Rules attached to the report, for context.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class WebPushSubscription(AttribAccessDict):\n", + " \"\"\"\n", + " Information about the logged-in users web push subscription for the authenticated application.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/WebPushSubscription/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " Id of the push subscription.\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " endpoint: \"str\"\n", + " \"\"\"\n", + " Endpoint URL for the subscription.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " server_key: \"str\"\n", + " \"\"\"\n", + " Server pubkey used for signature verification.\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " alerts: \"WebPushSubscriptionAlerts\"\n", + " \"\"\"\n", + " Subscribed events - object that may contain various keys, with value True if webpushes have been requested for those events.\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " * 2.8.0: added poll`\n", + " * 3.1.0: added follow_request`\n", + " * 3.3.0: added status\n", + " * 3.5.0: added update and admin.sign_up\n", + " * 4.0.0: added admin.report\n", + " \"\"\"\n", + "\n", + " policy: \"str\"\n", + " \"\"\"\n", + " Which sources should generate webpushes.\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class WebPushSubscriptionAlerts(AttribAccessDict):\n", + " \"\"\"\n", + " Information about alerts as part of a push subscription.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/WebPushSubscription/\n", + " \"\"\"\n", + "\n", + " follow: \"Optional[bool]\"\n", + " \"\"\"\n", + " True if push subscriptions for follow events have been requested, false or not present otherwise. (nullable)\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " favourite: \"Optional[bool]\"\n", + " \"\"\"\n", + " True if push subscriptions for favourite events have been requested, false or not present otherwise. (nullable)\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " reblog: \"Optional[bool]\"\n", + " \"\"\"\n", + " True if push subscriptions for reblog events have been requested, false or not present otherwise. (nullable)\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " mention: \"Optional[bool]\"\n", + " \"\"\"\n", + " True if push subscriptions for mention events have been requested, false or not present otherwise. (nullable)\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " poll: \"Optional[bool]\"\n", + " \"\"\"\n", + " True if push subscriptions for poll events have been requested, false or not present otherwise. (nullable)\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " follow_request: \"Optional[bool]\"\n", + " \"\"\"\n", + " True if push subscriptions for follow request events have been requested, false or not present otherwise. (nullable)\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " status: \"Optional[bool]\"\n", + " \"\"\"\n", + " True if push subscriptions for status creation (watched users only) events have been requested, false or not present otherwise. (nullable)\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " update: \"Optional[bool]\"\n", + " \"\"\"\n", + " True if push subscriptions for status update (edit) events have been requested, false or not present otherwise. (nullable)\n", + "\n", + " Version history:\n", + " * 3.3.0: added\n", + " \"\"\"\n", + "\n", + " admin_sign_up: \"Optional[bool]\"\n", + " \"\"\"\n", + " True if push subscriptions for sign up events have been requested, false or not present otherwise. Admins only. (nullable)\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " admin_report: \"Optional[bool]\"\n", + " \"\"\"\n", + " True if push subscriptions for report creation events have been requested, false or not present otherwise. Admins only. (nullable)\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class PushNotification(AttribAccessDict):\n", + " \"\"\"\n", + " A single Mastodon push notification received via WebPush, after decryption.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/WebPushSubscription/\n", + " \"\"\"\n", + "\n", + " access_token: \"str\"\n", + " \"\"\"\n", + " Access token that can be used to access the API as the notified user.\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " body: \"str\"\n", + " \"\"\"\n", + " Text body of the notification.\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " icon: \"str\"\n", + " \"\"\"\n", + " URL to an icon for the notification.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " notification_id: \"IdType\"\n", + " \"\"\"\n", + " ID that can be passed to notification() to get the full notification object,.\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " notification_type: \"str\"\n", + " \"\"\"\n", + " String indicating the type of notification.\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " preferred_locale: \"str\"\n", + " \"\"\"\n", + " The user's preferred locale.\n", + " Should contain (as text): TwoLetterLanguageCodeEnum\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " title: \"str\"\n", + " \"\"\"\n", + " Title for the notification.\n", + "\n", + " Version history:\n", + " * 2.4.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"2.4.0\"\n", + "\n", + "class Preferences(AttribAccessDict):\n", + " \"\"\"\n", + " The logged in users preferences.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Preferences/\n", + " \"\"\"\n", + "\n", + " posting_default_visibility: \"str\"\n", + " \"\"\"\n", + " Default visibility for new posts. Also found in CredentialAccountSource as `privacy`.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " posting_default_sensitive: \"bool\"\n", + " \"\"\"\n", + " Default sensitivity flag for new posts. Also found in CredentialAccountSource as `sensitive`.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " posting_default_language: \"Optional[str]\"\n", + " \"\"\"\n", + " Default language for new posts. Also found in CredentialAccountSource as `language`. (nullable)\n", + " Should contain (as text): TwoLetterLanguageCodeEnum\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " reading_expand_media: \"str\"\n", + " \"\"\"\n", + " String indicating whether media attachments should be automatically displayed or blurred/hidden.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " reading_expand_spoilers: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether CWs should be expanded by default.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " reading_autoplay_gifs: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether gifs should be autoplayed (True) or not (False).\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"2.8.0\"\n", + " _rename_map = {\n", + " \"posting_default_visibility\": \"posting:default:visibility\",\n", + " \"posting_default_sensitive\": \"posting:default:sensitive\",\n", + " \"posting_default_language\": \"posting:default:language\",\n", + " \"reading_expand_media\": \"reading:expand:media\",\n", + " \"reading_expand_spoilers\": \"reading:expand:spoilers\",\n", + " \"reading_autoplay_gifs\": \"reading:autoplay:gifs\",\n", + " }\n", + "\n", + "class FeaturedTag(AttribAccessDict):\n", + " \"\"\"\n", + " A tag featured on a users profile.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/FeaturedTag/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " The featured tags id.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " name: \"str\"\n", + " \"\"\"\n", + " The featured tags name (without leading #).\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " statuses_count: \"str\"\n", + " \"\"\"\n", + " Number of publicly visible statuses posted with this hashtag that this instance knows about.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " last_status_at: \"Optional[datetime]\"\n", + " \"\"\"\n", + " The last time a public status containing this hashtag was added to this instance's database (can be None if there are none). (nullable)\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " url: \"str\"\n", + " \"\"\"\n", + " A link to all statuses by a user that contain this hashtag.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 3.3.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.3.0\"\n", + "\n", + "class Marker(AttribAccessDict):\n", + " \"\"\"\n", + " A read marker indicating where the logged in user has left off reading a given timeline.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Marker/\n", + " \"\"\"\n", + "\n", + " last_read_id: \"IdType\"\n", + " \"\"\"\n", + " ID of the last read object in the timeline.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " version: \"int\"\n", + " \"\"\"\n", + " A counter that is incremented whenever the marker is set to a new status.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " updated_at: \"datetime\"\n", + " \"\"\"\n", + " The time the marker was last set, as a datetime object.\n", + "\n", + " Version history:\n", + " * 3.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.0.0\"\n", + "\n", + "class Announcement(AttribAccessDict):\n", + " \"\"\"\n", + " An announcement sent by the instances staff.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Announcement/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " The annoucements id.\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " content: \"str\"\n", + " \"\"\"\n", + " The contents of the annoucement, as an html string.\n", + " Should contain (as text): HTML\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " starts_at: \"Optional[datetime]\"\n", + " \"\"\"\n", + " The annoucements start time, as a datetime object. Can be None. (nullable)\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " ends_at: \"Optional[datetime]\"\n", + " \"\"\"\n", + " The annoucements end time, as a datetime object. Can be None. (nullable)\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " all_day: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether the annoucement represents an \"all day\" event.\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " published_at: \"datetime\"\n", + " \"\"\"\n", + " The annoucements publish time, as a datetime object.\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " updated_at: \"datetime\"\n", + " \"\"\"\n", + " The annoucements last updated time, as a datetime object.\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " read: \"bool\"\n", + " \"\"\"\n", + " A boolean indicating whether the logged in user has dismissed the annoucement.\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " mentions: \"EntityList[StatusMention]\"\n", + " \"\"\"\n", + " Users mentioned in the annoucement.\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " tags: \"EntityList\"\n", + " \"\"\"\n", + " Hashtags mentioned in the announcement.\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " emojis: \"EntityList\"\n", + " \"\"\"\n", + " Custom emoji used in the annoucement.\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " reactions: \"EntityList[Reaction]\"\n", + " \"\"\"\n", + " Reactions to the annoucement.\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " statuses: \"EntityList\"\n", + " \"\"\"\n", + " Statuses linked in the announcement text.\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.1.0\"\n", + "\n", + "class Reaction(AttribAccessDict):\n", + " \"\"\"\n", + " A reaction to an announcement.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Reaction/\n", + " \"\"\"\n", + "\n", + " name: \"str\"\n", + " \"\"\"\n", + " Name of the custom emoji or unicode emoji of the reaction.\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " count: \"int\"\n", + " \"\"\"\n", + " Reaction counter (i.e. number of users who have added this reaction).\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " me: \"bool\"\n", + " \"\"\"\n", + " True if the logged-in user has reacted with this emoji, false otherwise.\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " url: \"str\"\n", + " \"\"\"\n", + " URL for the custom emoji image.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " static_url: \"str\"\n", + " \"\"\"\n", + " URL for a never-animated version of the custom emoji image.\n", + " Should contain (as text): URL\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.1.0\"\n", + "\n", + "class StreamReaction(AttribAccessDict):\n", + " \"\"\"\n", + " A reaction to an announcement.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/methods/streaming/\n", + " \"\"\"\n", + "\n", + " name: \"str\"\n", + " \"\"\"\n", + " Name of the custom emoji or unicode emoji of the reaction.\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " count: \"int\"\n", + " \"\"\"\n", + " Reaction counter (i.e. number of users who have added this reaction).\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " announcement_id: \"IdType\"\n", + " \"\"\"\n", + " If of the announcement this reaction was for.\n", + "\n", + " Version history:\n", + " * 3.1.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.1.0\"\n", + "\n", + "class FamiliarFollowers(AttribAccessDict):\n", + " \"\"\"\n", + " A follower of a given account that is also followed by the logged-in user.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/FamiliarFollowers/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " ID of the account for which the familiar followers are being returned.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " accounts: \"EntityList[Account]\"\n", + " \"\"\"\n", + " List of Accounts of the familiar followers.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.5.0\"\n", + "\n", + "class AdminAccount(AttribAccessDict):\n", + " \"\"\"\n", + " Admin variant of the Account entity, with some additional information.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Admin_Account/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " The users id,.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " username: \"str\"\n", + " \"\"\"\n", + " The users username, no leading @.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " domain: \"Optional[str]\"\n", + " \"\"\"\n", + " The users domain. (nullable)\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " created_at: \"datetime\"\n", + " \"\"\"\n", + " The time of account creation.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " email: \"str\"\n", + " \"\"\"\n", + " For local users, the user's email.\n", + " Should contain (as text): Email\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " ip: \"Optional[str]\"\n", + " \"\"\"\n", + " For local users, the user's last known IP address. (nullable)\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " * 3.5.0: return type changed from String to [AdminIp]({{< relref \"entities/Admin_Ip\" >}}) due to a bug\n", + " * 4.0.0: bug fixed, return type is now a String again\n", + " \"\"\"\n", + "\n", + " role: \"Role\"\n", + " \"\"\"\n", + " The users role.\n", + "\n", + " Version history:\n", + " * 2.9.1: added, returns a String (enumerable, oneOf `user` `moderator` `admin`)\n", + " * 4.0.0: now uses Role entity\n", + " \"\"\"\n", + "\n", + " confirmed: \"bool\"\n", + " \"\"\"\n", + " For local users, False if the user has not confirmed their email, True otherwise.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " suspended: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether the user has been suspended.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " silenced: \"bool\"\n", + " \"\"\"\n", + " Boolean indicating whether the user has been silenced.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " disabled: \"bool\"\n", + " \"\"\"\n", + " For local users, boolean indicating whether the user has had their login disabled.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " approved: \"bool\"\n", + " \"\"\"\n", + " For local users, False if the user is pending, True otherwise.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " locale: \"str\"\n", + " \"\"\"\n", + " For local users, the locale the user has set,.\n", + " Should contain (as text): TwoLetterLanguageCodeEnum\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " invite_request: \"Optional[str]\"\n", + " \"\"\"\n", + " If the user requested an invite, the invite request comment of that user. (nullable)\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " account: \"Account\"\n", + " \"\"\"\n", + " The user's Account.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " sensitized: \"bool\"\n", + " \"\"\"\n", + " Undocumented. If you know what this means, please let me know.\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " ips: \"EntityList[AdminIp]\"\n", + " \"\"\"\n", + " All known IP addresses associated with this account.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " created_by_application_id: \"Optional[IdType]\"\n", + " \"\"\"\n", + " Present if the user was created by an application and set to the application id. (optional)\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " invited_by_account_id: \"Optional[IdType]\"\n", + " \"\"\"\n", + " Present if the user was created via invite and set to the inviting users id. (optional)\n", + "\n", + " Version history:\n", + " * 2.9.1: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class AdminIp(AttribAccessDict):\n", + " \"\"\"\n", + " An IP address used by some user or other instance, visible as part of some admin APIs.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Admin_Ip/\n", + " \"\"\"\n", + "\n", + " ip: \"str\"\n", + " \"\"\"\n", + " The IP address.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " used_at: \"str\"\n", + " \"\"\"\n", + " The timestamp of when the IP address was last used for this account.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.5.0\"\n", + "\n", + "class AdminMeasure(AttribAccessDict):\n", + " \"\"\"\n", + " A measurement, such as the number of active users, as returned by the admin reporting API.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Admin_Measure/\n", + " \"\"\"\n", + "\n", + " key: \"str\"\n", + " \"\"\"\n", + " Name of the measure returned.\n", + " Should contain (as text): AdminMeasureTypeEnum\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " unit: \"Optional[str]\"\n", + " \"\"\"\n", + " Unit for the measure, if available. (nullable)\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " total: \"str\"\n", + " \"\"\"\n", + " Value of the measure returned.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " human_value: \"Optional[str]\"\n", + " \"\"\"\n", + " Human readable variant of the measure returned. (nullable)\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " previous_total: \"Optional[str]\"\n", + " \"\"\"\n", + " Previous measurement period value of the measure returned, if available. (nullable)\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " data: \"EntityList[AdminMeasureData]\"\n", + " \"\"\"\n", + " A list of AdminMeasureData with the measure broken down by date.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.5.0\"\n", + "\n", + "class AdminMeasureData(AttribAccessDict):\n", + " \"\"\"\n", + " A single row of data for an admin reporting api measurement.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Admin_Measure/\n", + " \"\"\"\n", + "\n", + " date: \"datetime\"\n", + " \"\"\"\n", + " Date for this row.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " value: \"int\"\n", + " \"\"\"\n", + " Value of the measure for this row.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.5.0\"\n", + "\n", + "class AdminDimension(AttribAccessDict):\n", + " \"\"\"\n", + " A qualitative measurement about the server, as returned by the admin reporting api.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Admin_Dimension/\n", + " \"\"\"\n", + "\n", + " key: \"str\"\n", + " \"\"\"\n", + " Name of the dimension returned.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " data: \"EntityList[AdminDimensionData]\"\n", + " \"\"\"\n", + " A list of data AdminDimensionData objects.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.5.0\"\n", + "\n", + "class AdminDimensionData(AttribAccessDict):\n", + " \"\"\"\n", + " A single row of data for qualitative measurements about the server, as returned by the admin reporting api.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Admin_Dimension/\n", + " \"\"\"\n", + "\n", + " key: \"str\"\n", + " \"\"\"\n", + " category for this row.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " human_key: \"str\"\n", + " \"\"\"\n", + " Human readable name for the category for this row, when available.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " value: \"int\"\n", + " \"\"\"\n", + " Numeric value for the category.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.5.0\"\n", + "\n", + "class AdminRetention(AttribAccessDict):\n", + " \"\"\"\n", + " User retention data for a given cohort, as returned by the admin reporting api.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Admin_Cohort/\n", + " \"\"\"\n", + "\n", + " period: \"datetime\"\n", + " \"\"\"\n", + " Starting time of the period that the data is being returned for.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " frequency: \"str\"\n", + " \"\"\"\n", + " Time resolution (day or month) for the returned data.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " data: \"EntityList[AdminCohort]\"\n", + " \"\"\"\n", + " List of AdminCohort objects.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.5.0\"\n", + "\n", + "class AdminCohort(AttribAccessDict):\n", + " \"\"\"\n", + " A single data point regarding user retention for a given cohort, as returned by the admin reporting api.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Admin_Cohort/\n", + " \"\"\"\n", + "\n", + " date: \"datetime\"\n", + " \"\"\"\n", + " Date for this entry.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " rate: \"float\"\n", + " \"\"\"\n", + " Fraction of users retained.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " value: \"int\"\n", + " \"\"\"\n", + " Absolute number of users retained.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.5.0\"\n", + "\n", + "class AdminDomainBlock(AttribAccessDict):\n", + " \"\"\"\n", + " A domain block, as returned by the admin API.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Admin_DomainBlock/\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " The ID of the DomainBlock in the database.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " domain: \"str\"\n", + " \"\"\"\n", + " The domain that is not allowed to federate.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " created_at: \"datetime\"\n", + " \"\"\"\n", + " When the domain was blocked from federating.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " severity: \"str\"\n", + " \"\"\"\n", + " The policy to be applied by this domain block.\n", + " Should contain (as text): AdminDomainLimitEnum\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " reject_media: \"bool\"\n", + " \"\"\"\n", + " Whether to reject media attachments from this domain.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " reject_reports: \"bool\"\n", + " \"\"\"\n", + " Whether to reject reports from this domain.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " private_comment: \"Optional[str]\"\n", + " \"\"\"\n", + " A private comment (visible only to other moderators) for the domain block. (nullable)\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " public_comment: \"Optional[str]\"\n", + " \"\"\"\n", + " A public comment (visible to either all users, or the whole world) for the domain block. (nullable)\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " obfuscate: \"bool\"\n", + " \"\"\"\n", + " Whether to obfuscate public displays of this domain block.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " digest: \"Optional[str]\"\n", + " \"\"\"\n", + " SHA256 hex digest of the blocked domain. (nullable)\n", + "\n", + " Version history:\n", + " * 4.3.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.3.0\"\n", + "\n", + "class AdminCanonicalEmailBlock(AttribAccessDict):\n", + " \"\"\"\n", + " An e-mail block that has been set up to prevent certain e-mails to be used when signing up, via hash matching.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Admin_CanonicalEmailBlock\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " The ID of the email block in the database.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " canonical_email_hash: \"str\"\n", + " \"\"\"\n", + " The SHA256 hash of the canonical email address.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class AdminDomainAllow(AttribAccessDict):\n", + " \"\"\"\n", + " The opposite of a domain block, specifically allowing a domain to federate when the instance is in allowlist mode.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Admin_DomainAllow\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " The ID of the DomainAllow in the database.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " domain: \"str\"\n", + " \"\"\"\n", + " The domain that is allowed to federate.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " created_at: \"datetime\"\n", + " \"\"\"\n", + " When the domain was allowed to federate.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class AdminEmailDomainBlock(AttribAccessDict):\n", + " \"\"\"\n", + " A block that has been set up to prevent e-mails from certain domains to be used when signing up.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Admin_EmailDomainBlock\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " The ID of the EmailDomainBlock in the database.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " domain: \"str\"\n", + " \"\"\"\n", + " The email domain that is not allowed to be used for signups.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " created_at: \"datetime\"\n", + " \"\"\"\n", + " When the email domain was disallowed from signups.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " history: \"EntityList[AdminEmailDomainBlockHistory]\"\n", + " \"\"\"\n", + " Usage statistics for given days (typically the past week).\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class AdminEmailDomainBlockHistory(AttribAccessDict):\n", + " \"\"\"\n", + " Historic data about attempted signups using e-mails from a given domain.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Admin_EmailDomainBlock\n", + " \"\"\"\n", + "\n", + " day: \"datetime\"\n", + " \"\"\"\n", + " The time (in day increments) for which this row of historical data is valid.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " accounts: \"int\"\n", + " \"\"\"\n", + " The number of different account creation attempts that have been made.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " uses: \"int\"\n", + " \"\"\"\n", + " The number of different ips used in account creation attempts.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class AdminIpBlock(AttribAccessDict):\n", + " \"\"\"\n", + " An admin IP block, to prevent certain IP addresses or address ranges from accessing the instance.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Admin_IpBlock\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " The ID of the DomainBlock in the database.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " ip: \"str\"\n", + " \"\"\"\n", + " The IP address range that is not allowed to federate.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " severity: \"str\"\n", + " \"\"\"\n", + " The associated policy with this IP block.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " comment: \"str\"\n", + " \"\"\"\n", + " The recorded reason for this IP block.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " created_at: \"datetime\"\n", + " \"\"\"\n", + " When the IP block was created.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " expires_at: \"Optional[datetime]\"\n", + " \"\"\"\n", + " When the IP block will expire. (nullable)\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class DomainBlock(AttribAccessDict):\n", + " \"\"\"\n", + " A domain block that has been implemented by instance staff, limiting the way posts from the blocked instance are handled.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/DomainBlock\n", + " \"\"\"\n", + "\n", + " domain: \"str\"\n", + " \"\"\"\n", + " The domain which is blocked. This may be obfuscated or partially censored.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " digest: \"str\"\n", + " \"\"\"\n", + " The SHA256 hash digest of the domain string.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " severity: \"str\"\n", + " \"\"\"\n", + " The level to which the domain is blocked.\n", + " Should contain (as text): DomainLimitEnum\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " comment: \"str\"\n", + " \"\"\"\n", + " An optional reason for the domain block.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class ExtendedDescription(AttribAccessDict):\n", + " \"\"\"\n", + " An extended instance description that can contain HTML.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/ExtendedDescription\n", + " \"\"\"\n", + "\n", + " updated_at: \"datetime\"\n", + " \"\"\"\n", + " A timestamp of when the extended description was last updated.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " content: \"str\"\n", + " \"\"\"\n", + " The rendered HTML content of the extended description.\n", + " Should contain (as text): HTML\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class FilterKeyword(AttribAccessDict):\n", + " \"\"\"\n", + " A keyword that is being matched as part of a filter.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/FilterKeyword\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " The ID of the FilterKeyword in the database.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " keyword: \"str\"\n", + " \"\"\"\n", + " The phrase to be matched against.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " whole_word: \"bool\"\n", + " \"\"\"\n", + " Should the filter consider word boundaries? See implementation guidelines for filters().\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class FilterStatus(AttribAccessDict):\n", + " \"\"\"\n", + " A single status that is being matched as part of a filter.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/FilterStatus\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " The ID of the FilterStatus in the database.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " status_id: \"MaybeSnowflakeIdType\"\n", + " \"\"\"\n", + " The ID of the Status that will be filtered.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class IdentityProof(AttribAccessDict):\n", + " \"\"\"\n", + " A cryptographic proof-of-identity.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/IdentityProof\n", + " \"\"\"\n", + "\n", + " provider: \"str\"\n", + " \"\"\"\n", + " The name of the identity provider.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " provider_username: \"str\"\n", + " \"\"\"\n", + " The account owner's username on the identity provider's service.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " updated_at: \"datetime\"\n", + " \"\"\"\n", + " When the identity proof was last updated.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " proof_url: \"str\"\n", + " \"\"\"\n", + " A link to a statement of identity proof, hosted by the identity provider.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " profile_url: \"str\"\n", + " \"\"\"\n", + " The account owner's profile URL on the identity provider.\n", + "\n", + " Version history:\n", + " * 2.8.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"2.8.0\"\n", + "\n", + "class StatusSource(AttribAccessDict):\n", + " \"\"\"\n", + " The source data of a status, useful when editing a status.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/StatusSource\n", + " \"\"\"\n", + "\n", + " id: \"IdType\"\n", + " \"\"\"\n", + " ID of the status in the database.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " text: \"str\"\n", + " \"\"\"\n", + " The plain text used to compose the status.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " spoiler_text: \"str\"\n", + " \"\"\"\n", + " The plain text used to compose the status's subject or content warning.\n", + "\n", + " Version history:\n", + " * 3.5.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.5.0\"\n", + "\n", + "class Suggestion(AttribAccessDict):\n", + " \"\"\"\n", + " A follow suggestion.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Suggestion\n", + " \"\"\"\n", + "\n", + " source: \"str\"\n", + " \"\"\"\n", + " The reason this account is being suggested.\n", + "\n", + " Version history:\n", + " * 3.4.0: added\n", + " \"\"\"\n", + "\n", + " account: \"Account\"\n", + " \"\"\"\n", + " The account being recommended to follow.\n", + "\n", + " Version history:\n", + " * 3.4.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.4.0\"\n", + "\n", + "class Translation(AttribAccessDict):\n", + " \"\"\"\n", + " A translation of a status.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/entities/Translation\n", + " \"\"\"\n", + "\n", + " content: \"str\"\n", + " \"\"\"\n", + " The translated text of the status.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " detected_source_language: \"str\"\n", + " \"\"\"\n", + " The language of the source text, as auto-detected by the machine translation provider.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " provider: \"str\"\n", + " \"\"\"\n", + " The service that provided the machine translation.\n", + "\n", + " Version history:\n", + " * 4.0.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"4.0.0\"\n", + "\n", + "class AccountCreationError(AttribAccessDict):\n", + " \"\"\"\n", + " An error response returned when creating an account fails.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/methods/accounts/#create\n", + " \"\"\"\n", + "\n", + " error: \"str\"\n", + " \"\"\"\n", + " The error as a localized string.\n", + "\n", + " Version history:\n", + " * 2.7.0: added\n", + " \"\"\"\n", + "\n", + " details: \"AccountCreationErrorDetails\"\n", + " \"\"\"\n", + " A dictionary giving more details about what fields caused errors and in which ways.\n", + "\n", + " Version history:\n", + " * 3.4.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.4.0\"\n", + "\n", + "class AccountCreationErrorDetails(AttribAccessDict):\n", + " \"\"\"\n", + " An object containing detailed errors for different fields in the account creation attempt.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/methods/accounts/#create\n", + " \"\"\"\n", + "\n", + " username: \"Optional[EntityList[AccountCreationErrorDetailsField]]\"\n", + " \"\"\"\n", + " An object giving more details about an error caused by the username. (optional)\n", + "\n", + " Version history:\n", + " * 3.4.0: added\n", + " \"\"\"\n", + "\n", + " password: \"Optional[EntityList[AccountCreationErrorDetailsField]]\"\n", + " \"\"\"\n", + " An object giving more details about an error caused by the password. (optional)\n", + "\n", + " Version history:\n", + " * 3.4.0: added\n", + " \"\"\"\n", + "\n", + " email: \"Optional[EntityList[AccountCreationErrorDetailsField]]\"\n", + " \"\"\"\n", + " An object giving more details about an error caused by the e-mail. (optional)\n", + "\n", + " Version history:\n", + " * 3.4.0: added\n", + " \"\"\"\n", + "\n", + " agreement: \"Optional[EntityList[AccountCreationErrorDetailsField]]\"\n", + " \"\"\"\n", + " An object giving more details about an error caused by the usage policy agreement. (optional)\n", + "\n", + " Version history:\n", + " * 3.4.0: added\n", + " \"\"\"\n", + "\n", + " locale: \"Optional[EntityList[AccountCreationErrorDetailsField]]\"\n", + " \"\"\"\n", + " An object giving more details about an error caused by the locale. (optional)\n", + "\n", + " Version history:\n", + " * 3.4.0: added\n", + " \"\"\"\n", + "\n", + " reason: \"Optional[EntityList[AccountCreationErrorDetailsField]]\"\n", + " \"\"\"\n", + " An object giving more details about an error caused by the registration reason. (optional)\n", + "\n", + " Version history:\n", + " * 3.4.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.4.0\"\n", + "\n", + "class AccountCreationErrorDetailsField(AttribAccessDict):\n", + " \"\"\"\n", + " An object giving details about what specifically is wrong with a given field in an account registration attempt.\n", + "\n", + " See also (Mastodon API documentation): https://docs.joinmastodon.org/methods/accounts/#create\n", + " \"\"\"\n", + "\n", + " error: \"str\"\n", + " \"\"\"\n", + " A machine readable string giving an error category.\n", + "\n", + " Version history:\n", + " * 3.4.0: added\n", + " \"\"\"\n", + "\n", + " description: \"str\"\n", + " \"\"\"\n", + " A description of the issue as a localized string.\n", + "\n", + " Version history:\n", + " * 3.4.0: added\n", + " \"\"\"\n", + "\n", + " _version = \"3.4.0\"\n", + "\n", + "\n" + ] + } + ], "source": [ "from mastodon.utility import max_version\n", "\n", @@ -307,11 +5608,51 @@ "\"\"\") \n", "print(all_entities_text)" ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# now, for each entity, we need to generate an autodoc section\n", + "# Which looks like so:\n", + "# .. autoclass:: mastodon.return_types.Status\n", + "# :members:\n", + "entities = json.load(open(\"return_types_all_current_fixed_bu.json\", \"r\"))\n", + "\n", + "# Start with the base types (AttribAccessDict PaginatableList NonPaginatableList MaybeSnowflakeIdType IdType Entity EntityList)\n", + "base_types = [\"AttribAccessDict\", \"PaginatableList\", \"NonPaginatableList\", \"MaybeSnowflakeIdType\", \"IdType\", \"Entity\", \"EntityList\"]\n", + "\n", + "# First, a title\n", + "print(\"Base types\")\n", + "print(\"==========\")\n", + "for base_type in base_types:\n", + " print(f\".. autoclass:: mastodon.types_base.{base_type}\")\n", + " print(\" :members:\")\n", + " print(\"\")\n", + "\n", + "\n", + "# Now, the actual entities\n", + "print(\"Return types\")\n", + "print(\"============\")\n", + "for entity in entities:\n", + " print(f\".. autoclass:: mastodon.return_types.{entity['python_name']}\")\n", + " print(\" :members:\")\n", + " print(\"\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { "kernelspec": { - "display_name": "mastopy_39", + "display_name": "Python 3", "language": "python", "name": "python3" }, @@ -325,7 +5666,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.11" + "version": "3.9.16" }, "orig_nbformat": 4 },