Handle Appeals

Appeals Overview

Appeals, or opportunities to contest previous moderation decisions, are a crucial part of any content moderation workflow. No content moderation system is perfect, and even with the combined power of automation and human review, there are bound to be mistakes. Widely-recognized trust and safety regulations for online platforms, such as the EU’s Digital Services Act, mandate support for appeals to ensure that users are able to have a say when they feel like a moderation decision involving them is wrong.

To facilitate easy compliance with DSA requirements, Moderation Dashboard supports the entire appeal process for both users and moderators. On this page, we’ll cover how to submit appeals to the dashboard, how moderators can view and act on those appeals in a timely manner, and how to request the status of a particular appeal so that users can view the final decision.

Types of Appeals

Any moderation action can be appealed, whether that be a Rule Action, Review Feed Action, or an action manually taken via the User Content Page. Appeals can be submitted by either the user who’s content or account has been moderated and the user who created a report. In total, there are four distinct types of appeals:

  • Post Appeals
    • A user appeals a post action that was taken on a post they published
    • Appeal_context will have type “post”
    • Note: report_id is absent when creating post appeals
  • User Appeals
    • A user appeals a user action that was taken on their account
    • Appeal_context will have type “user”
    • Note: report_id is absent when creating post appeals
  • Reported Post Appeals
    • The user who reported a post appeals the decision made on that report
    • Report_id will be “post report” type
  • Reported User Appeals
    • The user who reported another user appeals the decisions made on that report
    • Report_id will be “user report” type

Opting-In To Appeals

In order to begin using the Appeals-related features on Moderation Dashboard, navigate to the Appeals Settings section of our Application Settings page. Here, make sure that the Return judgement_id option is checked. This field is an important part of appeal submissions within the Dashboard. The judgement_id will be submitted along with each appeal to identify which Action is being appealed.

Submitting an Appeal

Appeal submissions are made in the following format:

https://api.hivemoderation.com/api/v1/appeals/create

Field (

*

required)

Type

Description

judgment_id*

String

Ties action to appeal

appealer_id*

String

ID of the user that submitted the appeal

appeal_reason

String

User-submitted blurb about why they are appealing

url

String

Publicly hosted URL that represents the image for a post. Only required if the post being appealed is past the retention date.

For example: Appealing a post that is 4 months old should be submitted with a url since the Dashboard only supports max retention of 1 month.

text_data

String

Text data to be appealed. Only required if the post being appealed is past the retention date.

For example: Appealing a post that is 4 months old should be submitted with text_data since the Dashboard only supports max retention of 1 month.

metadata

JSON Object

Metadata associated with the appeal

report_id

String

Optional, if its an appeal from a report

appeal_categories

Array

Optional array of appeal categories.

📘

What if there is no judgement_id?

All actions taken across the platform after [release date] will have a judgement_id. The primary method of submitting an appeal involves this judgement_id. For older posts that do not have this field, see below for alternate submission format.

Actions without judgement_id

If the appealed action does not have a judgement_id or you do not wish to submit it for other reasons, you can use the appeal_context field instead to provide the necessary data to process the appeal. This format is described below:

https://api.hivemoderation.com/api/v1/appeals/create
Field (* required)TypeDescription
appealer_id*StringID of the user that submitted the appeal
appeal_reasonStringUser-submitted blurb about why they are appealing
appeal_context*JSON ObjectRelevant data to be displayed so the appeal can be processed.
appeal_context.type*StringSubject of the appeal (either post or user)
appeal_context.post_idStringThe post_id (*required if appeal_context.user_id is not provided)
appeal_context.user_idStringThe user_id (*required if appeal_context.post_id is not provided)
appeal_context.source_post_idStringSource post ID
urlStringURL for the image in a post
text_dataStringText data for the post
metadataJSON ObjectMetadata associated with the appeal
report_idStringOptional, if its an appeal from a report
appeal_categoriesArrayOptional array of appeal categories

Get Appeal Status

Every appeal submission will return an appeal_id. This appeal_id can be used to retrieve the status of an appeal: in review, overturned, or upheld.

https://api.hivemoderation.com/api/v1/appeals/status
Field (* required)TypeDescription
appeal_id*StringThe appeal_id for the appeal you’d like to see the status of

You’ll get a response containing the current status of the appeal in the following format:

Field

Type

Description

appeal_id

String

The appeal_id of the appeal in question

status

JSON Object

  • In Review
  • Reviewed
    - Status (overturned, upheld)
    - action_id
    - action_name
    - action_reasons

original_decision

JSON Object

  • action_id
  • action_name
  • action_reasons

Moderating Appeals

Moderators can view all appeals in the Post Appeal feed. For each appeal, they’ll be able to view the post itself, the user’s reason for the appeal, as well as any metadata that was included in the submission. Based on this information, moderators can either decide to uphold the previous moderation decision or overturn it.

Below is a moderator's view of both a Post Appeal and User Appeal, with all metadata and other relevant information displayed beside the post.

An example of a Post Appeal

An example of a Post Appeal

An example of a User Appeal

An example of a User Appeal