knockapi 1.42.0 → 1.45.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: afb0347a9022e3737e27a4cda9592a99130fe4e1cf701621d5fd23a96b319893
4
- data.tar.gz: da410e0b30cc88ec3c43f541e0799e4e76e75c9e7539f10e2cf5b0f4fe7616fa
3
+ metadata.gz: 389cb270b07a7853e31c02e5bc926af75dca26912c130ab77066dcacf65d7a25
4
+ data.tar.gz: 4a62387911393e6e35efb38cd55250a1a28dae07d37277bf355e54710a18d4c2
5
5
  SHA512:
6
- metadata.gz: 67f738c898c02679260b948b981d7907cdcf10a419e320485ed5a217b649387086cc6e9603bcb736b14a2389f727d9ad8689328a7d993cde1761448adb5378da
7
- data.tar.gz: 1e78c6da32be0c18670b0e6f61d1e21f02d51903e670c07df8a3627a7f51086e54167310b232371e91d06d09d3a0e0f7262de08ec56bdf99b5a827a28afcad9f
6
+ metadata.gz: 84a01aa4f94ede56b31dd048bb44684cc7d375e7839f3106dac125246d580a6da34e783a9029031e727889dcaf498605fb37b9fa9eb290255cb980826cc81d48
7
+ data.tar.gz: e8dae3b510c751f3484e29d4cdedc8331feb3bddbb84fe5133dfaa3f631b73f7613a5a82168367c58ce610a6fa1a3b22a5bd549af1f276f06780f7112de4915d
data/CHANGELOG.md CHANGED
@@ -1,5 +1,131 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.45.0](https://github.com/knocklabs/knock-ruby/compare/v1.44.0...v1.45.0) (2026-11-03)
4
+
5
+
6
+ ### Features
7
+
8
+ * add ending_at property to Schedule ([#27](https://github.com/knocklabs/knock-ruby/issues/27)) ([911dd9f](https://github.com/knocklabs/knock-ruby/commit/911dd9f5b27e97085bb58175431a4b2d28535e28))
9
+ * add message list endpoint ([bba1345](https://github.com/knocklabs/knock-ruby/commit/bba13452b1613b80864a01614853afa0af4d59c1))
10
+ * add new users API for managing channel data ([#1](https://github.com/knocklabs/knock-ruby/issues/1)) ([6998d6e](https://github.com/knocklabs/knock-ruby/commit/6998d6eac56e6931a5a26b0fe73a9c20ddcad461))
11
+ * **kno-2929:** add support for trigger_data filter ([#8](https://github.com/knocklabs/knock-ruby/issues/8)) ([2d8e8f5](https://github.com/knocklabs/knock-ruby/commit/2d8e8f54146a582de55eadce4a7b64e5a7c49baf))
12
+ * **kno-3345:** add support for schedules API ([#11](https://github.com/knocklabs/knock-ruby/issues/11)) ([ffd4ca8](https://github.com/knocklabs/knock-ruby/commit/ffd4ca8ff4fa59946ec2c0603b47ee17a9335563))
13
+ * **kno-3383:** add idempotency_key header ([#10](https://github.com/knocklabs/knock-ruby/issues/10)) ([9d68604](https://github.com/knocklabs/knock-ruby/commit/9d68604b20b41ae0b24fbabab56d11422af3b65d))
14
+ * **kno-3762:** add subscriptions as recipient endpoints ([#13](https://github.com/knocklabs/knock-ruby/issues/13)) ([01662f3](https://github.com/knocklabs/knock-ruby/commit/01662f35ee1ea8f00d02c6a5fd478437f259349f))
15
+ * **kno-4286:** bulk add subscriptions method ([#15](https://github.com/knocklabs/knock-ruby/issues/15)) ([237e77e](https://github.com/knocklabs/knock-ruby/commit/237e77e8d3b2b6a87b8ea1c047d1e82f6aec588e))
16
+ * List users can now be sorted with the new order parameter (v0.1.1781) ([8c9a7f1](https://github.com/knocklabs/knock-ruby/commit/8c9a7f13bcfd0ddc39c5f99aeb08b3dc68eb297b))
17
+ * List users can now be sorted with the optional order parameter (v0.1.1783) ([84d4a1d](https://github.com/knocklabs/knock-ruby/commit/84d4a1de476370fc8ef76917e43685a3f752376b))
18
+ * **messages:** add new message endpoints support ([45cfb2b](https://github.com/knocklabs/knock-ruby/commit/45cfb2b80822592926f09fc631735e640201b8b8))
19
+ * **messages:** add new message endpoints support ([4a9723d](https://github.com/knocklabs/knock-ruby/commit/4a9723d6418e9f1ec27e25adee5e0305daf3cdb2))
20
+ * object preferences and unset channel data ([#5](https://github.com/knocklabs/knock-ruby/issues/5)) ([210fad3](https://github.com/knocklabs/knock-ruby/commit/210fad39a53699221b3c0110dcf41007b69dc820))
21
+ * objects api, user bulk api, deprecate prefs ([#2](https://github.com/knocklabs/knock-ruby/issues/2)) ([87c48e9](https://github.com/knocklabs/knock-ruby/commit/87c48e909754e020b34c1521fa0fea9e68eff486))
22
+ * **objects:** add object subscriptions ([#9](https://github.com/knocklabs/knock-ruby/issues/9)) ([3f8cf68](https://github.com/knocklabs/knock-ruby/commit/3f8cf6847e979562e1bcb77552e48faf96715711))
23
+ * set publish release settings ([8908444](https://github.com/knocklabs/knock-ruby/commit/89084447e6caf85a9079112f6fe516d271ea9a29))
24
+ * set up stlc automation workflows/actions ([fb922cd](https://github.com/knocklabs/knock-ruby/commit/fb922cdfb92e5138672221dc8980fcec4090dd23))
25
+ * **stlc:** refresh API stainless config with stlc autoconfig ([6efaf18](https://github.com/knocklabs/knock-ruby/commit/6efaf18a4f1175880f796efb38aec623ad04fedd))
26
+ * update api spec to v0.1.1592 ([e628cf0](https://github.com/knocklabs/knock-ruby/commit/e628cf0051f8aae2c0a1041f5b1afc4502033d92))
27
+ * update api spec to v0.1.1593 ([fe8a331](https://github.com/knocklabs/knock-ruby/commit/fe8a3318e84d37c5f1ef51fb9c5b293b763ff64b))
28
+ * update api spec to v0.1.1594 ([1c951dd](https://github.com/knocklabs/knock-ruby/commit/1c951dde07ece2a6602cf87e31a717d8b5d68f66))
29
+ * update api spec to v0.1.1599 ([e087beb](https://github.com/knocklabs/knock-ruby/commit/e087beb49fb56d8fbf123858163008c4e98dc984))
30
+ * update api spec to v0.1.1605 ([31ddc3e](https://github.com/knocklabs/knock-ruby/commit/31ddc3e8e474b11a8df37e05fff603e4e34b28c8))
31
+ * update api spec to v0.1.1607 ([3b5254e](https://github.com/knocklabs/knock-ruby/commit/3b5254e4f12c10a447d7ca5fbfd5a9a4d5af15c1))
32
+ * update api spec to v0.1.1608 ([a76e7b2](https://github.com/knocklabs/knock-ruby/commit/a76e7b2aa80265a5f701374aa06c3c447be44825))
33
+ * update api spec to v0.1.1609 ([4f22935](https://github.com/knocklabs/knock-ruby/commit/4f22935b2198ff54a122a7843cec9eec93602881))
34
+ * update api spec to v0.1.1610 ([b65f51e](https://github.com/knocklabs/knock-ruby/commit/b65f51ef1b6ea212c472df607b49edfade13cd1f))
35
+ * update api spec to v0.1.1611 ([7614e38](https://github.com/knocklabs/knock-ruby/commit/7614e383339d5e96f56799bffd97b497df002b3a))
36
+ * update api spec to v0.1.1614 ([b57ec7b](https://github.com/knocklabs/knock-ruby/commit/b57ec7b41caae97b5e5d4aa41fa5bf51fbb76889))
37
+ * update api spec to v0.1.1616 ([ff707e6](https://github.com/knocklabs/knock-ruby/commit/ff707e6c26c86dd0b79fcac7257bd144fc091a73))
38
+ * update api spec to v0.1.1617 ([80db750](https://github.com/knocklabs/knock-ruby/commit/80db7504ef6a32a6c5ce55514f183674f3843a64))
39
+ * update api spec to v0.1.1618 ([999a5d9](https://github.com/knocklabs/knock-ruby/commit/999a5d92b7e831879cf27a68685d33a1e776ed51))
40
+ * update api spec to v0.1.1624 ([e1c5286](https://github.com/knocklabs/knock-ruby/commit/e1c5286dc8d174c08afd44b7358cc383884f46d9))
41
+ * update api spec to v0.1.1627 ([7a2f372](https://github.com/knocklabs/knock-ruby/commit/7a2f372d0516ca4635ed9358bb1bbaf705c9af07))
42
+ * update api spec to v0.1.1629 ([a01f51c](https://github.com/knocklabs/knock-ruby/commit/a01f51c838bca069dd30057eb4e84b7d9b3d6441))
43
+ * update api spec to v0.1.1630 ([5396e07](https://github.com/knocklabs/knock-ruby/commit/5396e0752bca5be56746740aecf3cd962c616669))
44
+ * update api spec to v0.1.1631 ([24de0a8](https://github.com/knocklabs/knock-ruby/commit/24de0a8cf2022c675c5aef0043f4eaead6ae7452))
45
+ * update api spec to v0.1.1632 ([8010be1](https://github.com/knocklabs/knock-ruby/commit/8010be1ae272dc56131fe1e99acf9687ac7bd30e))
46
+ * update api spec to v0.1.1636 ([a19fe99](https://github.com/knocklabs/knock-ruby/commit/a19fe996f3f234355acc4d222a4839ee31a5dd49))
47
+ * update api spec to v0.1.1640 ([82e0daa](https://github.com/knocklabs/knock-ruby/commit/82e0daa9e78471abf3c10a594cf64ec4a84f2354))
48
+ * update api spec to v0.1.1641 ([b75f252](https://github.com/knocklabs/knock-ruby/commit/b75f25223c96db4665dfaec7f94e0dbe10b6ee47))
49
+ * update api spec to v0.1.1642 ([f939368](https://github.com/knocklabs/knock-ruby/commit/f939368e531addc3cb0ca7c2574f22e5556cd7eb))
50
+ * update api spec to v0.1.1644 ([d97f09e](https://github.com/knocklabs/knock-ruby/commit/d97f09e7d86ddb2dd93ecc0ffe56dca00f4e3b96))
51
+ * update api spec to v0.1.1649 ([fea5008](https://github.com/knocklabs/knock-ruby/commit/fea50086b5a0dab94bc10f38e4220f7789e9556a))
52
+ * update api spec to v0.1.1651 ([0cced42](https://github.com/knocklabs/knock-ruby/commit/0cced425d2a221aecb9f48445d87f50f9adf1458))
53
+ * update api spec to v0.1.1661 ([96b1707](https://github.com/knocklabs/knock-ruby/commit/96b170796a5ed2ddd9aafbbe5e3e93c7ba785fcc))
54
+ * update api spec to v0.1.1662 ([1036db0](https://github.com/knocklabs/knock-ruby/commit/1036db0b2fcff875ed192b8a70a5cf22dbb87ae6))
55
+ * update api spec to v0.1.1664 ([bbd19f1](https://github.com/knocklabs/knock-ruby/commit/bbd19f1d3f0db78120fdc7254ea494be4f17154d))
56
+ * update api spec to v0.1.1683 ([b30cd0b](https://github.com/knocklabs/knock-ruby/commit/b30cd0b5d4ce60d177f81d8990c0c4de12d52c0d))
57
+ * update api spec to v0.1.1686 ([b8222be](https://github.com/knocklabs/knock-ruby/commit/b8222bed86c35edf2637c9d6cc076da775f00e65))
58
+ * update api spec to v0.1.1687 ([9468daa](https://github.com/knocklabs/knock-ruby/commit/9468daa27c0c622266151a4511907feeaca920d5))
59
+ * update api spec to v0.1.1694 ([db7a540](https://github.com/knocklabs/knock-ruby/commit/db7a54026ba280c6bfc3f3ba544dba16fa6c063e))
60
+ * update api spec to v0.1.1698 ([1319476](https://github.com/knocklabs/knock-ruby/commit/1319476e778df65eb25dd417faa6bf363480259e))
61
+ * update api spec to v0.1.1699 ([3b8a336](https://github.com/knocklabs/knock-ruby/commit/3b8a336570ae3c51bef9044dafcbcc03c50425d3))
62
+ * update api spec to v0.1.1707 ([6b60fa7](https://github.com/knocklabs/knock-ruby/commit/6b60fa7fa700edb7324bc373e29a135b7a84d7d0))
63
+ * update api spec to v0.1.1712 ([5f68394](https://github.com/knocklabs/knock-ruby/commit/5f683948e074e9e534aa5ba176de4198471f57ed))
64
+ * update api spec to v0.1.1757 ([cfb7fdc](https://github.com/knocklabs/knock-ruby/commit/cfb7fdc332b33ec609b7c6f98617c7403afb73dd))
65
+ * update api spec to v0.1.1759 ([0df4223](https://github.com/knocklabs/knock-ruby/commit/0df422360adf6690fab64ff6e8da2cdefaa28d8f))
66
+ * update api spec to v0.1.1760 ([608426f](https://github.com/knocklabs/knock-ruby/commit/608426f5ce331a9e45b324978d8e2df35afa2e3c))
67
+ * **users:** add merge user endpoint ([#3](https://github.com/knocklabs/knock-ruby/issues/3)) ([ab322fb](https://github.com/knocklabs/knock-ruby/commit/ab322fb0e24f35867989c5cadd2918a3e15ac500))
68
+
69
+
70
+ ### Bug Fixes
71
+
72
+ * issue with host in client ([92c799a](https://github.com/knocklabs/knock-ruby/commit/92c799a2e9f6b57a3f3b0469f71cfdcaa118260b))
73
+ * knockapi to knock in readme examples ([#14](https://github.com/knocklabs/knock-ruby/issues/14)) ([b81b2e1](https://github.com/knocklabs/knock-ruby/commit/b81b2e1a01b792d8253f97cd1ed711dcc6f6acd4))
74
+ * make actor optional on trigger call ([#18](https://github.com/knocklabs/knock-ruby/issues/18)) ([e1cd14c](https://github.com/knocklabs/knock-ruby/commit/e1cd14cd6b1a0374db01c46e2888cec0171f8e7c))
75
+ * Messages now report branch path, and listUsers no longer accepts the order parameter (v0.1.1782) ([43415ec](https://github.com/knocklabs/knock-ruby/commit/43415ec87750332bc1d4226eec27191ef75b8ec6))
76
+ * rework knock client usage ([#20](https://github.com/knocklabs/knock-ruby/issues/20)) ([30cdc43](https://github.com/knocklabs/knock-ruby/commit/30cdc4329cae899d8d29818b5606f3566a1c16af))
77
+ * support additional error types and fall through correctly ([#25](https://github.com/knocklabs/knock-ruby/issues/25)) ([cc62a5f](https://github.com/knocklabs/knock-ruby/commit/cc62a5fcfd77964154c5bafdc3a1109418035c26))
78
+
79
+
80
+ ### Chores
81
+
82
+ * add 429 error ([cfe79a4](https://github.com/knocklabs/knock-ruby/commit/cfe79a4db24444f78796f70de1914980ab66a73d))
83
+ * bump gemfile version ([1de8a54](https://github.com/knocklabs/knock-ruby/commit/1de8a54ecab262373dadb165c63235298da244ca))
84
+ * bump gemfile.lock ([9cdea3b](https://github.com/knocklabs/knock-ruby/commit/9cdea3b2b8491c7cec8bcc36bd13332a4f3a4cd0))
85
+ * bump version ([#7](https://github.com/knocklabs/knock-ruby/issues/7)) ([3f3c3dc](https://github.com/knocklabs/knock-ruby/commit/3f3c3dc0be02a7ab8a9773efecfae44bf3d18ed6))
86
+ * **ci:** adding github action for publishing ([266acc1](https://github.com/knocklabs/knock-ruby/commit/266acc14cbfda6afde531e548da8896cd3479b25))
87
+ * fix ruby versions to latest ([#23](https://github.com/knocklabs/knock-ruby/issues/23)) ([d0d2849](https://github.com/knocklabs/knock-ruby/commit/d0d2849e6403ec5fc8ac6f904d037486b238390e))
88
+ * forward SDK_WRITE_TOKEN to the back-sync workflow ([b79c2b9](https://github.com/knocklabs/knock-ruby/commit/b79c2b9bfb80b385fcdf312cee231b6fd6d25f84))
89
+ * **kno-1566:** add tenants functions ([#6](https://github.com/knocklabs/knock-ruby/issues/6)) ([9ab845d](https://github.com/knocklabs/knock-ruby/commit/9ab845dd4f1ed9eeb244d5908a59843b4549706d))
90
+ * **KNO-5030:** update comments ([#16](https://github.com/knocklabs/knock-ruby/issues/16)) ([3424623](https://github.com/knocklabs/knock-ruby/commit/3424623ee8835d3104700c7eb28edd27cab1266d))
91
+ * **kno-5607:** add recipients params to object subscriptions comment ([#17](https://github.com/knocklabs/knock-ruby/issues/17)) ([b0543b2](https://github.com/knocklabs/knock-ruby/commit/b0543b2c799e057546ee7f4a8959cb67f68db2d1))
92
+ * prepare for 0.4.0 release ([c7bdb88](https://github.com/knocklabs/knock-ruby/commit/c7bdb88382f0733de1325a962e07b5a5081505c7))
93
+ * prepare for 0.4.1 release ([826a187](https://github.com/knocklabs/knock-ruby/commit/826a18751a9896e528009a06be6623ccacaa6816))
94
+ * prepare for 0.4.10 release ([2eebe42](https://github.com/knocklabs/knock-ruby/commit/2eebe42d582c108721efffb981e2329aaa6819b6))
95
+ * prepare for 0.4.2 release ([bf2a4ee](https://github.com/knocklabs/knock-ruby/commit/bf2a4ee9c4e3d64de9136512d23ea8005c332de3))
96
+ * prepare for 0.4.3 release ([bcf0ea8](https://github.com/knocklabs/knock-ruby/commit/bcf0ea82ed5979bafeb9c3647da044983bc497c9))
97
+ * prepare for 0.4.5 release ([07d06d1](https://github.com/knocklabs/knock-ruby/commit/07d06d1cc85efac31805eb38d57214b3d9291289))
98
+ * prepare for 0.4.6 release ([35db5c7](https://github.com/knocklabs/knock-ruby/commit/35db5c7d2161ed69293a2acfd9f5f4fb5e1e988e))
99
+ * prepare for 0.5.1 release ([ac8a60d](https://github.com/knocklabs/knock-ruby/commit/ac8a60d96511985e6ceb50de68253243f623e8ab))
100
+ * prepare v0.4.11 release ([9158025](https://github.com/knocklabs/knock-ruby/commit/91580258973fd6de724192bdb136759056c531d4))
101
+ * trivial test changes ([a52dcba](https://github.com/knocklabs/knock-ruby/commit/a52dcbaecab1282c1a1568e8663d2c2b0ff071c0))
102
+ * version 0.4.7 ([7c5d642](https://github.com/knocklabs/knock-ruby/commit/7c5d6424c160587b7e9f1c9a2bc49a49cad1e3c3))
103
+ * version 0.4.8 ([45e744a](https://github.com/knocklabs/knock-ruby/commit/45e744a507194ee2dfed33fdae38628b2750a2a0))
104
+ * version 0.4.9 ([158f1ee](https://github.com/knocklabs/knock-ruby/commit/158f1eeb25173e49f3336e4e21e129f9220e085d))
105
+ * **workflows:** actor is optional ([a0525fc](https://github.com/knocklabs/knock-ruby/commit/a0525fc41fa187a3eaa8a9917cbfa4d0c071e243))
106
+
107
+ ## [1.44.0](https://github.com/knocklabs/knock-ruby/compare/v1.43.0...v1.44.0) (2026-10-20)
108
+
109
+
110
+ ### Features
111
+
112
+ * List users can now be sorted with the optional order parameter (v0.1.1783) ([84d4a1d](https://github.com/knocklabs/knock-ruby/commit/84d4a1de476370fc8ef76917e43685a3f752376b))
113
+
114
+ ## [1.43.0](https://github.com/knocklabs/knock-ruby/compare/v1.42.0...v1.43.0) (2026-10-19)
115
+
116
+
117
+ ### Features
118
+
119
+ * List users can now be sorted with the new order parameter (v0.1.1781) ([8c9a7f1](https://github.com/knocklabs/knock-ruby/commit/8c9a7f13bcfd0ddc39c5f99aeb08b3dc68eb297b))
120
+ * update api spec to v0.1.1757 ([cfb7fdc](https://github.com/knocklabs/knock-ruby/commit/cfb7fdc332b33ec609b7c6f98617c7403afb73dd))
121
+ * update api spec to v0.1.1759 ([0df4223](https://github.com/knocklabs/knock-ruby/commit/0df422360adf6690fab64ff6e8da2cdefaa28d8f))
122
+ * update api spec to v0.1.1760 ([608426f](https://github.com/knocklabs/knock-ruby/commit/608426f5ce331a9e45b324978d8e2df35afa2e3c))
123
+
124
+
125
+ ### Bug Fixes
126
+
127
+ * Messages now report branch path, and listUsers no longer accepts the order parameter (v0.1.1782) ([43415ec](https://github.com/knocklabs/knock-ruby/commit/43415ec87750332bc1d4226eec27191ef75b8ec6))
128
+
3
129
  ## [1.42.0](https://github.com/knocklabs/knock-ruby/compare/v1.41.0...v1.42.0) (2026-09-17)
4
130
 
5
131
 
data/README.md CHANGED
@@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
17
17
  <!-- x-release-please-start-version -->
18
18
 
19
19
  ```ruby
20
- gem "knockapi", "~> 1.42.0"
20
+ gem "knockapi", "~> 1.45.0"
21
21
  ```
22
22
 
23
23
  <!-- x-release-please-end -->
@@ -225,25 +225,25 @@ knock.workflows.trigger("dinosaurs-loose", **params)
225
225
  Since this library does not depend on `sorbet-runtime`, it cannot provide [`T::Enum`](https://sorbet.org/docs/tenum) instances. Instead, we provide "tagged symbols" instead, which is always a primitive at runtime:
226
226
 
227
227
  ```ruby
228
- # :merge
229
- puts(Knockapi::Recipients::PreferenceSetRequest::PersistenceStrategy::MERGE)
228
+ # :asc
229
+ puts(Knockapi::UserListParams::Order::ASC)
230
230
 
231
- # Revealed type: `T.all(Knockapi::Recipients::PreferenceSetRequest::PersistenceStrategy, Symbol)`
232
- T.reveal_type(Knockapi::Recipients::PreferenceSetRequest::PersistenceStrategy::MERGE)
231
+ # Revealed type: `T.all(Knockapi::UserListParams::Order, Symbol)`
232
+ T.reveal_type(Knockapi::UserListParams::Order::ASC)
233
233
  ```
234
234
 
235
235
  Enum parameters have a "relaxed" type, so you can either pass in enum constants or their literal value:
236
236
 
237
237
  ```ruby
238
238
  # Using the enum constants preserves the tagged type information:
239
- knock.users.set_preferences(
240
- _persistence_strategy: Knockapi::Recipients::PreferenceSetRequest::PersistenceStrategy::MERGE,
239
+ knock.users.list(
240
+ order: Knockapi::UserListParams::Order::ASC,
241
241
  # …
242
242
  )
243
243
 
244
244
  # Literal values are also permissible:
245
- knock.users.set_preferences(
246
- _persistence_strategy: :merge,
245
+ knock.users.list(
246
+ order: :asc,
247
247
  # …
248
248
  )
249
249
  ```
@@ -250,6 +250,16 @@ module Knockapi
250
250
  # @return [String]
251
251
  required :version_id, String
252
252
 
253
+ # @!attribute branch_path
254
+ # The branch ancestry of the step that generated the message, outermost first.
255
+ # Each segment is the branching step and the branch taken. Omitted when the step
256
+ # is not nested under a branch.
257
+ #
258
+ # @return [Array<Knockapi::Models::Message::Source::BranchPath>, nil]
259
+ optional :branch_path,
260
+ -> { Knockapi::Internal::Type::ArrayOf[Knockapi::Message::Source::BranchPath] },
261
+ nil?: true
262
+
253
263
  # @!attribute step_ref
254
264
  # The step reference for the step in the workflow that generated the message.
255
265
  #
@@ -276,7 +286,7 @@ module Knockapi
276
286
  # @return [String, nil]
277
287
  optional :workflow_run_id, String, nil?: true
278
288
 
279
- # @!method initialize(_typename:, categories:, key:, version_id:, step_ref: nil, type: nil, workflow_recipient_run_id: nil, workflow_run_id: nil)
289
+ # @!method initialize(_typename:, categories:, key:, version_id:, branch_path: nil, step_ref: nil, type: nil, workflow_recipient_run_id: nil, workflow_run_id: nil)
280
290
  # Some parameter documentations has been truncated, see
281
291
  # {Knockapi::Models::Message::Source} for more details.
282
292
  #
@@ -290,6 +300,8 @@ module Knockapi
290
300
  #
291
301
  # @param version_id [String] The ID of the version of the workflow or guide that triggered the message.
292
302
  #
303
+ # @param branch_path [Array<Knockapi::Models::Message::Source::BranchPath>, nil] The branch ancestry of the step that generated the message, outermost first. Eac
304
+ #
293
305
  # @param step_ref [String, nil] The step reference for the step in the workflow that generated the message.
294
306
  #
295
307
  # @param type [Symbol, Knockapi::Models::Message::Source::Type] Whether this message was generated from a workflow, broadcast, or guide.
@@ -298,6 +310,33 @@ module Knockapi
298
310
  #
299
311
  # @param workflow_run_id [String, nil] The unique identifier for the workflow run that generated this message. Only pre
300
312
 
313
+ class BranchPath < Knockapi::Internal::Type::BaseModel
314
+ # @!attribute branch_id
315
+ # The ID of the branch taken.
316
+ #
317
+ # @return [String]
318
+ required :branch_id, String
319
+
320
+ # @!attribute step_ref
321
+ # The reference of the branching step.
322
+ #
323
+ # @return [String]
324
+ required :step_ref, String
325
+
326
+ # @!attribute step_type
327
+ # The type of the branching step.
328
+ #
329
+ # @return [String]
330
+ required :step_type, String
331
+
332
+ # @!method initialize(branch_id:, step_ref:, step_type:)
333
+ # @param branch_id [String] The ID of the branch taken.
334
+ #
335
+ # @param step_ref [String] The reference of the branching step.
336
+ #
337
+ # @param step_type [String] The type of the branching step.
338
+ end
339
+
301
340
  # Whether this message was generated from a workflow, broadcast, or guide.
302
341
  #
303
342
  # @see Knockapi::Models::Message::Source#type
@@ -25,19 +25,31 @@ module Knockapi
25
25
  # @return [Array<Symbol, Knockapi::Models::UserListParams::Include>, nil]
26
26
  optional :include, -> { Knockapi::Internal::Type::ArrayOf[enum: Knockapi::UserListParams::Include] }
27
27
 
28
+ # @!attribute order
29
+ # Sort by insertion order. Pass `asc` for oldest first, or `desc` for newest
30
+ # first. Defaults to oldest first when omitted.
31
+ #
32
+ # @return [Symbol, Knockapi::Models::UserListParams::Order, nil]
33
+ optional :order, enum: -> { Knockapi::UserListParams::Order }
34
+
28
35
  # @!attribute page_size
29
36
  # The number of items per page (defaults to 50).
30
37
  #
31
38
  # @return [Integer, nil]
32
39
  optional :page_size, Integer
33
40
 
34
- # @!method initialize(after: nil, before: nil, include: nil, page_size: nil, request_options: {})
41
+ # @!method initialize(after: nil, before: nil, include: nil, order: nil, page_size: nil, request_options: {})
42
+ # Some parameter documentations has been truncated, see
43
+ # {Knockapi::Models::UserListParams} for more details.
44
+ #
35
45
  # @param after [String] The cursor to fetch entries after.
36
46
  #
37
47
  # @param before [String] The cursor to fetch entries before.
38
48
  #
39
49
  # @param include [Array<Symbol, Knockapi::Models::UserListParams::Include>] Associated resources to include in the response.
40
50
  #
51
+ # @param order [Symbol, Knockapi::Models::UserListParams::Order] Sort by insertion order. Pass `asc` for oldest first, or `desc` for newest first
52
+ #
41
53
  # @param page_size [Integer] The number of items per page (defaults to 50).
42
54
  #
43
55
  # @param request_options [Knockapi::RequestOptions, Hash{Symbol=>Object}]
@@ -50,6 +62,18 @@ module Knockapi
50
62
  # @!method self.values
51
63
  # @return [Array<Symbol>]
52
64
  end
65
+
66
+ # Sort by insertion order. Pass `asc` for oldest first, or `desc` for newest
67
+ # first. Defaults to oldest first when omitted.
68
+ module Order
69
+ extend Knockapi::Internal::Type::Enum
70
+
71
+ ASC = :asc
72
+ DESC = :desc
73
+
74
+ # @!method self.values
75
+ # @return [Array<Symbol>]
76
+ end
53
77
  end
54
78
  end
55
79
  end
@@ -29,7 +29,7 @@ module Knockapi
29
29
  # {Knockapi::Models::UserUpdateParams} for more details.
30
30
  #
31
31
  # Create or update a user with the provided identification data. When you identify
32
- # an existing user, the system merges the properties you specific with what is
32
+ # an existing user, the system merges the properties you specify with what is
33
33
  # currently set on the user, updating only the fields included in your requests.
34
34
  #
35
35
  # @overload update(user_id, avatar: nil, channel_data: nil, created_at: nil, email: nil, locale: nil, name: nil, phone_number: nil, preferences: nil, timezone: nil, request_options: {})
@@ -70,10 +70,13 @@ module Knockapi
70
70
  )
71
71
  end
72
72
 
73
+ # Some parameter documentations has been truncated, see
74
+ # {Knockapi::Models::UserListParams} for more details.
75
+ #
73
76
  # Retrieve a paginated list of users in the environment. Defaults to 50 users per
74
77
  # page.
75
78
  #
76
- # @overload list(after: nil, before: nil, include: nil, page_size: nil, request_options: {})
79
+ # @overload list(after: nil, before: nil, include: nil, order: nil, page_size: nil, request_options: {})
77
80
  #
78
81
  # @param after [String] The cursor to fetch entries after.
79
82
  #
@@ -81,6 +84,8 @@ module Knockapi
81
84
  #
82
85
  # @param include [Array<Symbol, Knockapi::Models::UserListParams::Include>] Associated resources to include in the response.
83
86
  #
87
+ # @param order [Symbol, Knockapi::Models::UserListParams::Order] Sort by insertion order. Pass `asc` for oldest first, or `desc` for newest first
88
+ #
84
89
  # @param page_size [Integer] The number of items per page (defaults to 50).
85
90
  #
86
91
  # @param request_options [Knockapi::RequestOptions, Hash{Symbol=>Object}, nil]
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Knockapi
4
- VERSION = "1.42.0"
4
+ VERSION = "1.45.0"
5
5
  end
@@ -324,6 +324,14 @@ module Knockapi
324
324
  sig { returns(String) }
325
325
  attr_accessor :version_id
326
326
 
327
+ # The branch ancestry of the step that generated the message, outermost first.
328
+ # Each segment is the branching step and the branch taken. Omitted when the step
329
+ # is not nested under a branch.
330
+ sig do
331
+ returns(T.nilable(T::Array[Knockapi::Message::Source::BranchPath]))
332
+ end
333
+ attr_accessor :branch_path
334
+
327
335
  # The step reference for the step in the workflow that generated the message.
328
336
  sig { returns(T.nilable(String)) }
329
337
  attr_accessor :step_ref
@@ -354,6 +362,10 @@ module Knockapi
354
362
  categories: T::Array[String],
355
363
  key: String,
356
364
  version_id: String,
365
+ branch_path:
366
+ T.nilable(
367
+ T::Array[Knockapi::Message::Source::BranchPath::OrHash]
368
+ ),
357
369
  step_ref: T.nilable(String),
358
370
  type: Knockapi::Message::Source::Type::OrSymbol,
359
371
  workflow_recipient_run_id: T.nilable(String),
@@ -368,6 +380,10 @@ module Knockapi
368
380
  key:,
369
381
  # The ID of the version of the workflow or guide that triggered the message.
370
382
  version_id:,
383
+ # The branch ancestry of the step that generated the message, outermost first.
384
+ # Each segment is the branching step and the branch taken. Omitted when the step
385
+ # is not nested under a branch.
386
+ branch_path: nil,
371
387
  # The step reference for the step in the workflow that generated the message.
372
388
  step_ref: nil,
373
389
  # Whether this message was generated from a workflow, broadcast, or guide.
@@ -388,6 +404,8 @@ module Knockapi
388
404
  categories: T::Array[String],
389
405
  key: String,
390
406
  version_id: String,
407
+ branch_path:
408
+ T.nilable(T::Array[Knockapi::Message::Source::BranchPath]),
391
409
  step_ref: T.nilable(String),
392
410
  type: Knockapi::Message::Source::Type::TaggedSymbol,
393
411
  workflow_recipient_run_id: T.nilable(String),
@@ -398,6 +416,53 @@ module Knockapi
398
416
  def to_hash
399
417
  end
400
418
 
419
+ class BranchPath < Knockapi::Internal::Type::BaseModel
420
+ OrHash =
421
+ T.type_alias do
422
+ T.any(
423
+ Knockapi::Message::Source::BranchPath,
424
+ Knockapi::Internal::AnyHash
425
+ )
426
+ end
427
+
428
+ # The ID of the branch taken.
429
+ sig { returns(String) }
430
+ attr_accessor :branch_id
431
+
432
+ # The reference of the branching step.
433
+ sig { returns(String) }
434
+ attr_accessor :step_ref
435
+
436
+ # The type of the branching step.
437
+ sig { returns(String) }
438
+ attr_accessor :step_type
439
+
440
+ sig do
441
+ params(
442
+ branch_id: String,
443
+ step_ref: String,
444
+ step_type: String
445
+ ).returns(T.attached_class)
446
+ end
447
+ def self.new(
448
+ # The ID of the branch taken.
449
+ branch_id:,
450
+ # The reference of the branching step.
451
+ step_ref:,
452
+ # The type of the branching step.
453
+ step_type:
454
+ )
455
+ end
456
+
457
+ sig do
458
+ override.returns(
459
+ { branch_id: String, step_ref: String, step_type: String }
460
+ )
461
+ end
462
+ def to_hash
463
+ end
464
+ end
465
+
401
466
  # Whether this message was generated from a workflow, broadcast, or guide.
402
467
  module Type
403
468
  extend Knockapi::Internal::Type::Enum
@@ -40,6 +40,14 @@ module Knockapi
40
40
  end
41
41
  attr_writer :include
42
42
 
43
+ # Sort by insertion order. Pass `asc` for oldest first, or `desc` for newest
44
+ # first. Defaults to oldest first when omitted.
45
+ sig { returns(T.nilable(Knockapi::UserListParams::Order::OrSymbol)) }
46
+ attr_reader :order
47
+
48
+ sig { params(order: Knockapi::UserListParams::Order::OrSymbol).void }
49
+ attr_writer :order
50
+
43
51
  # The number of items per page (defaults to 50).
44
52
  sig { returns(T.nilable(Integer)) }
45
53
  attr_reader :page_size
@@ -52,6 +60,7 @@ module Knockapi
52
60
  after: String,
53
61
  before: String,
54
62
  include: T::Array[Knockapi::UserListParams::Include::OrSymbol],
63
+ order: Knockapi::UserListParams::Order::OrSymbol,
55
64
  page_size: Integer,
56
65
  request_options: Knockapi::RequestOptions::OrHash
57
66
  ).returns(T.attached_class)
@@ -63,6 +72,9 @@ module Knockapi
63
72
  before: nil,
64
73
  # Associated resources to include in the response.
65
74
  include: nil,
75
+ # Sort by insertion order. Pass `asc` for oldest first, or `desc` for newest
76
+ # first. Defaults to oldest first when omitted.
77
+ order: nil,
66
78
  # The number of items per page (defaults to 50).
67
79
  page_size: nil,
68
80
  request_options: {}
@@ -75,6 +87,7 @@ module Knockapi
75
87
  after: String,
76
88
  before: String,
77
89
  include: T::Array[Knockapi::UserListParams::Include::OrSymbol],
90
+ order: Knockapi::UserListParams::Order::OrSymbol,
78
91
  page_size: Integer,
79
92
  request_options: Knockapi::RequestOptions
80
93
  }
@@ -101,6 +114,27 @@ module Knockapi
101
114
  def self.values
102
115
  end
103
116
  end
117
+
118
+ # Sort by insertion order. Pass `asc` for oldest first, or `desc` for newest
119
+ # first. Defaults to oldest first when omitted.
120
+ module Order
121
+ extend Knockapi::Internal::Type::Enum
122
+
123
+ TaggedSymbol =
124
+ T.type_alias { T.all(Symbol, Knockapi::UserListParams::Order) }
125
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
126
+
127
+ ASC = T.let(:asc, Knockapi::UserListParams::Order::TaggedSymbol)
128
+ DESC = T.let(:desc, Knockapi::UserListParams::Order::TaggedSymbol)
129
+
130
+ sig do
131
+ override.returns(
132
+ T::Array[Knockapi::UserListParams::Order::TaggedSymbol]
133
+ )
134
+ end
135
+ def self.values
136
+ end
137
+ end
104
138
  end
105
139
  end
106
140
  end
@@ -26,7 +26,7 @@ module Knockapi
26
26
  attr_reader :preference_center
27
27
 
28
28
  # Create or update a user with the provided identification data. When you identify
29
- # an existing user, the system merges the properties you specific with what is
29
+ # an existing user, the system merges the properties you specify with what is
30
30
  # currently set on the user, updating only the fields included in your requests.
31
31
  sig do
32
32
  params(
@@ -102,6 +102,7 @@ module Knockapi
102
102
  after: String,
103
103
  before: String,
104
104
  include: T::Array[Knockapi::UserListParams::Include::OrSymbol],
105
+ order: Knockapi::UserListParams::Order::OrSymbol,
105
106
  page_size: Integer,
106
107
  request_options: Knockapi::RequestOptions::OrHash
107
108
  ).returns(Knockapi::Internal::EntriesCursor[Knockapi::User])
@@ -113,6 +114,9 @@ module Knockapi
113
114
  before: nil,
114
115
  # Associated resources to include in the response.
115
116
  include: nil,
117
+ # Sort by insertion order. Pass `asc` for oldest first, or `desc` for newest
118
+ # first. Defaults to oldest first when omitted.
119
+ order: nil,
116
120
  # The number of items per page (defaults to 50).
117
121
  page_size: nil,
118
122
  request_options: {}
@@ -153,6 +153,7 @@ module Knockapi
153
153
  categories: ::Array[String],
154
154
  key: String,
155
155
  version_id: String,
156
+ branch_path: ::Array[Knockapi::Message::Source::BranchPath]?,
156
157
  step_ref: String?,
157
158
  type: Knockapi::Models::Message::Source::type_,
158
159
  workflow_recipient_run_id: String?,
@@ -168,6 +169,8 @@ module Knockapi
168
169
 
169
170
  attr_accessor version_id: String
170
171
 
172
+ attr_accessor branch_path: ::Array[Knockapi::Message::Source::BranchPath]?
173
+
171
174
  attr_accessor step_ref: String?
172
175
 
173
176
  attr_reader type: Knockapi::Models::Message::Source::type_?
@@ -185,6 +188,7 @@ module Knockapi
185
188
  categories: ::Array[String],
186
189
  key: String,
187
190
  version_id: String,
191
+ ?branch_path: ::Array[Knockapi::Message::Source::BranchPath]?,
188
192
  ?step_ref: String?,
189
193
  ?type: Knockapi::Models::Message::Source::type_,
190
194
  ?workflow_recipient_run_id: String?,
@@ -196,12 +200,36 @@ module Knockapi
196
200
  categories: ::Array[String],
197
201
  key: String,
198
202
  version_id: String,
203
+ branch_path: ::Array[Knockapi::Message::Source::BranchPath]?,
199
204
  step_ref: String?,
200
205
  type: Knockapi::Models::Message::Source::type_,
201
206
  workflow_recipient_run_id: String?,
202
207
  workflow_run_id: String?
203
208
  }
204
209
 
210
+ type branch_path =
211
+ { branch_id: String, step_ref: String, step_type: String }
212
+
213
+ class BranchPath < Knockapi::Internal::Type::BaseModel
214
+ attr_accessor branch_id: String
215
+
216
+ attr_accessor step_ref: String
217
+
218
+ attr_accessor step_type: String
219
+
220
+ def initialize: (
221
+ branch_id: String,
222
+ step_ref: String,
223
+ step_type: String
224
+ ) -> void
225
+
226
+ def to_hash: -> {
227
+ branch_id: String,
228
+ step_ref: String,
229
+ step_type: String
230
+ }
231
+ end
232
+
205
233
  type type_ = :broadcast | :workflow | :guide
206
234
 
207
235
  module Type
@@ -5,6 +5,7 @@ module Knockapi
5
5
  after: String,
6
6
  before: String,
7
7
  include: ::Array[Knockapi::Models::UserListParams::include_],
8
+ order: Knockapi::Models::UserListParams::order,
8
9
  page_size: Integer
9
10
  }
10
11
  & Knockapi::Internal::Type::request_parameters
@@ -27,6 +28,12 @@ module Knockapi
27
28
  ::Array[Knockapi::Models::UserListParams::include_]
28
29
  ) -> ::Array[Knockapi::Models::UserListParams::include_]
29
30
 
31
+ attr_reader order: Knockapi::Models::UserListParams::order?
32
+
33
+ def order=: (
34
+ Knockapi::Models::UserListParams::order
35
+ ) -> Knockapi::Models::UserListParams::order
36
+
30
37
  attr_reader page_size: Integer?
31
38
 
32
39
  def page_size=: (Integer) -> Integer
@@ -35,6 +42,7 @@ module Knockapi
35
42
  ?after: String,
36
43
  ?before: String,
37
44
  ?include: ::Array[Knockapi::Models::UserListParams::include_],
45
+ ?order: Knockapi::Models::UserListParams::order,
38
46
  ?page_size: Integer,
39
47
  ?request_options: Knockapi::request_opts
40
48
  ) -> void
@@ -43,6 +51,7 @@ module Knockapi
43
51
  after: String,
44
52
  before: String,
45
53
  include: ::Array[Knockapi::Models::UserListParams::include_],
54
+ order: Knockapi::Models::UserListParams::order,
46
55
  page_size: Integer,
47
56
  request_options: Knockapi::RequestOptions
48
57
  }
@@ -56,6 +65,17 @@ module Knockapi
56
65
 
57
66
  def self?.values: -> ::Array[Knockapi::Models::UserListParams::include_]
58
67
  end
68
+
69
+ type order = :asc | :desc
70
+
71
+ module Order
72
+ extend Knockapi::Internal::Type::Enum
73
+
74
+ ASC: :asc
75
+ DESC: :desc
76
+
77
+ def self?.values: -> ::Array[Knockapi::Models::UserListParams::order]
78
+ end
59
79
  end
60
80
  end
61
81
  end
@@ -27,6 +27,7 @@ module Knockapi
27
27
  ?after: String,
28
28
  ?before: String,
29
29
  ?include: ::Array[Knockapi::Models::UserListParams::include_],
30
+ ?order: Knockapi::Models::UserListParams::order,
30
31
  ?page_size: Integer,
31
32
  ?request_options: Knockapi::request_opts
32
33
  ) -> Knockapi::Internal::EntriesCursor[Knockapi::User]
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: knockapi
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.42.0
4
+ version: 1.45.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Knock
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-09-30 00:00:00.000000000 Z
11
+ date: 2026-11-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cgi