hatchet-sdk 0.5.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +14 -0
  3. data/lib/hatchet/batch.rb +58 -0
  4. data/lib/hatchet/clients/grpc/dispatcher.rb +42 -0
  5. data/lib/hatchet/clients/rest/.openapi-generator/FILES +9 -0
  6. data/lib/hatchet/clients/rest/README.md +16 -3
  7. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/api/filter_api.rb +4 -0
  8. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/api/operator_api.rb +405 -0
  9. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/api/webhook_api.rb +2 -0
  10. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/api/worker_api.rb +3 -0
  11. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/api_meta.rb +14 -4
  12. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/create_tenant_invite_request.rb +14 -4
  13. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/pause_workflow_request.rb +105 -0
  14. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/pause_workflow_request_pause.rb +343 -0
  15. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/pause_workflow_request_unpause.rb +262 -0
  16. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/tenant_invite.rb +11 -1
  17. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/tenant_member.rb +11 -1
  18. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/tenant_member_role.rb +2 -1
  19. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/update_tenant_invite_request.rb +14 -4
  20. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/update_tenant_member_request.rb +14 -4
  21. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/v1_create_http_operator_request.rb +346 -0
  22. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/v1_event.rb +14 -4
  23. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/v1_http_operator.rb +372 -0
  24. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/v1_http_operator_list.rb +231 -0
  25. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/v1_task_event_type.rb +3 -1
  26. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/v1_task_summary.rb +14 -4
  27. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/v1_update_http_operator_request.rb +252 -0
  28. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/v1_workflow_run.rb +14 -4
  29. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/workflow.rb +43 -1
  30. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/workflow_pause_scheduled_cron_run_queue_behavior.rb +40 -0
  31. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest/models/workflow_update_request.rb +7 -8
  32. data/lib/hatchet/clients/rest/lib/hatchet-sdk-rest.rb +9 -0
  33. data/lib/hatchet/concurrency.rb +5 -1
  34. data/lib/hatchet/context.rb +42 -3
  35. data/lib/hatchet/contracts/dispatcher/dispatcher_pb.rb +4 -1
  36. data/lib/hatchet/contracts/dispatcher/dispatcher_services_pb.rb +3 -0
  37. data/lib/hatchet/contracts/v1/workflows_pb.rb +2 -1
  38. data/lib/hatchet/durable_context.rb +5 -12
  39. data/lib/hatchet/features/cel.rb +2 -2
  40. data/lib/hatchet/features/cron.rb +5 -5
  41. data/lib/hatchet/features/events.rb +7 -7
  42. data/lib/hatchet/features/filters.rb +7 -7
  43. data/lib/hatchet/features/logs.rb +2 -2
  44. data/lib/hatchet/features/metrics.rb +6 -6
  45. data/lib/hatchet/features/rate_limits.rb +2 -2
  46. data/lib/hatchet/features/runs.rb +4 -5
  47. data/lib/hatchet/features/scheduled.rb +7 -7
  48. data/lib/hatchet/features/tenant.rb +2 -2
  49. data/lib/hatchet/features/workers.rb +5 -5
  50. data/lib/hatchet/features/workflows.rb +6 -6
  51. data/lib/hatchet/task.rb +13 -0
  52. data/lib/hatchet/version.rb +1 -1
  53. data/lib/hatchet/worker/runner.rb +113 -0
  54. data/lib/hatchet/workflow.rb +77 -33
  55. data/lib/hatchet-sdk.rb +86 -28
  56. data/sig/hatchet/batch.rbs +12 -0
  57. data/sig/hatchet/task.rbs +2 -0
  58. metadata +13 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1c22db69846163b6dc74e019c6203f468bff28ff9892e66462d0b9d89a091411
4
- data.tar.gz: e547b5f3c1ec2c6e85a50dc7abad12764d072bfd1e5c128c283e8716f388138e
3
+ metadata.gz: 3266af1a5777c5440854059fd1862765a09bbff72ad322fcfa35c768ca29dc15
4
+ data.tar.gz: eceb7946b36c7018a1b61ce635e3014b8e5ab39fafc3a1517e46b4a299d89acc
5
5
  SHA512:
6
- metadata.gz: 6631058a61424005ca3c1afc2fe3512d61214d00b54d6e7a91ce4ca93bf214da98c79cbf64c45beeaa5609e925b7b9d448c433b02090df427d77b8395fec2f5f
7
- data.tar.gz: 3ff1030bf8722a314c230515c8ef426a84c355bc6a7bebd9b000a16b2ec0a7d0ed7a67a5f1eef449624c4f56b156f85d6a02b86c9979db8ff2a3bce567111eb6
6
+ metadata.gz: 96f70ac193f0fde8dd4616c5dc78548e4296a5cfc89f37d50f71dbbd5737996977f63007e14b7b83641253433d29c24af7283ee3e755211d909965c81fea5ff5
7
+ data.tar.gz: 7763183e5e3ff4933b643ea0c9086e8a063b6c885ae3ff981e58598c501541bfe6910b7242745a830947117d92697c5d775e79adbe94799d9752d15e20631eba
data/CHANGELOG.md CHANGED
@@ -5,6 +5,20 @@ All notable changes to Hatchet's Ruby SDK will be documented in this changelog.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.7.0] - 2026-08-26
9
+
10
+ ### Changed
11
+
12
+ - Adds support for `CANCEL_QUEUED_EXCEPT_NEWEST` and `CANCEL_QUEUED_EXCEPT_OLDEST` concurrency strategies.
13
+
14
+
15
+ ## [0.6.0] - 2026-07-23
16
+
17
+ ### Changed
18
+
19
+ - Adds beta `batch_task` methods to both tasks and workflows, allowing for dynamic batching based on either time or batch size.
20
+
21
+
8
22
  ## [0.5.0] - 2026-07-22
9
23
 
10
24
  ### Added
@@ -0,0 +1,58 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Hatchet
4
+ # Configures a task as a batch task: concurrent runs are buffered and dispatched together
5
+ # as a single execution once max_size is reached, max_interval_ms elapses, or (if
6
+ # group_key is set) once group_max_runs concurrent batches per group are exceeded.
7
+ #
8
+ # When batch is set on a task, the task's block receives a single Hash argument mapping
9
+ # each buffered run's task-run external id to that run's input, instead of a single input
10
+ # value. Unless broadcast_output is true, the block must return a Hash with the exact same
11
+ # key set, mapping each id to that run's output.
12
+ #
13
+ # @example
14
+ # Hatchet::BatchTaskConfig.new(max_size: 3, max_interval_ms: 200, group_key: "input.group")
15
+ class BatchTaskConfig
16
+ # @return [Integer] Maximum number of items buffered before the batch is flushed
17
+ attr_reader :max_size
18
+
19
+ # @return [Integer, nil] Maximum time to wait before flushing a partially-filled batch, in milliseconds
20
+ attr_reader :max_interval_ms
21
+
22
+ # @return [String, nil] CEL expression evaluated against each item's input to partition items into independent batches
23
+ attr_reader :group_key
24
+
25
+ # @return [Integer, nil] Maximum number of concurrent batches per group
26
+ attr_reader :group_max_runs
27
+
28
+ # @return [Boolean] When true, the block returns a single value broadcast to every member of the batch
29
+ attr_reader :broadcast_output
30
+
31
+ # @param max_size [Integer] Maximum items per batch. Must be positive.
32
+ # @param max_interval_ms [Integer, nil] Time before batch flushes, in milliseconds. Must be positive when provided.
33
+ # @param group_key [String, nil] CEL expression to partition batches, e.g. "input.group"
34
+ # @param group_max_runs [Integer, nil] Concurrent batches per group. Must be positive when provided.
35
+ # @param broadcast_output [Boolean] Whether the block's return value is broadcast to every batch member
36
+ def initialize(max_size:, max_interval_ms: nil, group_key: nil, group_max_runs: nil, broadcast_output: false)
37
+ raise ArgumentError, "max_size must be positive" unless max_size.positive?
38
+ raise ArgumentError, "max_interval_ms must be positive when provided" if !max_interval_ms.nil? && !max_interval_ms.positive?
39
+ raise ArgumentError, "group_max_runs must be positive when provided" if !group_max_runs.nil? && !group_max_runs.positive?
40
+
41
+ @max_size = max_size
42
+ @max_interval_ms = max_interval_ms
43
+ @group_key = group_key
44
+ @group_max_runs = group_max_runs
45
+ @broadcast_output = broadcast_output
46
+ end
47
+
48
+ # @return [V1::TaskBatchConfig]
49
+ def to_proto
50
+ args = { batch_max_size: @max_size, broadcast_output: @broadcast_output }
51
+ args[:batch_max_interval_ms] = @max_interval_ms if @max_interval_ms
52
+ args[:batch_group_key] = @group_key if @group_key
53
+ args[:batch_group_max_runs] = @group_max_runs if @group_max_runs
54
+
55
+ ::V1::TaskBatchConfig.new(**args)
56
+ end
57
+ end
58
+ end
@@ -167,6 +167,48 @@ module Hatchet
167
167
  @stub.send_step_action_event(request, metadata: @config.auth_metadata)
168
168
  end
169
169
 
170
+ # Send a batch action event (completion/failure/started) covering one or more
171
+ # members of a batch task's execution back to the dispatcher.
172
+ #
173
+ # @param action [AssignedAction] The assigned START_BATCH action
174
+ # @param event_type [Symbol] Protobuf enum value (e.g., :STEP_EVENT_TYPE_COMPLETED)
175
+ # @param items [Array<Hash>] Per-member items, each with :task_run_external_id, and
176
+ # optionally :event_payload, :retry_count, :should_not_retry
177
+ # @return [ActionEventResponse]
178
+ def send_batch_action_event(action:, event_type:, items:)
179
+ ensure_connected!
180
+
181
+ now = Time.now
182
+ timestamp = Google::Protobuf::Timestamp.new(
183
+ seconds: now.to_i,
184
+ nanos: now.nsec,
185
+ )
186
+
187
+ item_protos = items.map do |item|
188
+ item_args = {
189
+ task_run_external_id: item[:task_run_external_id],
190
+ event_payload: item[:event_payload] || "{}",
191
+ }
192
+ item_args[:retry_count] = item[:retry_count] unless item[:retry_count].nil?
193
+ item_args[:should_not_retry] = item[:should_not_retry] unless item[:should_not_retry].nil?
194
+
195
+ ::BatchActionEventItem.new(**item_args)
196
+ end
197
+
198
+ event_args = {
199
+ worker_id: @worker_id || "",
200
+ job_id: action.job_id,
201
+ action_id: action.action_id,
202
+ event_timestamp: timestamp,
203
+ event_type: event_type,
204
+ items: item_protos,
205
+ }
206
+ event_args[:batch_id] = action.batchId if action.respond_to?(:batchId) && action.batchId && !action.batchId.empty?
207
+
208
+ request = ::BatchActionEvent.new(**event_args)
209
+ @stub.send_batch_action_event(request, metadata: @config.auth_metadata)
210
+ end
211
+
170
212
  # Refresh the timeout for a running task.
171
213
  #
172
214
  # @param step_run_id [String] The task run external ID
@@ -21,6 +21,7 @@ lib/hatchet-sdk-rest/api/healthcheck_api.rb
21
21
  lib/hatchet-sdk-rest/api/log_api.rb
22
22
  lib/hatchet-sdk-rest/api/metadata_api.rb
23
23
  lib/hatchet-sdk-rest/api/observability_api.rb
24
+ lib/hatchet-sdk-rest/api/operator_api.rb
24
25
  lib/hatchet-sdk-rest/api/rate_limits_api.rb
25
26
  lib/hatchet-sdk-rest/api/slack_api.rb
26
27
  lib/hatchet-sdk-rest/api/sns_api.rb
@@ -94,6 +95,9 @@ lib/hatchet-sdk-rest/models/otel_span_kind.rb
94
95
  lib/hatchet-sdk-rest/models/otel_span_list.rb
95
96
  lib/hatchet-sdk-rest/models/otel_status_code.rb
96
97
  lib/hatchet-sdk-rest/models/pagination_response.rb
98
+ lib/hatchet-sdk-rest/models/pause_workflow_request.rb
99
+ lib/hatchet-sdk-rest/models/pause_workflow_request_pause.rb
100
+ lib/hatchet-sdk-rest/models/pause_workflow_request_unpause.rb
97
101
  lib/hatchet-sdk-rest/models/pull_request.rb
98
102
  lib/hatchet-sdk-rest/models/pull_request_state.rb
99
103
  lib/hatchet-sdk-rest/models/queue_metrics.rb
@@ -177,6 +181,7 @@ lib/hatchet-sdk-rest/models/v1_cel_debug_request.rb
177
181
  lib/hatchet-sdk-rest/models/v1_cel_debug_response.rb
178
182
  lib/hatchet-sdk-rest/models/v1_cel_debug_response_status.rb
179
183
  lib/hatchet-sdk-rest/models/v1_create_filter_request.rb
184
+ lib/hatchet-sdk-rest/models/v1_create_http_operator_request.rb
180
185
  lib/hatchet-sdk-rest/models/v1_create_webhook_request.rb
181
186
  lib/hatchet-sdk-rest/models/v1_create_webhook_request_api_key.rb
182
187
  lib/hatchet-sdk-rest/models/v1_create_webhook_request_base.rb
@@ -193,6 +198,8 @@ lib/hatchet-sdk-rest/models/v1_event_triggered_run.rb
193
198
  lib/hatchet-sdk-rest/models/v1_event_workflow_run_summary.rb
194
199
  lib/hatchet-sdk-rest/models/v1_filter.rb
195
200
  lib/hatchet-sdk-rest/models/v1_filter_list.rb
201
+ lib/hatchet-sdk-rest/models/v1_http_operator.rb
202
+ lib/hatchet-sdk-rest/models/v1_http_operator_list.rb
196
203
  lib/hatchet-sdk-rest/models/v1_log_line.rb
197
204
  lib/hatchet-sdk-rest/models/v1_log_line_level.rb
198
205
  lib/hatchet-sdk-rest/models/v1_log_line_list.rb
@@ -219,6 +226,7 @@ lib/hatchet-sdk-rest/models/v1_task_timing.rb
219
226
  lib/hatchet-sdk-rest/models/v1_task_timing_list.rb
220
227
  lib/hatchet-sdk-rest/models/v1_trigger_workflow_run_request.rb
221
228
  lib/hatchet-sdk-rest/models/v1_update_filter_request.rb
229
+ lib/hatchet-sdk-rest/models/v1_update_http_operator_request.rb
222
230
  lib/hatchet-sdk-rest/models/v1_update_webhook_request.rb
223
231
  lib/hatchet-sdk-rest/models/v1_wait_item.rb
224
232
  lib/hatchet-sdk-rest/models/v1_webhook.rb
@@ -257,6 +265,7 @@ lib/hatchet-sdk-rest/models/workflow_concurrency.rb
257
265
  lib/hatchet-sdk-rest/models/workflow_kind.rb
258
266
  lib/hatchet-sdk-rest/models/workflow_list.rb
259
267
  lib/hatchet-sdk-rest/models/workflow_metrics.rb
268
+ lib/hatchet-sdk-rest/models/workflow_pause_scheduled_cron_run_queue_behavior.rb
260
269
  lib/hatchet-sdk-rest/models/workflow_run.rb
261
270
  lib/hatchet-sdk-rest/models/workflow_run_list.rb
262
271
  lib/hatchet-sdk-rest/models/workflow_run_order_by_direction.rb
@@ -123,10 +123,10 @@ Class | Method | HTTP request | Description
123
123
  *HatchetSdkRest::EventApi* | [**v1_event_list**](docs/EventApi.md#v1_event_list) | **GET** /api/v1/stable/tenants/{tenant}/events | List events
124
124
  *HatchetSdkRest::FeatureFlagsApi* | [**tenant_feature_flag_evaluate**](docs/FeatureFlagsApi.md#tenant_feature_flag_evaluate) | **GET** /api/v1/tenants/{tenant}/feature-flags | Evaluate a feature flag for a tenant
125
125
  *HatchetSdkRest::FilterApi* | [**v1_filter_create**](docs/FilterApi.md#v1_filter_create) | **POST** /api/v1/stable/tenants/{tenant}/filters | Create a filter
126
- *HatchetSdkRest::FilterApi* | [**v1_filter_delete**](docs/FilterApi.md#v1_filter_delete) | **DELETE** /api/v1/stable/tenants/{tenant}/filters/{v1-filter} |
126
+ *HatchetSdkRest::FilterApi* | [**v1_filter_delete**](docs/FilterApi.md#v1_filter_delete) | **DELETE** /api/v1/stable/tenants/{tenant}/filters/{v1-filter} | Delete a filter
127
127
  *HatchetSdkRest::FilterApi* | [**v1_filter_get**](docs/FilterApi.md#v1_filter_get) | **GET** /api/v1/stable/tenants/{tenant}/filters/{v1-filter} | Get a filter
128
128
  *HatchetSdkRest::FilterApi* | [**v1_filter_list**](docs/FilterApi.md#v1_filter_list) | **GET** /api/v1/stable/tenants/{tenant}/filters | List filters
129
- *HatchetSdkRest::FilterApi* | [**v1_filter_update**](docs/FilterApi.md#v1_filter_update) | **PATCH** /api/v1/stable/tenants/{tenant}/filters/{v1-filter} |
129
+ *HatchetSdkRest::FilterApi* | [**v1_filter_update**](docs/FilterApi.md#v1_filter_update) | **PATCH** /api/v1/stable/tenants/{tenant}/filters/{v1-filter} | Update a filter
130
130
  *HatchetSdkRest::GithubApi* | [**sns_update**](docs/GithubApi.md#sns_update) | **POST** /api/v1/sns/{tenant}/{event} | Github app tenant webhook
131
131
  *HatchetSdkRest::HealthcheckApi* | [**liveness_get**](docs/HealthcheckApi.md#liveness_get) | **GET** /api/live | Get liveness
132
132
  *HatchetSdkRest::HealthcheckApi* | [**readiness_get**](docs/HealthcheckApi.md#readiness_get) | **GET** /api/ready | Get readiness
@@ -137,6 +137,11 @@ Class | Method | HTTP request | Description
137
137
  *HatchetSdkRest::MetadataApi* | [**metadata_get**](docs/MetadataApi.md#metadata_get) | **GET** /api/v1/meta | Get metadata
138
138
  *HatchetSdkRest::MetadataApi* | [**metadata_list_integrations**](docs/MetadataApi.md#metadata_list_integrations) | **GET** /api/v1/meta/integrations | List integrations
139
139
  *HatchetSdkRest::ObservabilityApi* | [**v1_observability_get_trace**](docs/ObservabilityApi.md#v1_observability_get_trace) | **GET** /api/v1/stable/tenants/{tenant}/traces | Get OTel trace
140
+ *HatchetSdkRest::OperatorApi* | [**v1_http_operator_create**](docs/OperatorApi.md#v1_http_operator_create) | **POST** /api/v1/stable/tenants/{tenant}/operators/http | Create an HTTP operator
141
+ *HatchetSdkRest::OperatorApi* | [**v1_http_operator_delete**](docs/OperatorApi.md#v1_http_operator_delete) | **DELETE** /api/v1/stable/operators/http/{v1-http-operator} | Delete an HTTP operator
142
+ *HatchetSdkRest::OperatorApi* | [**v1_http_operator_get**](docs/OperatorApi.md#v1_http_operator_get) | **GET** /api/v1/stable/operators/http/{v1-http-operator} | Get an HTTP operator
143
+ *HatchetSdkRest::OperatorApi* | [**v1_http_operator_list**](docs/OperatorApi.md#v1_http_operator_list) | **GET** /api/v1/stable/tenants/{tenant}/operators/http | List HTTP operators
144
+ *HatchetSdkRest::OperatorApi* | [**v1_http_operator_update**](docs/OperatorApi.md#v1_http_operator_update) | **PATCH** /api/v1/stable/operators/http/{v1-http-operator} | Update an HTTP operator
140
145
  *HatchetSdkRest::RateLimitsApi* | [**rate_limit_delete**](docs/RateLimitsApi.md#rate_limit_delete) | **DELETE** /api/v1/tenants/{tenant}/rate-limits | Delete rate limit
141
146
  *HatchetSdkRest::RateLimitsApi* | [**rate_limit_list**](docs/RateLimitsApi.md#rate_limit_list) | **GET** /api/v1/tenants/{tenant}/rate-limits | List rate limits
142
147
  *HatchetSdkRest::SNSApi* | [**sns_create**](docs/SNSApi.md#sns_create) | **POST** /api/v1/tenants/{tenant}/sns | Create SNS integration
@@ -192,7 +197,7 @@ Class | Method | HTTP request | Description
192
197
  *HatchetSdkRest::UserApi* | [**user_update_slack_oauth_callback**](docs/UserApi.md#user_update_slack_oauth_callback) | **GET** /api/v1/users/slack/callback | Complete OAuth flow
193
198
  *HatchetSdkRest::UserApi* | [**user_update_slack_oauth_start**](docs/UserApi.md#user_update_slack_oauth_start) | **GET** /api/v1/tenants/{tenant}/slack/start | Start OAuth flow
194
199
  *HatchetSdkRest::WebhookApi* | [**v1_webhook_create**](docs/WebhookApi.md#v1_webhook_create) | **POST** /api/v1/stable/tenants/{tenant}/webhooks | Create a webhook
195
- *HatchetSdkRest::WebhookApi* | [**v1_webhook_delete**](docs/WebhookApi.md#v1_webhook_delete) | **DELETE** /api/v1/stable/tenants/{tenant}/webhooks/{v1-webhook} |
200
+ *HatchetSdkRest::WebhookApi* | [**v1_webhook_delete**](docs/WebhookApi.md#v1_webhook_delete) | **DELETE** /api/v1/stable/tenants/{tenant}/webhooks/{v1-webhook} | Delete a webhook
196
201
  *HatchetSdkRest::WebhookApi* | [**v1_webhook_get**](docs/WebhookApi.md#v1_webhook_get) | **GET** /api/v1/stable/tenants/{tenant}/webhooks/{v1-webhook} | Get a webhook
197
202
  *HatchetSdkRest::WebhookApi* | [**v1_webhook_list**](docs/WebhookApi.md#v1_webhook_list) | **GET** /api/v1/stable/tenants/{tenant}/webhooks | List webhooks
198
203
  *HatchetSdkRest::WebhookApi* | [**v1_webhook_receive**](docs/WebhookApi.md#v1_webhook_receive) | **POST** /api/v1/stable/tenants/{tenant}/webhooks/{v1-webhook} | Post a webhook message
@@ -301,6 +306,9 @@ Class | Method | HTTP request | Description
301
306
  - [HatchetSdkRest::OtelSpanList](docs/OtelSpanList.md)
302
307
  - [HatchetSdkRest::OtelStatusCode](docs/OtelStatusCode.md)
303
308
  - [HatchetSdkRest::PaginationResponse](docs/PaginationResponse.md)
309
+ - [HatchetSdkRest::PauseWorkflowRequest](docs/PauseWorkflowRequest.md)
310
+ - [HatchetSdkRest::PauseWorkflowRequestPause](docs/PauseWorkflowRequestPause.md)
311
+ - [HatchetSdkRest::PauseWorkflowRequestUnpause](docs/PauseWorkflowRequestUnpause.md)
304
312
  - [HatchetSdkRest::PullRequest](docs/PullRequest.md)
305
313
  - [HatchetSdkRest::PullRequestState](docs/PullRequestState.md)
306
314
  - [HatchetSdkRest::QueueMetrics](docs/QueueMetrics.md)
@@ -384,6 +392,7 @@ Class | Method | HTTP request | Description
384
392
  - [HatchetSdkRest::V1CancelTaskRequest](docs/V1CancelTaskRequest.md)
385
393
  - [HatchetSdkRest::V1CancelledTasks](docs/V1CancelledTasks.md)
386
394
  - [HatchetSdkRest::V1CreateFilterRequest](docs/V1CreateFilterRequest.md)
395
+ - [HatchetSdkRest::V1CreateHTTPOperatorRequest](docs/V1CreateHTTPOperatorRequest.md)
387
396
  - [HatchetSdkRest::V1CreateWebhookRequest](docs/V1CreateWebhookRequest.md)
388
397
  - [HatchetSdkRest::V1CreateWebhookRequestAPIKey](docs/V1CreateWebhookRequestAPIKey.md)
389
398
  - [HatchetSdkRest::V1CreateWebhookRequestBase](docs/V1CreateWebhookRequestBase.md)
@@ -400,6 +409,8 @@ Class | Method | HTTP request | Description
400
409
  - [HatchetSdkRest::V1EventWorkflowRunSummary](docs/V1EventWorkflowRunSummary.md)
401
410
  - [HatchetSdkRest::V1Filter](docs/V1Filter.md)
402
411
  - [HatchetSdkRest::V1FilterList](docs/V1FilterList.md)
412
+ - [HatchetSdkRest::V1HTTPOperator](docs/V1HTTPOperator.md)
413
+ - [HatchetSdkRest::V1HTTPOperatorList](docs/V1HTTPOperatorList.md)
403
414
  - [HatchetSdkRest::V1LogLine](docs/V1LogLine.md)
404
415
  - [HatchetSdkRest::V1LogLineLevel](docs/V1LogLineLevel.md)
405
416
  - [HatchetSdkRest::V1LogLineList](docs/V1LogLineList.md)
@@ -426,6 +437,7 @@ Class | Method | HTTP request | Description
426
437
  - [HatchetSdkRest::V1TaskTimingList](docs/V1TaskTimingList.md)
427
438
  - [HatchetSdkRest::V1TriggerWorkflowRunRequest](docs/V1TriggerWorkflowRunRequest.md)
428
439
  - [HatchetSdkRest::V1UpdateFilterRequest](docs/V1UpdateFilterRequest.md)
440
+ - [HatchetSdkRest::V1UpdateHTTPOperatorRequest](docs/V1UpdateHTTPOperatorRequest.md)
429
441
  - [HatchetSdkRest::V1UpdateWebhookRequest](docs/V1UpdateWebhookRequest.md)
430
442
  - [HatchetSdkRest::V1WaitItem](docs/V1WaitItem.md)
431
443
  - [HatchetSdkRest::V1Webhook](docs/V1Webhook.md)
@@ -464,6 +476,7 @@ Class | Method | HTTP request | Description
464
476
  - [HatchetSdkRest::WorkflowKind](docs/WorkflowKind.md)
465
477
  - [HatchetSdkRest::WorkflowList](docs/WorkflowList.md)
466
478
  - [HatchetSdkRest::WorkflowMetrics](docs/WorkflowMetrics.md)
479
+ - [HatchetSdkRest::WorkflowPauseScheduledCronRunQueueBehavior](docs/WorkflowPauseScheduledCronRunQueueBehavior.md)
467
480
  - [HatchetSdkRest::WorkflowRun](docs/WorkflowRun.md)
468
481
  - [HatchetSdkRest::WorkflowRunList](docs/WorkflowRunList.md)
469
482
  - [HatchetSdkRest::WorkflowRunOrderByDirection](docs/WorkflowRunOrderByDirection.md)
@@ -101,6 +101,7 @@ module HatchetSdkRest
101
101
  return data, status_code, headers
102
102
  end
103
103
 
104
+ # Delete a filter
104
105
  # Delete a filter
105
106
  # @param tenant [String] The tenant id
106
107
  # @param v1_filter [String] The filter id to delete
@@ -111,6 +112,7 @@ module HatchetSdkRest
111
112
  data
112
113
  end
113
114
 
115
+ # Delete a filter
114
116
  # Delete a filter
115
117
  # @param tenant [String] The tenant id
116
118
  # @param v1_filter [String] The filter id to delete
@@ -352,6 +354,7 @@ module HatchetSdkRest
352
354
  return data, status_code, headers
353
355
  end
354
356
 
357
+ # Update a filter
355
358
  # Update a filter
356
359
  # @param tenant [String] The tenant id
357
360
  # @param v1_filter [String] The filter id to update
@@ -363,6 +366,7 @@ module HatchetSdkRest
363
366
  data
364
367
  end
365
368
 
369
+ # Update a filter
366
370
  # Update a filter
367
371
  # @param tenant [String] The tenant id
368
372
  # @param v1_filter [String] The filter id to update