onesignal 5.16.0 → 5.18.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 (88) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +14 -0
  3. data/Gemfile.lock +3 -3
  4. data/README.md +3 -3
  5. data/docs/DefaultApi.md +281 -26
  6. data/docs/DuplicateJourneyOverrides.md +30 -0
  7. data/docs/DuplicateJourneyRequest.md +18 -0
  8. data/docs/EmailMetrics.md +34 -0
  9. data/docs/EmailProviderMetrics.md +20 -0
  10. data/docs/EmailProviderMetricsEvent.md +20 -0
  11. data/docs/EmailProviderMetricsResponse.md +18 -0
  12. data/docs/EmailProviderMetricsTimeseriesResponse.md +18 -0
  13. data/docs/JourneyNode.md +2 -2
  14. data/docs/UpdateJourneyNodeRequest.md +2 -2
  15. data/lib/onesignal/api/default_api.rb +265 -6
  16. data/lib/onesignal/api_client.rb +24 -1
  17. data/lib/onesignal/configuration.rb +4 -2
  18. data/lib/onesignal/models/duplicate_journey_overrides.rb +282 -0
  19. data/lib/onesignal/models/duplicate_journey_request.rb +219 -0
  20. data/lib/onesignal/models/email_metrics.rb +300 -0
  21. data/lib/onesignal/models/email_provider_metrics.rb +229 -0
  22. data/lib/onesignal/models/email_provider_metrics_event.rb +229 -0
  23. data/lib/onesignal/models/email_provider_metrics_response.rb +222 -0
  24. data/lib/onesignal/models/email_provider_metrics_timeseries_response.rb +222 -0
  25. data/lib/onesignal/models/journey.rb +1 -1
  26. data/lib/onesignal/models/journey_node.rb +2 -2
  27. data/lib/onesignal/models/update_journey_node_request.rb +2 -2
  28. data/lib/onesignal/version.rb +1 -1
  29. data/lib/onesignal.rb +7 -0
  30. data/spec/api/default_api_spec.rb +49 -3
  31. data/spec/api_client_spec.rb +6 -6
  32. data/spec/models/duplicate_journey_overrides_spec.rb +69 -0
  33. data/spec/models/duplicate_journey_request_spec.rb +33 -0
  34. data/spec/models/email_metrics_spec.rb +81 -0
  35. data/spec/models/email_provider_metrics_event_spec.rb +39 -0
  36. data/spec/models/email_provider_metrics_response_spec.rb +33 -0
  37. data/spec/models/email_provider_metrics_spec.rb +39 -0
  38. data/spec/models/email_provider_metrics_timeseries_response_spec.rb +33 -0
  39. data/vendor/bundle/ruby/3.2.0/cache/date-3.6.0.gem +0 -0
  40. data/vendor/bundle/ruby/3.2.0/cache/io-console-0.9.4.gem +0 -0
  41. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-13.0.0/gem_make.out +5 -5
  42. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.6.0/date_core.so +0 -0
  43. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.6.0/gem_make.out +26 -0
  44. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/{date-3.5.1 → date-3.6.0}/mkmf.log +55 -2
  45. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/{io-console-0.9.2 → io-console-0.9.4}/gem_make.out +12 -10
  46. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.9.4/io/console.so +0 -0
  47. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/{io-console-0.9.2 → io-console-0.9.4}/mkmf.log +33 -6
  48. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.6/gem_make.out +5 -5
  49. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.5.0/gem_make.out +5 -5
  50. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/racc-1.8.1/gem_make.out +5 -5
  51. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.2.0/gem_make.out +5 -5
  52. data/vendor/bundle/ruby/3.2.0/gems/{date-3.5.1 → date-3.6.0}/ext/date/Makefile +1 -1
  53. data/vendor/bundle/ruby/3.2.0/gems/{date-3.5.1 → date-3.6.0}/ext/date/date_core.c +293 -77
  54. data/vendor/bundle/ruby/3.2.0/gems/{date-3.5.1 → date-3.6.0}/ext/date/date_parse.c +14 -4
  55. data/vendor/bundle/ruby/3.2.0/gems/{date-3.5.1 → date-3.6.0}/ext/date/date_strptime.c +13 -13
  56. data/vendor/bundle/ruby/3.2.0/gems/{date-3.5.1 → date-3.6.0}/ext/date/extconf.rb +6 -0
  57. data/vendor/bundle/ruby/3.2.0/gems/{date-3.5.1 → date-3.6.0}/lib/date.rb +1 -1
  58. data/vendor/bundle/ruby/3.2.0/gems/date-3.6.0/lib/date_core.so +0 -0
  59. data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.2 → io-console-0.9.4}/ext/io/console/Makefile +3 -3
  60. data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.2 → io-console-0.9.4}/ext/io/console/console.c +101 -13
  61. data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.2 → io-console-0.9.4}/ext/io/console/extconf.rb +27 -2
  62. data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.2 → io-console-0.9.4}/lib/io/console/size.rb +4 -2
  63. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.4/lib/io/console.so +0 -0
  64. data/vendor/bundle/ruby/3.2.0/specifications/{date-3.5.1.gemspec → date-3.6.0.gemspec} +3 -3
  65. data/vendor/bundle/ruby/3.2.0/specifications/{io-console-0.9.2.gemspec → io-console-0.9.4.gemspec} +3 -3
  66. metadata +158 -130
  67. data/vendor/bundle/ruby/3.2.0/cache/date-3.5.1.gem +0 -0
  68. data/vendor/bundle/ruby/3.2.0/cache/io-console-0.9.2.gem +0 -0
  69. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.5.1/date_core.so +0 -0
  70. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.5.1/gem_make.out +0 -24
  71. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.9.2/io/console.so +0 -0
  72. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/lib/date_core.so +0 -0
  73. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.9.2/lib/io/console.so +0 -0
  74. /data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/{date-3.5.1 → date-3.6.0}/gem.build_complete +0 -0
  75. /data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/{io-console-0.9.2 → io-console-0.9.4}/gem.build_complete +0 -0
  76. /data/vendor/bundle/ruby/3.2.0/gems/{date-3.5.1 → date-3.6.0}/BSDL +0 -0
  77. /data/vendor/bundle/ruby/3.2.0/gems/{date-3.5.1 → date-3.6.0}/COPYING +0 -0
  78. /data/vendor/bundle/ruby/3.2.0/gems/{date-3.5.1 → date-3.6.0}/README.md +0 -0
  79. /data/vendor/bundle/ruby/3.2.0/gems/{date-3.5.1 → date-3.6.0}/ext/date/date_strftime.c +0 -0
  80. /data/vendor/bundle/ruby/3.2.0/gems/{date-3.5.1 → date-3.6.0}/ext/date/date_tmx.h +0 -0
  81. /data/vendor/bundle/ruby/3.2.0/gems/{date-3.5.1 → date-3.6.0}/ext/date/prereq.mk +0 -0
  82. /data/vendor/bundle/ruby/3.2.0/gems/{date-3.5.1 → date-3.6.0}/ext/date/zonetab.h +0 -0
  83. /data/vendor/bundle/ruby/3.2.0/gems/{date-3.5.1 → date-3.6.0}/ext/date/zonetab.list +0 -0
  84. /data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.2 → io-console-0.9.4}/.document +0 -0
  85. /data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.2 → io-console-0.9.4}/BSDL +0 -0
  86. /data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.2 → io-console-0.9.4}/COPYING +0 -0
  87. /data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.2 → io-console-0.9.4}/README.md +0 -0
  88. /data/vendor/bundle/ruby/3.2.0/gems/{io-console-0.9.2 → io-console-0.9.4}/ext/io/console/win32_vk.inc +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ec6437db60463bed7b865d5ac5059a48bd9352d83634200102457c5bad51cb1c
4
- data.tar.gz: db39d74d08c633d7546b1686be1ca8bbb2d750d5296b5d2d8f47edba1f9ec4f6
3
+ metadata.gz: 3f913f0ad3fb26a447ee94a14fdc02d6c2b539e20a226664cbac357b81dd7857
4
+ data.tar.gz: 2cf7a7de8f23c4630c7c7797dbbe7dc2a40cc9f64633324ef9be01e894ac895c
5
5
  SHA512:
6
- metadata.gz: e32af171e6615a73118e0fd1ac82a15912b8314d33e550e597d130d8db305230d1f25864b564933bd9f3e2a7f9f30a9a3ac3fd1a7b3f02f6ffc1016d7f30ff6f
7
- data.tar.gz: 559f6275009040ad7b539bb7dfa140f2315561f09908c1e8b34d0e350661c16d143d718c21adc53f6359c306c8ff516f0d23a51cc3cfd0cef86d6b9cb0be5458
6
+ metadata.gz: b0103aa968b00d7757ca8dbb3a29c5b2ac66b7d4133397bbd294cdb290db0c441d433204392a6eb32995620190079b14ceac5f0ef348ac2f9b9ec5ae6d40c64d
7
+ data.tar.gz: 5abe54075e9d9bfb8dfbef376a38bdae885d0083e8b34f9899050ec84e22d681b3dd03e1c9f766dbca4329965b8dd05349789609faff2b66b8a3e92be7f1cdc7
data/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## [5.17.0](https://github.com/OneSignal/onesignal-ruby-api/compare/v5.16.0...v5.17.0) (2026-10-02)
4
+
5
+ ### Features
6
+
7
+ * add v5.17.0 package updates ([aad9aa7](https://github.com/OneSignal/onesignal-ruby-api/commit/aad9aa71252c6f42c47cde91f4dcf5820fa25b56))
8
+ * add v5.17.0 package updates ([#135](https://github.com/OneSignal/onesignal-ruby-api/issues/135)) ([34cbe92](https://github.com/OneSignal/onesignal-ruby-api/commit/34cbe92a91f2b20feba25e92cb40d26b4558d343)), closes [OneSignal/api-client-libraries#468](https://github.com/OneSignal/api-client-libraries/issues/468) [OneSignal/api-client-libraries#469](https://github.com/OneSignal/api-client-libraries/issues/469) [OneSignal/api-client-libraries#470](https://github.com/OneSignal/api-client-libraries/issues/470)
9
+
10
+ ## [5.16.0](https://github.com/OneSignal/onesignal-ruby-api/compare/v5.15.0...v5.16.0) (2026-09-09)
11
+
12
+ ### Features
13
+
14
+ * add v5.16.0 package updates ([9a42499](https://github.com/OneSignal/onesignal-ruby-api/commit/9a4249909ed463768b54175a70c5d0e4edf66af4))
15
+ * add v5.16.0 package updates ([#131](https://github.com/OneSignal/onesignal-ruby-api/issues/131)) ([bd77ccc](https://github.com/OneSignal/onesignal-ruby-api/commit/bd77cccc3f4d95dabaa99cc5a5d4d35f690666b4)), closes [OneSignal/api-client-libraries#464](https://github.com/OneSignal/api-client-libraries/issues/464) [OneSignal/api-client-libraries#465](https://github.com/OneSignal/api-client-libraries/issues/465)
16
+
3
17
  ## [5.15.0](https://github.com/OneSignal/onesignal-ruby-api/compare/v5.14.0...v5.15.0) (2026-08-31)
4
18
 
5
19
  ### Features
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- onesignal (5.16.0)
4
+ onesignal (5.18.0)
5
5
  typhoeus (~> 1.0, >= 1.0.1)
6
6
 
7
7
  GEM
@@ -11,13 +11,13 @@ GEM
11
11
  byebug (13.0.0)
12
12
  reline (>= 0.6.0)
13
13
  coderay (1.1.3)
14
- date (3.5.1)
14
+ date (3.6.0)
15
15
  diff-lcs (1.6.2)
16
16
  ethon (0.18.0)
17
17
  ffi (>= 1.15.0)
18
18
  logger
19
19
  ffi (1.17.4-x86_64-linux-gnu)
20
- io-console (0.9.2)
20
+ io-console (0.9.4)
21
21
  jaro_winkler (1.5.6)
22
22
  logger (1.7.0)
23
23
  method_source (1.1.0)
data/README.md CHANGED
@@ -6,15 +6,15 @@ OneSignal - the Ruby gem for OneSignal
6
6
 
7
7
  A powerful way to send personalized messages at scale and build effective customer engagement strategies. Learn more at onesignal.com
8
8
 
9
- - API version: 5.16.0
10
- - Package version: 5.16.0
9
+ - API version: 5.18.0
10
+ - Package version: 5.18.0
11
11
 
12
12
  ## Installation
13
13
 
14
14
  Add to your `Gemfile`:
15
15
 
16
16
  ```ruby
17
- gem 'onesignal', '~> 5.16.0'
17
+ gem 'onesignal', '~> 5.18.0'
18
18
  ```
19
19
 
20
20
  Then run `bundle install`.
data/docs/DefaultApi.md CHANGED
@@ -24,6 +24,7 @@ All URIs are relative to *https://api.onesignal.com*
24
24
  | [**delete_subscription**](DefaultApi.md#delete_subscription) | **DELETE** /apps/{app_id}/subscriptions/{subscription_id} | |
25
25
  | [**delete_template**](DefaultApi.md#delete_template) | **DELETE** /templates/{template_id} | Delete template |
26
26
  | [**delete_user**](DefaultApi.md#delete_user) | **DELETE** /apps/{app_id}/users/by/{alias_label}/{alias_id} | |
27
+ | [**duplicate_journey**](DefaultApi.md#duplicate_journey) | **POST** /apps/{app_id}/journeys/{journey_id}/duplicate | Duplicate journey |
27
28
  | [**estimate_notification_recipients**](DefaultApi.md#estimate_notification_recipients) | **POST** /notifications/count-unsaved | Estimate notification recipients |
28
29
  | [**export_events**](DefaultApi.md#export_events) | **POST** /notifications/{notification_id}/export_events | Export CSV of Events |
29
30
  | [**export_subscriptions**](DefaultApi.md#export_subscriptions) | **POST** /players/csv_export?app_id={app_id} | Export CSV of Subscriptions |
@@ -31,6 +32,8 @@ All URIs are relative to *https://api.onesignal.com*
31
32
  | [**get_aliases_by_subscription**](DefaultApi.md#get_aliases_by_subscription) | **GET** /apps/{app_id}/subscriptions/{subscription_id}/user/identity | |
32
33
  | [**get_app**](DefaultApi.md#get_app) | **GET** /apps/{app_id} | View an app |
33
34
  | [**get_apps**](DefaultApi.md#get_apps) | **GET** /apps | View apps |
35
+ | [**get_email_provider_metrics**](DefaultApi.md#get_email_provider_metrics) | **GET** /apps/{app_id}/email_analytics/provider_metrics | Get email inbox provider metrics |
36
+ | [**get_email_provider_metrics_timeseries**](DefaultApi.md#get_email_provider_metrics_timeseries) | **GET** /apps/{app_id}/email_analytics/provider_metrics_timeseries | Get email inbox provider metrics over time |
34
37
  | [**get_email_reputation**](DefaultApi.md#get_email_reputation) | **GET** /apps/{app_id}/email_analytics/delivery_metrics | Get email reputation statistics |
35
38
  | [**get_notification**](DefaultApi.md#get_notification) | **GET** /notifications/{notification_id} | View notification |
36
39
  | [**get_notification_history**](DefaultApi.md#get_notification_history) | **POST** /notifications/{notification_id}/history | Notification History |
@@ -197,7 +200,7 @@ end
197
200
  api_instance = OneSignal::DefaultApi.new
198
201
  template_id = 'e4d3c2b1-a09f-4f1e-8d7c-6b5a4f3e2d1c' # String |
199
202
  app_id = 'YOUR_APP_ID' # String |
200
- copy_template_request = OneSignal::CopyTemplateRequest.new({target_app_id: 'target_app_id_example'}) # CopyTemplateRequest |
203
+ copy_template_request = OneSignal::CopyTemplateRequest.new({target_app_id: 'YOUR_TARGET_APP_ID'}) # CopyTemplateRequest |
201
204
 
202
205
  begin
203
206
  # Copy template to another app
@@ -592,7 +595,7 @@ end
592
595
 
593
596
  api_instance = OneSignal::DefaultApi.new
594
597
  app_id = 'YOUR_APP_ID' # String | Your OneSignal App ID in UUID v4 format.
595
- custom_events_request = OneSignal::CustomEventsRequest.new({events: [OneSignal::CustomEvent.new({name: 'name_example'})]}) # CustomEventsRequest |
598
+ custom_events_request = OneSignal::CustomEventsRequest.new({events: [OneSignal::CustomEvent.new({name: 'YOUR_NAME'})]}) # CustomEventsRequest |
596
599
 
597
600
  begin
598
601
  # Create custom events
@@ -670,7 +673,7 @@ end
670
673
 
671
674
  api_instance = OneSignal::DefaultApi.new
672
675
  app_id = 'YOUR_APP_ID' # String | Your OneSignal App ID in UUID v4 format.
673
- create_journey_request = OneSignal::CreateJourneyRequest.new({name: 'name_example'}) # CreateJourneyRequest |
676
+ create_journey_request = OneSignal::CreateJourneyRequest.new({name: 'YOUR_NAME'}) # CreateJourneyRequest |
674
677
 
675
678
  begin
676
679
  # Create journey
@@ -1043,7 +1046,7 @@ OneSignal.configure do |config|
1043
1046
  end
1044
1047
 
1045
1048
  api_instance = OneSignal::DefaultApi.new
1046
- create_template_request = OneSignal::CreateTemplateRequest.new({app_id: 'app_id_example', name: 'name_example', contents: OneSignal::LanguageStringMap.new}) # CreateTemplateRequest |
1049
+ create_template_request = OneSignal::CreateTemplateRequest.new({app_id: 'YOUR_APP_ID', name: 'YOUR_NAME', contents: OneSignal::LanguageStringMap.new}) # CreateTemplateRequest |
1047
1050
 
1048
1051
  begin
1049
1052
  # Create template
@@ -1448,7 +1451,7 @@ end
1448
1451
 
1449
1452
  api_instance = OneSignal::DefaultApi.new
1450
1453
  app_id = 'YOUR_APP_ID' # String | The OneSignal App ID for your app. Available in Keys & IDs.
1451
- segment_id = 'd6c5a3e1-9f17-44a1-9d10-7c0e4a2b1c8e' # String | The segment_id can be found in the URL of the segment when viewing it in the dashboard.
1454
+ segment_id = 'd6c5a3e1-9f17-44a1-9d10-7c0e4a2b1c8e' # String | The segment's unique identifier. In the dashboard, go to Audience > Segments, open the segment's options menu, and select Copy segment ID. You can also get it from the View Segments API or the segment's URL in the dashboard.
1452
1455
 
1453
1456
  begin
1454
1457
  # Delete Segment
@@ -1489,7 +1492,7 @@ end
1489
1492
  | Name | Type | Description | Notes |
1490
1493
  | ---- | ---- | ----------- | ----- |
1491
1494
  | **app_id** | **String** | The OneSignal App ID for your app. Available in Keys & IDs. | |
1492
- | **segment_id** | **String** | The segment_id can be found in the URL of the segment when viewing it in the dashboard. | |
1495
+ | **segment_id** | **String** | The segment's unique identifier. In the dashboard, go to Audience > Segments, open the segment's options menu, and select Copy segment ID. You can also get it from the View Segments API or the segment's URL in the dashboard. | |
1493
1496
 
1494
1497
  ### Return type
1495
1498
 
@@ -1739,6 +1742,88 @@ nil (empty response body)
1739
1742
  - **Accept**: application/json
1740
1743
 
1741
1744
 
1745
+ ## duplicate_journey
1746
+
1747
+ > <Journey> duplicate_journey(app_id, journey_id, opts)
1748
+
1749
+ Duplicate journey
1750
+
1751
+ The Journeys API is in beta. Endpoints and response fields can still change. Copy an existing journey into a new draft. The source does not change. The copy is always a draft, and started_at and archived_at are null. If you omit the body, or omit overrides, the copy keeps the source description, audience, nodes, early_exit, and reentry_rules. The copy takes the source name plus \" (Copy)\". The copy does not keep schedule. Send schedule under overrides to set it. Server-controlled fields are rejected with 400. The authenticated App API key must have permission to create journeys.
1752
+
1753
+ ### Examples
1754
+
1755
+ ```ruby
1756
+ require 'onesignal'
1757
+ # setup authorization
1758
+ OneSignal.configure do |config|
1759
+ # Configure Bearer authorization: rest_api_key
1760
+ config.rest_api_key = 'YOUR_REST_API_KEY'
1761
+
1762
+ end
1763
+
1764
+ api_instance = OneSignal::DefaultApi.new
1765
+ app_id = 'YOUR_APP_ID' # String | Your OneSignal App ID in UUID v4 format.
1766
+ journey_id = 'YOUR_JOURNEY_ID' # String | UUID of the journey to copy.
1767
+ opts = {
1768
+ duplicate_journey_request: OneSignal::DuplicateJourneyRequest.new # DuplicateJourneyRequest |
1769
+ }
1770
+
1771
+ begin
1772
+ # Duplicate journey
1773
+ result = api_instance.duplicate_journey(app_id, journey_id, opts)
1774
+ p result
1775
+ rescue OneSignal::ApiError => e
1776
+ puts "Error when calling DefaultApi->duplicate_journey: #{e}"
1777
+ puts "Status Code: #{e.code}"
1778
+ # `e.error_messages` flattens any error-envelope shape to an Array<String>;
1779
+ # the raw body remains on `e.response_body`.
1780
+ puts "Error Messages: #{e.error_messages}"
1781
+ puts "Response Body: #{e.response_body}"
1782
+ end
1783
+ ```
1784
+
1785
+ #### Using the duplicate_journey_with_http_info variant
1786
+
1787
+ This returns an Array which contains the response data, status code and headers.
1788
+
1789
+ > <Array(<Journey>, Integer, Hash)> duplicate_journey_with_http_info(app_id, journey_id, opts)
1790
+
1791
+ ```ruby
1792
+ begin
1793
+ # Duplicate journey
1794
+ data, status_code, headers = api_instance.duplicate_journey_with_http_info(app_id, journey_id, opts)
1795
+ p status_code # => 2xx
1796
+ p headers # => { ... }
1797
+ p data # => <Journey>
1798
+ rescue OneSignal::ApiError => e
1799
+ puts "Error when calling DefaultApi->duplicate_journey_with_http_info: #{e}"
1800
+ puts "Status Code: #{e.code}"
1801
+ puts "Response Body: #{e.response_body}"
1802
+ end
1803
+ ```
1804
+
1805
+ ### Parameters
1806
+
1807
+ | Name | Type | Description | Notes |
1808
+ | ---- | ---- | ----------- | ----- |
1809
+ | **app_id** | **String** | Your OneSignal App ID in UUID v4 format. | |
1810
+ | **journey_id** | **String** | UUID of the journey to copy. | |
1811
+ | **duplicate_journey_request** | [**DuplicateJourneyRequest**](DuplicateJourneyRequest.md) | | [optional] |
1812
+
1813
+ ### Return type
1814
+
1815
+ [**Journey**](Journey.md)
1816
+
1817
+ ### Authorization
1818
+
1819
+ [rest_api_key](https://github.com/OneSignal/onesignal-ruby-api#configuration)
1820
+
1821
+ ### HTTP request headers
1822
+
1823
+ - **Content-Type**: application/json
1824
+ - **Accept**: application/json
1825
+
1826
+
1742
1827
  ## estimate_notification_recipients
1743
1828
 
1744
1829
  > <EstimateNotificationRecipientsSuccessResponse> estimate_notification_recipients(estimate_notification_recipients_request)
@@ -1759,7 +1844,7 @@ OneSignal.configure do |config|
1759
1844
  end
1760
1845
 
1761
1846
  api_instance = OneSignal::DefaultApi.new
1762
- estimate_notification_recipients_request = OneSignal::EstimateNotificationRecipientsRequest.new({app_id: 'app_id_example'}) # EstimateNotificationRecipientsRequest |
1847
+ estimate_notification_recipients_request = OneSignal::EstimateNotificationRecipientsRequest.new({app_id: 'YOUR_APP_ID'}) # EstimateNotificationRecipientsRequest |
1763
1848
 
1764
1849
  begin
1765
1850
  # Estimate notification recipients
@@ -2280,6 +2365,176 @@ This endpoint does not need any parameter.
2280
2365
  - **Accept**: application/json
2281
2366
 
2282
2367
 
2368
+ ## get_email_provider_metrics
2369
+
2370
+ > <EmailProviderMetricsResponse> get_email_provider_metrics(app_id, domain, start, _end)
2371
+
2372
+ Get email inbox provider metrics
2373
+
2374
+ Email delivery, opens, clicks, bounces, failures, and spam complaints broken down by inbox provider (Gmail, Outlook, Yahoo, Apple, and more) to pinpoint where deliverability problems are coming from. Metrics are reported for a single sending domain over the requested time range. `start` must be before `end` and no more than 365 days ago. `providers` is empty when the domain is not found for the app or is not currently active for sending.
2375
+
2376
+ ### Examples
2377
+
2378
+ ```ruby
2379
+ require 'onesignal'
2380
+ # setup authorization
2381
+ OneSignal.configure do |config|
2382
+ # Configure Bearer authorization: rest_api_key
2383
+ config.rest_api_key = 'YOUR_REST_API_KEY'
2384
+
2385
+ end
2386
+
2387
+ api_instance = OneSignal::DefaultApi.new
2388
+ app_id = 'YOUR_APP_ID' # String | Your OneSignal App ID in UUID v4 format.
2389
+ domain = 'mail.example.com' # String | The sending domain to report on. Must be an email domain configured for this app.
2390
+ start = Time.parse('2026-08-01T00:00Z') # Time | Start of the reporting window, as an ISO 8601 timestamp (for example, `2026-08-01T00:00:00Z`).
2391
+ _end = Time.parse('2026-08-08T00:00Z') # Time | End of the reporting window, as an ISO 8601 timestamp (for example, `2026-08-08T00:00:00Z`).
2392
+
2393
+ begin
2394
+ # Get email inbox provider metrics
2395
+ result = api_instance.get_email_provider_metrics(app_id, domain, start, _end)
2396
+ p result
2397
+ rescue OneSignal::ApiError => e
2398
+ puts "Error when calling DefaultApi->get_email_provider_metrics: #{e}"
2399
+ puts "Status Code: #{e.code}"
2400
+ # `e.error_messages` flattens any error-envelope shape to an Array<String>;
2401
+ # the raw body remains on `e.response_body`.
2402
+ puts "Error Messages: #{e.error_messages}"
2403
+ puts "Response Body: #{e.response_body}"
2404
+ end
2405
+ ```
2406
+
2407
+ #### Using the get_email_provider_metrics_with_http_info variant
2408
+
2409
+ This returns an Array which contains the response data, status code and headers.
2410
+
2411
+ > <Array(<EmailProviderMetricsResponse>, Integer, Hash)> get_email_provider_metrics_with_http_info(app_id, domain, start, _end)
2412
+
2413
+ ```ruby
2414
+ begin
2415
+ # Get email inbox provider metrics
2416
+ data, status_code, headers = api_instance.get_email_provider_metrics_with_http_info(app_id, domain, start, _end)
2417
+ p status_code # => 2xx
2418
+ p headers # => { ... }
2419
+ p data # => <EmailProviderMetricsResponse>
2420
+ rescue OneSignal::ApiError => e
2421
+ puts "Error when calling DefaultApi->get_email_provider_metrics_with_http_info: #{e}"
2422
+ puts "Status Code: #{e.code}"
2423
+ puts "Response Body: #{e.response_body}"
2424
+ end
2425
+ ```
2426
+
2427
+ ### Parameters
2428
+
2429
+ | Name | Type | Description | Notes |
2430
+ | ---- | ---- | ----------- | ----- |
2431
+ | **app_id** | **String** | Your OneSignal App ID in UUID v4 format. | |
2432
+ | **domain** | **String** | The sending domain to report on. Must be an email domain configured for this app. | |
2433
+ | **start** | **Time** | Start of the reporting window, as an ISO 8601 timestamp (for example, &#x60;2026-08-01T00:00:00Z&#x60;). | |
2434
+ | **_end** | **Time** | End of the reporting window, as an ISO 8601 timestamp (for example, &#x60;2026-08-08T00:00:00Z&#x60;). | |
2435
+
2436
+ ### Return type
2437
+
2438
+ [**EmailProviderMetricsResponse**](EmailProviderMetricsResponse.md)
2439
+
2440
+ ### Authorization
2441
+
2442
+ [rest_api_key](https://github.com/OneSignal/onesignal-ruby-api#configuration)
2443
+
2444
+ ### HTTP request headers
2445
+
2446
+ - **Content-Type**: Not defined
2447
+ - **Accept**: application/json
2448
+
2449
+
2450
+ ## get_email_provider_metrics_timeseries
2451
+
2452
+ > <EmailProviderMetricsTimeseriesResponse> get_email_provider_metrics_timeseries(app_id, domain, start, _end, granularity, opts)
2453
+
2454
+ Get email inbox provider metrics over time
2455
+
2456
+ Email delivery, opens, clicks, bounces, failures, and spam complaints for a sending domain over time, bucketed by hour, day, or month. Use `providers[]` to narrow the totals to specific inbox providers (Gmail, Outlook, Yahoo, Apple, and more) and track how deliverability to them changes. Each event's metrics are totaled across the requested providers, or across all providers when none are given. `start` must be before `end` and no more than 365 days ago, or 60 days ago for `hourly` granularity. `events` is empty when the domain is not found for the app or is not currently active for sending.
2457
+
2458
+ ### Examples
2459
+
2460
+ ```ruby
2461
+ require 'onesignal'
2462
+ # setup authorization
2463
+ OneSignal.configure do |config|
2464
+ # Configure Bearer authorization: rest_api_key
2465
+ config.rest_api_key = 'YOUR_REST_API_KEY'
2466
+
2467
+ end
2468
+
2469
+ api_instance = OneSignal::DefaultApi.new
2470
+ app_id = 'YOUR_APP_ID' # String | Your OneSignal App ID in UUID v4 format.
2471
+ domain = 'mail.example.com' # String | The sending domain to report on. Must be an email domain configured for this app.
2472
+ start = Time.parse('2026-08-01T00:00Z') # Time | Start of the reporting window, as an ISO 8601 timestamp (for example, `2026-08-01T00:00:00Z`).
2473
+ _end = Time.parse('2026-08-08T00:00Z') # Time | End of the reporting window, as an ISO 8601 timestamp (for example, `2026-08-08T00:00:00Z`).
2474
+ granularity = 'hourly' # String | The size of each time bucket. Hourly data is only available for the last 60 days.
2475
+ opts = {
2476
+ providers: ['gmail'] # Array<String> | Inbox providers to include in the totals. Omit to include all providers. Accepted values: `apple`, `att`, `canadian`, `chinese`, `comcast`, `free_fr`, `french`, `german`, `gmail`, `google_workspace`, `googlers`, `inbox_lv`, `italian`, `japanese`, `outlook_365`, `outlook_eu`, `outlook_us`, `proton`, `rackspace`, `russian`, `uk`, `united_online`, `yahoo_eu`, `yahoo_us`, `other_eu`, `other_us`, and `other`. Example: providers[]=gmail&providers[]=yahoo_us
2477
+ }
2478
+
2479
+ begin
2480
+ # Get email inbox provider metrics over time
2481
+ result = api_instance.get_email_provider_metrics_timeseries(app_id, domain, start, _end, granularity, opts)
2482
+ p result
2483
+ rescue OneSignal::ApiError => e
2484
+ puts "Error when calling DefaultApi->get_email_provider_metrics_timeseries: #{e}"
2485
+ puts "Status Code: #{e.code}"
2486
+ # `e.error_messages` flattens any error-envelope shape to an Array<String>;
2487
+ # the raw body remains on `e.response_body`.
2488
+ puts "Error Messages: #{e.error_messages}"
2489
+ puts "Response Body: #{e.response_body}"
2490
+ end
2491
+ ```
2492
+
2493
+ #### Using the get_email_provider_metrics_timeseries_with_http_info variant
2494
+
2495
+ This returns an Array which contains the response data, status code and headers.
2496
+
2497
+ > <Array(<EmailProviderMetricsTimeseriesResponse>, Integer, Hash)> get_email_provider_metrics_timeseries_with_http_info(app_id, domain, start, _end, granularity, opts)
2498
+
2499
+ ```ruby
2500
+ begin
2501
+ # Get email inbox provider metrics over time
2502
+ data, status_code, headers = api_instance.get_email_provider_metrics_timeseries_with_http_info(app_id, domain, start, _end, granularity, opts)
2503
+ p status_code # => 2xx
2504
+ p headers # => { ... }
2505
+ p data # => <EmailProviderMetricsTimeseriesResponse>
2506
+ rescue OneSignal::ApiError => e
2507
+ puts "Error when calling DefaultApi->get_email_provider_metrics_timeseries_with_http_info: #{e}"
2508
+ puts "Status Code: #{e.code}"
2509
+ puts "Response Body: #{e.response_body}"
2510
+ end
2511
+ ```
2512
+
2513
+ ### Parameters
2514
+
2515
+ | Name | Type | Description | Notes |
2516
+ | ---- | ---- | ----------- | ----- |
2517
+ | **app_id** | **String** | Your OneSignal App ID in UUID v4 format. | |
2518
+ | **domain** | **String** | The sending domain to report on. Must be an email domain configured for this app. | |
2519
+ | **start** | **Time** | Start of the reporting window, as an ISO 8601 timestamp (for example, &#x60;2026-08-01T00:00:00Z&#x60;). | |
2520
+ | **_end** | **Time** | End of the reporting window, as an ISO 8601 timestamp (for example, &#x60;2026-08-08T00:00:00Z&#x60;). | |
2521
+ | **granularity** | **String** | The size of each time bucket. Hourly data is only available for the last 60 days. | |
2522
+ | **providers** | [**Array&lt;String&gt;**](String.md) | Inbox providers to include in the totals. Omit to include all providers. Accepted values: &#x60;apple&#x60;, &#x60;att&#x60;, &#x60;canadian&#x60;, &#x60;chinese&#x60;, &#x60;comcast&#x60;, &#x60;free_fr&#x60;, &#x60;french&#x60;, &#x60;german&#x60;, &#x60;gmail&#x60;, &#x60;google_workspace&#x60;, &#x60;googlers&#x60;, &#x60;inbox_lv&#x60;, &#x60;italian&#x60;, &#x60;japanese&#x60;, &#x60;outlook_365&#x60;, &#x60;outlook_eu&#x60;, &#x60;outlook_us&#x60;, &#x60;proton&#x60;, &#x60;rackspace&#x60;, &#x60;russian&#x60;, &#x60;uk&#x60;, &#x60;united_online&#x60;, &#x60;yahoo_eu&#x60;, &#x60;yahoo_us&#x60;, &#x60;other_eu&#x60;, &#x60;other_us&#x60;, and &#x60;other&#x60;. Example: providers[]&#x3D;gmail&amp;providers[]&#x3D;yahoo_us | [optional] |
2523
+
2524
+ ### Return type
2525
+
2526
+ [**EmailProviderMetricsTimeseriesResponse**](EmailProviderMetricsTimeseriesResponse.md)
2527
+
2528
+ ### Authorization
2529
+
2530
+ [rest_api_key](https://github.com/OneSignal/onesignal-ruby-api#configuration)
2531
+
2532
+ ### HTTP request headers
2533
+
2534
+ - **Content-Type**: Not defined
2535
+ - **Accept**: application/json
2536
+
2537
+
2283
2538
  ## get_email_reputation
2284
2539
 
2285
2540
  > <EmailReputationResponse> get_email_reputation(app_id)
@@ -2707,7 +2962,7 @@ end
2707
2962
 
2708
2963
  api_instance = OneSignal::DefaultApi.new
2709
2964
  app_id = 'YOUR_APP_ID' # String | The OneSignal App ID for your app. Available in Keys & IDs.
2710
- segment_id = 'd6c5a3e1-9f17-44a1-9d10-7c0e4a2b1c8e' # String | The segment's unique identifier. Can be found using the View Segments API or in the URL of the segment when viewing it in the dashboard.
2965
+ segment_id = 'd6c5a3e1-9f17-44a1-9d10-7c0e4a2b1c8e' # String | The segment's unique identifier. In the dashboard, go to Audience > Segments, open the segment's options menu, and select Copy segment ID. You can also get it from the View Segments API or the segment's URL in the dashboard.
2711
2966
  opts = {
2712
2967
  include_segment_detail: true # Boolean | Set to true to include segment metadata and filters in the response.
2713
2968
  }
@@ -2751,7 +3006,7 @@ end
2751
3006
  | Name | Type | Description | Notes |
2752
3007
  | ---- | ---- | ----------- | ----- |
2753
3008
  | **app_id** | **String** | The OneSignal App ID for your app. Available in Keys &amp; IDs. | |
2754
- | **segment_id** | **String** | The segment&#39;s unique identifier. Can be found using the View Segments API or in the URL of the segment when viewing it in the dashboard. | |
3009
+ | **segment_id** | **String** | The segment&#39;s unique identifier. In the dashboard, go to Audience &gt; Segments, open the segment&#39;s options menu, and select Copy segment ID. You can also get it from the View Segments API or the segment&#39;s URL in the dashboard. | |
2755
3010
  | **include_segment_detail** | **Boolean** | Set to true to include segment metadata and filters in the response. | [optional] |
2756
3011
 
2757
3012
  ### Return type
@@ -2952,17 +3207,17 @@ end
2952
3207
  api_instance = OneSignal::DefaultApi.new
2953
3208
  organization_id = 'YOUR_ORG_ID' # String | The UUID of the organization to retrieve audit logs for. Must match the authenticated Organization API Key.
2954
3209
  opts = {
2955
- start_time: 'start_time_example', # String | Start of the time range in ISO 8601 format (e.g. 2026-02-01T00:00:00Z). Required unless cursor is provided. Must be within the last 90 days.
2956
- end_time: 'end_time_example', # String | End of the time range in ISO 8601 format. Defaults to the current time. Must be after start_time.
2957
- cursor: 'cursor_example', # String | Pagination cursor returned in a previous response as next_cursor. When provided, start_time and end_time are ignored.
2958
- limit: 56, # Integer | Maximum number of events to return per page. Minimum 1, maximum 100. Values outside this range are clamped automatically by the server.
2959
- app_ids: ['inner_example'], # Array<String> | Filter events by app UUID. Accepts up to 10 values. Org-level events are always included.
2960
- actions: ['inner_example'], # Array<String> | Filter by action type (e.g. notification.sent, segment.created). Accepts up to 20 values.
2961
- actor_ids: ['inner_example'], # Array<String> | Filter by actor UUID (the user or service that performed the action). Accepts up to 10 values.
2962
- actor_emails: ['inner_example'], # Array<String> | Filter by actor email address. Accepts up to 10 values.
2963
- target_types: ['inner_example'], # Array<String> | Filter by the type of resource the action was performed on (e.g. notification, segment, journey). Accepts up to 10 values.
2964
- target_ids: ['inner_example'], # Array<String> | Filter by the UUID of the resource the action was performed on. Accepts up to 10 values.
2965
- ip_addresses: ['inner_example'] # Array<String> | Filter by the IP address the action originated from. Accepts up to 10 values.
3210
+ start_time: '2026-02-01T00:00:00Z', # String | Start of the time range in ISO 8601 format (e.g. 2026-02-01T00:00:00Z). Required unless cursor is provided. Must be within the last 90 days.
3211
+ end_time: '2026-02-02T00:00:00Z', # String | End of the time range in ISO 8601 format. Defaults to the current time. Must be after start_time.
3212
+ cursor: 'YOUR_NEXT_CURSOR', # String | Pagination cursor returned in a previous response as next_cursor. When provided, start_time and end_time are ignored.
3213
+ limit: 50, # Integer | Maximum number of events to return per page. Minimum 1, maximum 100. Values outside this range are clamped automatically by the server.
3214
+ app_ids: ['YOUR_APP_ID'], # Array<String> | Filter events by app UUID. Accepts up to 10 values. Org-level events are always included.
3215
+ actions: ['notification.sent'], # Array<String> | Filter by action type (e.g. notification.sent, segment.created). Accepts up to 20 values.
3216
+ actor_ids: ['YOUR_ACTOR_ID'], # Array<String> | Filter by actor UUID (the user or service that performed the action). Accepts up to 10 values.
3217
+ actor_emails: ['admin@example.com'], # Array<String> | Filter by actor email address. Accepts up to 10 values.
3218
+ target_types: ['notification'], # Array<String> | Filter by the type of resource the action was performed on (e.g. notification, segment, journey). Accepts up to 10 values.
3219
+ target_ids: ['YOUR_TARGET_ID'], # Array<String> | Filter by the UUID of the resource the action was performed on. Accepts up to 10 values.
3220
+ ip_addresses: ['203.0.113.42'] # Array<String> | Filter by the IP address the action originated from. Accepts up to 10 values.
2966
3221
  }
2967
3222
 
2968
3223
  begin
@@ -3130,7 +3385,7 @@ end
3130
3385
  api_instance = OneSignal::DefaultApi.new
3131
3386
  app_id = 'YOUR_APP_ID' # String | Your OneSignal App ID in UUID v4 format.
3132
3387
  activity_type = 'order_status' # String | The name of the Live Activity defined in your app. This should match the attributes struct used in your app's Live Activity implementation.
3133
- start_live_activity_request = OneSignal::StartLiveActivityRequest.new({name: 'name_example', event: 'start', activity_id: 'activity_id_example', event_attributes: 3.56, event_updates: 3.56, contents: OneSignal::LanguageStringMap.new, headings: OneSignal::LanguageStringMap.new}) # StartLiveActivityRequest |
3388
+ start_live_activity_request = OneSignal::StartLiveActivityRequest.new({name: 'YOUR_NAME', event: 'start', activity_id: 'YOUR_ACTIVITY_ID', event_attributes: {}, event_updates: {}, contents: OneSignal::LanguageStringMap.new, headings: OneSignal::LanguageStringMap.new}) # StartLiveActivityRequest |
3134
3389
 
3135
3390
  begin
3136
3391
  # Start Live Activity
@@ -3690,7 +3945,7 @@ end
3690
3945
  api_instance = OneSignal::DefaultApi.new
3691
3946
  app_id = 'YOUR_APP_ID' # String | The OneSignal App ID for your app. Available in Keys & IDs.
3692
3947
  activity_id = '12345' # String | Live Activity record ID
3693
- update_live_activity_request = OneSignal::UpdateLiveActivityRequest.new({name: 'name_example', event: 'update', event_updates: 3.56}) # UpdateLiveActivityRequest |
3948
+ update_live_activity_request = OneSignal::UpdateLiveActivityRequest.new({name: 'YOUR_NAME', event: 'update', event_updates: {}}) # UpdateLiveActivityRequest |
3694
3949
 
3695
3950
  begin
3696
3951
  # Update a Live Activity via Push
@@ -3769,9 +4024,9 @@ end
3769
4024
 
3770
4025
  api_instance = OneSignal::DefaultApi.new
3771
4026
  app_id = 'YOUR_APP_ID' # String | The OneSignal App ID for your app. Available in Keys & IDs.
3772
- segment_id = 'd6c5a3e1-9f17-44a1-9d10-7c0e4a2b1c8e' # String | The segment's unique identifier. Can be found using the View Segments API or in the URL of the segment when viewing it in the dashboard.
4027
+ segment_id = 'd6c5a3e1-9f17-44a1-9d10-7c0e4a2b1c8e' # String | The segment's unique identifier. In the dashboard, go to Audience > Segments, open the segment's options menu, and select Copy segment ID. You can also get it from the View Segments API or the segment's URL in the dashboard.
3773
4028
  opts = {
3774
- update_segment_request: OneSignal::UpdateSegmentRequest.new({name: 'name_example'}) # UpdateSegmentRequest |
4029
+ update_segment_request: OneSignal::UpdateSegmentRequest.new({name: 'YOUR_NAME'}) # UpdateSegmentRequest |
3775
4030
  }
3776
4031
 
3777
4032
  begin
@@ -3813,7 +4068,7 @@ end
3813
4068
  | Name | Type | Description | Notes |
3814
4069
  | ---- | ---- | ----------- | ----- |
3815
4070
  | **app_id** | **String** | The OneSignal App ID for your app. Available in Keys &amp; IDs. | |
3816
- | **segment_id** | **String** | The segment&#39;s unique identifier. Can be found using the View Segments API or in the URL of the segment when viewing it in the dashboard. | |
4071
+ | **segment_id** | **String** | The segment&#39;s unique identifier. In the dashboard, go to Audience &gt; Segments, open the segment&#39;s options menu, and select Copy segment ID. You can also get it from the View Segments API or the segment&#39;s URL in the dashboard. | |
3817
4072
  | **update_segment_request** | [**UpdateSegmentRequest**](UpdateSegmentRequest.md) | | [optional] |
3818
4073
 
3819
4074
  ### Return type
@@ -4407,7 +4662,7 @@ end
4407
4662
  api_instance = OneSignal::DefaultApi.new
4408
4663
  app_id = 'YOUR_APP_ID' # String | Your OneSignal App ID in UUID v4 format.
4409
4664
  opts = {
4410
- cursor: 'cursor_example', # String | Opaque pagination token from a previous response's next_cursor. Omit for the first page.
4665
+ cursor: 'YOUR_NEXT_CURSOR', # String | Opaque pagination token from a previous response's next_cursor. Omit for the first page.
4411
4666
  limit: 50 # Integer | Maximum journeys to return per page. Minimum 1, maximum 50.
4412
4667
  }
4413
4668
 
@@ -0,0 +1,30 @@
1
+ # OneSignal::DuplicateJourneyOverrides
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **name** | **String** | Name for the copy, up to 300 characters. If you omit it, the copy takes the name of the source plus \&quot; (Copy)\&quot;. | [optional] |
8
+ | **description** | **String** | Optional journey description, up to 1024 characters. If you omit it, the copy takes the description of the source. Send null to clear it. | [optional] |
9
+ | **audience** | [**JourneyAudience**](JourneyAudience.md) | | [optional] |
10
+ | **early_exit** | [**JourneyEarlyExit**](JourneyEarlyExit.md) | | [optional] |
11
+ | **reentry_rules** | [**JourneyReentryRules**](JourneyReentryRules.md) | | [optional] |
12
+ | **schedule** | [**JourneySchedule**](JourneySchedule.md) | | [optional] |
13
+ | **nodes** | [**Array&lt;JourneyNode&gt;**](JourneyNode.md) | Full ordered list of nodes. Replaces the copied graph. Server-assigned id fields are rejected. | [optional] |
14
+
15
+ ## Example
16
+
17
+ ```ruby
18
+ require 'onesignal'
19
+
20
+ instance = OneSignal::DuplicateJourneyOverrides.new(
21
+ name: nil,
22
+ description: nil,
23
+ audience: nil,
24
+ early_exit: nil,
25
+ reentry_rules: nil,
26
+ schedule: nil,
27
+ nodes: nil
28
+ )
29
+ ```
30
+
@@ -0,0 +1,18 @@
1
+ # OneSignal::DuplicateJourneyRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **overrides** | [**DuplicateJourneyOverrides**](DuplicateJourneyOverrides.md) | | [optional] |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'onesignal'
13
+
14
+ instance = OneSignal::DuplicateJourneyRequest.new(
15
+ overrides: nil
16
+ )
17
+ ```
18
+
@@ -0,0 +1,34 @@
1
+ # OneSignal::EmailMetrics
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **sent** | **Integer** | The number of emails sent. | [optional] |
8
+ | **delivered** | **Integer** | The number of emails successfully delivered. | [optional] |
9
+ | **opened** | **Integer** | The total number of email opens, including repeat opens by the same recipient. | [optional] |
10
+ | **clicked** | **Integer** | The total number of email link clicks, including repeat clicks by the same recipient. | [optional] |
11
+ | **unique_opened** | **Integer** | The number of emails opened at least once. | [optional] |
12
+ | **unique_clicked** | **Integer** | The number of emails with at least one link click. | [optional] |
13
+ | **failed** | **Integer** | The number of emails that failed to send. | [optional] |
14
+ | **bounced** | **Integer** | The number of emails that bounced. | [optional] |
15
+ | **complained** | **Integer** | The number of emails that recipients reported as spam. | [optional] |
16
+
17
+ ## Example
18
+
19
+ ```ruby
20
+ require 'onesignal'
21
+
22
+ instance = OneSignal::EmailMetrics.new(
23
+ sent: 100,
24
+ delivered: 95,
25
+ opened: 40,
26
+ clicked: 10,
27
+ unique_opened: 35,
28
+ unique_clicked: 8,
29
+ failed: 5,
30
+ bounced: 3,
31
+ complained: 1
32
+ )
33
+ ```
34
+
@@ -0,0 +1,20 @@
1
+ # OneSignal::EmailProviderMetrics
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **provider** | **String** | The inbox provider. Known values include &#x60;apple&#x60;, &#x60;att&#x60;, &#x60;canadian&#x60;, &#x60;chinese&#x60;, &#x60;comcast&#x60;, &#x60;free_fr&#x60;, &#x60;french&#x60;, &#x60;german&#x60;, &#x60;gmail&#x60;, &#x60;google_workspace&#x60;, &#x60;googlers&#x60;, &#x60;inbox_lv&#x60;, &#x60;italian&#x60;, &#x60;japanese&#x60;, &#x60;outlook_365&#x60;, &#x60;outlook_eu&#x60;, &#x60;outlook_us&#x60;, &#x60;proton&#x60;, &#x60;rackspace&#x60;, &#x60;russian&#x60;, &#x60;uk&#x60;, &#x60;united_online&#x60;, &#x60;yahoo_eu&#x60;, &#x60;yahoo_us&#x60;, &#x60;other_eu&#x60;, &#x60;other_us&#x60;, and &#x60;other&#x60;. New providers may be added over time. | [optional] |
8
+ | **metrics** | [**EmailMetrics**](EmailMetrics.md) | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'onesignal'
14
+
15
+ instance = OneSignal::EmailProviderMetrics.new(
16
+ provider: 'gmail',
17
+ metrics: nil
18
+ )
19
+ ```
20
+
@@ -0,0 +1,20 @@
1
+ # OneSignal::EmailProviderMetricsEvent
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **date** | **Time** | The start of the time bucket, aligned to the hour, day, or month in UTC. | [optional] |
8
+ | **metrics** | [**EmailMetrics**](EmailMetrics.md) | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'onesignal'
14
+
15
+ instance = OneSignal::EmailProviderMetricsEvent.new(
16
+ date: 2026-08-01T00:00Z,
17
+ metrics: nil
18
+ )
19
+ ```
20
+