quicknode_sdk 0.1.0.pre.alpha.14-aarch64-linux → 0.1.0.pre.alpha.16-aarch64-linux

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b08525dd62daff929bb96be6cbc58108c6163c5631c6d23c5d88638ff8b6e67c
4
- data.tar.gz: 928a822181a7a97413d10ab8f98961ef24fc750dd4b36b143f3da4240505daab
3
+ metadata.gz: 6d12b30bc8719ebf19004172175016c5cc9d29090e557c03410b56ac1ba7347c
4
+ data.tar.gz: 57f11315357500c381cee78696e32513cc045b7c660a8cca3cabc55f533a3fa4
5
5
  SHA512:
6
- metadata.gz: 259c3770711c5412754ce369f886e3e97945137ab29d158f85a0a79d3fc511ed2dadd71e43c0e3b201b3e749d1f0c078a2068e7b6c902a461989c4fe1e4cf892
7
- data.tar.gz: 4d1a5e469b1a8311383e6af9eb981b657cfb71ecf0fbbda545c82c5d63f1402f4987fc8e798825bcd8c39eb1a1f50519972c6c8b47853298d54406aa886a2af6
6
+ metadata.gz: d60372608c6f2b00e80f1651895e896bb3e01128fc01f95aaf45cc06afd8d590a84903daafb962af787f42a924ad2a6b855d3384142b98fd055a66e1fe49ed46
7
+ data.tar.gz: 2c3846c1988babddd0a138bc596ebe7cf641f0106adcfa0fb85d0b5c3a5a027623b9ffcb6ca0f06717a3dbdbc725ee44a62f9c96ac4a596562ce5ced5d662313
data/README.md CHANGED
@@ -28,6 +28,7 @@ This is one of four language bindings published from the same Rust core. See the
28
28
  - [IP Custom Headers](#ip-custom-headers)
29
29
  - [Method Rate Limits](#method-rate-limits)
30
30
  - [Endpoint Rate Limits](#endpoint-rate-limits)
31
+ - [Endpoint URLs](#endpoint-urls)
31
32
  - [Metrics](#metrics)
32
33
  - [Chains](#chains)
33
34
  - [Billing](#billing)
@@ -772,7 +773,7 @@ qn.admin.delete_method_rate_limit(id: "ep-123", method_rate_limit_id: "rl-1")
772
773
 
773
774
  ##### `update_rate_limits` / `updateRateLimits`
774
775
 
775
- Updates the endpoint-level RPS / RPM / RPD caps.
776
+ Partial update of the endpoint-level RPS / RPM / RPD caps. Only buckets included in the request are modified — omitted buckets are left unchanged. Values are capped by the account's plan tier. Sends `PATCH`.
776
777
 
777
778
  **Parameters**: `id` (endpoint id, required); `rate_limits`: `RateLimitSettings` (`rps`, `rpm`, `rpd`, all optional).
778
779
 
@@ -783,6 +784,54 @@ Updates the endpoint-level RPS / RPM / RPD caps.
783
784
  qn.admin.update_rate_limits(id: "ep-123", rps: 100, rpm: 5000)
784
785
  ```
785
786
 
787
+ ##### `get_rate_limits` / `getRateLimits`
788
+
789
+ Returns the rate-limit rows currently enforced on the endpoint, each identifying its `bucket` (`"rps"` / `"rpm"` / `"rpd"`), `rate_limit`, and `source` (`"plan_default"` or `"user_override"`). User-set overrides expose an `id` you can pass to `delete_rate_limit_override`.
790
+
791
+ **Parameters**: `id` (endpoint id, required).
792
+
793
+ **Returns**: `GetRateLimitsResponse` (as a `Hashie::Mash`) with `data.rate_limits: Array<RateLimitEntry>`.
794
+
795
+ ```ruby
796
+ # Ruby
797
+ resp = qn.admin.get_rate_limits(id: "123")
798
+ resp.data.rate_limits.each do |row|
799
+ puts "#{row.bucket} #{row.rate_limit} #{row.source} #{row.id}"
800
+ end
801
+ ```
802
+
803
+ ##### `delete_rate_limit_override` / `deleteRateLimitOverride`
804
+
805
+ Deletes a user-set rate-limit override by UUID. Plan defaults are not deletable — passing a UUID that does not match a user-set override on the endpoint returns 404.
806
+
807
+ **Parameters**: `id` (endpoint id, required); `override_id` (UUID returned by `get_rate_limits`, required).
808
+
809
+ **Returns**: nothing.
810
+
811
+ ```ruby
812
+ # Ruby
813
+ qn.admin.delete_rate_limit_override(id: "123", override_id: "ovr-uuid")
814
+ ```
815
+
816
+ #### Endpoint URLs
817
+
818
+ ##### `get_endpoint_urls` / `getEndpointUrls`
819
+
820
+ Returns the HTTP and WebSocket URLs for the endpoint without fetching the full endpoint record. For multichain endpoints, `multichain_urls` is a per-network map of additional URLs; for single-chain endpoints it is `nil`.
821
+
822
+ **Parameters**: `id` (endpoint id, required).
823
+
824
+ **Returns**: `GetEndpointUrlsResponse` (as a `Hashie::Mash`) with `data.http_url`, `data.wss_url`, and `data.multichain_urls`.
825
+
826
+ ```ruby
827
+ # Ruby
828
+ resp = qn.admin.get_endpoint_urls(id: "123")
829
+ puts resp.data.http_url
830
+ resp.data.multichain_urls&.each do |network, urls|
831
+ puts "#{network} #{urls.http_url}"
832
+ end
833
+ ```
834
+
786
835
  #### Metrics
787
836
 
788
837
  ##### `get_endpoint_metrics` / `getEndpointMetrics`
@@ -791,7 +840,7 @@ Returns metric series for an endpoint over a time period.
791
840
 
792
841
  **Parameters**: `id` (endpoint id, required); body: `period` (`"hour"` | `"day"` | `"week"` | `"month"`), `metric` (e.g. `"method_calls_over_time"`, `"response_status_breakdown"`).
793
842
 
794
- **Returns**: `GetEndpointMetricsResponse` with `data: EndpointMetric[]`.
843
+ **Returns**: `GetEndpointMetricsResponse` (as a `Hashie::Mash`) with `data: Array<EndpointMetric>`. Each `EndpointMetric` has `tag: Array<String>` and `data: Array<Array<Integer>>` of `[timestamp, value]` pairs. Single-axis series (e.g. `response_time_over_time` with a percentile) come back as a one-element tag like `["p95"]`; multi-axis series come back as `["network", "arbitrum-mainnet"]`.
795
844
 
796
845
  ```ruby
797
846
  # Ruby
@@ -808,7 +857,7 @@ Returns account-level metric series. Supports an optional `percentile` (e.g. `"p
808
857
 
809
858
  **Parameters**: `period` (required), `metric` (required), `percentile` (string, optional).
810
859
 
811
- **Returns**: `GetAccountMetricsResponse` with `data: EndpointMetric[]`.
860
+ **Returns**: `GetAccountMetricsResponse` (as a `Hashie::Mash`) with `data: Array<EndpointMetric>`. See `get_endpoint_metrics` above for the `tag: Array<String>` shape.
812
861
 
813
862
  ```ruby
814
863
  # Ruby
Binary file
@@ -35,16 +35,11 @@ module QuicknodeSdk
35
35
  end
36
36
 
37
37
  class DestinationAttributes
38
- def self.webhook: (url: String, ?max_retry: Integer, ?retry_interval_sec: Integer, ?post_timeout_sec: Integer, ?security_token: String, compression: String) -> DestinationAttributes
38
+ def self.webhook: (url: String, ?max_retry: Integer, ?retry_interval_sec: Integer, ?post_timeout_sec: Integer, ?security_token: String, ?compression: String) -> DestinationAttributes
39
39
  def self.s3: (endpoint: String, access_key: String, secret_key: String, bucket: String, object_prefix: String, compression: String, file_type: String, ?max_retry: Integer, ?retry_interval_sec: Integer, ?use_ssl: bool) -> DestinationAttributes
40
40
  def self.azure: (storage_account: String, sas_token: String, container: String, compression: String, file_type: String, ?max_retry: Integer, ?retry_interval_sec: Integer, ?blob_prefix: String) -> DestinationAttributes
41
41
  def self.postgres: (host: String, ?port: Integer, database: String, username: String, password: String, table_name: String, sslmode: String, ?max_retry: Integer, ?retry_interval_sec: Integer) -> DestinationAttributes
42
- def self.mysql: (host: String, ?port: Integer, database: String, username: String, password: String, table_name: String, ?max_retry: Integer, ?retry_interval_sec: Integer) -> DestinationAttributes
43
- def self.mongo: (host: String, database: String, username: String, password: String, collection_name: String, ?max_retry: Integer, ?retry_interval_sec: Integer) -> DestinationAttributes
44
- def self.clickhouse: (hosts: String, database: String, username: String, password: String, table_name: String, default_table_engine_opts: String, ?default_granularity: Integer, default_compression: String, default_index_type: String, ?max_retry: Integer, ?retry_interval_sec: Integer, ?disable_datetime_precision: bool, ?dont_support_rename_column: bool, ?dont_support_empty_default_value: bool, ?skip_initialize_with_version: bool) -> DestinationAttributes
45
- def self.snowflake: (account: String, host: String, ?port: Integer, protocol: String, database: String, schema: String, warehouse: String, username: String, password: String, ?max_retry: Integer, ?retry_interval_sec: Integer, ?table_name: String) -> DestinationAttributes
46
- def self.kafka: (bootstrap_servers: String, topic_name: String, compression_type: String, ?batch_size: Integer, ?linger_ms: Integer, ?max_request_size: Integer, ?timeout_sec: Integer, ?max_retry: Integer, ?retry_interval_sec: Integer, ?username: String, ?password: String, ?protocol: String, ?mechanisms: String) -> DestinationAttributes
47
- def self.redis: (host: String, ?port: Integer, ?database: Integer, username: String, password: String, key_name: String, ?max_retry: Integer, ?retry_interval_sec: Integer, ?tls: bool) -> DestinationAttributes
42
+ def self.kafka: (bootstrap_servers: String, topic_name: String, compression_type: String, ?batch_size: Integer, ?linger_ms: Integer, ?max_message_bytes: Integer, ?timeout_sec: Integer, ?max_retry: Integer, ?retry_interval_sec: Integer, ?username: String, ?password: String, ?protocol: String, ?mechanisms: String) -> DestinationAttributes
48
43
  end
49
44
 
50
45
  class Admin
@@ -88,6 +83,9 @@ module QuicknodeSdk
88
83
  def update_method_rate_limit: (id: String, method_rate_limit_id: String, ?methods: Array[String], ?status: String, ?rate: Integer) -> untyped
89
84
  def delete_method_rate_limit: (id: String, method_rate_limit_id: String) -> void
90
85
  def update_rate_limits: (id: String, ?rps: Integer, ?rpm: Integer, ?rpd: Integer) -> void
86
+ def get_rate_limits: (id: String) -> untyped
87
+ def delete_rate_limit_override: (id: String, override_id: String) -> void
88
+ def get_endpoint_urls: (id: String) -> untyped
91
89
  def get_endpoint_metrics: (id: String, period: String, metric: String) -> untyped
92
90
  def get_account_metrics: (period: String, metric: String, ?percentile: String) -> untyped
93
91
  def list_chains: () -> untyped
@@ -115,7 +113,7 @@ module QuicknodeSdk
115
113
  class Streams
116
114
  def initialize: (untyped native) -> void
117
115
 
118
- def create_stream: (name: String, network: String, dataset: String, region: String, start_range: Integer, end_range: Integer, destination_attributes: DestinationAttributes, plan: String, threshold_fetch_buffer: Integer, ?dataset_batch_size: Integer, ?max_batch_size: Integer, ?max_buffer_range_size: Integer, ?max_buffer_processing_workers: Integer, ?keep_distance_from_tip: Integer, ?filter_function: String, ?filter_language: String, ?include_stream_metadata: String, ?product_type: String, ?status: String, ?notification_email: String, ?charge_min_cap: Integer, ?fix_block_reorgs: Integer, ?elastic_batch_enabled: bool, ?extra_destinations: Array[DestinationAttributes]) -> untyped
116
+ def create_stream: (name: String, network: String, dataset: String, region: String, start_range: Integer, end_range: Integer, destination_attributes: DestinationAttributes, dataset_batch_size: Integer, elastic_batch_enabled: bool, ?plan: String, ?threshold_fetch_buffer: Integer, ?max_batch_size: Integer, ?max_buffer_range_size: Integer, ?max_buffer_processing_workers: Integer, ?keep_distance_from_tip: Integer, ?filter_function: String, ?filter_language: String, ?include_stream_metadata: String, ?product_type: String, ?status: String, ?notification_email: String, ?charge_min_cap: Integer, ?fix_block_reorgs: Integer, ?extra_destinations: Array[DestinationAttributes]) -> untyped
119
117
  def list_streams: (?stream_type: String, ?offset: Integer, ?limit: Integer, ?order_by: String, ?order_direction: String) -> untyped
120
118
  def delete_all_streams: () -> void
121
119
  def get_stream: (id: String) -> untyped
@@ -123,7 +121,7 @@ module QuicknodeSdk
123
121
  def delete_stream: (id: String) -> void
124
122
  def activate_stream: (id: String) -> void
125
123
  def pause_stream: (id: String) -> void
126
- def test_filter: (network: String, dataset: String, block: String, ?filter_function: String, ?filter_language: String) -> untyped
124
+ def test_filter: (network: String, dataset: String, block: String, filter_function: String, ?filter_language: String) -> untyped
127
125
  def get_enabled_count: (?stream_type: String) -> untyped
128
126
  end
129
127
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: quicknode_sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0.pre.alpha.14
4
+ version: 0.1.0.pre.alpha.16
5
5
  platform: aarch64-linux
6
6
  authors:
7
7
  - Quicknode
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-04-27 00:00:00.000000000 Z
11
+ date: 2026-05-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: hashie