@flexprice/sdk 2.1.38 → 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.
- package/docs/sdk/models/invoice-billing-reason.md +2 -2
- package/docs/sdk/models/pause-subscription-request-request.md +19 -0
- package/docs/sdk/models/pause-subscription-request.md +19 -0
- package/docs/sdk/models/pause-subscription-response.md +127 -0
- package/docs/sdk/models/resume-subscription-request-request.md +19 -0
- package/docs/sdk/models/resume-subscription-request.md +18 -0
- package/docs/sdk/models/resume-subscription-response.md +127 -0
- package/docs/sdk/models/subscription-pause-response.md +35 -0
- package/docs/sdks/subscriptions/README.md +146 -0
- package/esm/funcs/subscriptions-pause-subscription.d.ts +17 -0
- package/esm/funcs/subscriptions-pause-subscription.d.ts.map +1 -0
- package/esm/funcs/subscriptions-pause-subscription.js +93 -0
- package/esm/funcs/subscriptions-pause-subscription.js.map +1 -0
- package/esm/funcs/subscriptions-resume-subscription.d.ts +17 -0
- package/esm/funcs/subscriptions-resume-subscription.d.ts.map +1 -0
- package/esm/funcs/subscriptions-resume-subscription.js +93 -0
- package/esm/funcs/subscriptions-resume-subscription.js.map +1 -0
- package/esm/lib/config.d.ts +2 -2
- package/esm/lib/config.js +2 -2
- package/esm/sdk/models/index.d.ts +7 -0
- package/esm/sdk/models/index.d.ts.map +1 -1
- package/esm/sdk/models/index.js +7 -0
- package/esm/sdk/models/index.js.map +1 -1
- package/esm/sdk/models/invoice-billing-reason.d.ts +2 -0
- package/esm/sdk/models/invoice-billing-reason.d.ts.map +1 -1
- package/esm/sdk/models/invoice-billing-reason.js +2 -0
- package/esm/sdk/models/invoice-billing-reason.js.map +1 -1
- package/esm/sdk/models/pause-subscription-op.d.ts +21 -0
- package/esm/sdk/models/pause-subscription-op.d.ts.map +1 -0
- package/esm/sdk/models/pause-subscription-op.js +14 -0
- package/esm/sdk/models/pause-subscription-op.js.map +1 -0
- package/esm/sdk/models/pause-subscription-request.d.ts +37 -0
- package/esm/sdk/models/pause-subscription-request.d.ts.map +1 -0
- package/esm/sdk/models/pause-subscription-request.js +20 -0
- package/esm/sdk/models/pause-subscription-request.js.map +1 -0
- package/esm/sdk/models/pause-subscription-response.d.ts +19 -0
- package/esm/sdk/models/pause-subscription-response.d.ts.map +1 -0
- package/esm/sdk/models/pause-subscription-response.js +17 -0
- package/esm/sdk/models/pause-subscription-response.js.map +1 -0
- package/esm/sdk/models/resume-subscription-op.d.ts +21 -0
- package/esm/sdk/models/resume-subscription-op.d.ts.map +1 -0
- package/esm/sdk/models/resume-subscription-op.js +14 -0
- package/esm/sdk/models/resume-subscription-op.js.map +1 -0
- package/esm/sdk/models/resume-subscription-request.d.ts +28 -0
- package/esm/sdk/models/resume-subscription-request.d.ts.map +1 -0
- package/esm/sdk/models/resume-subscription-request.js +19 -0
- package/esm/sdk/models/resume-subscription-request.js.map +1 -0
- package/esm/sdk/models/resume-subscription-response.d.ts +19 -0
- package/esm/sdk/models/resume-subscription-response.d.ts.map +1 -0
- package/esm/sdk/models/resume-subscription-response.js +17 -0
- package/esm/sdk/models/resume-subscription-response.js.map +1 -0
- package/esm/sdk/models/subscription-pause-response.d.ts +64 -0
- package/esm/sdk/models/subscription-pause-response.d.ts.map +1 -0
- package/esm/sdk/models/subscription-pause-response.js +55 -0
- package/esm/sdk/models/subscription-pause-response.js.map +1 -0
- package/esm/sdk/subscriptions.d.ts +14 -0
- package/esm/sdk/subscriptions.d.ts.map +1 -1
- package/esm/sdk/subscriptions.js +20 -0
- package/esm/sdk/subscriptions.js.map +1 -1
- package/jsr.json +1 -1
- package/package.json +1 -1
- package/src/funcs/subscriptions-pause-subscription.ts +187 -0
- package/src/funcs/subscriptions-resume-subscription.ts +187 -0
- package/src/lib/config.ts +2 -2
- package/src/sdk/models/index.ts +7 -0
- package/src/sdk/models/invoice-billing-reason.ts +2 -0
- package/src/sdk/models/pause-subscription-op.ts +46 -0
- package/src/sdk/models/pause-subscription-request.ts +64 -0
- package/src/sdk/models/pause-subscription-response.ts +47 -0
- package/src/sdk/models/resume-subscription-op.ts +46 -0
- package/src/sdk/models/resume-subscription-request.ts +54 -0
- package/src/sdk/models/resume-subscription-response.ts +47 -0
- package/src/sdk/models/subscription-pause-response.ts +123 -0
- 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
|
+
* Pause subscription
|
|
31
|
+
*
|
|
32
|
+
* @remarks
|
|
33
|
+
* Use when a customer stops temporarily. Pauses an active subscription now: usage and arrear fixed charges up to the pause are billed on a closing invoice, and every paused period after it gets a $0 skipped invoice.
|
|
34
|
+
*/
|
|
35
|
+
export function subscriptionsPauseSubscription(
|
|
36
|
+
client: FlexpriceCore,
|
|
37
|
+
id: string,
|
|
38
|
+
body: models.PauseSubscriptionRequest,
|
|
39
|
+
options?: RequestOptions,
|
|
40
|
+
): APIPromise<
|
|
41
|
+
Result<
|
|
42
|
+
models.PauseSubscriptionResponse,
|
|
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.PauseSubscriptionRequest,
|
|
66
|
+
options?: RequestOptions,
|
|
67
|
+
): Promise<
|
|
68
|
+
[
|
|
69
|
+
Result<
|
|
70
|
+
models.PauseSubscriptionResponse,
|
|
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.PauseSubscriptionRequestRequest = {
|
|
85
|
+
id: id,
|
|
86
|
+
body: body,
|
|
87
|
+
};
|
|
88
|
+
|
|
89
|
+
const parsed = safeParse(
|
|
90
|
+
input,
|
|
91
|
+
(value) =>
|
|
92
|
+
z.parse(models.PauseSubscriptionRequestRequest$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}/pause")(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: "pauseSubscription",
|
|
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.PauseSubscriptionResponse,
|
|
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.PauseSubscriptionResponse$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
|
+
}
|
|
@@ -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.
|
|
72
|
+
sdkVersion: "2.1.39",
|
|
73
73
|
genVersion: "2.948.4",
|
|
74
|
-
userAgent: "speakeasy-sdk/typescript 2.1.
|
|
74
|
+
userAgent: "speakeasy-sdk/typescript 2.1.39 2.948.4 1.0 @flexprice/sdk",
|
|
75
75
|
} as const;
|
package/src/sdk/models/index.ts
CHANGED
|
@@ -459,6 +459,9 @@ export * from "./override-line-item-request.js";
|
|
|
459
459
|
export * from "./pagination-response.js";
|
|
460
460
|
export * from "./pause-mode.js";
|
|
461
461
|
export * from "./pause-status.js";
|
|
462
|
+
export * from "./pause-subscription-op.js";
|
|
463
|
+
export * from "./pause-subscription-request.js";
|
|
464
|
+
export * from "./pause-subscription-response.js";
|
|
462
465
|
export * from "./pay-invoice-params.js";
|
|
463
466
|
export * from "./payment-action-type.js";
|
|
464
467
|
export * from "./payment-action.js";
|
|
@@ -524,6 +527,9 @@ export * from "./reporting-unit.js";
|
|
|
524
527
|
export * from "./reset-usage.js";
|
|
525
528
|
export * from "./response-validation-error.js";
|
|
526
529
|
export * from "./resume-mode.js";
|
|
530
|
+
export * from "./resume-subscription-op.js";
|
|
531
|
+
export * from "./resume-subscription-request.js";
|
|
532
|
+
export * from "./resume-subscription-response.js";
|
|
527
533
|
export * from "./retry-refund-op.js";
|
|
528
534
|
export * from "./revenue-allocation-policy.js";
|
|
529
535
|
export * from "./revenue-analytics-request.js";
|
|
@@ -592,6 +598,7 @@ export * from "./subscription-line-item-response.js";
|
|
|
592
598
|
export * from "./subscription-modification-action.js";
|
|
593
599
|
export * from "./subscription-modify-response.js";
|
|
594
600
|
export * from "./subscription-modify-type.js";
|
|
601
|
+
export * from "./subscription-pause-response.js";
|
|
595
602
|
export * from "./subscription-phase-create-request.js";
|
|
596
603
|
export * from "./subscription-phase-response.js";
|
|
597
604
|
export * from "./subscription-price-create-request.js";
|
|
@@ -15,6 +15,8 @@ export const InvoiceBillingReason = {
|
|
|
15
15
|
Manual: "MANUAL",
|
|
16
16
|
AutoInvoiceThreshold: "AUTO_INVOICE_THRESHOLD",
|
|
17
17
|
WalletAutoTopup: "WALLET_AUTO_TOPUP",
|
|
18
|
+
SubscriptionPaused: "SUBSCRIPTION_PAUSED",
|
|
19
|
+
SubscriptionResume: "SUBSCRIPTION_RESUME",
|
|
18
20
|
} as const;
|
|
19
21
|
export type InvoiceBillingReason = ClosedEnum<typeof InvoiceBillingReason>;
|
|
20
22
|
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import * as z from "zod/v4-mini";
|
|
6
|
+
import {
|
|
7
|
+
PauseSubscriptionRequest,
|
|
8
|
+
PauseSubscriptionRequest$Outbound,
|
|
9
|
+
PauseSubscriptionRequest$outboundSchema,
|
|
10
|
+
} from "./pause-subscription-request.js";
|
|
11
|
+
|
|
12
|
+
export type PauseSubscriptionRequestRequest = {
|
|
13
|
+
/**
|
|
14
|
+
* Subscription ID
|
|
15
|
+
*/
|
|
16
|
+
id: string;
|
|
17
|
+
/**
|
|
18
|
+
* Pause subscription request
|
|
19
|
+
*/
|
|
20
|
+
body: PauseSubscriptionRequest;
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
/** @internal */
|
|
24
|
+
export type PauseSubscriptionRequestRequest$Outbound = {
|
|
25
|
+
id: string;
|
|
26
|
+
body: PauseSubscriptionRequest$Outbound;
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
/** @internal */
|
|
30
|
+
export const PauseSubscriptionRequestRequest$outboundSchema: z.ZodMiniType<
|
|
31
|
+
PauseSubscriptionRequestRequest$Outbound,
|
|
32
|
+
PauseSubscriptionRequestRequest
|
|
33
|
+
> = z.object({
|
|
34
|
+
id: z.string(),
|
|
35
|
+
body: PauseSubscriptionRequest$outboundSchema,
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
export function pauseSubscriptionRequestRequestToJSON(
|
|
39
|
+
pauseSubscriptionRequestRequest: PauseSubscriptionRequestRequest,
|
|
40
|
+
): string {
|
|
41
|
+
return JSON.stringify(
|
|
42
|
+
PauseSubscriptionRequestRequest$outboundSchema.parse(
|
|
43
|
+
pauseSubscriptionRequestRequest,
|
|
44
|
+
),
|
|
45
|
+
);
|
|
46
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
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 {
|
|
8
|
+
ProrationBehavior,
|
|
9
|
+
ProrationBehavior$outboundSchema,
|
|
10
|
+
} from "./proration-behavior.js";
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Pauses an active subscription now. Usage and arrear fixed charges up to the pause are billed on a closing invoice.
|
|
14
|
+
*/
|
|
15
|
+
export type PauseSubscriptionRequest = {
|
|
16
|
+
/**
|
|
17
|
+
* Metadata stored on the pause
|
|
18
|
+
*
|
|
19
|
+
* @remarks
|
|
20
|
+
* @Example {"requested_by": "customer", "channel": "support_ticket"}
|
|
21
|
+
*/
|
|
22
|
+
metadata?: { [k: string]: string } | undefined;
|
|
23
|
+
prorationBehavior?: ProrationBehavior | undefined;
|
|
24
|
+
/**
|
|
25
|
+
* Reason for pausing the subscription
|
|
26
|
+
*
|
|
27
|
+
* @remarks
|
|
28
|
+
* @Description Optional reason for the pause. Maximum 255 characters
|
|
29
|
+
* @Example "Customer requested temporary suspension"
|
|
30
|
+
*/
|
|
31
|
+
reason?: string | undefined;
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
/** @internal */
|
|
35
|
+
export type PauseSubscriptionRequest$Outbound = {
|
|
36
|
+
metadata?: { [k: string]: string } | undefined;
|
|
37
|
+
proration_behavior?: string | undefined;
|
|
38
|
+
reason?: string | undefined;
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
/** @internal */
|
|
42
|
+
export const PauseSubscriptionRequest$outboundSchema: z.ZodMiniType<
|
|
43
|
+
PauseSubscriptionRequest$Outbound,
|
|
44
|
+
PauseSubscriptionRequest
|
|
45
|
+
> = z.pipe(
|
|
46
|
+
z.object({
|
|
47
|
+
metadata: z.optional(z.record(z.string(), z.string())),
|
|
48
|
+
prorationBehavior: z.optional(ProrationBehavior$outboundSchema),
|
|
49
|
+
reason: z.optional(z.string()),
|
|
50
|
+
}),
|
|
51
|
+
z.transform((v) => {
|
|
52
|
+
return remap$(v, {
|
|
53
|
+
prorationBehavior: "proration_behavior",
|
|
54
|
+
});
|
|
55
|
+
}),
|
|
56
|
+
);
|
|
57
|
+
|
|
58
|
+
export function pauseSubscriptionRequestToJSON(
|
|
59
|
+
pauseSubscriptionRequest: PauseSubscriptionRequest,
|
|
60
|
+
): string {
|
|
61
|
+
return JSON.stringify(
|
|
62
|
+
PauseSubscriptionRequest$outboundSchema.parse(pauseSubscriptionRequest),
|
|
63
|
+
);
|
|
64
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
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
|
+
import {
|
|
11
|
+
SubscriptionPauseResponse,
|
|
12
|
+
SubscriptionPauseResponse$inboundSchema,
|
|
13
|
+
} from "./subscription-pause-response.js";
|
|
14
|
+
import {
|
|
15
|
+
SubscriptionResponse,
|
|
16
|
+
SubscriptionResponse$inboundSchema,
|
|
17
|
+
} from "./subscription-response.js";
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* The paused subscription and its pause
|
|
21
|
+
*/
|
|
22
|
+
export type PauseSubscriptionResponse = {
|
|
23
|
+
/**
|
|
24
|
+
* Response object containing subscription pause information
|
|
25
|
+
*/
|
|
26
|
+
pause?: SubscriptionPauseResponse | undefined;
|
|
27
|
+
subscription?: SubscriptionResponse | undefined;
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
/** @internal */
|
|
31
|
+
export const PauseSubscriptionResponse$inboundSchema: z.ZodMiniType<
|
|
32
|
+
PauseSubscriptionResponse,
|
|
33
|
+
unknown
|
|
34
|
+
> = z.object({
|
|
35
|
+
pause: types.optional(SubscriptionPauseResponse$inboundSchema),
|
|
36
|
+
subscription: types.optional(SubscriptionResponse$inboundSchema),
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
export function pauseSubscriptionResponseFromJSON(
|
|
40
|
+
jsonString: string,
|
|
41
|
+
): SafeParseResult<PauseSubscriptionResponse, SDKValidationError> {
|
|
42
|
+
return safeParse(
|
|
43
|
+
jsonString,
|
|
44
|
+
(x) => PauseSubscriptionResponse$inboundSchema.parse(JSON.parse(x)),
|
|
45
|
+
`Failed to parse 'PauseSubscriptionResponse' from JSON`,
|
|
46
|
+
);
|
|
47
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import * as z from "zod/v4-mini";
|
|
6
|
+
import {
|
|
7
|
+
ResumeSubscriptionRequest,
|
|
8
|
+
ResumeSubscriptionRequest$Outbound,
|
|
9
|
+
ResumeSubscriptionRequest$outboundSchema,
|
|
10
|
+
} from "./resume-subscription-request.js";
|
|
11
|
+
|
|
12
|
+
export type ResumeSubscriptionRequestRequest = {
|
|
13
|
+
/**
|
|
14
|
+
* Subscription ID
|
|
15
|
+
*/
|
|
16
|
+
id: string;
|
|
17
|
+
/**
|
|
18
|
+
* Resume subscription request
|
|
19
|
+
*/
|
|
20
|
+
body: ResumeSubscriptionRequest;
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
/** @internal */
|
|
24
|
+
export type ResumeSubscriptionRequestRequest$Outbound = {
|
|
25
|
+
id: string;
|
|
26
|
+
body: ResumeSubscriptionRequest$Outbound;
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
/** @internal */
|
|
30
|
+
export const ResumeSubscriptionRequestRequest$outboundSchema: z.ZodMiniType<
|
|
31
|
+
ResumeSubscriptionRequestRequest$Outbound,
|
|
32
|
+
ResumeSubscriptionRequestRequest
|
|
33
|
+
> = z.object({
|
|
34
|
+
id: z.string(),
|
|
35
|
+
body: ResumeSubscriptionRequest$outboundSchema,
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
export function resumeSubscriptionRequestRequestToJSON(
|
|
39
|
+
resumeSubscriptionRequestRequest: ResumeSubscriptionRequestRequest,
|
|
40
|
+
): string {
|
|
41
|
+
return JSON.stringify(
|
|
42
|
+
ResumeSubscriptionRequestRequest$outboundSchema.parse(
|
|
43
|
+
resumeSubscriptionRequestRequest,
|
|
44
|
+
),
|
|
45
|
+
);
|
|
46
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
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 {
|
|
8
|
+
ProrationBehavior,
|
|
9
|
+
ProrationBehavior$outboundSchema,
|
|
10
|
+
} from "./proration-behavior.js";
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Resumes a paused subscription now. The billing anchor is kept, so the first period runs from the resume time to the next billing date.
|
|
14
|
+
*/
|
|
15
|
+
export type ResumeSubscriptionRequest = {
|
|
16
|
+
/**
|
|
17
|
+
* Metadata merged into the pause
|
|
18
|
+
*
|
|
19
|
+
* @remarks
|
|
20
|
+
* @Example {"resumed_by": "admin"}
|
|
21
|
+
*/
|
|
22
|
+
metadata?: { [k: string]: string } | undefined;
|
|
23
|
+
prorationBehavior?: ProrationBehavior | undefined;
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
/** @internal */
|
|
27
|
+
export type ResumeSubscriptionRequest$Outbound = {
|
|
28
|
+
metadata?: { [k: string]: string } | undefined;
|
|
29
|
+
proration_behavior?: string | undefined;
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
/** @internal */
|
|
33
|
+
export const ResumeSubscriptionRequest$outboundSchema: z.ZodMiniType<
|
|
34
|
+
ResumeSubscriptionRequest$Outbound,
|
|
35
|
+
ResumeSubscriptionRequest
|
|
36
|
+
> = z.pipe(
|
|
37
|
+
z.object({
|
|
38
|
+
metadata: z.optional(z.record(z.string(), z.string())),
|
|
39
|
+
prorationBehavior: z.optional(ProrationBehavior$outboundSchema),
|
|
40
|
+
}),
|
|
41
|
+
z.transform((v) => {
|
|
42
|
+
return remap$(v, {
|
|
43
|
+
prorationBehavior: "proration_behavior",
|
|
44
|
+
});
|
|
45
|
+
}),
|
|
46
|
+
);
|
|
47
|
+
|
|
48
|
+
export function resumeSubscriptionRequestToJSON(
|
|
49
|
+
resumeSubscriptionRequest: ResumeSubscriptionRequest,
|
|
50
|
+
): string {
|
|
51
|
+
return JSON.stringify(
|
|
52
|
+
ResumeSubscriptionRequest$outboundSchema.parse(resumeSubscriptionRequest),
|
|
53
|
+
);
|
|
54
|
+
}
|