action mastodon_post_api_v1_reports { label: "post_api_v1_reports" description: "File a report." provider: mastodon method: POST path: "/api/v1/reports" encoding: json input: { type: "object" required: ["account_id"] properties: { account_id: { type: "string" description: "ID of the account to report" } comment: { type: "string" description: "Reason for the report (default max 1000 characters)" } forward: { type: "boolean" description: "If the account is remote, should the report be forwarded to the remote admin?" } status_ids: { type: "array" description: "Array of Statuses to attach to the report, for context" items: { type: "string" } } } } output: { description: "Reports filed against users and/or statuses, to be taken action on by moderators." properties: { action_taken: { type: "boolean" } action_taken_at: { type: "string" format: "date-time" } category: { type: "string" enum: ["other", "spam", "violation"] } comment: { type: "string" } created_at: { type: "string" format: "date-time" } forwarded: { type: "boolean" } id: { type: "string" } rule_ids: { type: "array" items: { type: "integer" } } status_ids: { type: "array" items: { type: "integer" } } target_account: { type: "object" description: "Represents a user of Mastodon and their associated profile." properties: { acct: { type: "string" description: "The Webfinger account URI. Equal to `username` for local users, or `username@domain` for" } avatar: { type: "string" description: "An image icon that is shown next to statuses and in the profile. The format is URL." } avatar_static: { type: "string" description: "A static version of the avatar. Equal to `avatar` if its value is a static image; different if `avatar` is an animated GIF. The format is URL." } bot: { type: "boolean" description: "A presentational flag. Indicates that the account may perform automated actions, may not be monitored, or identifies as a robot." } created_at: { type: "string" format: "date-time" description: "When the account was created." } discoverable: { type: "boolean" description: "Whether the account has opted into discovery features such as the profile directory." } display_name: { type: "string" description: "The profile's display name." } emojis: { type: "array" description: "Custom emoji entities to be used when rendering the profile. If none, an empty array will be returned." items: { type: "object" description: "Represents a custom emoji." required: ["shortcode", "url", "static_url", "visible_in_picker"] properties: { category: { type: "string" description: "Used for sorting custom emoji in the picker." } shortcode: { type: "string" description: "The name of the custom emoji." } static_url: { type: "string" description: "A link to a static copy of the custom emoji. The format is URL." } url: { type: "string" description: "A link to the custom emoji. The format is URL." } visible_in_picker: { type: "boolean" description: "Whether this Emoji should be visible in the picker or unlisted." } } } } fields: { type: "array" description: "Additional metadata attached to a profile as name-value pairs." items: { type: "object" description: "Represents a profile field as a name-value pair with optional verification." properties: { name: { type: "string" description: "The key of a given field's key-value pair." } value: { type: "string" description: "The value associated with the `name` key." } verified_at: { type: "string" format: "date-time" description: "Timestamp of when the server verified a URL value for a rel=\"me” link. If `value` is a verified URL. Otherwise, null" } } } } followers_count: { type: "integer" description: "The reported followers of this profile." } following_count: { type: "integer" description: "The reported follows of this profile." } header: { type: "string" description: "An image banner that is shown above the profile and in profile cards. The format is URL." } header_static: { type: "string" description: "A static version of the header. Equal to `header` if its value is a static image; different if `header` is an animated GIF. The format is URL." } id: { type: "string" description: "The account id `header`." } last_status_at: { type: "string" format: "date-time" description: "When the most recent status was posted." } locked: { type: "boolean" description: "Whether the account manually approves follow requests." } moved: { type: "object" additionalProperties: true } mute_expires_at: { type: "string" format: "date-time" description: "When a timed mute will expire, if applicable. ISO 8601 Datetime." } note: { type: "string" description: "The profile's bio / description." } source: { type: "object" description: "Represents display or publishing preferences of user's own account. Returned as an additional entity when verifying and updated credentials, as an attribute of Account." properties: { fields: { type: "array" description: "Metadata about the account." items: { type: "object" additionalProperties: true } } follow_requests_count: { type: "integer" description: "The number of pending follow requests" } language: { type: "string" description: "The default posting language for new statuses, ISO 639-1 language two-letter code." } note: { type: "string" description: "Profile bio" } privacy: { type: "string" description: "The default post privacy to be used for new statuses." enum: ["public", "unlisted", "private", "direct"] } sensitive: { type: "boolean" description: "Whether new statuses should be marked sensitive by default." } } } statuses_count: { type: "integer" description: "How many statuses are attached to this account." } suspended: { type: "boolean" description: "An extra entity returned when an account is suspended." } url: { type: "string" description: "The location of the user's profile page. (HTTPS URL)" } username: { type: "string" description: "The username of the account, not including domain." } } } } } }