novu 1.3.0 → 2.0.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 33c19c96db16c753d950b22d28ddae951d31169db8fefbb3450228369e12ef90
4
- data.tar.gz: 7fed95e903b793f7f274592c3a78c4dbb8e9fdd3b0de1f4e7b554b0aeed7eaec
3
+ metadata.gz: 13285194bf6fb777c63ae981276763f4b10ea615966b965a81a6e8b58da3b556
4
+ data.tar.gz: 1cc512d33593d53bbd9156977c6db150e19d9e3337d17ede52d3b9f6b81e2cff
5
5
  SHA512:
6
- metadata.gz: e88e3ddb1bf0d82bf285466fcc465b2187a19a8c4f8da4b8eab60df983559da68d9644ffbe8720c225664ed187d3a6cb65c13e4e4c8e03998b6cf07fdd25bebf
7
- data.tar.gz: e6b77b470642c39d9620acdab3ac9a7a11bf6943c4fd280e75974738661aaa7cf37bc79744fd030357e7eb3f60c0a59db9a805f0754d47d2a5aaa047e63dd4f8
6
+ metadata.gz: 6dbddce6ca7f95be24963a26df40dc493ed4cc9d3b423b15a1b463c10b94defd001ee2a03f9fbaf304532b77ee37cec4eb3df2df45dc6bba570f735a82c7ed10
7
+ data.tar.gz: c4ce2d57cec6cef6fc64f70c9eb0ce98b609f16710cf0f041286d88e2ccf796217fb06e7615c8c641a6e074b473b6a0079e09f33d098ee77d5968a4f2dff2ee4
data/README.md CHANGED
@@ -934,6 +934,17 @@ client = Novu::Client.new(
934
934
  | enable_retry | enabling/disable the Exponential Retry mechanism | false | Boolean |
935
935
 
936
936
 
937
+ ### Custom backend URL
938
+
939
+ To use a custom backend URL, for example to be able to use the EU Novu API, you can pass a custom `backend_url` when initializing the client.
940
+
941
+ ```ruby
942
+ client = Novu::Client.new(
943
+ access_token: '<your-novu-api_key>',
944
+ backend_url: 'https://eu.api.novu.co/v1'
945
+ )
946
+ ```
947
+
937
948
  ### For more information about these methods and their parameters, see the [API documentation](https://docs.novu.co/api-reference).
938
949
 
939
950
  ## Contributing
data/lib/novu/client.rb CHANGED
@@ -42,7 +42,6 @@ module Novu
42
42
  include Novu::Api::Tenants
43
43
  include Novu::Api::Topics
44
44
 
45
- base_uri "https://api.novu.co/v1"
46
45
  format :json
47
46
 
48
47
  attr_accessor :enable_retry, :max_retries, :initial_delay, :max_delay, :idempotency_key
@@ -54,7 +53,7 @@ module Novu
54
53
  # - max_retries [Integer]
55
54
  # - initial_delay [Integer]
56
55
  # - max_delay [Integer]
57
- def initialize(access_token: nil, idempotency_key: nil, enable_retry: false, retry_config: {} )
56
+ def initialize(access_token: nil, idempotency_key: nil, enable_retry: false, retry_config: {}, backend_url: "https://api.novu.co/v1")
58
57
  raise ArgumentError, "Api Key cannot be blank or nil" if access_token.blank?
59
58
 
60
59
  @idempotency_key = idempotency_key.blank? ? UUID.new.generate : idempotency_key
@@ -68,6 +67,8 @@ module Novu
68
67
  @initial_delay = retry_config[:initial_delay]
69
68
  @max_delay = retry_config[:max_delay]
70
69
 
70
+ self.class.base_uri(backend_url)
71
+
71
72
  self.class.default_options.merge!(headers: {
72
73
  "Authorization" => "ApiKey #{@access_token}",
73
74
  "User-Agent" => "novu/ruby/#{Novu::VERSION}"
data/lib/novu/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Novu
4
- VERSION = "1.3.0"
4
+ VERSION = "2.0.0"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: novu
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aman Saini
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: exe
12
12
  cert_chain: []
13
- date: 2024-01-19 00:00:00.000000000 Z
13
+ date: 2024-03-08 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  requirement: !ruby/object:Gem::Requirement