Class: HubSpotSDK::Resources::Automation::Actions::Definitions

Inherits:
Object
  • Object
show all
Defined in:
lib/hubspot_sdk/resources/automation/actions/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:



255
256
257
# File 'lib/hubspot_sdk/resources/automation/actions/definitions.rb', line 255

def initialize(client:)
  @client = client
end

Instance Method Details

#create(app_id, action_url:, functions:, input_fields:, labels:, object_types:, published:, archived_at: nil, execution_rules: nil, input_field_dependencies: nil, object_request_options: nil, output_fields: nil, request_options: {}) ⇒ HubSpotSDK::Models::Automation::PublicActionDefinition

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

Create a new custom workflow action.

Parameters:

Returns:

See Also:



45
46
47
48
49
50
51
52
53
54
# File 'lib/hubspot_sdk/resources/automation/actions/definitions.rb', line 45

def create(app_id, params)
  parsed, options = HubSpotSDK::Automation::Actions::DefinitionCreateParams.dump_request(params)
  @client.request(
    method: :post,
    path: ["automation/actions/2026-03/%1$s", app_id],
    body: parsed,
    model: HubSpotSDK::Automation::PublicActionDefinition,
    options: options
  )
end

#create_requires_object(definition_id, app_id:, requires_object:, request_options: {}) ⇒ nil

Some parameter documentations has been truncated, see Models::Automation::Actions::DefinitionCreateRequiresObjectParams for more details.

Set whether a custom action definition requires an object.

Parameters:

  • definition_id (String)

    Path param

  • app_id (Integer)

    Path param

  • requires_object (Boolean)

    Body param: Indicates whether a custom action definition requires an associated

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

Returns:

  • (nil)

See Also:



180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
# File 'lib/hubspot_sdk/resources/automation/actions/definitions.rb', line 180

def create_requires_object(definition_id, params)
  parsed, options =
    HubSpotSDK::Automation::Actions::DefinitionCreateRequiresObjectParams.dump_request(params)
  app_id =
    parsed.delete(:app_id) do
      raise ArgumentError.new("missing required path argument #{_1}")
    end
  @client.request(
    method: :post,
    path: ["automation/actions/2026-03/%1$s/%2$s/requires-object", app_id, definition_id],
    body: parsed,
    model: NilClass,
    options: options
  )
end

#delete(definition_id, app_id:, request_options: {}) ⇒ nil

Delete an action definition by ID.

Parameters:

Returns:

  • (nil)

See Also:



147
148
149
150
151
152
153
154
155
156
157
158
159
# File 'lib/hubspot_sdk/resources/automation/actions/definitions.rb', line 147

def delete(definition_id, params)
  parsed, options = HubSpotSDK::Automation::Actions::DefinitionDeleteParams.dump_request(params)
  app_id =
    parsed.delete(:app_id) do
      raise ArgumentError.new("missing required path argument #{_1}")
    end
  @client.request(
    method: :delete,
    path: ["automation/actions/2026-03/%1$s/%2$s", app_id, definition_id],
    model: NilClass,
    options: options
  )
end

#get(definition_id, app_id:, archived: nil, request_options: {}) ⇒ HubSpotSDK::Models::Automation::PublicActionDefinition

Retrieve a custom workflow action definition by ID.

Parameters:

  • definition_id (String)

    Path param

  • app_id (Integer)

    Path param

  • archived (Boolean)

    Query param: Whether to return only results that have been archived.

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

Returns:

See Also:



211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
# File 'lib/hubspot_sdk/resources/automation/actions/definitions.rb', line 211

def get(definition_id, params)
  parsed, options = HubSpotSDK::Automation::Actions::DefinitionGetParams.dump_request(params)
  query = HubSpotSDK::Internal::Util.encode_query_params(parsed)
  app_id =
    parsed.delete(:app_id) do
      raise ArgumentError.new("missing required path argument #{_1}")
    end
  @client.request(
    method: :get,
    path: ["automation/actions/2026-03/%1$s/%2$s", app_id, definition_id],
    query: query,
    model: HubSpotSDK::Automation::PublicActionDefinition,
    options: options
  )
end

#get_requires_object(definition_id, app_id:, request_options: {}) ⇒ HubSpotSDK::Models::Automation::PublicActionDefinitionRequiresObjectResponse

Retrieve whether a custom action definition requires an object.

Parameters:

Returns:

See Also:



238
239
240
241
242
243
244
245
246
247
248
249
250
# File 'lib/hubspot_sdk/resources/automation/actions/definitions.rb', line 238

def get_requires_object(definition_id, params)
  parsed, options = HubSpotSDK::Automation::Actions::DefinitionGetRequiresObjectParams.dump_request(params)
  app_id =
    parsed.delete(:app_id) do
      raise ArgumentError.new("missing required path argument #{_1}")
    end
  @client.request(
    method: :get,
    path: ["automation/actions/2026-03/%1$s/%2$s/requires-object", app_id, definition_id],
    model: HubSpotSDK::Automation::PublicActionDefinitionRequiresObjectResponse,
    options: options
  )
end

#list(app_id, after: nil, archived: nil, limit: nil, request_options: {}) ⇒ HubSpotSDK::Internal::Page<HubSpotSDK::Models::Automation::PublicActionDefinition>

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

Retrieve custom workflow action definitions by app ID.

Parameters:

  • app_id (Integer)
  • after (String)

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

  • archived (Boolean)

    Whether to return only results that have been archived.

  • limit (Integer)

    The maximum number of results to display per page.

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

Returns:

See Also:



123
124
125
126
127
128
129
130
131
132
133
134
# File 'lib/hubspot_sdk/resources/automation/actions/definitions.rb', line 123

def list(app_id, params = {})
  parsed, options = HubSpotSDK::Automation::Actions::DefinitionListParams.dump_request(params)
  query = HubSpotSDK::Internal::Util.encode_query_params(parsed)
  @client.request(
    method: :get,
    path: ["automation/actions/2026-03/%1$s", app_id],
    query: query,
    page: HubSpotSDK::Internal::Page,
    model: HubSpotSDK::Automation::PublicActionDefinition,
    options: options
  )
end

#update(definition_id, app_id:, action_url: nil, execution_rules: nil, input_field_dependencies: nil, input_fields: nil, labels: nil, object_request_options: nil, object_types: nil, output_fields: nil, published: nil, request_options: {}) ⇒ HubSpotSDK::Models::Automation::PublicActionDefinition

Update an existing action definition by ID.

Parameters:

Returns:

See Also:



87
88
89
90
91
92
93
94
95
96
97
98
99
100
# File 'lib/hubspot_sdk/resources/automation/actions/definitions.rb', line 87

def update(definition_id, params)
  parsed, options = HubSpotSDK::Automation::Actions::DefinitionUpdateParams.dump_request(params)
  app_id =
    parsed.delete(:app_id) do
      raise ArgumentError.new("missing required path argument #{_1}")
    end
  @client.request(
    method: :patch,
    path: ["automation/actions/2026-03/%1$s/%2$s", app_id, definition_id],
    body: parsed,
    model: HubSpotSDK::Automation::PublicActionDefinition,
    options: options
  )
end