@novu/api 3.12.0-rc.0 → 3.12.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 (123) hide show
  1. package/README.md +25 -23
  2. package/_speakeasy/.github/action-inputs-config.json +53 -0
  3. package/_speakeasy/.github/action-security-config.json +88 -0
  4. package/examples/package-lock.json +1 -1
  5. package/funcs/channelConnectionsCreate.d.ts +1 -1
  6. package/funcs/channelConnectionsCreate.js +1 -1
  7. package/funcs/channelConnectionsDelete.d.ts +1 -1
  8. package/funcs/channelConnectionsDelete.js +1 -1
  9. package/funcs/channelConnectionsList.d.ts +2 -2
  10. package/funcs/channelConnectionsList.js +2 -2
  11. package/funcs/channelConnectionsRetrieve.d.ts +1 -1
  12. package/funcs/channelConnectionsRetrieve.js +1 -1
  13. package/funcs/channelConnectionsUpdate.d.ts +1 -1
  14. package/funcs/channelConnectionsUpdate.js +1 -1
  15. package/funcs/channelEndpointsCreate.d.ts +1 -1
  16. package/funcs/channelEndpointsCreate.js +1 -1
  17. package/funcs/channelEndpointsDelete.d.ts +1 -1
  18. package/funcs/channelEndpointsDelete.js +1 -1
  19. package/funcs/channelEndpointsList.d.ts +2 -2
  20. package/funcs/channelEndpointsList.js +2 -2
  21. package/funcs/channelEndpointsRetrieve.d.ts +1 -1
  22. package/funcs/channelEndpointsRetrieve.js +1 -1
  23. package/funcs/channelEndpointsUpdate.d.ts +1 -1
  24. package/funcs/channelEndpointsUpdate.js +1 -1
  25. package/funcs/notificationsList.js +1 -0
  26. package/funcs/notificationsList.js.map +1 -1
  27. package/funcs/topicsSubscriptionsGetSubscription.d.ts +18 -0
  28. package/funcs/topicsSubscriptionsGetSubscription.d.ts.map +1 -0
  29. package/funcs/topicsSubscriptionsGetSubscription.js +160 -0
  30. package/funcs/topicsSubscriptionsGetSubscription.js.map +1 -0
  31. package/funcs/topicsSubscriptionsUpdate.d.ts +1 -1
  32. package/funcs/topicsSubscriptionsUpdate.js +6 -3
  33. package/funcs/topicsSubscriptionsUpdate.js.map +1 -1
  34. package/funcs/trigger.d.ts +1 -1
  35. package/funcs/trigger.js +1 -1
  36. package/jsr.json +1 -1
  37. package/lib/config.d.ts +3 -3
  38. package/lib/config.js +3 -3
  39. package/lib/config.js.map +1 -1
  40. package/models/components/delaystepresponsedto.d.ts +1 -1
  41. package/models/components/delaystepresponsedto.d.ts.map +1 -1
  42. package/models/components/emailstepresponsedto.d.ts +3 -3
  43. package/models/components/emailstepresponsedto.d.ts.map +1 -1
  44. package/models/components/generatechatoauthurlrequestdto.d.ts +1 -1
  45. package/models/components/inappcontroldto.d.ts +1 -1
  46. package/models/components/inappstepresponsedto.d.ts +2 -2
  47. package/models/components/inappstepresponsedto.d.ts.map +1 -1
  48. package/models/components/notificationfeeditemdto.d.ts +4 -0
  49. package/models/components/notificationfeeditemdto.d.ts.map +1 -1
  50. package/models/components/notificationfeeditemdto.js +1 -0
  51. package/models/components/notificationfeeditemdto.js.map +1 -1
  52. package/models/components/redirectdto.d.ts +1 -1
  53. package/models/components/throttlestepresponsedto.d.ts +2 -2
  54. package/models/components/throttlestepresponsedto.d.ts.map +1 -1
  55. package/models/components/topicsubscriptionresponsedto.d.ts +4 -0
  56. package/models/components/topicsubscriptionresponsedto.d.ts.map +1 -1
  57. package/models/components/topicsubscriptionresponsedto.js +1 -0
  58. package/models/components/topicsubscriptionresponsedto.js.map +1 -1
  59. package/models/components/triggereventrequestdto.d.ts +2 -2
  60. package/models/components/workflowresponsedto.d.ts +2 -2
  61. package/models/components/workflowresponsedto.d.ts.map +1 -1
  62. package/models/operations/index.d.ts +1 -0
  63. package/models/operations/index.d.ts.map +1 -1
  64. package/models/operations/index.js +1 -0
  65. package/models/operations/index.js.map +1 -1
  66. package/models/operations/notificationscontrollerlistnotifications.d.ts +5 -0
  67. package/models/operations/notificationscontrollerlistnotifications.d.ts.map +1 -1
  68. package/models/operations/notificationscontrollerlistnotifications.js +1 -0
  69. package/models/operations/notificationscontrollerlistnotifications.js.map +1 -1
  70. package/models/operations/topicscontrollergettopicsubscription.d.ts +37 -0
  71. package/models/operations/topicscontrollergettopicsubscription.d.ts.map +1 -0
  72. package/models/operations/topicscontrollergettopicsubscription.js +72 -0
  73. package/models/operations/topicscontrollergettopicsubscription.js.map +1 -0
  74. package/models/operations/topicscontrollerupdatetopicsubscription.d.ts +2 -2
  75. package/models/operations/topicscontrollerupdatetopicsubscription.d.ts.map +1 -1
  76. package/models/operations/topicscontrollerupdatetopicsubscription.js +1 -1
  77. package/models/operations/topicscontrollerupdatetopicsubscription.js.map +1 -1
  78. package/package.json +1 -1
  79. package/sdk/channelconnections.d.ts +6 -6
  80. package/sdk/channelconnections.js +6 -6
  81. package/sdk/channelendpoints.d.ts +6 -6
  82. package/sdk/channelendpoints.js +6 -6
  83. package/sdk/sdk.d.ts +1 -1
  84. package/sdk/sdk.js +1 -1
  85. package/sdk/subscriptions.d.ts +8 -1
  86. package/sdk/subscriptions.d.ts.map +1 -1
  87. package/sdk/subscriptions.js +11 -1
  88. package/sdk/subscriptions.js.map +1 -1
  89. package/sources/json-development.json +848 -309
  90. package/src/funcs/channelConnectionsCreate.ts +1 -1
  91. package/src/funcs/channelConnectionsDelete.ts +1 -1
  92. package/src/funcs/channelConnectionsList.ts +2 -2
  93. package/src/funcs/channelConnectionsRetrieve.ts +1 -1
  94. package/src/funcs/channelConnectionsUpdate.ts +1 -1
  95. package/src/funcs/channelEndpointsCreate.ts +1 -1
  96. package/src/funcs/channelEndpointsDelete.ts +1 -1
  97. package/src/funcs/channelEndpointsList.ts +2 -2
  98. package/src/funcs/channelEndpointsRetrieve.ts +1 -1
  99. package/src/funcs/channelEndpointsUpdate.ts +1 -1
  100. package/src/funcs/notificationsList.ts +1 -0
  101. package/src/funcs/topicsSubscriptionsGetSubscription.ts +242 -0
  102. package/src/funcs/topicsSubscriptionsUpdate.ts +8 -9
  103. package/src/funcs/trigger.ts +1 -1
  104. package/src/lib/config.ts +3 -3
  105. package/src/models/components/delaystepresponsedto.ts +1 -1
  106. package/src/models/components/emailstepresponsedto.ts +3 -3
  107. package/src/models/components/generatechatoauthurlrequestdto.ts +1 -1
  108. package/src/models/components/inappcontroldto.ts +1 -1
  109. package/src/models/components/inappstepresponsedto.ts +2 -2
  110. package/src/models/components/notificationfeeditemdto.ts +5 -0
  111. package/src/models/components/redirectdto.ts +1 -1
  112. package/src/models/components/throttlestepresponsedto.ts +2 -2
  113. package/src/models/components/topicsubscriptionresponsedto.ts +5 -0
  114. package/src/models/components/triggereventrequestdto.ts +2 -2
  115. package/src/models/components/workflowresponsedto.ts +2 -2
  116. package/src/models/operations/index.ts +1 -0
  117. package/src/models/operations/notificationscontrollerlistnotifications.ts +6 -0
  118. package/src/models/operations/topicscontrollergettopicsubscription.ts +96 -0
  119. package/src/models/operations/topicscontrollerupdatetopicsubscription.ts +3 -3
  120. package/src/sdk/channelconnections.ts +6 -6
  121. package/src/sdk/channelendpoints.ts +6 -6
  122. package/src/sdk/sdk.ts +1 -1
  123. package/src/sdk/subscriptions.ts +23 -1
@@ -27,7 +27,7 @@ import { APICall, APIPromise } from "../types/async.js";
27
27
  import { Result } from "../types/fp.js";
28
28
 
29
29
  /**
30
- * Create channel connection for a resource and integration
30
+ * Create a channel connection
31
31
  *
32
32
  * @remarks
33
33
  * Create a new channel connection for a resource for given integration. Only one channel connection is allowed per resource and integration.
@@ -26,7 +26,7 @@ import { APICall, APIPromise } from "../types/async.js";
26
26
  import { Result } from "../types/fp.js";
27
27
 
28
28
  /**
29
- * Delete channel connection
29
+ * Delete a channel connection
30
30
  *
31
31
  * @remarks
32
32
  * Delete a specific channel connection by its unique identifier.
@@ -26,10 +26,10 @@ import { APICall, APIPromise } from "../types/async.js";
26
26
  import { Result } from "../types/fp.js";
27
27
 
28
28
  /**
29
- * List channel connections
29
+ * List all channel connections
30
30
  *
31
31
  * @remarks
32
- * Retrieve all channel connections for a resource.
32
+ * List all channel connections for a resource.
33
33
  */
34
34
  export function channelConnectionsList(
35
35
  client: NovuCore,
@@ -26,7 +26,7 @@ import { APICall, APIPromise } from "../types/async.js";
26
26
  import { Result } from "../types/fp.js";
27
27
 
28
28
  /**
29
- * Retrieve channel connection by identifier
29
+ * Retrieve a channel connection
30
30
  *
31
31
  * @remarks
32
32
  * Retrieve a specific channel connection by its unique identifier.
@@ -27,7 +27,7 @@ import { APICall, APIPromise } from "../types/async.js";
27
27
  import { Result } from "../types/fp.js";
28
28
 
29
29
  /**
30
- * Update channel connection
30
+ * Update a channel connection
31
31
  *
32
32
  * @remarks
33
33
  * Update an existing channel connection by its unique identifier.
@@ -26,7 +26,7 @@ import { APICall, APIPromise } from "../types/async.js";
26
26
  import { Result } from "../types/fp.js";
27
27
 
28
28
  /**
29
- * Create channel endpoint for a resource
29
+ * Create a channel endpoint
30
30
  *
31
31
  * @remarks
32
32
  * Create a new channel endpoint for a resource.
@@ -26,7 +26,7 @@ import { APICall, APIPromise } from "../types/async.js";
26
26
  import { Result } from "../types/fp.js";
27
27
 
28
28
  /**
29
- * Delete channel endpoint by identifier
29
+ * Delete a channel endpoint
30
30
  *
31
31
  * @remarks
32
32
  * Delete a specific channel endpoint by its unique identifier.
@@ -26,10 +26,10 @@ import { APICall, APIPromise } from "../types/async.js";
26
26
  import { Result } from "../types/fp.js";
27
27
 
28
28
  /**
29
- * List channel endpoints
29
+ * List all channel endpoints
30
30
  *
31
31
  * @remarks
32
- * Retrieve all channel endpoints for a resource based on query filters.
32
+ * List all channel endpoints for a resource based on query filters.
33
33
  */
34
34
  export function channelEndpointsList(
35
35
  client: NovuCore,
@@ -26,7 +26,7 @@ import { APICall, APIPromise } from "../types/async.js";
26
26
  import { Result } from "../types/fp.js";
27
27
 
28
28
  /**
29
- * Retrieve channel endpoint by identifier
29
+ * Retrieve a channel endpoint
30
30
  *
31
31
  * @remarks
32
32
  * Retrieve a specific channel endpoint by its unique identifier.
@@ -27,7 +27,7 @@ import { APICall, APIPromise } from "../types/async.js";
27
27
  import { Result } from "../types/fp.js";
28
28
 
29
29
  /**
30
- * Update channel endpoint
30
+ * Update a channel endpoint
31
31
  *
32
32
  * @remarks
33
33
  * Update an existing channel endpoint by its unique identifier.
@@ -108,6 +108,7 @@ async function $do(
108
108
  "search": payload.search,
109
109
  "severity": payload.severity,
110
110
  "subscriberIds": payload.subscriberIds,
111
+ "subscriptionId": payload.subscriptionId,
111
112
  "templates": payload.templates,
112
113
  "topicKey": payload.topicKey,
113
114
  "transactionId": payload.transactionId,
@@ -0,0 +1,242 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { NovuCore } from "../core.js";
6
+ import { encodeSimple } from "../lib/encodings.js";
7
+ import * as M from "../lib/matchers.js";
8
+ import { compactMap } from "../lib/primitives.js";
9
+ import { safeParse } from "../lib/schemas.js";
10
+ import { RequestOptions } from "../lib/sdks.js";
11
+ import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
12
+ import { pathToFunc } from "../lib/url.js";
13
+ import {
14
+ ConnectionError,
15
+ InvalidRequestError,
16
+ RequestAbortedError,
17
+ RequestTimeoutError,
18
+ UnexpectedClientError,
19
+ } from "../models/errors/httpclienterrors.js";
20
+ import * as errors from "../models/errors/index.js";
21
+ import { NovuError } from "../models/errors/novuerror.js";
22
+ import { ResponseValidationError } from "../models/errors/responsevalidationerror.js";
23
+ import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
24
+ import * as operations from "../models/operations/index.js";
25
+ import { APICall, APIPromise } from "../types/async.js";
26
+ import { Result } from "../types/fp.js";
27
+
28
+ /**
29
+ * Get a topic subscription
30
+ *
31
+ * @remarks
32
+ * Get a subscription by its unique identifier for a topic.
33
+ */
34
+ export function topicsSubscriptionsGetSubscription(
35
+ client: NovuCore,
36
+ topicKey: string,
37
+ identifier: string,
38
+ idempotencyKey?: string | undefined,
39
+ options?: RequestOptions,
40
+ ): APIPromise<
41
+ Result<
42
+ operations.TopicsControllerGetTopicSubscriptionResponse,
43
+ | errors.ErrorDto
44
+ | errors.ValidationErrorDto
45
+ | NovuError
46
+ | ResponseValidationError
47
+ | ConnectionError
48
+ | RequestAbortedError
49
+ | RequestTimeoutError
50
+ | InvalidRequestError
51
+ | UnexpectedClientError
52
+ | SDKValidationError
53
+ >
54
+ > {
55
+ return new APIPromise($do(
56
+ client,
57
+ topicKey,
58
+ identifier,
59
+ idempotencyKey,
60
+ options,
61
+ ));
62
+ }
63
+
64
+ async function $do(
65
+ client: NovuCore,
66
+ topicKey: string,
67
+ identifier: string,
68
+ idempotencyKey?: string | undefined,
69
+ options?: RequestOptions,
70
+ ): Promise<
71
+ [
72
+ Result<
73
+ operations.TopicsControllerGetTopicSubscriptionResponse,
74
+ | errors.ErrorDto
75
+ | errors.ValidationErrorDto
76
+ | NovuError
77
+ | ResponseValidationError
78
+ | ConnectionError
79
+ | RequestAbortedError
80
+ | RequestTimeoutError
81
+ | InvalidRequestError
82
+ | UnexpectedClientError
83
+ | SDKValidationError
84
+ >,
85
+ APICall,
86
+ ]
87
+ > {
88
+ const input: operations.TopicsControllerGetTopicSubscriptionRequest = {
89
+ topicKey: topicKey,
90
+ identifier: identifier,
91
+ idempotencyKey: idempotencyKey,
92
+ };
93
+
94
+ const parsed = safeParse(
95
+ input,
96
+ (value) =>
97
+ operations.TopicsControllerGetTopicSubscriptionRequest$outboundSchema
98
+ .parse(value),
99
+ "Input validation failed",
100
+ );
101
+ if (!parsed.ok) {
102
+ return [parsed, { status: "invalid" }];
103
+ }
104
+ const payload = parsed.value;
105
+ const body = null;
106
+
107
+ const pathParams = {
108
+ identifier: encodeSimple("identifier", payload.identifier, {
109
+ explode: false,
110
+ charEncoding: "percent",
111
+ }),
112
+ topicKey: encodeSimple("topicKey", payload.topicKey, {
113
+ explode: false,
114
+ charEncoding: "percent",
115
+ }),
116
+ };
117
+
118
+ const path = pathToFunc("/v2/topics/{topicKey}/subscriptions/{identifier}")(
119
+ pathParams,
120
+ );
121
+
122
+ const headers = new Headers(compactMap({
123
+ Accept: "application/json",
124
+ "idempotency-key": encodeSimple(
125
+ "idempotency-key",
126
+ payload["idempotency-key"],
127
+ { explode: false, charEncoding: "none" },
128
+ ),
129
+ }));
130
+
131
+ const secConfig = await extractSecurity(client._options.secretKey);
132
+ const securityInput = secConfig == null ? {} : { secretKey: secConfig };
133
+ const requestSecurity = resolveGlobalSecurity(securityInput);
134
+
135
+ const context = {
136
+ options: client._options,
137
+ baseURL: options?.serverURL ?? client._baseURL ?? "",
138
+ operationID: "TopicsController_getTopicSubscription",
139
+ oAuth2Scopes: null,
140
+
141
+ resolvedSecurity: requestSecurity,
142
+
143
+ securitySource: client._options.secretKey,
144
+ retryConfig: options?.retries
145
+ || client._options.retryConfig
146
+ || {
147
+ strategy: "backoff",
148
+ backoff: {
149
+ initialInterval: 1000,
150
+ maxInterval: 30000,
151
+ exponent: 1.5,
152
+ maxElapsedTime: 3600000,
153
+ },
154
+ retryConnectionErrors: true,
155
+ }
156
+ || { strategy: "none" },
157
+ retryCodes: options?.retryCodes || ["408", "409", "429", "5XX"],
158
+ };
159
+
160
+ const requestRes = client._createRequest(context, {
161
+ security: requestSecurity,
162
+ method: "GET",
163
+ baseURL: options?.serverURL,
164
+ path: path,
165
+ headers: headers,
166
+ body: body,
167
+ userAgent: client._options.userAgent,
168
+ timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
169
+ }, options);
170
+ if (!requestRes.ok) {
171
+ return [requestRes, { status: "invalid" }];
172
+ }
173
+ const req = requestRes.value;
174
+
175
+ const doResult = await client._do(req, {
176
+ context,
177
+ errorCodes: [
178
+ "400",
179
+ "401",
180
+ "403",
181
+ "404",
182
+ "405",
183
+ "409",
184
+ "413",
185
+ "414",
186
+ "415",
187
+ "422",
188
+ "429",
189
+ "4XX",
190
+ "500",
191
+ "503",
192
+ "5XX",
193
+ ],
194
+ retryConfig: context.retryConfig,
195
+ retryCodes: context.retryCodes,
196
+ });
197
+ if (!doResult.ok) {
198
+ return [doResult, { status: "request-error", request: req }];
199
+ }
200
+ const response = doResult.value;
201
+
202
+ const responseFields = {
203
+ HttpMeta: { Response: response, Request: req },
204
+ };
205
+
206
+ const [result] = await M.match<
207
+ operations.TopicsControllerGetTopicSubscriptionResponse,
208
+ | errors.ErrorDto
209
+ | errors.ValidationErrorDto
210
+ | NovuError
211
+ | ResponseValidationError
212
+ | ConnectionError
213
+ | RequestAbortedError
214
+ | RequestTimeoutError
215
+ | InvalidRequestError
216
+ | UnexpectedClientError
217
+ | SDKValidationError
218
+ >(
219
+ M.json(
220
+ 200,
221
+ operations.TopicsControllerGetTopicSubscriptionResponse$inboundSchema,
222
+ { hdrs: true, key: "Result" },
223
+ ),
224
+ M.jsonErr(414, errors.ErrorDto$inboundSchema),
225
+ M.jsonErr(
226
+ [400, 401, 403, 404, 405, 409, 413, 415],
227
+ errors.ErrorDto$inboundSchema,
228
+ { hdrs: true },
229
+ ),
230
+ M.jsonErr(422, errors.ValidationErrorDto$inboundSchema, { hdrs: true }),
231
+ M.fail(429),
232
+ M.jsonErr(500, errors.ErrorDto$inboundSchema, { hdrs: true }),
233
+ M.fail(503),
234
+ M.fail("4XX"),
235
+ M.fail("5XX"),
236
+ )(response, req, { extraFields: responseFields });
237
+ if (!result.ok) {
238
+ return [result, { status: "complete", request: req, response }];
239
+ }
240
+
241
+ return [result, { status: "complete", request: req, response }];
242
+ }
@@ -29,7 +29,7 @@ import { Result } from "../types/fp.js";
29
29
  * Update a topic subscription
30
30
  *
31
31
  * @remarks
32
- * Update a subscription by its unique identifier **subscriptionIdOrIdentifier** for a topic. You can update the preferences and name associated with the subscription.
32
+ * Update a subscription by its unique identifier for a topic. You can update the preferences and name associated with the subscription.
33
33
  */
34
34
  export function topicsSubscriptionsUpdate(
35
35
  client: NovuCore,
@@ -95,20 +95,19 @@ async function $do(
95
95
  });
96
96
 
97
97
  const pathParams = {
98
- subscriptionIdOrIdentifier: encodeSimple(
99
- "subscriptionIdOrIdentifier",
100
- payload.subscriptionIdOrIdentifier,
101
- { explode: false, charEncoding: "percent" },
102
- ),
98
+ identifier: encodeSimple("identifier", payload.identifier, {
99
+ explode: false,
100
+ charEncoding: "percent",
101
+ }),
103
102
  topicKey: encodeSimple("topicKey", payload.topicKey, {
104
103
  explode: false,
105
104
  charEncoding: "percent",
106
105
  }),
107
106
  };
108
107
 
109
- const path = pathToFunc(
110
- "/v2/topics/{topicKey}/subscriptions/{subscriptionIdOrIdentifier}",
111
- )(pathParams);
108
+ const path = pathToFunc("/v2/topics/{topicKey}/subscriptions/{identifier}")(
109
+ pathParams,
110
+ );
112
111
 
113
112
  const headers = new Headers(compactMap({
114
113
  "Content-Type": "application/json",
@@ -31,7 +31,7 @@ import { Result } from "../types/fp.js";
31
31
  *
32
32
  * @remarks
33
33
  *
34
- * Trigger event is the main (and only) way to send notifications to subscribers. The trigger identifier is used to match the particular workflow associated with it. Additional information can be passed according the body interface below.
34
+ * Trigger event is the main (and only) way to send notifications to subscribers. The trigger identifier is used to match the particular workflow associated with it. Maximum number of recipients can be 100. Additional information can be passed according the body interface below.
35
35
  * To prevent duplicate triggers, you can optionally pass a **transactionId** in the request body. If the same **transactionId** is used again, the trigger will be ignored. The retention period depends on your billing tier.
36
36
  */
37
37
  export function trigger(
package/src/lib/config.ts CHANGED
@@ -59,7 +59,7 @@ export function serverURLFromOptions(options: SDKOptions): URL | null {
59
59
  export const SDK_METADATA = {
60
60
  language: "typescript",
61
61
  openapiDocVersion: "3.11.0",
62
- sdkVersion: "3.12.0-rc.0",
63
- genVersion: "2.781.2",
64
- userAgent: "speakeasy-sdk/typescript 3.12.0-rc.0 2.781.2 3.11.0 @novu/api",
62
+ sdkVersion: "3.12.0",
63
+ genVersion: "2.792.0",
64
+ userAgent: "speakeasy-sdk/typescript 3.12.0 2.792.0 3.11.0 @novu/api",
65
65
  } as const;
@@ -64,7 +64,7 @@ export type DelayStepResponseDtoControlValues = {
64
64
  /**
65
65
  * Type of the delay. Currently only 'regular' is supported by the schema.
66
66
  */
67
- type?: DelayStepResponseDtoType | undefined;
67
+ type: DelayStepResponseDtoType;
68
68
  /**
69
69
  * Amount of time to delay.
70
70
  */
@@ -50,15 +50,15 @@ export type EmailStepResponseDtoControlValues = {
50
50
  /**
51
51
  * Body content of the email, either a valid Maily JSON object, or html string.
52
52
  */
53
- body?: string | undefined;
53
+ body: string;
54
54
  /**
55
55
  * Type of editor to use for the body.
56
56
  */
57
- editorType?: EmailStepResponseDtoEditorType | undefined;
57
+ editorType: EmailStepResponseDtoEditorType;
58
58
  /**
59
59
  * Disable sanitization of the output.
60
60
  */
61
- disableOutputSanitization?: boolean | undefined;
61
+ disableOutputSanitization: boolean;
62
62
  /**
63
63
  * Layout ID to use for the email. Null means no layout, undefined means default layout.
64
64
  */
@@ -29,7 +29,7 @@ export type GenerateChatOauthUrlRequestDto = {
29
29
  */
30
30
  integrationIdentifier: string;
31
31
  /**
32
- * Identifier of the channel connection that will be created
32
+ * Identifier of the channel connection that will be created. It is generated automatically if not provided.
33
33
  */
34
34
  connectionIdentifier?: string | undefined;
35
35
  context?:
@@ -33,7 +33,7 @@ export type InAppControlDto = {
33
33
  */
34
34
  subject?: string | undefined;
35
35
  /**
36
- * URL for an avatar image. Must be a valid URL or start with / or {{"{{"}} variable }}.
36
+ * URL for an avatar image. Must be a valid URL or start with / or {{ variable }}.
37
37
  */
38
38
  avatar?: string | undefined;
39
39
  /**
@@ -39,7 +39,7 @@ export type InAppStepResponseDtoControlValues = {
39
39
  */
40
40
  subject?: string | undefined;
41
41
  /**
42
- * URL for an avatar image. Must be a valid URL or start with / or {{"{{"}} variable }}.
42
+ * URL for an avatar image. Must be a valid URL or start with / or {{ variable }}.
43
43
  */
44
44
  avatar?: string | undefined;
45
45
  /**
@@ -57,7 +57,7 @@ export type InAppStepResponseDtoControlValues = {
57
57
  /**
58
58
  * Disable sanitization of the output.
59
59
  */
60
- disableOutputSanitization?: boolean | undefined;
60
+ disableOutputSanitization: boolean;
61
61
  /**
62
62
  * Additional data payload for the step.
63
63
  */
@@ -122,6 +122,10 @@ export type NotificationFeedItemDto = {
122
122
  * Indicates whether the notification has been seen by the subscriber.
123
123
  */
124
124
  seen: boolean;
125
+ /**
126
+ * Indicates whether the notification has been archived by the subscriber.
127
+ */
128
+ archived: boolean;
125
129
  /**
126
130
  * Device tokens for push notifications, if applicable.
127
131
  */
@@ -188,6 +192,7 @@ export const NotificationFeedItemDto$inboundSchema: z.ZodType<
188
192
  channel: ChannelTypeEnum$inboundSchema,
189
193
  read: z.boolean(),
190
194
  seen: z.boolean(),
195
+ archived: z.boolean(),
191
196
  deviceTokens: z.nullable(z.array(z.string())).optional(),
192
197
  cta: MessageCTA$inboundSchema,
193
198
  status: NotificationFeedItemDtoStatus$inboundSchema,
@@ -25,7 +25,7 @@ export type Target = ClosedEnum<typeof Target>;
25
25
 
26
26
  export type RedirectDto = {
27
27
  /**
28
- * URL for redirection. Must be a valid URL or start with / or {{"{{"}} variable }}.
28
+ * URL for redirection. Must be a valid URL or start with / or {{ variable }}.
29
29
  */
30
30
  url?: string | undefined;
31
31
  /**
@@ -61,7 +61,7 @@ export type ThrottleStepResponseDtoControlValues = {
61
61
  /**
62
62
  * The type of throttle window.
63
63
  */
64
- type?: ThrottleStepResponseDtoType | undefined;
64
+ type: ThrottleStepResponseDtoType;
65
65
  /**
66
66
  * The amount of time for the throttle window (required for fixed type).
67
67
  */
@@ -77,7 +77,7 @@ export type ThrottleStepResponseDtoControlValues = {
77
77
  /**
78
78
  * The maximum number of executions allowed within the window. Defaults to 1.
79
79
  */
80
- threshold?: number | undefined;
80
+ threshold: number;
81
81
  /**
82
82
  * Optional key for grouping throttle rules. If not provided, defaults to workflow and subscriber combination.
83
83
  */
@@ -18,6 +18,10 @@ export type TopicSubscriptionResponseDto = {
18
18
  * The identifier of the subscription
19
19
  */
20
20
  id: string;
21
+ /**
22
+ * The identifier of the subscription
23
+ */
24
+ identifier: string;
21
25
  /**
22
26
  * The date and time the subscription was created
23
27
  */
@@ -39,6 +43,7 @@ export const TopicSubscriptionResponseDto$inboundSchema: z.ZodType<
39
43
  unknown
40
44
  > = z.object({
41
45
  _id: z.string(),
46
+ identifier: z.string(),
42
47
  createdAt: z.string(),
43
48
  topic: TopicResponseDto$inboundSchema,
44
49
  subscriber: SubscriberDto$inboundSchema,
@@ -99,7 +99,7 @@ export type Overrides = {
99
99
  export type To1 = TopicPayloadDto | SubscriberPayloadDto | string;
100
100
 
101
101
  /**
102
- * The recipients list of people who will receive the notification.
102
+ * The recipients list of people who will receive the notification. Maximum number of recipients can be 100.
103
103
  */
104
104
  export type To =
105
105
  | TopicPayloadDto
@@ -156,7 +156,7 @@ export type TriggerEventRequestDto = {
156
156
  */
157
157
  overrides?: Overrides | undefined;
158
158
  /**
159
- * The recipients list of people who will receive the notification.
159
+ * The recipients list of people who will receive the notification. Maximum number of recipients can be 100.
160
160
  */
161
161
  to:
162
162
  | TopicPayloadDto
@@ -135,7 +135,7 @@ export type WorkflowResponseDto = {
135
135
  /**
136
136
  * Whether the workflow is active
137
137
  */
138
- active?: boolean | undefined;
138
+ active: boolean;
139
139
  /**
140
140
  * Enable or disable payload schema validation
141
141
  */
@@ -147,7 +147,7 @@ export type WorkflowResponseDto = {
147
147
  /**
148
148
  * Enable or disable translations for this workflow
149
149
  */
150
- isTranslationEnabled?: boolean | undefined;
150
+ isTranslationEnabled: boolean;
151
151
  /**
152
152
  * Database identifier of the workflow
153
153
  */
@@ -71,6 +71,7 @@ export * from "./topicscontrollercreatetopicsubscriptions.js";
71
71
  export * from "./topicscontrollerdeletetopic.js";
72
72
  export * from "./topicscontrollerdeletetopicsubscriptions.js";
73
73
  export * from "./topicscontrollergettopic.js";
74
+ export * from "./topicscontrollergettopicsubscription.js";
74
75
  export * from "./topicscontrollerlisttopics.js";
75
76
  export * from "./topicscontrollerlisttopicsubscriptions.js";
76
77
  export * from "./topicscontrollerupdatetopic.js";
@@ -52,6 +52,10 @@ export type NotificationsControllerListNotificationsRequest = {
52
52
  * Topic Key for filtering notifications by topic
53
53
  */
54
54
  topicKey?: string | undefined;
55
+ /**
56
+ * Subscription ID for filtering notifications by subscription
57
+ */
58
+ subscriptionId?: string | undefined;
55
59
  /**
56
60
  * Filter by exact context keys, order insensitive (format: "type:id")
57
61
  */
@@ -87,6 +91,7 @@ export type NotificationsControllerListNotificationsRequest$Outbound = {
87
91
  limit: number;
88
92
  transactionId?: string | undefined;
89
93
  topicKey?: string | undefined;
94
+ subscriptionId?: string | undefined;
90
95
  contextKeys?: Array<string> | undefined;
91
96
  after?: string | undefined;
92
97
  before?: string | undefined;
@@ -110,6 +115,7 @@ export const NotificationsControllerListNotificationsRequest$outboundSchema:
110
115
  limit: z.number().default(10),
111
116
  transactionId: z.string().optional(),
112
117
  topicKey: z.string().optional(),
118
+ subscriptionId: z.string().optional(),
113
119
  contextKeys: z.array(z.string()).optional(),
114
120
  after: z.string().optional(),
115
121
  before: z.string().optional(),