Class: SafetyKit::Models::DataCreateUploadURLParams::Schema

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

Defined Under Namespace

Modules: ContentType, IngestAs Classes: DisplayHint

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(belongs_to: nil, content_type: nil, display_hint: nil, field_limit: nil, ingest_as: nil) ⇒ Object

Some parameter documentations has been truncated, see SafetyKit::Models::DataCreateUploadURLParams::Schema for more details.

Schema definition for a data field

Parameters:



35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
# File 'lib/safety_kit/models/data_create_upload_url_params.rb', line 35

class Schema < SafetyKit::Internal::Type::BaseModel
  # @!attribute belongs_to
  #   The parent object namespace this field belongs to, creating a parent-child
  #   relationship with that namespace.
  #
  #   @return [String, nil]
  optional :belongs_to, String

  # @!attribute content_type
  #   The type of content (image_url, video_url, audio_url, website_url, datetime,
  #   metadata, or card). When specified as a URL type, SafetyKit will process the
  #   URL. Use 'metadata' for fields that should be stored but not indexed.
  #
  #   @return [Symbol, SafetyKit::Models::DataCreateUploadURLParams::Schema::ContentType, nil]
  optional :content_type, enum: -> { SafetyKit::DataCreateUploadURLParams::Schema::ContentType }

  # @!attribute display_hint
  #   Display hint for UI rendering of this field
  #
  #   @return [SafetyKit::Models::DataCreateUploadURLParams::Schema::DisplayHint, nil]
  optional :display_hint, -> { SafetyKit::DataCreateUploadURLParams::Schema::DisplayHint }

  # @!attribute field_limit
  #   Maximum amount of this field to include when sending to AI models. For text
  #   fields, this is the character limit. For array fields (e.g. image URLs), this is
  #   the maximum number of items.
  #
  #   @return [Integer, nil]
  optional :field_limit, Integer

  # @!attribute ingest_as
  #   Optional parser to apply before indexing this field.
  #
  #   @return [Symbol, SafetyKit::Models::DataCreateUploadURLParams::Schema::IngestAs, nil]
  optional :ingest_as, enum: -> { SafetyKit::DataCreateUploadURLParams::Schema::IngestAs }

  # @!method initialize(belongs_to: nil, content_type: nil, display_hint: nil, field_limit: nil, ingest_as: nil)
  #   Some parameter documentations has been truncated, see
  #   {SafetyKit::Models::DataCreateUploadURLParams::Schema} for more details.
  #
  #   Schema definition for a data field
  #
  #   @param belongs_to [String] The parent object namespace this field belongs to, creating a parent-child relat
  #
  #   @param content_type [Symbol, SafetyKit::Models::DataCreateUploadURLParams::Schema::ContentType] The type of content (image_url, video_url, audio_url, website_url, datetime, met
  #
  #   @param display_hint [SafetyKit::Models::DataCreateUploadURLParams::Schema::DisplayHint] Display hint for UI rendering of this field
  #
  #   @param field_limit [Integer] Maximum amount of this field to include when sending to AI models. For text fiel
  #
  #   @param ingest_as [Symbol, SafetyKit::Models::DataCreateUploadURLParams::Schema::IngestAs] Optional parser to apply before indexing this field.

  # The type of content (image_url, video_url, audio_url, website_url, datetime,
  # metadata, or card). When specified as a URL type, SafetyKit will process the
  # URL. Use 'metadata' for fields that should be stored but not indexed.
  #
  # @see SafetyKit::Models::DataCreateUploadURLParams::Schema#content_type
  module ContentType
    extend SafetyKit::Internal::Type::Enum

    IMAGE_URL = :image_url
    VIDEO_URL = :video_url
    AUDIO_URL = :audio_url
    WEBSITE_URL = :website_url
    DATETIME = :datetime
    METADATA = :metadata
    CARD = :card

    # @!method self.values
    #   @return [Array<Symbol>]
  end

  # @see SafetyKit::Models::DataCreateUploadURLParams::Schema#display_hint
  class DisplayHint < SafetyKit::Internal::Type::BaseModel
    # @!attribute name
    #   Display label to show for this field in the UI
    #
    #   @return [String, nil]
    optional :name, String

    # @!attribute order
    #   Display ordering for this field. Use 0 to hide the field from list views.
    #
    #   @return [Float, nil]
    optional :order, Float

    # @!attribute type
    #   The display hint type
    #
    #   @return [Symbol, SafetyKit::Models::DataCreateUploadURLParams::Schema::DisplayHint::Type, nil]
    optional :type, enum: -> { SafetyKit::DataCreateUploadURLParams::Schema::DisplayHint::Type }

    # @!method initialize(name: nil, order: nil, type: nil)
    #   Display hint for UI rendering of this field
    #
    #   @param name [String] Display label to show for this field in the UI
    #
    #   @param order [Float] Display ordering for this field. Use 0 to hide the field from list views.
    #
    #   @param type [Symbol, SafetyKit::Models::DataCreateUploadURLParams::Schema::DisplayHint::Type] The display hint type

    # The display hint type
    #
    # @see SafetyKit::Models::DataCreateUploadURLParams::Schema::DisplayHint#type
    module Type
      extend SafetyKit::Internal::Type::Enum

      TITLE = :title
      SUBTITLE = :subtitle
      DESCRIPTION = :description
      PRIMARY_IMAGE_URL = :primary_image_url
      VIDEO_URL = :video_url
      AUDIO_URL = :audio_url
      LOCATION = :location
      DATE = :date
      COMPACT_TEXT = :compact_text
      MARKDOWN = :markdown
      HTML = :html
      CARD = :card
      CHAT_THREAD = :chat_thread
      TWO_PERSON_CHAT = :two_person_chat

      # @!method self.values
      #   @return [Array<Symbol>]
    end
  end

  # Optional parser to apply before indexing this field.
  #
  # @see SafetyKit::Models::DataCreateUploadURLParams::Schema#ingest_as
  module IngestAs
    extend SafetyKit::Internal::Type::Enum

    FLOAT = :float

    # @!method self.values
    #   @return [Array<Symbol>]
  end
end

Instance Attribute Details

#belongs_toString?

The parent object namespace this field belongs to, creating a parent-child relationship with that namespace.

Returns:

  • (String, nil)


41
# File 'lib/safety_kit/models/data_create_upload_url_params.rb', line 41

optional :belongs_to, String

#content_typeSymbol, ...

The type of content (image_url, video_url, audio_url, website_url, datetime, metadata, or card). When specified as a URL type, SafetyKit will process the URL. Use ‘metadata’ for fields that should be stored but not indexed.



49
# File 'lib/safety_kit/models/data_create_upload_url_params.rb', line 49

optional :content_type, enum: -> { SafetyKit::DataCreateUploadURLParams::Schema::ContentType }

#display_hintSafetyKit::Models::DataCreateUploadURLParams::Schema::DisplayHint?

Display hint for UI rendering of this field



55
# File 'lib/safety_kit/models/data_create_upload_url_params.rb', line 55

optional :display_hint, -> { SafetyKit::DataCreateUploadURLParams::Schema::DisplayHint }

#field_limitInteger?

Maximum amount of this field to include when sending to AI models. For text fields, this is the character limit. For array fields (e.g. image URLs), this is the maximum number of items.

Returns:

  • (Integer, nil)


63
# File 'lib/safety_kit/models/data_create_upload_url_params.rb', line 63

optional :field_limit, Integer

#ingest_asSymbol, ...

Optional parser to apply before indexing this field.



69
# File 'lib/safety_kit/models/data_create_upload_url_params.rb', line 69

optional :ingest_as, enum: -> { SafetyKit::DataCreateUploadURLParams::Schema::IngestAs }

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/safety_kit/models/data_create_upload_url_params.rb', line 103