tools.ozone.report.defs

Shared type definitions.

atproto_client.models.tools.ozone.report.defs.ReasonType

Reason type

alias of models.ToolsOzoneReportDefs.ReasonAppeal | models.ToolsOzoneReportDefs.ReasonOther | models.ToolsOzoneReportDefs.ReasonViolenceAnimal | models.ToolsOzoneReportDefs.ReasonViolenceThreats | models.ToolsOzoneReportDefs.ReasonViolenceGraphicContent | models.ToolsOzoneReportDefs.ReasonViolenceGlorification | models.ToolsOzoneReportDefs.ReasonViolenceExtremistContent | models.ToolsOzoneReportDefs.ReasonViolenceTrafficking | models.ToolsOzoneReportDefs.ReasonViolenceOther | models.ToolsOzoneReportDefs.ReasonSexualAbuseContent | models.ToolsOzoneReportDefs.ReasonSexualNCII | models.ToolsOzoneReportDefs.ReasonSexualDeepfake | models.ToolsOzoneReportDefs.ReasonSexualAnimal | models.ToolsOzoneReportDefs.ReasonSexualUnlabeled | models.ToolsOzoneReportDefs.ReasonSexualOther | models.ToolsOzoneReportDefs.ReasonChildSafetyCSAM | models.ToolsOzoneReportDefs.ReasonChildSafetyGroom | models.ToolsOzoneReportDefs.ReasonChildSafetyPrivacy | models.ToolsOzoneReportDefs.ReasonChildSafetyHarassment | models.ToolsOzoneReportDefs.ReasonChildSafetyOther | models.ToolsOzoneReportDefs.ReasonHarassmentTroll | models.ToolsOzoneReportDefs.ReasonHarassmentTargeted | models.ToolsOzoneReportDefs.ReasonHarassmentHateSpeech | models.ToolsOzoneReportDefs.ReasonHarassmentDoxxing | models.ToolsOzoneReportDefs.ReasonHarassmentOther | models.ToolsOzoneReportDefs.ReasonMisleadingBot | models.ToolsOzoneReportDefs.ReasonMisleadingImpersonation | models.ToolsOzoneReportDefs.ReasonMisleadingSpam | models.ToolsOzoneReportDefs.ReasonMisleadingScam | models.ToolsOzoneReportDefs.ReasonMisleadingElections | models.ToolsOzoneReportDefs.ReasonMisleadingOther | models.ToolsOzoneReportDefs.ReasonRuleSiteSecurity | models.ToolsOzoneReportDefs.ReasonRuleProhibitedSales | models.ToolsOzoneReportDefs.ReasonRuleBanEvasion | models.ToolsOzoneReportDefs.ReasonRuleOther | models.ToolsOzoneReportDefs.ReasonSelfHarmContent | models.ToolsOzoneReportDefs.ReasonSelfHarmED | models.ToolsOzoneReportDefs.ReasonSelfHarmStunts | models.ToolsOzoneReportDefs.ReasonSelfHarmSubstances | models.ToolsOzoneReportDefs.ReasonSelfHarmOther | str

atproto_client.models.tools.ozone.report.defs.ReasonAppeal

Appeal a previously taken moderation action

alias of Literal[‘tools.ozone.report.defs#reasonAppeal’]

atproto_client.models.tools.ozone.report.defs.ReasonOther

An issue not included in these options

alias of Literal[‘tools.ozone.report.defs#reasonOther’]

atproto_client.models.tools.ozone.report.defs.ReasonViolenceAnimal

Animal welfare violations

alias of Literal[‘tools.ozone.report.defs#reasonViolenceAnimal’]

atproto_client.models.tools.ozone.report.defs.ReasonViolenceThreats

Threats or incitement

alias of Literal[‘tools.ozone.report.defs#reasonViolenceThreats’]

atproto_client.models.tools.ozone.report.defs.ReasonViolenceGraphicContent

Graphic violent content

alias of Literal[‘tools.ozone.report.defs#reasonViolenceGraphicContent’]

atproto_client.models.tools.ozone.report.defs.ReasonViolenceGlorification

Glorification of violence

alias of Literal[‘tools.ozone.report.defs#reasonViolenceGlorification’]

atproto_client.models.tools.ozone.report.defs.ReasonViolenceExtremistContent

Extremist content. These reports will be sent only be sent to the application’s Moderation Authority.

alias of Literal[‘tools.ozone.report.defs#reasonViolenceExtremistContent’]

atproto_client.models.tools.ozone.report.defs.ReasonViolenceTrafficking

Human trafficking

alias of Literal[‘tools.ozone.report.defs#reasonViolenceTrafficking’]

atproto_client.models.tools.ozone.report.defs.ReasonViolenceOther

Other violent content

alias of Literal[‘tools.ozone.report.defs#reasonViolenceOther’]

atproto_client.models.tools.ozone.report.defs.ReasonSexualAbuseContent

Adult sexual abuse content

alias of Literal[‘tools.ozone.report.defs#reasonSexualAbuseContent’]

atproto_client.models.tools.ozone.report.defs.ReasonSexualNCII

Non-consensual intimate imagery

alias of Literal[‘tools.ozone.report.defs#reasonSexualNCII’]

atproto_client.models.tools.ozone.report.defs.ReasonSexualDeepfake

Deepfake adult content

alias of Literal[‘tools.ozone.report.defs#reasonSexualDeepfake’]

atproto_client.models.tools.ozone.report.defs.ReasonSexualAnimal

Animal sexual abuse

alias of Literal[‘tools.ozone.report.defs#reasonSexualAnimal’]

atproto_client.models.tools.ozone.report.defs.ReasonSexualUnlabeled

Unlabelled adult content

alias of Literal[‘tools.ozone.report.defs#reasonSexualUnlabeled’]

atproto_client.models.tools.ozone.report.defs.ReasonSexualOther

Other sexual violence content

alias of Literal[‘tools.ozone.report.defs#reasonSexualOther’]

atproto_client.models.tools.ozone.report.defs.ReasonChildSafetyCSAM

Child sexual abuse material (CSAM). These reports will be sent only be sent to the application’s Moderation Authority.

alias of Literal[‘tools.ozone.report.defs#reasonChildSafetyCSAM’]

atproto_client.models.tools.ozone.report.defs.ReasonChildSafetyGroom

Grooming or predatory behavior. These reports will be sent only be sent to the application’s Moderation Authority.

alias of Literal[‘tools.ozone.report.defs#reasonChildSafetyGroom’]

atproto_client.models.tools.ozone.report.defs.ReasonChildSafetyPrivacy

Privacy violation involving a minor

alias of Literal[‘tools.ozone.report.defs#reasonChildSafetyPrivacy’]

atproto_client.models.tools.ozone.report.defs.ReasonChildSafetyHarassment

Harassment or bullying of minors

alias of Literal[‘tools.ozone.report.defs#reasonChildSafetyHarassment’]

atproto_client.models.tools.ozone.report.defs.ReasonChildSafetyOther

Other child safety. These reports will be sent only be sent to the application’s Moderation Authority.

alias of Literal[‘tools.ozone.report.defs#reasonChildSafetyOther’]

atproto_client.models.tools.ozone.report.defs.ReasonHarassmentTroll

Trolling

alias of Literal[‘tools.ozone.report.defs#reasonHarassmentTroll’]

atproto_client.models.tools.ozone.report.defs.ReasonHarassmentTargeted

Targeted harassment

alias of Literal[‘tools.ozone.report.defs#reasonHarassmentTargeted’]

atproto_client.models.tools.ozone.report.defs.ReasonHarassmentHateSpeech

Hate speech

alias of Literal[‘tools.ozone.report.defs#reasonHarassmentHateSpeech’]

atproto_client.models.tools.ozone.report.defs.ReasonHarassmentDoxxing

Doxxing

alias of Literal[‘tools.ozone.report.defs#reasonHarassmentDoxxing’]

atproto_client.models.tools.ozone.report.defs.ReasonHarassmentOther

Other harassing or hateful content

alias of Literal[‘tools.ozone.report.defs#reasonHarassmentOther’]

atproto_client.models.tools.ozone.report.defs.ReasonMisleadingBot

Fake account or bot

alias of Literal[‘tools.ozone.report.defs#reasonMisleadingBot’]

atproto_client.models.tools.ozone.report.defs.ReasonMisleadingImpersonation

Impersonation

alias of Literal[‘tools.ozone.report.defs#reasonMisleadingImpersonation’]

atproto_client.models.tools.ozone.report.defs.ReasonMisleadingSpam

Spam

alias of Literal[‘tools.ozone.report.defs#reasonMisleadingSpam’]

atproto_client.models.tools.ozone.report.defs.ReasonMisleadingScam

Scam

alias of Literal[‘tools.ozone.report.defs#reasonMisleadingScam’]

atproto_client.models.tools.ozone.report.defs.ReasonMisleadingElections

False information about elections

alias of Literal[‘tools.ozone.report.defs#reasonMisleadingElections’]

atproto_client.models.tools.ozone.report.defs.ReasonMisleadingOther

Other misleading content

alias of Literal[‘tools.ozone.report.defs#reasonMisleadingOther’]

atproto_client.models.tools.ozone.report.defs.ReasonRuleSiteSecurity

Hacking or system attacks

alias of Literal[‘tools.ozone.report.defs#reasonRuleSiteSecurity’]

atproto_client.models.tools.ozone.report.defs.ReasonRuleProhibitedSales

Promoting or selling prohibited items or services

alias of Literal[‘tools.ozone.report.defs#reasonRuleProhibitedSales’]

atproto_client.models.tools.ozone.report.defs.ReasonRuleBanEvasion

Banned user returning

alias of Literal[‘tools.ozone.report.defs#reasonRuleBanEvasion’]

atproto_client.models.tools.ozone.report.defs.ReasonRuleOther

Other

alias of Literal[‘tools.ozone.report.defs#reasonRuleOther’]

atproto_client.models.tools.ozone.report.defs.ReasonSelfHarmContent

Content promoting or depicting self-harm

alias of Literal[‘tools.ozone.report.defs#reasonSelfHarmContent’]

atproto_client.models.tools.ozone.report.defs.ReasonSelfHarmED

Eating disorders

alias of Literal[‘tools.ozone.report.defs#reasonSelfHarmED’]

atproto_client.models.tools.ozone.report.defs.ReasonSelfHarmStunts

Dangerous challenges or activities

alias of Literal[‘tools.ozone.report.defs#reasonSelfHarmStunts’]

atproto_client.models.tools.ozone.report.defs.ReasonSelfHarmSubstances

Dangerous substances or drug abuse

alias of Literal[‘tools.ozone.report.defs#reasonSelfHarmSubstances’]

atproto_client.models.tools.ozone.report.defs.ReasonSelfHarmOther

Other dangerous content

alias of Literal[‘tools.ozone.report.defs#reasonSelfHarmOther’]

class atproto_client.models.tools.ozone.report.defs.ReportAssignment

Bases: ModelBase

Definition model for tools.ozone.report.defs. Information about the moderator currently assigned to a report.

field assigned_at: DateTime [Required]

When the report was assigned.

field did: Did [Required]

DID of the assigned moderator.

field moderator: models.ToolsOzoneTeamDefs.Member | None = None

Full member record of the assigned moderator.

class atproto_client.models.tools.ozone.report.defs.ReportView

Bases: ModelBase

Definition model for tools.ozone.report.defs.

field action_event_ids: List[int] | None = None
field action_note: str | None = None

Note sent to reporter when report was actioned.

field actions: List[models.ToolsOzoneModerationDefs.ModEventView] | None = None
field assignment: models.ToolsOzoneReportDefs.ReportAssignment | None = None
field comment: str | None = None

Comment provided by the reporter.

field created_at: DateTime [Required]

When the report was created.

field event_id: int [Required]

ID of the moderation event that created this report.

field id: int [Required]

Report ID.

field is_automated: bool | None = False

Whether this report was emitted by automated tooling.

field is_muted: bool | None = None
field queue: models.ToolsOzoneQueueDefs.QueueView | None = None

The queue this report is assigned to (if any).

field queued_at: DateTime | None = None

When the report was assigned to its current queue.

field related_report_count: int | None = None

Number of other pending reports on the same subject.

field report_type: models.ComAtprotoModerationDefs.ReasonType [Required]

Type of report.

field reported_by: Did [Required]

DID of the user who made the report.

field reporter: models.ToolsOzoneModerationDefs.SubjectView [Required]

Full subject view of the reporter account.

field status: Literal['open', 'closed', 'escalated', 'queued', 'assigned'] | str [Required]

Current status of the report.

field subject: models.ToolsOzoneModerationDefs.SubjectView [Required]

The subject that was reported with full details.

field subject_status: models.ToolsOzoneModerationDefs.SubjectStatusView | None = None
field updated_at: DateTime | None = None

When the report was last updated.

class atproto_client.models.tools.ozone.report.defs.QueueActivity

Bases: ModelBase

Definition model for tools.ozone.report.defs. Activity recording a report being routed to a queue.

field previous_status: Literal['open', 'closed', 'escalated', 'queued', 'assigned'] | str | None = None
class atproto_client.models.tools.ozone.report.defs.AssignmentActivity

Bases: ModelBase

Definition model for tools.ozone.report.defs. Activity recording a moderator being assigned to a report.

field previous_status: Literal['open', 'closed', 'escalated', 'queued', 'assigned'] | str | None = None
class atproto_client.models.tools.ozone.report.defs.EscalationActivity

Bases: ModelBase

Definition model for tools.ozone.report.defs. Activity recording a report being escalated.

field previous_status: Literal['open', 'closed', 'escalated', 'queued', 'assigned'] | str | None = None
class atproto_client.models.tools.ozone.report.defs.CloseActivity

Bases: ModelBase

Definition model for tools.ozone.report.defs. Activity recording a report being closed.

field previous_status: Literal['open', 'closed', 'escalated', 'queued', 'assigned'] | str | None = None
class atproto_client.models.tools.ozone.report.defs.ReopenActivity

Bases: ModelBase

Definition model for tools.ozone.report.defs. Activity recording a closed report being reopened. Only valid when the report is in ‘closed’ status.

field previous_status: Literal['open', 'closed', 'escalated', 'queued', 'assigned'] | str | None = None
class atproto_client.models.tools.ozone.report.defs.NoteActivity

Bases: ModelBase

Definition model for tools.ozone.report.defs. Activity recording a note on a report. Use internalNote for moderator-only notes or publicNote for reporter-visible notes (or both).

class atproto_client.models.tools.ozone.report.defs.ReportActivityView

Bases: ModelBase

Definition model for tools.ozone.report.defs. A single activity entry on a report.

field activity: models.ToolsOzoneReportDefs.QueueActivity | models.ToolsOzoneReportDefs.AssignmentActivity | models.ToolsOzoneReportDefs.EscalationActivity | models.ToolsOzoneReportDefs.CloseActivity | models.ToolsOzoneReportDefs.ReopenActivity | models.ToolsOzoneReportDefs.NoteActivity | DotDict [Required]

The typed activity object describing what occurred.

Constraints:
  • __module__ = atproto_client.models.unknown_union

  • __firstlineno__ = 17

  • __doc__ = Annotation for open ref unions: an unrecognized $type falls back to DotDict. Applied to t.Union[<known members>, 'dot_dict.DotDictType']. Members are discriminated by py_type as usual, so a known type that fails validation still raises. Only a $type that matches no member, or a missing one, degrades to a DotDict.

  • __get_pydantic_core_schema__ = <bound method UnknownUnionFallback.__get_pydantic_core_schema__ of <class ‘atproto_client.models.unknown_union.UnknownUnionFallback’>>

  • __static_attributes__ = ()

  • __dict__ = {‘__module__’: ‘atproto_client.models.unknown_union’, ‘__firstlineno__’: 17, ‘__doc__’: “Annotation for open ref unions: an unrecognized $type falls back to DotDict.nnApplied to t.Union[<known members>, 'dot_dict.DotDictType']. Members are discriminated byn``py_type`` as usual, so a known type that fails validation still raises. Only a $type thatnmatches no member, or a missing one, degrades to a DotDict.n”, ‘__get_pydantic_core_schema__’: <classmethod(<function UnknownUnionFallback.__get_pydantic_core_schema__ at 0x7bdd14e56fc0>)>, ‘__static_attributes__’: (), ‘__dict__’: <attribute ‘__dict__’ of ‘UnknownUnionFallback’ objects>, ‘__weakref__’: <attribute ‘__weakref__’ of ‘UnknownUnionFallback’ objects>}

  • __weakref__ = <attribute ‘__weakref__’ of ‘UnknownUnionFallback’ objects>

field created_at: DateTime [Required]

When this activity was created.

field created_by: Did [Required]

DID of the actor who created this activity, or the service DID for automated activities.

field id: int [Required]

Activity ID.

field internal_note: str | None = None

Optional moderator-only note. Not visible to reporters.

field is_automated: bool [Required]

True if this activity was created by an automated process (e.g. queue router) rather than a direct human action.

field meta: UnknownType | None = None
field moderator: models.ToolsOzoneTeamDefs.Member | None = None
field public_note: str | None = None

Optional public note, potentially visible to the reporter.

field report: models.ToolsOzoneReportDefs.ReportView | None = None
field report_id: int [Required]

ID of the report this activity belongs to.

class atproto_client.models.tools.ozone.report.defs.LiveStats

Bases: ModelBase

Definition model for tools.ozone.report.defs. Live statistics for reports for the current calendar day, filterable by queue, moderator, or report type.

field action_rate: int | None = None
field actioned_count: int | None = None

Number of reports closed today.

field avg_handling_time_sec: int | None = None
field escalated_count: int | None = None

Number of reports escalated today.

field inbound_count: int | None = None

Reports received today.

field last_updated: DateTime | None = None

When these statistics were last computed.

field pending_count: int | None = None

Number of reports currently not closed.

class atproto_client.models.tools.ozone.report.defs.HistoricalStats

Bases: ModelBase

Definition model for tools.ozone.report.defs. A single daily snapshot of report statistics for a calendar date.

field action_rate: int | None = None
field actioned_count: int | None = None

Number of reports closed during this day.

field avg_handling_time_sec: int | None = None
field computed_at: DateTime | None = None

When this snapshot was last computed.

field date: str [Required]

The calendar date this snapshot covers (YYYY-MM-DD).

field escalated_count: int | None = None

Number of reports escalated during this day.

field inbound_count: int | None = None

Reports received during this day.

field pending_count: int | None = None

Number of reports not closed at time of computation.

class atproto_client.models.tools.ozone.report.defs.AssignmentView

Bases: ModelBase

Definition model for tools.ozone.report.defs.

field did: Did [Required]

Did.

field end_at: DateTime | None = None

End at.

field id: int [Required]

Id.

field moderator: models.ToolsOzoneTeamDefs.Member | None = None

The moderator assigned to this report.

field queue: models.ToolsOzoneQueueDefs.QueueView | None = None

Queue.

field report_id: int [Required]

Report id.

field start_at: DateTime [Required]

Start at.