Class: HubSpotSDK::Resources::Events::Definitions

Inherits:
Object
  • Object
show all
Defined in:
lib/hubspot_sdk/resources/events/definitions.rb

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ Definitions

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of Definitions.

Parameters:



268
269
270
# File 'lib/hubspot_sdk/resources/events/definitions.rb', line 268

def initialize(client:)
  @client = client
end

Instance Method Details

#create(include_default_properties:, label:, property_definitions:, custom_matching_id: nil, description: nil, name: nil, primary_object: nil, request_options: {}) ⇒ HubSpotSDK::Models::Events::ExternalBehavioralEventTypeDefinition

Some parameter documentations has been truncated, see Models::Events::DefinitionCreateParams for more details.

Create a custom event definition.

Parameters:

Returns:

See Also:



33
34
35
36
37
38
39
40
41
42
# File 'lib/hubspot_sdk/resources/events/definitions.rb', line 33

def create(params)
  parsed, options = HubSpotSDK::Events::DefinitionCreateParams.dump_request(params)
  @client.request(
    method: :post,
    path: "events/2026-03/event-definitions",
    body: parsed,
    model: HubSpotSDK::Events::ExternalBehavioralEventTypeDefinition,
    options: options
  )
end

#create_property(event_name, label:, type:, description: nil, name: nil, options: nil, request_options: {}) ⇒ HubSpotSDK::Models::Events::Property

Some parameter documentations has been truncated, see Models::Events::DefinitionCreatePropertyParams for more details.

Create a new property for an existing event definition.

Parameters:

  • event_name (String)
  • label (String)

    Human readable label for the property. Used in HubSpot UI

  • type (String)

    The data type of the property. Can be one of the following: [string, number, enu

  • description (String)

    A description of the property that will be shown as help text in HubSpot.

  • name (String)

    Internal property name, which must be used when referencing the property from th

  • options (Array<HubSpotSDK::Models::OptionInput>)

    A list of available options for the property if it is an enumeration. NOTE: This

  • request_options (HubSpotSDK::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



152
153
154
155
156
157
158
159
160
161
# File 'lib/hubspot_sdk/resources/events/definitions.rb', line 152

def create_property(event_name, params)
  parsed, options = HubSpotSDK::Events::DefinitionCreatePropertyParams.dump_request(params)
  @client.request(
    method: :post,
    path: ["events/2026-03/event-definitions/%1$s/property", event_name],
    body: parsed,
    model: HubSpotSDK::Events::Property,
    options: options
  )
end

#delete(event_name, request_options: {}) ⇒ nil

Delete a custom event definition by name.

Parameters:

Returns:

  • (nil)

See Also:



119
120
121
122
123
124
125
126
# File 'lib/hubspot_sdk/resources/events/definitions.rb', line 119

def delete(event_name, params = {})
  @client.request(
    method: :delete,
    path: ["events/2026-03/event-definitions/%1$s", event_name],
    model: NilClass,
    options: params[:request_options]
  )
end

#delete_property(property_name, event_name:, request_options: {}) ⇒ nil

Delete an existing property from a custom event definition.

Parameters:

Returns:

  • (nil)

See Also:



174
175
176
177
178
179
180
181
182
183
184
185
186
# File 'lib/hubspot_sdk/resources/events/definitions.rb', line 174

def delete_property(property_name, params)
  parsed, options = HubSpotSDK::Events::DefinitionDeletePropertyParams.dump_request(params)
  event_name =
    parsed.delete(:event_name) do
      raise ArgumentError.new("missing required path argument #{_1}")
    end
  @client.request(
    method: :delete,
    path: ["events/2026-03/event-definitions/%1$s/property/%2$s", event_name, property_name],
    model: NilClass,
    options: options
  )
end

#get(event_name, request_options: {}) ⇒ HubSpotSDK::Models::Events::ExternalBehavioralEventTypeDefinition

Fetch a single custom event definition by name.

Parameters:

Returns:

See Also:



198
199
200
201
202
203
204
205
# File 'lib/hubspot_sdk/resources/events/definitions.rb', line 198

def get(event_name, params = {})
  @client.request(
    method: :get,
    path: ["events/2026-03/event-definitions/%1$s", event_name],
    model: HubSpotSDK::Events::ExternalBehavioralEventTypeDefinition,
    options: params[:request_options]
  )
end

#list(after: nil, include_properties: nil, limit: nil, search_string: nil, sort_order: nil, request_options: {}) ⇒ HubSpotSDK::Internal::Page<HubSpotSDK::Models::Events::ExternalBehavioralEventTypeDefinition>

Some parameter documentations has been truncated, see Models::Events::DefinitionListParams for more details.

Retrieve existing custom event definitions.

Parameters:

  • after (String)

    The paging cursor token of the last successfully read resource will be returned

  • include_properties (Boolean)
  • limit (Integer)

    The maximum number of results to display per page.

  • search_string (String)
  • sort_order (String)
  • request_options (HubSpotSDK::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# File 'lib/hubspot_sdk/resources/events/definitions.rb', line 92

def list(params = {})
  parsed, options = HubSpotSDK::Events::DefinitionListParams.dump_request(params)
  query = HubSpotSDK::Internal::Util.encode_query_params(parsed)
  @client.request(
    method: :get,
    path: "events/2026-03/event-definitions",
    query: query.transform_keys(
      include_properties: "includeProperties",
      search_string: "searchString",
      sort_order: "sortOrder"
    ),
    page: HubSpotSDK::Internal::Page,
    model: HubSpotSDK::Events::ExternalBehavioralEventTypeDefinition,
    options: options
  )
end

#send_batch(inputs:, request_options: {}) ⇒ nil

Send multiple event occurrences at once.

Parameters:

Returns:

  • (nil)

See Also:



217
218
219
220
221
222
223
224
225
226
# File 'lib/hubspot_sdk/resources/events/definitions.rb', line 217

def send_batch(params)
  parsed, options = HubSpotSDK::Events::DefinitionSendBatchParams.dump_request(params)
  @client.request(
    method: :post,
    path: "events/2026-03/send/batch",
    body: parsed,
    model: NilClass,
    options: options
  )
end

#update(event_name, description: nil, label: nil, request_options: {}) ⇒ HubSpotSDK::Models::Events::ExternalBehavioralEventTypeDefinition

Update a specific custom event definition by name.

Parameters:

  • event_name (String)
  • description (String)

    A description of the event that will be shown as help text in HubSpot.

  • label (String)

    Human readable label for the event. Used in HubSpot UI

  • request_options (HubSpotSDK::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



59
60
61
62
63
64
65
66
67
68
# File 'lib/hubspot_sdk/resources/events/definitions.rb', line 59

def update(event_name, params = {})
  parsed, options = HubSpotSDK::Events::DefinitionUpdateParams.dump_request(params)
  @client.request(
    method: :patch,
    path: ["events/2026-03/event-definitions/%1$s", event_name],
    body: parsed,
    model: HubSpotSDK::Events::ExternalBehavioralEventTypeDefinition,
    options: options
  )
end

#update_property(property_name, event_name:, description: nil, label: nil, options: nil, request_options: {}) ⇒ HubSpotSDK::Models::Events::Property

Some parameter documentations has been truncated, see Models::Events::DefinitionUpdatePropertyParams for more details.

Update an existing property in a custom event definition.

Parameters:

  • property_name (String)

    Path param

  • event_name (String)

    Path param

  • description (String)

    Body param: A description of the property that will be shown as help text in Hub

  • label (String)

    Body param: Human readable label for the property. Used in HubSpot UI

  • options (Array<HubSpotSDK::Models::OptionInput>)

    Body param: A list of available options for the property if it is an enumeration

  • request_options (HubSpotSDK::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



250
251
252
253
254
255
256
257
258
259
260
261
262
263
# File 'lib/hubspot_sdk/resources/events/definitions.rb', line 250

def update_property(property_name, params)
  parsed, options = HubSpotSDK::Events::DefinitionUpdatePropertyParams.dump_request(params)
  event_name =
    parsed.delete(:event_name) do
      raise ArgumentError.new("missing required path argument #{_1}")
    end
  @client.request(
    method: :patch,
    path: ["events/2026-03/event-definitions/%1$s/property/%2$s", event_name, property_name],
    body: parsed,
    model: HubSpotSDK::Events::Property,
    options: options
  )
end