Overview
Thecom.atproto.moderation namespace provides lexicons for reporting content and accounts that violate community guidelines or terms of service.
Key Concepts
- Reports: User-submitted reports about problematic content or accounts
- Report Reasons: Categorized reasons for reporting (spam, harassment, etc.)
- Subjects: What can be reported (accounts, posts, profiles, etc.)
- Moderation Services: Where reports are sent for review
Procedures
createReport
Create a report about an account or content. Endpoint:com.atproto.moderation.createReport
Authentication: Required
The reason for the report (see reason types below)
Additional context provided by the reporter (max 20,000 characters)
The subject being reported (account or record)
Report ID
The reason type used
Additional context
The reported subject
DID of the reporter
When the report was created
Type Definitions
reasonType
The type of violation being reported. Core reason types:Legacy Reasons (Deprecated but still supported)
com.atproto.moderation.defs#reasonSpamFrequent unwanted promotion, replies, mentions. Prefer
tools.ozone.report.defs#reasonMisleadingSpam.com.atproto.moderation.defs#reasonViolationDirect violation of server rules, laws, or terms of service. Prefer
tools.ozone.report.defs#reasonRuleOther.com.atproto.moderation.defs#reasonMisleadingMisleading identity, affiliation, or content. Prefer
tools.ozone.report.defs#reasonMisleadingOther.com.atproto.moderation.defs#reasonSexualUnwanted or mislabeled sexual content. Prefer
tools.ozone.report.defs#reasonSexualUnlabeled.com.atproto.moderation.defs#reasonRudeRude, harassing, or otherwise unwelcoming behavior. Prefer
tools.ozone.report.defs#reasonHarassmentOther.com.atproto.moderation.defs#reasonOtherReports not falling under another category. Prefer
tools.ozone.report.defs#reasonOther.com.atproto.moderation.defs#reasonAppealAppeal a previously taken moderation action.
Modern Reasons (via tools.ozone.report.defs)
The modern reporting system uses more granular categories: Violence:tools.ozone.report.defs#reasonViolenceAnimal- Animal crueltytools.ozone.report.defs#reasonViolenceThreats- Threats of violencetools.ozone.report.defs#reasonViolenceGraphicContent- Graphic violent contenttools.ozone.report.defs#reasonViolenceGlorification- Glorification of violencetools.ozone.report.defs#reasonViolenceExtremistContent- Extremist contenttools.ozone.report.defs#reasonViolenceTrafficking- Human traffickingtools.ozone.report.defs#reasonViolenceOther- Other violence
tools.ozone.report.defs#reasonSexualAbuseContent- Sexual abuse contenttools.ozone.report.defs#reasonSexualNCII- Non-consensual intimate imagerytools.ozone.report.defs#reasonSexualDeepfake- Sexual deepfakestools.ozone.report.defs#reasonSexualAnimal- Sexual content involving animalstools.ozone.report.defs#reasonSexualUnlabeled- Unlabeled sexual contenttools.ozone.report.defs#reasonSexualOther- Other sexual content issues
tools.ozone.report.defs#reasonChildSafetyCSAM- Child sexual abuse materialtools.ozone.report.defs#reasonChildSafetyGroom- Grooming behaviortools.ozone.report.defs#reasonChildSafetyPrivacy- Child privacy violationtools.ozone.report.defs#reasonChildSafetyHarassment- Harassment of childrentools.ozone.report.defs#reasonChildSafetyOther- Other child safety issues
tools.ozone.report.defs#reasonHarassmentTroll- Trollingtools.ozone.report.defs#reasonHarassmentTargeted- Targeted harassmenttools.ozone.report.defs#reasonHarassmentHateSpeech- Hate speechtools.ozone.report.defs#reasonHarassmentDoxxing- Doxxingtools.ozone.report.defs#reasonHarassmentOther- Other harassment
tools.ozone.report.defs#reasonMisleadingBot- Undisclosed bot accounttools.ozone.report.defs#reasonMisleadingImpersonation- Impersonationtools.ozone.report.defs#reasonMisleadingSpam- Spamtools.ozone.report.defs#reasonMisleadingScam- Scamtools.ozone.report.defs#reasonMisleadingElections- Election misinformationtools.ozone.report.defs#reasonMisleadingOther- Other misleading content
tools.ozone.report.defs#reasonRuleSiteSecurity- Site security threattools.ozone.report.defs#reasonRuleProhibitedSales- Prohibited salestools.ozone.report.defs#reasonRuleBanEvasion- Ban evasiontools.ozone.report.defs#reasonRuleOther- Other rule violations
tools.ozone.report.defs#reasonSelfHarmContent- Self-harm contenttools.ozone.report.defs#reasonSelfHarmED- Eating disorder contenttools.ozone.report.defs#reasonSelfHarmStunts- Dangerous stuntstools.ozone.report.defs#reasonSelfHarmSubstances- Substance abusetools.ozone.report.defs#reasonSelfHarmOther- Other self-harm content
subjectType
Types of subjects that can be reported:account: User account (DID)record: Repository record (post, profile, etc.)chat: Chat message or conversation
Report Subjects
Reports can target different types of content:Reporting an Account
Usecom.atproto.admin.defs#repoRef:
Reporting a Record (Post, Profile, etc.)
Usecom.atproto.repo.strongRef:
Reporting a Blob (Image, Video)
Usecom.atproto.admin.defs#repoBlobRef:
Common Use Cases
Report Spam Account
Report Harassment
Report Inappropriate Image
Report Impersonation
Appeal a Moderation Action
Building a Report UI
Important Notes
Report Privacy
- Reports are submitted to the appropriate moderation service (PDS or labeler)
- The reported user is not notified who reported them
- Reports are reviewed by moderators, not automatically actioned
Report Limits
- Users can submit multiple reports
- Duplicate reports of the same subject are allowed
- Each report creates a new moderation queue item
Where Reports Go
- Reports for content/accounts on your PDS go to your PDS moderators
- Reports can also go to third-party labeling services if configured
- AppView (bsky.app) has its own reporting system for network-wide content
False Reports
- Submitting false or malicious reports may result in account suspension
- Use the appeal process if you believe action was taken in error
Related Lexicons
- com.atproto.admin - Administrative moderation actions
- com.atproto.label - Content labeling system
- tools.ozone.moderation - Ozone moderation service