@flexprice/sdk 2.1.37 → 2.1.39

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 (248) hide show
  1. package/FUNCTIONS.md +3 -6
  2. package/USAGE.md +1 -4
  3. package/docs/sdk/models/activity-actor.md +17 -0
  4. package/docs/sdk/models/activity-entity.md +17 -0
  5. package/docs/sdk/models/activity-pagination.md +17 -0
  6. package/docs/sdk/models/activity-response.md +25 -0
  7. package/docs/sdk/models/add-addon-to-subscription-response.md +22 -21
  8. package/docs/sdk/models/addon-association-response.md +22 -21
  9. package/docs/sdk/models/addon-price-sync-status-response.md +17 -0
  10. package/docs/sdk/models/addon-response.md +1 -0
  11. package/docs/sdk/models/cancel-subscription-request.md +1 -1
  12. package/docs/sdk/models/changed-addon-association.md +2 -1
  13. package/docs/sdk/models/changed-line-item.md +2 -1
  14. package/docs/sdk/models/checkout-configuration.md +1 -0
  15. package/docs/sdk/models/create-addon-response.md +1 -0
  16. package/docs/sdk/models/create-customer-request.md +1 -6
  17. package/docs/sdk/models/get-activity-request.md +17 -0
  18. package/docs/sdk/models/grouped-invoicing-action.md +2 -2
  19. package/docs/sdk/models/grouped-invoicing-change.md +16 -0
  20. package/docs/sdk/models/invoice-billing-reason.md +2 -2
  21. package/docs/sdk/models/list-activity-request.md +26 -0
  22. package/docs/sdk/models/list-activity-response.md +16 -0
  23. package/docs/sdk/models/pause-subscription-request-request.md +19 -0
  24. package/docs/sdk/models/pause-subscription-request.md +19 -0
  25. package/docs/sdk/models/pause-subscription-response.md +127 -0
  26. package/docs/sdk/models/payment-terms.md +1 -1
  27. package/docs/sdk/models/resume-subscription-request-request.md +19 -0
  28. package/docs/sdk/models/resume-subscription-request.md +18 -0
  29. package/docs/sdk/models/resume-subscription-response.md +127 -0
  30. package/docs/sdk/models/state.md +14 -0
  31. package/docs/sdk/models/sub-modify-grouped-invoicing-params.md +7 -6
  32. package/docs/sdk/models/subscription-pause-response.md +35 -0
  33. package/docs/sdk/models/sync-addon-prices-request.md +17 -0
  34. package/docs/sdk/models/update-customer-request-request.md +1 -7
  35. package/docs/sdk/models/update-customer-request.md +2 -4
  36. package/docs/sdks/activity/README.md +150 -0
  37. package/docs/sdks/addons/README.md +72 -0
  38. package/docs/sdks/customers/README.md +2 -8
  39. package/docs/sdks/subscriptions/README.md +146 -0
  40. package/esm/funcs/activity-get-activity.d.ts +17 -0
  41. package/esm/funcs/activity-get-activity.d.ts.map +1 -0
  42. package/esm/funcs/activity-get-activity.js +91 -0
  43. package/esm/funcs/activity-get-activity.js.map +1 -0
  44. package/esm/funcs/activity-list-activity.d.ts +17 -0
  45. package/esm/funcs/activity-list-activity.d.ts.map +1 -0
  46. package/esm/funcs/activity-list-activity.js +83 -0
  47. package/esm/funcs/activity-list-activity.js.map +1 -0
  48. package/esm/funcs/addons-sync-addon-prices.d.ts +17 -0
  49. package/esm/funcs/addons-sync-addon-prices.d.ts.map +1 -0
  50. package/esm/funcs/addons-sync-addon-prices.js +91 -0
  51. package/esm/funcs/addons-sync-addon-prices.js.map +1 -0
  52. package/esm/funcs/subscriptions-pause-subscription.d.ts +17 -0
  53. package/esm/funcs/subscriptions-pause-subscription.d.ts.map +1 -0
  54. package/esm/funcs/subscriptions-pause-subscription.js +93 -0
  55. package/esm/funcs/subscriptions-pause-subscription.js.map +1 -0
  56. package/esm/funcs/subscriptions-resume-subscription.d.ts +17 -0
  57. package/esm/funcs/subscriptions-resume-subscription.d.ts.map +1 -0
  58. package/esm/funcs/subscriptions-resume-subscription.js +93 -0
  59. package/esm/funcs/subscriptions-resume-subscription.js.map +1 -0
  60. package/esm/lib/config.d.ts +2 -2
  61. package/esm/lib/config.js +2 -2
  62. package/esm/sdk/activity.d.ts +19 -0
  63. package/esm/sdk/activity.d.ts.map +1 -0
  64. package/esm/sdk/activity.js +28 -0
  65. package/esm/sdk/activity.js.map +1 -0
  66. package/esm/sdk/addons.d.ts +7 -0
  67. package/esm/sdk/addons.d.ts.map +1 -1
  68. package/esm/sdk/addons.js +10 -0
  69. package/esm/sdk/addons.js.map +1 -1
  70. package/esm/sdk/models/activity-actor.d.ts +12 -0
  71. package/esm/sdk/models/activity-actor.d.ts.map +1 -0
  72. package/esm/sdk/models/activity-actor.js +16 -0
  73. package/esm/sdk/models/activity-actor.js.map +1 -0
  74. package/esm/sdk/models/activity-entity.d.ts +12 -0
  75. package/esm/sdk/models/activity-entity.d.ts.map +1 -0
  76. package/esm/sdk/models/activity-entity.js +16 -0
  77. package/esm/sdk/models/activity-entity.js.map +1 -0
  78. package/esm/sdk/models/activity-pagination.d.ts +12 -0
  79. package/esm/sdk/models/activity-pagination.d.ts.map +1 -0
  80. package/esm/sdk/models/activity-pagination.js +22 -0
  81. package/esm/sdk/models/activity-pagination.js.map +1 -0
  82. package/esm/sdk/models/activity-response.d.ts +26 -0
  83. package/esm/sdk/models/activity-response.d.ts.map +1 -0
  84. package/esm/sdk/models/activity-response.js +39 -0
  85. package/esm/sdk/models/activity-response.js.map +1 -0
  86. package/esm/sdk/models/add-addon-to-subscription-response.d.ts +7 -0
  87. package/esm/sdk/models/add-addon-to-subscription-response.d.ts.map +1 -1
  88. package/esm/sdk/models/add-addon-to-subscription-response.js +2 -0
  89. package/esm/sdk/models/add-addon-to-subscription-response.js.map +1 -1
  90. package/esm/sdk/models/addon-association-response.d.ts +7 -0
  91. package/esm/sdk/models/addon-association-response.d.ts.map +1 -1
  92. package/esm/sdk/models/addon-association-response.js +2 -0
  93. package/esm/sdk/models/addon-association-response.js.map +1 -1
  94. package/esm/sdk/models/addon-price-sync-status-response.d.ts +12 -0
  95. package/esm/sdk/models/addon-price-sync-status-response.d.ts.map +1 -0
  96. package/esm/sdk/models/addon-price-sync-status-response.js +22 -0
  97. package/esm/sdk/models/addon-price-sync-status-response.js.map +1 -0
  98. package/esm/sdk/models/addon-response.d.ts +2 -0
  99. package/esm/sdk/models/addon-response.d.ts.map +1 -1
  100. package/esm/sdk/models/addon-response.js +3 -0
  101. package/esm/sdk/models/addon-response.js.map +1 -1
  102. package/esm/sdk/models/cancel-subscription-request.d.ts +2 -2
  103. package/esm/sdk/models/cancel-subscription-request.js +2 -2
  104. package/esm/sdk/models/changed-addon-association.d.ts +1 -0
  105. package/esm/sdk/models/changed-addon-association.d.ts.map +1 -1
  106. package/esm/sdk/models/changed-addon-association.js +2 -0
  107. package/esm/sdk/models/changed-addon-association.js.map +1 -1
  108. package/esm/sdk/models/changed-line-item.d.ts +1 -0
  109. package/esm/sdk/models/changed-line-item.d.ts.map +1 -1
  110. package/esm/sdk/models/changed-line-item.js +2 -0
  111. package/esm/sdk/models/changed-line-item.js.map +1 -1
  112. package/esm/sdk/models/checkout-configuration.d.ts +2 -0
  113. package/esm/sdk/models/checkout-configuration.d.ts.map +1 -1
  114. package/esm/sdk/models/checkout-configuration.js +2 -0
  115. package/esm/sdk/models/checkout-configuration.js.map +1 -1
  116. package/esm/sdk/models/create-addon-response.d.ts +2 -0
  117. package/esm/sdk/models/create-addon-response.d.ts.map +1 -1
  118. package/esm/sdk/models/create-addon-response.js +3 -0
  119. package/esm/sdk/models/create-addon-response.js.map +1 -1
  120. package/esm/sdk/models/create-customer-request.d.ts +2 -2
  121. package/esm/sdk/models/create-customer-request.d.ts.map +1 -1
  122. package/esm/sdk/models/create-customer-request.js +1 -1
  123. package/esm/sdk/models/create-customer-request.js.map +1 -1
  124. package/esm/sdk/models/get-activity-op.d.ts +15 -0
  125. package/esm/sdk/models/get-activity-op.d.ts.map +1 -0
  126. package/esm/sdk/models/get-activity-op.js +12 -0
  127. package/esm/sdk/models/get-activity-op.js.map +1 -0
  128. package/esm/sdk/models/grouped-invoicing-action.d.ts +1 -0
  129. package/esm/sdk/models/grouped-invoicing-action.d.ts.map +1 -1
  130. package/esm/sdk/models/grouped-invoicing-action.js +1 -0
  131. package/esm/sdk/models/grouped-invoicing-action.js.map +1 -1
  132. package/esm/sdk/models/grouped-invoicing-change.d.ts +15 -0
  133. package/esm/sdk/models/grouped-invoicing-change.d.ts.map +1 -0
  134. package/esm/sdk/models/grouped-invoicing-change.js +20 -0
  135. package/esm/sdk/models/grouped-invoicing-change.js.map +1 -0
  136. package/esm/sdk/models/index.d.ts +17 -0
  137. package/esm/sdk/models/index.d.ts.map +1 -1
  138. package/esm/sdk/models/index.js +17 -0
  139. package/esm/sdk/models/index.js.map +1 -1
  140. package/esm/sdk/models/invoice-billing-reason.d.ts +2 -0
  141. package/esm/sdk/models/invoice-billing-reason.d.ts.map +1 -1
  142. package/esm/sdk/models/invoice-billing-reason.js +2 -0
  143. package/esm/sdk/models/invoice-billing-reason.js.map +1 -1
  144. package/esm/sdk/models/list-activity-request.d.ts +34 -0
  145. package/esm/sdk/models/list-activity-request.d.ts.map +1 -0
  146. package/esm/sdk/models/list-activity-request.js +35 -0
  147. package/esm/sdk/models/list-activity-request.js.map +1 -0
  148. package/esm/sdk/models/list-activity-response.d.ts +13 -0
  149. package/esm/sdk/models/list-activity-response.d.ts.map +1 -0
  150. package/esm/sdk/models/list-activity-response.js +17 -0
  151. package/esm/sdk/models/list-activity-response.js.map +1 -0
  152. package/esm/sdk/models/pause-subscription-op.d.ts +21 -0
  153. package/esm/sdk/models/pause-subscription-op.d.ts.map +1 -0
  154. package/esm/sdk/models/pause-subscription-op.js +14 -0
  155. package/esm/sdk/models/pause-subscription-op.js.map +1 -0
  156. package/esm/sdk/models/pause-subscription-request.d.ts +37 -0
  157. package/esm/sdk/models/pause-subscription-request.d.ts.map +1 -0
  158. package/esm/sdk/models/pause-subscription-request.js +20 -0
  159. package/esm/sdk/models/pause-subscription-request.js.map +1 -0
  160. package/esm/sdk/models/pause-subscription-response.d.ts +19 -0
  161. package/esm/sdk/models/pause-subscription-response.d.ts.map +1 -0
  162. package/esm/sdk/models/pause-subscription-response.js +17 -0
  163. package/esm/sdk/models/pause-subscription-response.js.map +1 -0
  164. package/esm/sdk/models/payment-terms.d.ts +2 -0
  165. package/esm/sdk/models/payment-terms.d.ts.map +1 -1
  166. package/esm/sdk/models/payment-terms.js +2 -0
  167. package/esm/sdk/models/payment-terms.js.map +1 -1
  168. package/esm/sdk/models/resume-subscription-op.d.ts +21 -0
  169. package/esm/sdk/models/resume-subscription-op.d.ts.map +1 -0
  170. package/esm/sdk/models/resume-subscription-op.js +14 -0
  171. package/esm/sdk/models/resume-subscription-op.js.map +1 -0
  172. package/esm/sdk/models/resume-subscription-request.d.ts +28 -0
  173. package/esm/sdk/models/resume-subscription-request.d.ts.map +1 -0
  174. package/esm/sdk/models/resume-subscription-request.js +19 -0
  175. package/esm/sdk/models/resume-subscription-request.js.map +1 -0
  176. package/esm/sdk/models/resume-subscription-response.d.ts +19 -0
  177. package/esm/sdk/models/resume-subscription-response.d.ts.map +1 -0
  178. package/esm/sdk/models/resume-subscription-response.js +17 -0
  179. package/esm/sdk/models/resume-subscription-response.js.map +1 -0
  180. package/esm/sdk/models/sub-modify-grouped-invoicing-params.d.ts +6 -0
  181. package/esm/sdk/models/sub-modify-grouped-invoicing-params.d.ts.map +1 -1
  182. package/esm/sdk/models/sub-modify-grouped-invoicing-params.js +2 -0
  183. package/esm/sdk/models/sub-modify-grouped-invoicing-params.js.map +1 -1
  184. package/esm/sdk/models/subscription-pause-response.d.ts +64 -0
  185. package/esm/sdk/models/subscription-pause-response.d.ts.map +1 -0
  186. package/esm/sdk/models/subscription-pause-response.js +55 -0
  187. package/esm/sdk/models/subscription-pause-response.js.map +1 -0
  188. package/esm/sdk/models/sync-addon-prices-op.d.ts +15 -0
  189. package/esm/sdk/models/sync-addon-prices-op.d.ts.map +1 -0
  190. package/esm/sdk/models/sync-addon-prices-op.js +12 -0
  191. package/esm/sdk/models/sync-addon-prices-op.js.map +1 -0
  192. package/esm/sdk/models/update-customer-request.d.ts +2 -2
  193. package/esm/sdk/models/update-customer-request.d.ts.map +1 -1
  194. package/esm/sdk/models/update-customer-request.js +1 -1
  195. package/esm/sdk/models/update-customer-request.js.map +1 -1
  196. package/esm/sdk/sdk.d.ts +3 -0
  197. package/esm/sdk/sdk.d.ts.map +1 -1
  198. package/esm/sdk/sdk.js +5 -0
  199. package/esm/sdk/sdk.js.map +1 -1
  200. package/esm/sdk/subscriptions.d.ts +14 -0
  201. package/esm/sdk/subscriptions.d.ts.map +1 -1
  202. package/esm/sdk/subscriptions.js +20 -0
  203. package/esm/sdk/subscriptions.js.map +1 -1
  204. package/examples/{addonsCreateAddon.example.ts → activityListActivity.example.ts} +2 -5
  205. package/jsr.json +1 -1
  206. package/package.json +1 -1
  207. package/src/funcs/activity-get-activity.ts +181 -0
  208. package/src/funcs/activity-list-activity.ts +172 -0
  209. package/src/funcs/addons-sync-addon-prices.ts +181 -0
  210. package/src/funcs/subscriptions-pause-subscription.ts +187 -0
  211. package/src/funcs/subscriptions-resume-subscription.ts +187 -0
  212. package/src/lib/config.ts +2 -2
  213. package/src/sdk/activity.ts +45 -0
  214. package/src/sdk/addons.ts +18 -0
  215. package/src/sdk/models/activity-actor.ts +35 -0
  216. package/src/sdk/models/activity-entity.ts +35 -0
  217. package/src/sdk/models/activity-pagination.ts +44 -0
  218. package/src/sdk/models/activity-response.ts +85 -0
  219. package/src/sdk/models/add-addon-to-subscription-response.ts +9 -0
  220. package/src/sdk/models/addon-association-response.ts +9 -0
  221. package/src/sdk/models/addon-price-sync-status-response.ts +44 -0
  222. package/src/sdk/models/addon-response.ts +9 -0
  223. package/src/sdk/models/cancel-subscription-request.ts +4 -4
  224. package/src/sdk/models/changed-addon-association.ts +3 -0
  225. package/src/sdk/models/changed-line-item.ts +3 -0
  226. package/src/sdk/models/checkout-configuration.ts +4 -0
  227. package/src/sdk/models/create-addon-response.ts +9 -0
  228. package/src/sdk/models/create-customer-request.ts +3 -3
  229. package/src/sdk/models/get-activity-op.ts +33 -0
  230. package/src/sdk/models/grouped-invoicing-action.ts +1 -0
  231. package/src/sdk/models/grouped-invoicing-change.ts +47 -0
  232. package/src/sdk/models/index.ts +17 -0
  233. package/src/sdk/models/invoice-billing-reason.ts +2 -0
  234. package/src/sdk/models/list-activity-request.ts +78 -0
  235. package/src/sdk/models/list-activity-response.ts +41 -0
  236. package/src/sdk/models/pause-subscription-op.ts +46 -0
  237. package/src/sdk/models/pause-subscription-request.ts +64 -0
  238. package/src/sdk/models/pause-subscription-response.ts +47 -0
  239. package/src/sdk/models/payment-terms.ts +2 -0
  240. package/src/sdk/models/resume-subscription-op.ts +46 -0
  241. package/src/sdk/models/resume-subscription-request.ts +54 -0
  242. package/src/sdk/models/resume-subscription-response.ts +47 -0
  243. package/src/sdk/models/sub-modify-grouped-invoicing-params.ts +11 -0
  244. package/src/sdk/models/subscription-pause-response.ts +123 -0
  245. package/src/sdk/models/sync-addon-prices-op.ts +33 -0
  246. package/src/sdk/models/update-customer-request.ts +3 -3
  247. package/src/sdk/sdk.ts +6 -0
  248. package/src/sdk/subscriptions.ts +40 -0
@@ -0,0 +1,187 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v4-mini";
6
+ import { FlexpriceCore } from "../core.js";
7
+ import { encodeJSON, encodeSimple } from "../lib/encodings.js";
8
+ import { matchStatusCode } from "../lib/http.js";
9
+ import * as M from "../lib/matchers.js";
10
+ import { compactMap } from "../lib/primitives.js";
11
+ import { safeParse } from "../lib/schemas.js";
12
+ import { RequestOptions } from "../lib/sdks.js";
13
+ import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
14
+ import { pathToFunc } from "../lib/url.js";
15
+ import { FlexPriceError } from "../sdk/models/flex-price-error.js";
16
+ import {
17
+ ConnectionError,
18
+ InvalidRequestError,
19
+ RequestAbortedError,
20
+ RequestTimeoutError,
21
+ UnexpectedClientError,
22
+ } from "../sdk/models/http-client-errors.js";
23
+ import * as models from "../sdk/models/index.js";
24
+ import { ResponseValidationError } from "../sdk/models/response-validation-error.js";
25
+ import { SDKValidationError } from "../sdk/models/sdk-validation-error.js";
26
+ import { APICall, APIPromise } from "../types/async.js";
27
+ import { Result } from "../types/fp.js";
28
+
29
+ /**
30
+ * Resume subscription
31
+ *
32
+ * @remarks
33
+ * Use when a paused customer comes back. Resumes a paused subscription now on its existing billing anchor: the first period runs from the resume to the next billing date and its advance charges are invoiced at once.
34
+ */
35
+ export function subscriptionsResumeSubscription(
36
+ client: FlexpriceCore,
37
+ id: string,
38
+ body: models.ResumeSubscriptionRequest,
39
+ options?: RequestOptions,
40
+ ): APIPromise<
41
+ Result<
42
+ models.ResumeSubscriptionResponse,
43
+ | models.ErrorsErrorResponse
44
+ | FlexPriceError
45
+ | ResponseValidationError
46
+ | ConnectionError
47
+ | RequestAbortedError
48
+ | RequestTimeoutError
49
+ | InvalidRequestError
50
+ | UnexpectedClientError
51
+ | SDKValidationError
52
+ >
53
+ > {
54
+ return new APIPromise($do(
55
+ client,
56
+ id,
57
+ body,
58
+ options,
59
+ ));
60
+ }
61
+
62
+ async function $do(
63
+ client: FlexpriceCore,
64
+ id: string,
65
+ body: models.ResumeSubscriptionRequest,
66
+ options?: RequestOptions,
67
+ ): Promise<
68
+ [
69
+ Result<
70
+ models.ResumeSubscriptionResponse,
71
+ | models.ErrorsErrorResponse
72
+ | FlexPriceError
73
+ | ResponseValidationError
74
+ | ConnectionError
75
+ | RequestAbortedError
76
+ | RequestTimeoutError
77
+ | InvalidRequestError
78
+ | UnexpectedClientError
79
+ | SDKValidationError
80
+ >,
81
+ APICall,
82
+ ]
83
+ > {
84
+ const input: models.ResumeSubscriptionRequestRequest = {
85
+ id: id,
86
+ body: body,
87
+ };
88
+
89
+ const parsed = safeParse(
90
+ input,
91
+ (value) =>
92
+ z.parse(models.ResumeSubscriptionRequestRequest$outboundSchema, value),
93
+ "Input validation failed",
94
+ );
95
+ if (!parsed.ok) {
96
+ return [parsed, { status: "invalid" }];
97
+ }
98
+ const payload = parsed.value;
99
+ const body$ = encodeJSON("body", payload.body, { explode: true });
100
+
101
+ const pathParams = {
102
+ id: encodeSimple("id", payload.id, {
103
+ explode: false,
104
+ charEncoding: "percent",
105
+ }),
106
+ };
107
+ const path = pathToFunc("/subscriptions/{id}/resume")(pathParams);
108
+
109
+ const headers = new Headers(compactMap({
110
+ "Content-Type": "application/json",
111
+ Accept: "application/json",
112
+ }));
113
+
114
+ const secConfig = await extractSecurity(client._options.apiKeyAuth);
115
+ const securityInput = secConfig == null ? {} : { apiKeyAuth: secConfig };
116
+ const requestSecurity = resolveGlobalSecurity(securityInput);
117
+
118
+ const context = {
119
+ options: client._options,
120
+ baseURL: options?.serverURL ?? client._baseURL ?? "",
121
+ operationID: "resumeSubscription",
122
+ oAuth2Scopes: null,
123
+
124
+ resolvedSecurity: requestSecurity,
125
+
126
+ securitySource: client._options.apiKeyAuth,
127
+ retryConfig: options?.retries
128
+ || client._options.retryConfig
129
+ || { strategy: "none" },
130
+ retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"],
131
+ };
132
+
133
+ const requestRes = client._createRequest(context, {
134
+ security: requestSecurity,
135
+ method: "POST",
136
+ baseURL: options?.serverURL,
137
+ path: path,
138
+ headers: headers,
139
+ body: body$,
140
+ userAgent: client._options.userAgent,
141
+ timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
142
+ }, options);
143
+ if (!requestRes.ok) {
144
+ return [requestRes, { status: "invalid" }];
145
+ }
146
+ const req = requestRes.value;
147
+
148
+ const doResult = await client._do(req, {
149
+ context,
150
+ isErrorStatusCode: (statusCode: number) =>
151
+ matchStatusCode({ status: statusCode } as Response, ["4XX", "5XX"]),
152
+ retryConfig: context.retryConfig,
153
+ retryCodes: context.retryCodes,
154
+ });
155
+ if (!doResult.ok) {
156
+ return [doResult, { status: "request-error", request: req }];
157
+ }
158
+ const response = doResult.value;
159
+
160
+ const responseFields = {
161
+ HttpMeta: { Response: response, Request: req },
162
+ };
163
+
164
+ const [result] = await M.match<
165
+ models.ResumeSubscriptionResponse,
166
+ | models.ErrorsErrorResponse
167
+ | FlexPriceError
168
+ | ResponseValidationError
169
+ | ConnectionError
170
+ | RequestAbortedError
171
+ | RequestTimeoutError
172
+ | InvalidRequestError
173
+ | UnexpectedClientError
174
+ | SDKValidationError
175
+ >(
176
+ M.json(200, models.ResumeSubscriptionResponse$inboundSchema),
177
+ M.jsonErr([400, 404], models.ErrorsErrorResponse$inboundSchema),
178
+ M.jsonErr(500, models.ErrorsErrorResponse$inboundSchema),
179
+ M.fail("4XX"),
180
+ M.fail("5XX"),
181
+ )(response, req, { extraFields: responseFields });
182
+ if (!result.ok) {
183
+ return [result, { status: "complete", request: req, response }];
184
+ }
185
+
186
+ return [result, { status: "complete", request: req, response }];
187
+ }
package/src/lib/config.ts CHANGED
@@ -69,7 +69,7 @@ export function serverURLFromOptions(options: SDKOptions): URL | null {
69
69
  export const SDK_METADATA = {
70
70
  language: "typescript",
71
71
  openapiDocVersion: "1.0",
72
- sdkVersion: "2.1.37",
72
+ sdkVersion: "2.1.39",
73
73
  genVersion: "2.948.4",
74
- userAgent: "speakeasy-sdk/typescript 2.1.37 2.948.4 1.0 @flexprice/sdk",
74
+ userAgent: "speakeasy-sdk/typescript 2.1.39 2.948.4 1.0 @flexprice/sdk",
75
75
  } as const;
@@ -0,0 +1,45 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { activityGetActivity } from "../funcs/activity-get-activity.js";
6
+ import { activityListActivity } from "../funcs/activity-list-activity.js";
7
+ import { ClientSDK, RequestOptions } from "../lib/sdks.js";
8
+ import { unwrapAsync } from "../types/fp.js";
9
+ import * as models from "./models/index.js";
10
+
11
+ export class Activity extends ClientSDK {
12
+ /**
13
+ * List activity
14
+ *
15
+ * @remarks
16
+ * Use when you need the audit trail of changes to billing entities: who changed what, when, from where. Filter by entity, customer, actor, action or request; pages are newest first.
17
+ */
18
+ async listActivity(
19
+ request: models.ListActivityRequest,
20
+ options?: RequestOptions,
21
+ ): Promise<models.ListActivityResponse> {
22
+ return unwrapAsync(activityListActivity(
23
+ this,
24
+ request,
25
+ options,
26
+ ));
27
+ }
28
+
29
+ /**
30
+ * Get activity
31
+ *
32
+ * @remarks
33
+ * Use when you need one activity entry with the state of the entity right after the change.
34
+ */
35
+ async getActivity(
36
+ id: string,
37
+ options?: RequestOptions,
38
+ ): Promise<models.ActivityResponse> {
39
+ return unwrapAsync(activityGetActivity(
40
+ this,
41
+ id,
42
+ options,
43
+ ));
44
+ }
45
+ }
package/src/sdk/addons.ts CHANGED
@@ -7,6 +7,7 @@ import { addonsDeleteAddon } from "../funcs/addons-delete-addon.js";
7
7
  import { addonsGetAddonByLookupKey } from "../funcs/addons-get-addon-by-lookup-key.js";
8
8
  import { addonsGetAddon } from "../funcs/addons-get-addon.js";
9
9
  import { addonsQueryAddon } from "../funcs/addons-query-addon.js";
10
+ import { addonsSyncAddonPrices } from "../funcs/addons-sync-addon-prices.js";
10
11
  import { addonsUpdateAddon } from "../funcs/addons-update-addon.js";
11
12
  import { ClientSDK, RequestOptions } from "../lib/sdks.js";
12
13
  import { unwrapAsync } from "../types/fp.js";
@@ -116,4 +117,21 @@ export class Addons extends ClientSDK {
116
117
  options,
117
118
  ));
118
119
  }
120
+
121
+ /**
122
+ * Synchronize addon prices
123
+ *
124
+ * @remarks
125
+ * Use when you have changed an addon's usage charges and need to push them to all active subscriptions holding the addon. Returns workflow ID.
126
+ */
127
+ async syncAddonPrices(
128
+ id: string,
129
+ options?: RequestOptions,
130
+ ): Promise<models.ModelsTemporalWorkflowResult> {
131
+ return unwrapAsync(addonsSyncAddonPrices(
132
+ this,
133
+ id,
134
+ options,
135
+ ));
136
+ }
119
137
  }
@@ -0,0 +1,35 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v4-mini";
6
+ import { safeParse } from "../../lib/schemas.js";
7
+ import { Result as SafeParseResult } from "../../types/fp.js";
8
+ import * as types from "../../types/primitives.js";
9
+ import { SDKValidationError } from "./sdk-validation-error.js";
10
+
11
+ export type ActivityActor = {
12
+ id?: string | undefined;
13
+ label?: string | undefined;
14
+ type?: string | undefined;
15
+ };
16
+
17
+ /** @internal */
18
+ export const ActivityActor$inboundSchema: z.ZodMiniType<
19
+ ActivityActor,
20
+ unknown
21
+ > = z.object({
22
+ id: types.optional(types.string()),
23
+ label: types.optional(types.string()),
24
+ type: types.optional(types.string()),
25
+ });
26
+
27
+ export function activityActorFromJSON(
28
+ jsonString: string,
29
+ ): SafeParseResult<ActivityActor, SDKValidationError> {
30
+ return safeParse(
31
+ jsonString,
32
+ (x) => ActivityActor$inboundSchema.parse(JSON.parse(x)),
33
+ `Failed to parse 'ActivityActor' from JSON`,
34
+ );
35
+ }
@@ -0,0 +1,35 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v4-mini";
6
+ import { safeParse } from "../../lib/schemas.js";
7
+ import { Result as SafeParseResult } from "../../types/fp.js";
8
+ import * as types from "../../types/primitives.js";
9
+ import { SDKValidationError } from "./sdk-validation-error.js";
10
+
11
+ export type ActivityEntity = {
12
+ id?: string | undefined;
13
+ label?: string | undefined;
14
+ type?: string | undefined;
15
+ };
16
+
17
+ /** @internal */
18
+ export const ActivityEntity$inboundSchema: z.ZodMiniType<
19
+ ActivityEntity,
20
+ unknown
21
+ > = z.object({
22
+ id: types.optional(types.string()),
23
+ label: types.optional(types.string()),
24
+ type: types.optional(types.string()),
25
+ });
26
+
27
+ export function activityEntityFromJSON(
28
+ jsonString: string,
29
+ ): SafeParseResult<ActivityEntity, SDKValidationError> {
30
+ return safeParse(
31
+ jsonString,
32
+ (x) => ActivityEntity$inboundSchema.parse(JSON.parse(x)),
33
+ `Failed to parse 'ActivityEntity' from JSON`,
34
+ );
35
+ }
@@ -0,0 +1,44 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v4-mini";
6
+ import { remap as remap$ } from "../../lib/primitives.js";
7
+ import { safeParse } from "../../lib/schemas.js";
8
+ import { Result as SafeParseResult } from "../../types/fp.js";
9
+ import * as types from "../../types/primitives.js";
10
+ import { SDKValidationError } from "./sdk-validation-error.js";
11
+
12
+ export type ActivityPagination = {
13
+ hasMore?: boolean | undefined;
14
+ limit?: number | undefined;
15
+ nextCursor?: string | undefined;
16
+ };
17
+
18
+ /** @internal */
19
+ export const ActivityPagination$inboundSchema: z.ZodMiniType<
20
+ ActivityPagination,
21
+ unknown
22
+ > = z.pipe(
23
+ z.object({
24
+ has_more: types.optional(types.boolean()),
25
+ limit: types.optional(types.number()),
26
+ next_cursor: types.optional(types.string()),
27
+ }),
28
+ z.transform((v) => {
29
+ return remap$(v, {
30
+ "has_more": "hasMore",
31
+ "next_cursor": "nextCursor",
32
+ });
33
+ }),
34
+ );
35
+
36
+ export function activityPaginationFromJSON(
37
+ jsonString: string,
38
+ ): SafeParseResult<ActivityPagination, SDKValidationError> {
39
+ return safeParse(
40
+ jsonString,
41
+ (x) => ActivityPagination$inboundSchema.parse(JSON.parse(x)),
42
+ `Failed to parse 'ActivityPagination' from JSON`,
43
+ );
44
+ }
@@ -0,0 +1,85 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v4-mini";
6
+ import { remap as remap$ } from "../../lib/primitives.js";
7
+ import { safeParse } from "../../lib/schemas.js";
8
+ import { Result as SafeParseResult } from "../../types/fp.js";
9
+ import * as types from "../../types/primitives.js";
10
+ import {
11
+ ActivityActor,
12
+ ActivityActor$inboundSchema,
13
+ } from "./activity-actor.js";
14
+ import {
15
+ ActivityEntity,
16
+ ActivityEntity$inboundSchema,
17
+ } from "./activity-entity.js";
18
+ import { SDKValidationError } from "./sdk-validation-error.js";
19
+
20
+ export type State = {};
21
+
22
+ export type ActivityResponse = {
23
+ action?: string | undefined;
24
+ actor?: ActivityActor | undefined;
25
+ customerId?: string | undefined;
26
+ entity?: ActivityEntity | undefined;
27
+ id?: string | undefined;
28
+ ip?: string | undefined;
29
+ occurredAt?: Date | undefined;
30
+ requestId?: string | undefined;
31
+ source?: string | undefined;
32
+ state?: State | undefined;
33
+ userAgent?: string | undefined;
34
+ };
35
+
36
+ /** @internal */
37
+ export const State$inboundSchema: z.ZodMiniType<State, unknown> = z.object({});
38
+
39
+ export function stateFromJSON(
40
+ jsonString: string,
41
+ ): SafeParseResult<State, SDKValidationError> {
42
+ return safeParse(
43
+ jsonString,
44
+ (x) => State$inboundSchema.parse(JSON.parse(x)),
45
+ `Failed to parse 'State' from JSON`,
46
+ );
47
+ }
48
+
49
+ /** @internal */
50
+ export const ActivityResponse$inboundSchema: z.ZodMiniType<
51
+ ActivityResponse,
52
+ unknown
53
+ > = z.pipe(
54
+ z.object({
55
+ action: types.optional(types.string()),
56
+ actor: types.optional(ActivityActor$inboundSchema),
57
+ customer_id: types.optional(types.string()),
58
+ entity: types.optional(ActivityEntity$inboundSchema),
59
+ id: types.optional(types.string()),
60
+ ip: types.optional(types.string()),
61
+ occurred_at: types.optional(types.date()),
62
+ request_id: types.optional(types.string()),
63
+ source: types.optional(types.string()),
64
+ state: types.optional(z.lazy(() => State$inboundSchema)),
65
+ user_agent: types.optional(types.string()),
66
+ }),
67
+ z.transform((v) => {
68
+ return remap$(v, {
69
+ "customer_id": "customerId",
70
+ "occurred_at": "occurredAt",
71
+ "request_id": "requestId",
72
+ "user_agent": "userAgent",
73
+ });
74
+ }),
75
+ );
76
+
77
+ export function activityResponseFromJSON(
78
+ jsonString: string,
79
+ ): SafeParseResult<ActivityResponse, SDKValidationError> {
80
+ return safeParse(
81
+ jsonString,
82
+ (x) => ActivityResponse$inboundSchema.parse(JSON.parse(x)),
83
+ `Failed to parse 'ActivityResponse' from JSON`,
84
+ );
85
+ }
@@ -40,6 +40,13 @@ export type AddAddonToSubscriptionResponse = {
40
40
  metadata?: { [k: string]: any } | undefined;
41
41
  startDate?: Date | undefined;
42
42
  status?: Status | undefined;
43
+ /**
44
+ * SyncedPriceSequence is the addon price sequence this association's line items
45
+ *
46
+ * @remarks
47
+ * have been reconciled up to. Written only by the addon usage-price sync.
48
+ */
49
+ syncedPriceSequence?: number | undefined;
43
50
  tenantId?: string | undefined;
44
51
  updatedAt?: Date | undefined;
45
52
  updatedBy?: string | undefined;
@@ -67,6 +74,7 @@ export const AddAddonToSubscriptionResponse$inboundSchema: z.ZodMiniType<
67
74
  metadata: types.optional(z.record(z.string(), z.any())),
68
75
  start_date: types.optional(types.date()),
69
76
  status: types.optional(Status$inboundSchema),
77
+ synced_price_sequence: types.optional(types.number()),
70
78
  tenant_id: types.optional(types.string()),
71
79
  updated_at: types.optional(types.date()),
72
80
  updated_by: types.optional(types.string()),
@@ -85,6 +93,7 @@ export const AddAddonToSubscriptionResponse$inboundSchema: z.ZodMiniType<
85
93
  "entity_type": "entityType",
86
94
  "environment_id": "environmentId",
87
95
  "start_date": "startDate",
96
+ "synced_price_sequence": "syncedPriceSequence",
88
97
  "tenant_id": "tenantId",
89
98
  "updated_at": "updatedAt",
90
99
  "updated_by": "updatedBy",
@@ -40,6 +40,13 @@ export type AddonAssociationResponse = {
40
40
  startDate?: Date | undefined;
41
41
  status?: Status | undefined;
42
42
  subscription?: SubscriptionResponse | undefined;
43
+ /**
44
+ * SyncedPriceSequence is the addon price sequence this association's line items
45
+ *
46
+ * @remarks
47
+ * have been reconciled up to. Written only by the addon usage-price sync.
48
+ */
49
+ syncedPriceSequence?: number | undefined;
43
50
  tenantId?: string | undefined;
44
51
  updatedAt?: Date | undefined;
45
52
  updatedBy?: string | undefined;
@@ -67,6 +74,7 @@ export const AddonAssociationResponse$inboundSchema: z.ZodMiniType<
67
74
  start_date: types.optional(types.date()),
68
75
  status: types.optional(Status$inboundSchema),
69
76
  subscription: types.optional(SubscriptionResponse$inboundSchema),
77
+ synced_price_sequence: types.optional(types.number()),
70
78
  tenant_id: types.optional(types.string()),
71
79
  updated_at: types.optional(types.date()),
72
80
  updated_by: types.optional(types.string()),
@@ -84,6 +92,7 @@ export const AddonAssociationResponse$inboundSchema: z.ZodMiniType<
84
92
  "entity_type": "entityType",
85
93
  "environment_id": "environmentId",
86
94
  "start_date": "startDate",
95
+ "synced_price_sequence": "syncedPriceSequence",
87
96
  "tenant_id": "tenantId",
88
97
  "updated_at": "updatedAt",
89
98
  "updated_by": "updatedBy",
@@ -0,0 +1,44 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v4-mini";
6
+ import { remap as remap$ } from "../../lib/primitives.js";
7
+ import { safeParse } from "../../lib/schemas.js";
8
+ import { Result as SafeParseResult } from "../../types/fp.js";
9
+ import * as types from "../../types/primitives.js";
10
+ import { SDKValidationError } from "./sdk-validation-error.js";
11
+
12
+ export type AddonPriceSyncStatusResponse = {
13
+ currentSequence?: number | undefined;
14
+ synced?: boolean | undefined;
15
+ unsyncedAssociationCount?: number | undefined;
16
+ };
17
+
18
+ /** @internal */
19
+ export const AddonPriceSyncStatusResponse$inboundSchema: z.ZodMiniType<
20
+ AddonPriceSyncStatusResponse,
21
+ unknown
22
+ > = z.pipe(
23
+ z.object({
24
+ current_sequence: types.optional(types.number()),
25
+ synced: types.optional(types.boolean()),
26
+ unsynced_association_count: types.optional(types.number()),
27
+ }),
28
+ z.transform((v) => {
29
+ return remap$(v, {
30
+ "current_sequence": "currentSequence",
31
+ "unsynced_association_count": "unsyncedAssociationCount",
32
+ });
33
+ }),
34
+ );
35
+
36
+ export function addonPriceSyncStatusResponseFromJSON(
37
+ jsonString: string,
38
+ ): SafeParseResult<AddonPriceSyncStatusResponse, SDKValidationError> {
39
+ return safeParse(
40
+ jsonString,
41
+ (x) => AddonPriceSyncStatusResponse$inboundSchema.parse(JSON.parse(x)),
42
+ `Failed to parse 'AddonPriceSyncStatusResponse' from JSON`,
43
+ );
44
+ }
@@ -7,6 +7,10 @@ import { remap as remap$ } from "../../lib/primitives.js";
7
7
  import { safeParse } from "../../lib/schemas.js";
8
8
  import { Result as SafeParseResult } from "../../types/fp.js";
9
9
  import * as types from "../../types/primitives.js";
10
+ import {
11
+ AddonPriceSyncStatusResponse,
12
+ AddonPriceSyncStatusResponse$inboundSchema,
13
+ } from "./addon-price-sync-status-response.js";
10
14
  import {
11
15
  CreditGrantResponse,
12
16
  CreditGrantResponse$inboundSchema,
@@ -33,6 +37,7 @@ export type AddonResponse = {
33
37
  lookupKey?: string | undefined;
34
38
  metadata?: { [k: string]: any } | undefined;
35
39
  name?: string | undefined;
40
+ priceSyncStatus?: AddonPriceSyncStatusResponse | undefined;
36
41
  /**
37
42
  * Optional expanded fields
38
43
  */
@@ -61,6 +66,9 @@ export const AddonResponse$inboundSchema: z.ZodMiniType<
61
66
  lookup_key: types.optional(types.string()),
62
67
  metadata: types.optional(z.record(z.string(), z.any())),
63
68
  name: types.optional(types.string()),
69
+ price_sync_status: types.optional(
70
+ AddonPriceSyncStatusResponse$inboundSchema,
71
+ ),
64
72
  prices: types.optional(z.array(z.lazy(() => PriceResponse$inboundSchema))),
65
73
  status: types.optional(Status$inboundSchema),
66
74
  tenant_id: types.optional(types.string()),
@@ -74,6 +82,7 @@ export const AddonResponse$inboundSchema: z.ZodMiniType<
74
82
  "credit_grants": "creditGrants",
75
83
  "environment_id": "environmentId",
76
84
  "lookup_key": "lookupKey",
85
+ "price_sync_status": "priceSyncStatus",
77
86
  "tenant_id": "tenantId",
78
87
  "updated_at": "updatedAt",
79
88
  "updated_by": "updatedBy",
@@ -27,7 +27,7 @@ export type CancelSubscriptionRequest = {
27
27
  * For "immediate", accepts past/current dates only; use "scheduled_date" for future dates.
28
28
  */
29
29
  cancelAt?: Date | undefined;
30
- cancelImmediatelyInovicePolicy?: CancelImmediatelyInvoicePolicy | undefined;
30
+ cancelImmediatelyInvoicePolicy?: CancelImmediatelyInvoicePolicy | undefined;
31
31
  cancellationType: CancellationType;
32
32
  prorationBehavior?: ProrationBehavior | undefined;
33
33
  /**
@@ -39,7 +39,7 @@ export type CancelSubscriptionRequest = {
39
39
  /** @internal */
40
40
  export type CancelSubscriptionRequest$Outbound = {
41
41
  cancel_at?: string | undefined;
42
- cancel_immediately_inovice_policy?: string | undefined;
42
+ cancel_immediately_invoice_policy?: string | undefined;
43
43
  cancellation_type: string;
44
44
  proration_behavior?: string | undefined;
45
45
  reason?: string | undefined;
@@ -52,7 +52,7 @@ export const CancelSubscriptionRequest$outboundSchema: z.ZodMiniType<
52
52
  > = z.pipe(
53
53
  z.object({
54
54
  cancelAt: z.optional(z.pipe(z.date(), z.transform(v => v.toISOString()))),
55
- cancelImmediatelyInovicePolicy: z.optional(
55
+ cancelImmediatelyInvoicePolicy: z.optional(
56
56
  CancelImmediatelyInvoicePolicy$outboundSchema,
57
57
  ),
58
58
  cancellationType: CancellationType$outboundSchema,
@@ -62,7 +62,7 @@ export const CancelSubscriptionRequest$outboundSchema: z.ZodMiniType<
62
62
  z.transform((v) => {
63
63
  return remap$(v, {
64
64
  cancelAt: "cancel_at",
65
- cancelImmediatelyInovicePolicy: "cancel_immediately_inovice_policy",
65
+ cancelImmediatelyInvoicePolicy: "cancel_immediately_invoice_policy",
66
66
  cancellationType: "cancellation_type",
67
67
  prorationBehavior: "proration_behavior",
68
68
  });
@@ -24,6 +24,7 @@ export type ChangedAddonAssociation = {
24
24
  endDate?: Date | undefined;
25
25
  id?: string | undefined;
26
26
  startDate?: Date | undefined;
27
+ subscriptionId?: string | undefined;
27
28
  };
28
29
 
29
30
  /** @internal */
@@ -38,6 +39,7 @@ export const ChangedAddonAssociation$inboundSchema: z.ZodMiniType<
38
39
  end_date: types.optional(types.date()),
39
40
  id: types.optional(types.string()),
40
41
  start_date: types.optional(types.date()),
42
+ subscription_id: types.optional(types.string()),
41
43
  }),
42
44
  z.transform((v) => {
43
45
  return remap$(v, {
@@ -46,6 +48,7 @@ export const ChangedAddonAssociation$inboundSchema: z.ZodMiniType<
46
48
  "change_action": "changeAction",
47
49
  "end_date": "endDate",
48
50
  "start_date": "startDate",
51
+ "subscription_id": "subscriptionId",
49
52
  });
50
53
  }),
51
54
  );