Class: SafetyKit::Models::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/safety_kit/models/beta/event_create_params.rb

Defined Under Namespace

Modules: Content, Metadata, ResourcesUsed, SourceType Classes: ClientInfo

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, #inspect, inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(ip: nil) ⇒ Object

Client context observed by your backend for the user action that triggered the event.

Parameters:

  • ip (String) (defaults to: nil)

    IP address observed by your backend for the client that triggered the event.



# File 'lib/safety_kit/models/beta/event_create_params.rb', line 5520

Instance Attribute Details

#client_infoSafetyKit::Models::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ClientInfo?

Client context observed by your backend for the user action that triggered the event.



5465
5466
# File 'lib/safety_kit/models/beta/event_create_params.rb', line 5465

optional :client_info,
-> { SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ClientInfo }

#contentArray<SafetyKit::Models::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::Content::EventTextContent, SafetyKit::Models::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::Content::EventImageContent>?

User-authored or user-uploaded content parts. Use this for message bodies, bios, listing text, image URLs, and similar content SafetyKit should compare or analyze.



5474
5475
# File 'lib/safety_kit/models/beta/event_create_params.rb', line 5474

optional :content,
-> { SafetyKit::Internal::Type::ArrayOf[union: SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::Content] }

#content_idString?

Your stable identifier for the content involved in this event, such as a message, listing, page, post, profile, or uploaded media item.

Returns:

  • (String, nil)


5482
# File 'lib/safety_kit/models/beta/event_create_params.rb', line 5482

optional :content_id, String

#event_nameString

Stable, low-cardinality product action name. Use snake_case and put dynamic values in typed fields, content, resources_used, or metadata.

Returns:

  • (String)


5422
# File 'lib/safety_kit/models/beta/event_create_params.rb', line 5422

required :event_name, String

#idempotency_keyString?

Optional caller-provided key used to make retries of this individual event idempotent. Reuse the same key only for retries of the same logical event.

Returns:

  • (String, nil)


5489
# File 'lib/safety_kit/models/beta/event_create_params.rb', line 5489

optional :idempotency_key, String

#labelsArray<String>

One or more label categories supplied with the report or moderation decision.

Returns:

  • (Array<String>)


5428
# File 'lib/safety_kit/models/beta/event_create_params.rb', line 5428

required :labels, SafetyKit::Internal::Type::ArrayOf[String]

#metadataHash{Symbol=>String, Float, Boolean, Array<String, Float, Boolean>}?

Non-PII product context for filtering, segmentation, and debugging. Values may be strings, numbers, booleans, or arrays of those scalar values.

Returns:

  • (Hash{Symbol=>String, Float, Boolean, Array<String, Float, Boolean>}, nil)


5496
5497
# File 'lib/safety_kit/models/beta/event_create_params.rb', line 5496

optional :metadata,
-> { SafetyKit::Internal::Type::HashOf[union: SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::Metadata] }

#resources_usedArray<SafetyKit::Models::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::EntityIDResource, SafetyKit::Models::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::UnionMember1>?

Reusable resources observed during the event. Use this for emails, phone numbers, names, addresses, social handles, URLs, payment identifiers, caller-defined ids, or similar identifiers.



5505
5506
# File 'lib/safety_kit/models/beta/event_create_params.rb', line 5505

optional :resources_used,
-> { SafetyKit::Internal::Type::ArrayOf[union: SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed] }

#source_idString

Stable identifier within source_type. Examples: moderator@example.com or 550e8400-e29b-41d4-a716-446655440000 for expert_labeler or human_moderator, automated_review_v2026_06_04 for automation, or <vendor_name>-v2.1 for vendor.

Returns:

  • (String)


5436
# File 'lib/safety_kit/models/beta/event_create_params.rb', line 5436

required :source_id, String

#source_typeSymbol, SafetyKit::Models::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::SourceType

Coarse attribution category for the moderation decision source. Supported values: human_moderator (a human reviewer in your moderation workflow), expert_labeler (an expert human labeler or specialist reviewer), automation (an automated model, rules engine, or enforcement workflow), or vendor (an external review or moderation provider).



5446
5447
# File 'lib/safety_kit/models/beta/event_create_params.rb', line 5446

required :source_type,
enum: -> { SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::SourceType }

#target_content_idString?

Your stable identifier for the content being reported.

Returns:

  • (String, nil)


5512
# File 'lib/safety_kit/models/beta/event_create_params.rb', line 5512

optional :target_content_id, String

#target_user_idString?

Your stable canonical identifier for the user being reported.

Returns:

  • (String, nil)


5518
# File 'lib/safety_kit/models/beta/event_create_params.rb', line 5518

optional :target_user_id, String

#timestampTime

The time the event occurred in your system, as an ISO 8601 datetime string.

Returns:

  • (Time)


5453
# File 'lib/safety_kit/models/beta/event_create_params.rb', line 5453

required :timestamp, Time

#typeSymbol, :moderation_decision

Returns:

  • (Symbol, :moderation_decision)


5458
# File 'lib/safety_kit/models/beta/event_create_params.rb', line 5458

required :type, const: :moderation_decision