@flexprice/sdk 2.1.1 → 2.1.2
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/billing-cadence.md +1 -3
- package/docs/sdk/models/billing-period.md +1 -1
- package/docs/sdk/models/changed-invoice.md +17 -0
- package/docs/sdk/models/changed-line-item.md +20 -0
- package/docs/sdk/models/changed-resources.md +17 -0
- package/docs/sdk/models/changed-subscription.md +17 -0
- package/docs/sdk/models/create-price-request.md +7 -9
- package/docs/sdk/models/create-subscription-request.md +2 -4
- package/docs/sdk/models/execute-subscription-change-request.md +2 -2
- package/docs/sdk/models/execute-subscription-modify-request-request.md +21 -0
- package/docs/sdk/models/execute-subscription-modify-request.md +6 -6
- package/docs/sdk/models/invoice-filter.md +1 -0
- package/docs/sdk/models/invoice-response.md +1 -0
- package/docs/sdk/models/line-item-quantity-change.md +20 -0
- package/docs/sdk/models/meter-usage-analytics-request.md +30 -0
- package/docs/sdk/models/meter-usage-analytics-response.md +30 -0
- package/docs/sdk/models/meter-usage-point.md +21 -0
- package/docs/sdk/models/meter-usage-query-request.md +28 -0
- package/docs/sdk/models/meter-usage-query-response.md +30 -0
- package/docs/sdk/models/preview-subscription-change-request.md +2 -2
- package/docs/sdk/models/preview-subscription-modify-request.md +21 -0
- package/docs/sdk/models/secret-provider.md +2 -2
- package/docs/sdk/models/{execute-subscription-inheritance-request.md → sub-modify-inheritance-request.md} +3 -3
- package/docs/sdk/models/sub-modify-quantity-change-request.md +22 -0
- package/docs/sdk/models/subscription-change-request.md +1 -1
- package/docs/sdk/models/subscription-modify-response.md +25 -0
- package/docs/sdk/models/subscription-modify-type.md +15 -0
- package/docs/sdk/models/subscription-phase-create-request.md +9 -8
- package/docs/sdk/models/subscription-price-create-request.md +3 -5
- package/docs/sdk/models/window-size.md +2 -2
- package/docs/sdks/invoices/README.md +76 -0
- package/docs/sdks/meterusage/README.md +182 -0
- package/docs/sdks/prices/README.md +12 -14
- package/docs/sdks/subscriptions/README.md +101 -22
- package/esm/funcs/invoices-get-meter-usage-preview-invoice.d.ts +17 -0
- package/esm/funcs/invoices-get-meter-usage-preview-invoice.d.ts.map +1 -0
- package/esm/funcs/invoices-get-meter-usage-preview-invoice.js +82 -0
- package/esm/funcs/invoices-get-meter-usage-preview-invoice.js.map +1 -0
- package/esm/funcs/meter-usage-get-meter-usage-analytics.d.ts +17 -0
- package/esm/funcs/meter-usage-get-meter-usage-analytics.d.ts.map +1 -0
- package/esm/funcs/meter-usage-get-meter-usage-analytics.js +82 -0
- package/esm/funcs/meter-usage-get-meter-usage-analytics.js.map +1 -0
- package/esm/funcs/meter-usage-query-meter-usage.d.ts +17 -0
- package/esm/funcs/meter-usage-query-meter-usage.d.ts.map +1 -0
- package/esm/funcs/meter-usage-query-meter-usage.js +82 -0
- package/esm/funcs/meter-usage-query-meter-usage.js.map +1 -0
- package/esm/funcs/subscriptions-execute-subscription-modify.d.ts +3 -3
- package/esm/funcs/subscriptions-execute-subscription-modify.d.ts.map +1 -1
- package/esm/funcs/subscriptions-execute-subscription-modify.js +4 -4
- package/esm/funcs/subscriptions-execute-subscription-modify.js.map +1 -1
- package/esm/funcs/subscriptions-preview-subscription-modify.d.ts +17 -0
- package/esm/funcs/subscriptions-preview-subscription-modify.d.ts.map +1 -0
- package/esm/funcs/subscriptions-preview-subscription-modify.js +92 -0
- package/esm/funcs/subscriptions-preview-subscription-modify.js.map +1 -0
- package/esm/lib/config.d.ts +3 -3
- package/esm/lib/config.js +3 -3
- package/esm/lib/config.js.map +1 -1
- package/esm/lib/encodings.d.ts +1 -0
- package/esm/lib/encodings.d.ts.map +1 -1
- package/esm/lib/encodings.js +6 -0
- package/esm/lib/encodings.js.map +1 -1
- package/esm/sdk/invoices.d.ts +7 -0
- package/esm/sdk/invoices.d.ts.map +1 -1
- package/esm/sdk/invoices.js +10 -0
- package/esm/sdk/invoices.js.map +1 -1
- package/esm/sdk/meter-usage.d.ts +19 -0
- package/esm/sdk/meter-usage.d.ts.map +1 -0
- package/esm/sdk/meter-usage.js +28 -0
- package/esm/sdk/meter-usage.js.map +1 -0
- package/esm/sdk/models/billing-cadence.d.ts +4 -5
- package/esm/sdk/models/billing-cadence.d.ts.map +1 -1
- package/esm/sdk/models/billing-cadence.js +3 -4
- package/esm/sdk/models/billing-cadence.js.map +1 -1
- package/esm/sdk/models/billing-period.d.ts +1 -0
- package/esm/sdk/models/billing-period.d.ts.map +1 -1
- package/esm/sdk/models/billing-period.js +1 -0
- package/esm/sdk/models/billing-period.js.map +1 -1
- package/esm/sdk/models/changed-invoice.d.ts +15 -0
- package/esm/sdk/models/changed-invoice.d.ts.map +1 -0
- package/esm/sdk/models/changed-invoice.js +16 -0
- package/esm/sdk/models/changed-invoice.js.map +1 -0
- package/esm/sdk/models/changed-line-item.d.ts +18 -0
- package/esm/sdk/models/changed-line-item.d.ts.map +1 -0
- package/esm/sdk/models/changed-line-item.js +27 -0
- package/esm/sdk/models/changed-line-item.js.map +1 -0
- package/esm/sdk/models/changed-resources.d.ts +15 -0
- package/esm/sdk/models/changed-resources.d.ts.map +1 -0
- package/esm/sdk/models/changed-resources.js +24 -0
- package/esm/sdk/models/changed-resources.js.map +1 -0
- package/esm/sdk/models/changed-subscription.d.ts +16 -0
- package/esm/sdk/models/changed-subscription.d.ts.map +1 -0
- package/esm/sdk/models/changed-subscription.js +17 -0
- package/esm/sdk/models/changed-subscription.js.map +1 -0
- package/esm/sdk/models/create-price-request.d.ts +0 -3
- package/esm/sdk/models/create-price-request.d.ts.map +1 -1
- package/esm/sdk/models/create-price-request.js +0 -3
- package/esm/sdk/models/create-price-request.js.map +1 -1
- package/esm/sdk/models/create-subscription-request.d.ts +0 -3
- package/esm/sdk/models/create-subscription-request.d.ts.map +1 -1
- package/esm/sdk/models/create-subscription-request.js +0 -3
- package/esm/sdk/models/create-subscription-request.js.map +1 -1
- package/esm/sdk/models/execute-subscription-modify-op.d.ts +8 -8
- package/esm/sdk/models/execute-subscription-modify-op.d.ts.map +1 -1
- package/esm/sdk/models/execute-subscription-modify-op.js +5 -5
- package/esm/sdk/models/execute-subscription-modify-op.js.map +1 -1
- package/esm/sdk/models/execute-subscription-modify-request.d.ts +19 -0
- package/esm/sdk/models/execute-subscription-modify-request.d.ts.map +1 -0
- package/esm/sdk/models/execute-subscription-modify-request.js +23 -0
- package/esm/sdk/models/execute-subscription-modify-request.js.map +1 -0
- package/esm/sdk/models/index.d.ts +16 -1
- package/esm/sdk/models/index.d.ts.map +1 -1
- package/esm/sdk/models/index.js +16 -1
- package/esm/sdk/models/index.js.map +1 -1
- package/esm/sdk/models/invoice-filter.d.ts +5 -0
- package/esm/sdk/models/invoice-filter.d.ts.map +1 -1
- package/esm/sdk/models/invoice-filter.js +2 -0
- package/esm/sdk/models/invoice-filter.js.map +1 -1
- package/esm/sdk/models/invoice-response.d.ts +7 -0
- package/esm/sdk/models/invoice-response.d.ts.map +1 -1
- package/esm/sdk/models/invoice-response.js +2 -0
- package/esm/sdk/models/invoice-response.js.map +1 -1
- package/esm/sdk/models/line-item-quantity-change.d.ts +22 -0
- package/esm/sdk/models/line-item-quantity-change.d.ts.map +1 -0
- package/esm/sdk/models/line-item-quantity-change.js +19 -0
- package/esm/sdk/models/line-item-quantity-change.js.map +1 -0
- package/esm/sdk/models/meter-usage-analytics-request.d.ts +26 -0
- package/esm/sdk/models/meter-usage-analytics-request.d.ts.map +1 -0
- package/esm/sdk/models/meter-usage-analytics-request.js +31 -0
- package/esm/sdk/models/meter-usage-analytics-request.js.map +1 -0
- package/esm/sdk/models/meter-usage-analytics-response.d.ts +11 -0
- package/esm/sdk/models/meter-usage-analytics-response.d.ts.map +1 -0
- package/esm/sdk/models/meter-usage-analytics-response.js +15 -0
- package/esm/sdk/models/meter-usage-analytics-response.js.map +1 -0
- package/esm/sdk/models/meter-usage-point.d.ts +12 -0
- package/esm/sdk/models/meter-usage-point.d.ts.map +1 -0
- package/esm/sdk/models/meter-usage-point.js +21 -0
- package/esm/sdk/models/meter-usage-point.js.map +1 -0
- package/esm/sdk/models/meter-usage-query-request.d.ts +26 -0
- package/esm/sdk/models/meter-usage-query-request.d.ts.map +1 -0
- package/esm/sdk/models/meter-usage-query-request.js +31 -0
- package/esm/sdk/models/meter-usage-query-request.js.map +1 -0
- package/esm/sdk/models/meter-usage-query-response.d.ts +16 -0
- package/esm/sdk/models/meter-usage-query-response.d.ts.map +1 -0
- package/esm/sdk/models/meter-usage-query-response.js +28 -0
- package/esm/sdk/models/meter-usage-query-response.js.map +1 -0
- package/esm/sdk/models/preview-subscription-modify-op.d.ts +21 -0
- package/esm/sdk/models/preview-subscription-modify-op.d.ts.map +1 -0
- package/esm/sdk/models/preview-subscription-modify-op.js +14 -0
- package/esm/sdk/models/preview-subscription-modify-op.js.map +1 -0
- package/esm/sdk/models/secret-provider.d.ts +1 -0
- package/esm/sdk/models/secret-provider.d.ts.map +1 -1
- package/esm/sdk/models/secret-provider.js +1 -0
- package/esm/sdk/models/secret-provider.js.map +1 -1
- package/esm/sdk/models/sub-modify-inheritance-request.d.ts +12 -0
- package/esm/sdk/models/sub-modify-inheritance-request.d.ts.map +1 -0
- package/esm/sdk/models/{execute-subscription-inheritance-request.js → sub-modify-inheritance-request.js} +4 -4
- package/esm/sdk/models/sub-modify-inheritance-request.js.map +1 -0
- package/esm/sdk/models/sub-modify-quantity-change-request.d.ts +13 -0
- package/esm/sdk/models/sub-modify-quantity-change-request.d.ts.map +1 -0
- package/esm/sdk/models/sub-modify-quantity-change-request.js +18 -0
- package/esm/sdk/models/sub-modify-quantity-change-request.js.map +1 -0
- package/esm/sdk/models/subscription-modify-response.d.ts +13 -0
- package/esm/sdk/models/subscription-modify-response.d.ts.map +1 -0
- package/esm/sdk/models/subscription-modify-response.js +22 -0
- package/esm/sdk/models/subscription-modify-response.js.map +1 -0
- package/esm/sdk/models/subscription-modify-type.d.ts +10 -0
- package/esm/sdk/models/subscription-modify-type.d.ts.map +1 -0
- package/esm/sdk/models/subscription-modify-type.js +11 -0
- package/esm/sdk/models/subscription-modify-type.js.map +1 -0
- package/esm/sdk/models/subscription-phase-create-request.d.ts +9 -0
- package/esm/sdk/models/subscription-phase-create-request.d.ts.map +1 -1
- package/esm/sdk/models/subscription-phase-create-request.js +3 -0
- package/esm/sdk/models/subscription-phase-create-request.js.map +1 -1
- package/esm/sdk/models/subscription-price-create-request.d.ts +0 -3
- package/esm/sdk/models/subscription-price-create-request.d.ts.map +1 -1
- package/esm/sdk/models/subscription-price-create-request.js +0 -3
- package/esm/sdk/models/subscription-price-create-request.js.map +1 -1
- package/esm/sdk/models/window-size.d.ts +1 -1
- package/esm/sdk/models/window-size.js +1 -1
- package/esm/sdk/models/window-size.js.map +1 -1
- package/esm/sdk/sdk.d.ts +3 -0
- package/esm/sdk/sdk.d.ts.map +1 -1
- package/esm/sdk/sdk.js +5 -0
- package/esm/sdk/sdk.js.map +1 -1
- package/esm/sdk/subscriptions.d.ts +10 -3
- package/esm/sdk/subscriptions.d.ts.map +1 -1
- package/esm/sdk/subscriptions.js +12 -2
- package/esm/sdk/subscriptions.js.map +1 -1
- package/jsr.json +1 -1
- package/package.json +1 -1
- package/src/funcs/invoices-get-meter-usage-preview-invoice.ts +170 -0
- package/src/funcs/meter-usage-get-meter-usage-analytics.ts +170 -0
- package/src/funcs/meter-usage-query-meter-usage.ts +170 -0
- package/src/funcs/subscriptions-execute-subscription-modify.ts +13 -10
- package/src/funcs/subscriptions-preview-subscription-modify.ts +185 -0
- package/src/lib/config.ts +3 -3
- package/src/lib/encodings.ts +9 -0
- package/src/sdk/invoices.ts +18 -0
- package/src/sdk/meter-usage.ts +45 -0
- package/src/sdk/models/billing-cadence.ts +8 -12
- package/src/sdk/models/billing-period.ts +1 -0
- package/src/sdk/models/changed-invoice.ts +38 -0
- package/src/sdk/models/changed-line-item.ts +55 -0
- package/src/sdk/models/changed-resources.ts +55 -0
- package/src/sdk/models/changed-subscription.ts +42 -0
- package/src/sdk/models/create-price-request.ts +0 -8
- package/src/sdk/models/create-subscription-request.ts +0 -8
- package/src/sdk/models/execute-subscription-modify-op.ts +22 -20
- package/src/sdk/models/execute-subscription-modify-request.ts +63 -0
- package/src/sdk/models/index.ts +16 -1
- package/src/sdk/models/invoice-filter.ts +7 -0
- package/src/sdk/models/invoice-response.ts +9 -0
- package/src/sdk/models/line-item-quantity-change.ts +52 -0
- package/src/sdk/models/meter-usage-analytics-request.ts +69 -0
- package/src/sdk/models/meter-usage-analytics-response.ts +35 -0
- package/src/sdk/models/meter-usage-point.ts +43 -0
- package/src/sdk/models/meter-usage-query-request.ts +69 -0
- package/src/sdk/models/meter-usage-query-response.ts +58 -0
- package/src/sdk/models/preview-subscription-modify-op.ts +46 -0
- package/src/sdk/models/secret-provider.ts +1 -0
- package/src/sdk/models/sub-modify-inheritance-request.ts +41 -0
- package/src/sdk/models/sub-modify-quantity-change-request.ts +45 -0
- package/src/sdk/models/subscription-modify-response.ts +49 -0
- package/src/sdk/models/subscription-modify-type.ts +17 -0
- package/src/sdk/models/subscription-phase-create-request.ts +17 -0
- package/src/sdk/models/subscription-price-create-request.ts +0 -8
- package/src/sdk/models/window-size.ts +1 -1
- package/src/sdk/sdk.ts +6 -0
- package/src/sdk/subscriptions.ts +24 -4
- package/esm/sdk/models/execute-subscription-inheritance-request.d.ts +0 -12
- package/esm/sdk/models/execute-subscription-inheritance-request.d.ts.map +0 -1
- package/esm/sdk/models/execute-subscription-inheritance-request.js.map +0 -1
- package/src/sdk/models/execute-subscription-inheritance-request.ts +0 -42
|
@@ -12,11 +12,12 @@ let value: SubscriptionPhaseCreateRequest = {
|
|
|
12
12
|
|
|
13
13
|
## Fields
|
|
14
14
|
|
|
15
|
-
| Field
|
|
16
|
-
|
|
|
17
|
-
| `coupons`
|
|
18
|
-
| `endDate`
|
|
19
|
-
| `lineItemCoupons`
|
|
20
|
-
| `
|
|
21
|
-
| `
|
|
22
|
-
| `
|
|
15
|
+
| Field | Type | Required | Description |
|
|
16
|
+
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
17
|
+
| `coupons` | *string*[] | :heavy_minus_sign: | Coupons represents subscription-level coupons to be applied to this phase |
|
|
18
|
+
| `endDate` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | N/A |
|
|
19
|
+
| `lineItemCoupons` | Record<string, *string*[]> | :heavy_minus_sign: | LineItemCoupons represents line item-level coupons (map of line_item_id to coupon IDs) |
|
|
20
|
+
| `lineItems` | [models.CreateSubscriptionLineItemRequest](../../sdk/models/create-subscription-line-item-request.md)[] | :heavy_minus_sign: | LineItems are extra line items to add during this phase, primarily one-time charges.<br/>Each item's start_date defaults to the phase's start_date when not provided. |
|
|
21
|
+
| `metadata` | Record<string, *string*> | :heavy_minus_sign: | N/A |
|
|
22
|
+
| `overrideLineItems` | [models.OverrideLineItemRequest](../../sdk/models/override-line-item-request.md)[] | :heavy_minus_sign: | OverrideLineItems allows customizing specific prices for this phase<br/>If not provided, phase will use the same line items as the subscription (plan prices) |
|
|
23
|
+
| `startDate` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_check_mark: | N/A |
|
|
@@ -6,10 +6,9 @@
|
|
|
6
6
|
import { SubscriptionPriceCreateRequest } from "@flexprice/sdk/sdk/models";
|
|
7
7
|
|
|
8
8
|
let value: SubscriptionPriceCreateRequest = {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
invoiceCadence: "ADVANCE",
|
|
9
|
+
billingModel: "PACKAGE",
|
|
10
|
+
billingPeriod: "ANNUAL",
|
|
11
|
+
invoiceCadence: "ARREAR",
|
|
13
12
|
priceUnitType: "CUSTOM",
|
|
14
13
|
type: "FIXED",
|
|
15
14
|
};
|
|
@@ -20,7 +19,6 @@ let value: SubscriptionPriceCreateRequest = {
|
|
|
20
19
|
| Field | Type | Required | Description |
|
|
21
20
|
| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
|
|
22
21
|
| `amount` | *string* | :heavy_minus_sign: | N/A |
|
|
23
|
-
| `billingCadence` | [models.BillingCadence](../../sdk/models/billing-cadence.md) | :heavy_check_mark: | N/A |
|
|
24
22
|
| `billingModel` | [models.BillingModel](../../sdk/models/billing-model.md) | :heavy_check_mark: | N/A |
|
|
25
23
|
| `billingPeriod` | [models.BillingPeriod](../../sdk/models/billing-period.md) | :heavy_check_mark: | N/A |
|
|
26
24
|
| `billingPeriodCount` | *number* | :heavy_minus_sign: | N/A |
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
```typescript
|
|
6
6
|
import { WindowSize } from "@flexprice/sdk/sdk/models";
|
|
7
7
|
|
|
8
|
-
let value: WindowSize = "
|
|
8
|
+
let value: WindowSize = "12HOUR";
|
|
9
9
|
|
|
10
10
|
// Open enum: unrecognized values are captured as Unrecognized<string>
|
|
11
11
|
```
|
|
@@ -13,5 +13,5 @@ let value: WindowSize = "6HOUR";
|
|
|
13
13
|
## Values
|
|
14
14
|
|
|
15
15
|
```typescript
|
|
16
|
-
"
|
|
16
|
+
"MINUTE" | "15MIN" | "30MIN" | "HOUR" | "3HOUR" | "6HOUR" | "12HOUR" | "DAY" | "WEEK" | "MONTH" | Unrecognized<string>
|
|
17
17
|
```
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
* [getCustomerInvoiceSummary](#getcustomerinvoicesummary) - Get customer invoice summary
|
|
8
8
|
* [createInvoice](#createinvoice) - Create one-off invoice
|
|
9
|
+
* [getMeterUsagePreviewInvoice](#getmeterusagepreviewinvoice) - Get invoice preview using meter_usage data
|
|
9
10
|
* [getInvoicePreview](#getinvoicepreview) - Get invoice preview
|
|
10
11
|
* [queryInvoice](#queryinvoice) - Query invoices
|
|
11
12
|
* [getInvoice](#getinvoice) - Get invoice
|
|
@@ -173,6 +174,81 @@ run();
|
|
|
173
174
|
| models.ErrorsErrorResponse | 500 | application/json |
|
|
174
175
|
| models.SDKError | 4XX, 5XX | \*/\* |
|
|
175
176
|
|
|
177
|
+
## getMeterUsagePreviewInvoice
|
|
178
|
+
|
|
179
|
+
Preview invoice using the meter_usage table for usage data instead of feature_usage.
|
|
180
|
+
|
|
181
|
+
### Example Usage
|
|
182
|
+
|
|
183
|
+
<!-- UsageSnippet language="typescript" operationID="getMeterUsagePreviewInvoice" method="post" path="/invoices/meter-usage-preview" -->
|
|
184
|
+
```typescript
|
|
185
|
+
import { Flexprice } from "@flexprice/sdk";
|
|
186
|
+
|
|
187
|
+
const flexprice = new Flexprice({
|
|
188
|
+
apiKeyAuth: "<YOUR_API_KEY_HERE>",
|
|
189
|
+
});
|
|
190
|
+
|
|
191
|
+
async function run() {
|
|
192
|
+
const result = await flexprice.invoices.getMeterUsagePreviewInvoice({
|
|
193
|
+
subscriptionId: "<id>",
|
|
194
|
+
});
|
|
195
|
+
|
|
196
|
+
console.log(result);
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
run();
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
### Standalone function
|
|
203
|
+
|
|
204
|
+
The standalone function version of this method:
|
|
205
|
+
|
|
206
|
+
```typescript
|
|
207
|
+
import { FlexpriceCore } from "@flexprice/sdk/core.js";
|
|
208
|
+
import { invoicesGetMeterUsagePreviewInvoice } from "@flexprice/sdk/funcs/invoices-get-meter-usage-preview-invoice.js";
|
|
209
|
+
|
|
210
|
+
// Use `FlexpriceCore` for best tree-shaking performance.
|
|
211
|
+
// You can create one instance of it to use across an application.
|
|
212
|
+
const flexprice = new FlexpriceCore({
|
|
213
|
+
apiKeyAuth: "<YOUR_API_KEY_HERE>",
|
|
214
|
+
});
|
|
215
|
+
|
|
216
|
+
async function run() {
|
|
217
|
+
const res = await invoicesGetMeterUsagePreviewInvoice(flexprice, {
|
|
218
|
+
subscriptionId: "<id>",
|
|
219
|
+
});
|
|
220
|
+
if (res.ok) {
|
|
221
|
+
const { value: result } = res;
|
|
222
|
+
console.log(result);
|
|
223
|
+
} else {
|
|
224
|
+
console.log("invoicesGetMeterUsagePreviewInvoice failed:", res.error);
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
run();
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
### Parameters
|
|
232
|
+
|
|
233
|
+
| Parameter | Type | Required | Description |
|
|
234
|
+
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
235
|
+
| `request` | [models.GetPreviewInvoiceRequest](../../sdk/models/get-preview-invoice-request.md) | :heavy_check_mark: | The request object to use for the request. |
|
|
236
|
+
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
|
|
237
|
+
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. |
|
|
238
|
+
| `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
|
|
239
|
+
|
|
240
|
+
### Response
|
|
241
|
+
|
|
242
|
+
**Promise\<[models.InvoiceResponse](../../sdk/models/invoice-response.md)\>**
|
|
243
|
+
|
|
244
|
+
### Errors
|
|
245
|
+
|
|
246
|
+
| Error Type | Status Code | Content Type |
|
|
247
|
+
| -------------------------- | -------------------------- | -------------------------- |
|
|
248
|
+
| models.ErrorsErrorResponse | 400 | application/json |
|
|
249
|
+
| models.ErrorsErrorResponse | 500 | application/json |
|
|
250
|
+
| models.SDKError | 4XX, 5XX | \*/\* |
|
|
251
|
+
|
|
176
252
|
## getInvoicePreview
|
|
177
253
|
|
|
178
254
|
Use when showing a customer what they will be charged (e.g. preview before checkout or plan change). No invoice is created.
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
# MeterUsage
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
### Available Operations
|
|
6
|
+
|
|
7
|
+
* [getMeterUsageAnalytics](#getmeterusageanalytics) - Get meter usage analytics
|
|
8
|
+
* [queryMeterUsage](#querymeterusage) - Query meter usage
|
|
9
|
+
|
|
10
|
+
## getMeterUsageAnalytics
|
|
11
|
+
|
|
12
|
+
Query aggregated usage from meter_usage table for multiple meters
|
|
13
|
+
|
|
14
|
+
### Example Usage
|
|
15
|
+
|
|
16
|
+
<!-- UsageSnippet language="typescript" operationID="getMeterUsageAnalytics" method="post" path="/meter-usage/analytics" -->
|
|
17
|
+
```typescript
|
|
18
|
+
import { Flexprice } from "@flexprice/sdk";
|
|
19
|
+
|
|
20
|
+
const flexprice = new Flexprice({
|
|
21
|
+
apiKeyAuth: "<YOUR_API_KEY_HERE>",
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
async function run() {
|
|
25
|
+
const result = await flexprice.meterUsage.getMeterUsageAnalytics({
|
|
26
|
+
aggregationType: "COUNT",
|
|
27
|
+
endTime: new Date("2024-02-01T00:00:00Z"),
|
|
28
|
+
externalCustomerId: "cust_123",
|
|
29
|
+
meterIds: [
|
|
30
|
+
"mtr_abc",
|
|
31
|
+
"mtr_def",
|
|
32
|
+
],
|
|
33
|
+
startTime: new Date("2024-01-01T00:00:00Z"),
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
console.log(result);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
run();
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### Standalone function
|
|
43
|
+
|
|
44
|
+
The standalone function version of this method:
|
|
45
|
+
|
|
46
|
+
```typescript
|
|
47
|
+
import { FlexpriceCore } from "@flexprice/sdk/core.js";
|
|
48
|
+
import { meterUsageGetMeterUsageAnalytics } from "@flexprice/sdk/funcs/meter-usage-get-meter-usage-analytics.js";
|
|
49
|
+
|
|
50
|
+
// Use `FlexpriceCore` for best tree-shaking performance.
|
|
51
|
+
// You can create one instance of it to use across an application.
|
|
52
|
+
const flexprice = new FlexpriceCore({
|
|
53
|
+
apiKeyAuth: "<YOUR_API_KEY_HERE>",
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
async function run() {
|
|
57
|
+
const res = await meterUsageGetMeterUsageAnalytics(flexprice, {
|
|
58
|
+
aggregationType: "COUNT",
|
|
59
|
+
endTime: new Date("2024-02-01T00:00:00Z"),
|
|
60
|
+
externalCustomerId: "cust_123",
|
|
61
|
+
meterIds: [
|
|
62
|
+
"mtr_abc",
|
|
63
|
+
"mtr_def",
|
|
64
|
+
],
|
|
65
|
+
startTime: new Date("2024-01-01T00:00:00Z"),
|
|
66
|
+
});
|
|
67
|
+
if (res.ok) {
|
|
68
|
+
const { value: result } = res;
|
|
69
|
+
console.log(result);
|
|
70
|
+
} else {
|
|
71
|
+
console.log("meterUsageGetMeterUsageAnalytics failed:", res.error);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
run();
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### Parameters
|
|
79
|
+
|
|
80
|
+
| Parameter | Type | Required | Description |
|
|
81
|
+
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
82
|
+
| `request` | [models.MeterUsageAnalyticsRequest](../../sdk/models/meter-usage-analytics-request.md) | :heavy_check_mark: | The request object to use for the request. |
|
|
83
|
+
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
|
|
84
|
+
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. |
|
|
85
|
+
| `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
|
|
86
|
+
|
|
87
|
+
### Response
|
|
88
|
+
|
|
89
|
+
**Promise\<[models.MeterUsageAnalyticsResponse](../../sdk/models/meter-usage-analytics-response.md)\>**
|
|
90
|
+
|
|
91
|
+
### Errors
|
|
92
|
+
|
|
93
|
+
| Error Type | Status Code | Content Type |
|
|
94
|
+
| -------------------------- | -------------------------- | -------------------------- |
|
|
95
|
+
| models.ErrorsErrorResponse | 400 | application/json |
|
|
96
|
+
| models.ErrorsErrorResponse | 500 | application/json |
|
|
97
|
+
| models.SDKError | 4XX, 5XX | \*/\* |
|
|
98
|
+
|
|
99
|
+
## queryMeterUsage
|
|
100
|
+
|
|
101
|
+
Query aggregated usage from meter_usage table for a single meter with optional time-window bucketing
|
|
102
|
+
|
|
103
|
+
### Example Usage
|
|
104
|
+
|
|
105
|
+
<!-- UsageSnippet language="typescript" operationID="queryMeterUsage" method="post" path="/meter-usage/query" -->
|
|
106
|
+
```typescript
|
|
107
|
+
import { Flexprice } from "@flexprice/sdk";
|
|
108
|
+
|
|
109
|
+
const flexprice = new Flexprice({
|
|
110
|
+
apiKeyAuth: "<YOUR_API_KEY_HERE>",
|
|
111
|
+
});
|
|
112
|
+
|
|
113
|
+
async function run() {
|
|
114
|
+
const result = await flexprice.meterUsage.queryMeterUsage({
|
|
115
|
+
aggregationType: "WEIGHTED_SUM",
|
|
116
|
+
billingAnchor: new Date("2024-01-15T00:00:00Z"),
|
|
117
|
+
endTime: new Date("2024-02-01T00:00:00Z"),
|
|
118
|
+
externalCustomerId: "cust_123",
|
|
119
|
+
meterId: "mtr_abc",
|
|
120
|
+
startTime: new Date("2024-01-01T00:00:00Z"),
|
|
121
|
+
});
|
|
122
|
+
|
|
123
|
+
console.log(result);
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
run();
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### Standalone function
|
|
130
|
+
|
|
131
|
+
The standalone function version of this method:
|
|
132
|
+
|
|
133
|
+
```typescript
|
|
134
|
+
import { FlexpriceCore } from "@flexprice/sdk/core.js";
|
|
135
|
+
import { meterUsageQueryMeterUsage } from "@flexprice/sdk/funcs/meter-usage-query-meter-usage.js";
|
|
136
|
+
|
|
137
|
+
// Use `FlexpriceCore` for best tree-shaking performance.
|
|
138
|
+
// You can create one instance of it to use across an application.
|
|
139
|
+
const flexprice = new FlexpriceCore({
|
|
140
|
+
apiKeyAuth: "<YOUR_API_KEY_HERE>",
|
|
141
|
+
});
|
|
142
|
+
|
|
143
|
+
async function run() {
|
|
144
|
+
const res = await meterUsageQueryMeterUsage(flexprice, {
|
|
145
|
+
aggregationType: "WEIGHTED_SUM",
|
|
146
|
+
billingAnchor: new Date("2024-01-15T00:00:00Z"),
|
|
147
|
+
endTime: new Date("2024-02-01T00:00:00Z"),
|
|
148
|
+
externalCustomerId: "cust_123",
|
|
149
|
+
meterId: "mtr_abc",
|
|
150
|
+
startTime: new Date("2024-01-01T00:00:00Z"),
|
|
151
|
+
});
|
|
152
|
+
if (res.ok) {
|
|
153
|
+
const { value: result } = res;
|
|
154
|
+
console.log(result);
|
|
155
|
+
} else {
|
|
156
|
+
console.log("meterUsageQueryMeterUsage failed:", res.error);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
run();
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
### Parameters
|
|
164
|
+
|
|
165
|
+
| Parameter | Type | Required | Description |
|
|
166
|
+
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
167
|
+
| `request` | [models.MeterUsageQueryRequest](../../sdk/models/meter-usage-query-request.md) | :heavy_check_mark: | The request object to use for the request. |
|
|
168
|
+
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
|
|
169
|
+
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. |
|
|
170
|
+
| `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
|
|
171
|
+
|
|
172
|
+
### Response
|
|
173
|
+
|
|
174
|
+
**Promise\<[models.MeterUsageQueryResponse](../../sdk/models/meter-usage-query-response.md)\>**
|
|
175
|
+
|
|
176
|
+
### Errors
|
|
177
|
+
|
|
178
|
+
| Error Type | Status Code | Content Type |
|
|
179
|
+
| -------------------------- | -------------------------- | -------------------------- |
|
|
180
|
+
| models.ErrorsErrorResponse | 400 | application/json |
|
|
181
|
+
| models.ErrorsErrorResponse | 500 | application/json |
|
|
182
|
+
| models.SDKError | 4XX, 5XX | \*/\* |
|
|
@@ -28,15 +28,14 @@ const flexprice = new Flexprice({
|
|
|
28
28
|
|
|
29
29
|
async function run() {
|
|
30
30
|
const result = await flexprice.prices.createPrice({
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
currency: "Serbian Dinar",
|
|
31
|
+
billingModel: "FLAT_FEE",
|
|
32
|
+
billingPeriod: "DAILY",
|
|
33
|
+
currency: "Dong",
|
|
35
34
|
entityId: "<id>",
|
|
36
35
|
entityType: "PRICE",
|
|
37
|
-
invoiceCadence: "
|
|
38
|
-
priceUnitType: "
|
|
39
|
-
type: "
|
|
36
|
+
invoiceCadence: "ADVANCE",
|
|
37
|
+
priceUnitType: "FIAT",
|
|
38
|
+
type: "FIXED",
|
|
40
39
|
});
|
|
41
40
|
|
|
42
41
|
console.log(result);
|
|
@@ -61,15 +60,14 @@ const flexprice = new FlexpriceCore({
|
|
|
61
60
|
|
|
62
61
|
async function run() {
|
|
63
62
|
const res = await pricesCreatePrice(flexprice, {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
currency: "Serbian Dinar",
|
|
63
|
+
billingModel: "FLAT_FEE",
|
|
64
|
+
billingPeriod: "DAILY",
|
|
65
|
+
currency: "Dong",
|
|
68
66
|
entityId: "<id>",
|
|
69
67
|
entityType: "PRICE",
|
|
70
|
-
invoiceCadence: "
|
|
71
|
-
priceUnitType: "
|
|
72
|
-
type: "
|
|
68
|
+
invoiceCadence: "ADVANCE",
|
|
69
|
+
priceUnitType: "FIAT",
|
|
70
|
+
type: "FIXED",
|
|
73
71
|
});
|
|
74
72
|
if (res.ok) {
|
|
75
73
|
const { value: result } = res;
|
|
@@ -21,7 +21,8 @@
|
|
|
21
21
|
* [getSubscriptionEntitlements](#getsubscriptionentitlements) - Get subscription entitlements
|
|
22
22
|
* [getSubscriptionUpcomingGrants](#getsubscriptionupcominggrants) - Get upcoming credit grant applications
|
|
23
23
|
* [createSubscriptionLineItem](#createsubscriptionlineitem) - Create subscription line item
|
|
24
|
-
* [executeSubscriptionModify](#executesubscriptionmodify) -
|
|
24
|
+
* [executeSubscriptionModify](#executesubscriptionmodify) - Execute subscription modification
|
|
25
|
+
* [previewSubscriptionModify](#previewsubscriptionmodify) - Preview subscription modification
|
|
25
26
|
* [pauseSubscription](#pausesubscription) - Pause a subscription
|
|
26
27
|
* [listSubscriptionPauses](#listsubscriptionpauses) - List all pauses for a subscription
|
|
27
28
|
* [resumeSubscription](#resumesubscription) - Resume a paused subscription
|
|
@@ -47,9 +48,8 @@ const flexprice = new Flexprice({
|
|
|
47
48
|
|
|
48
49
|
async function run() {
|
|
49
50
|
const result = await flexprice.subscriptions.createSubscription({
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
currency: "New Leu",
|
|
51
|
+
billingPeriod: "ONETIME",
|
|
52
|
+
currency: "Kwacha",
|
|
53
53
|
planId: "<id>",
|
|
54
54
|
});
|
|
55
55
|
|
|
@@ -75,9 +75,8 @@ const flexprice = new FlexpriceCore({
|
|
|
75
75
|
|
|
76
76
|
async function run() {
|
|
77
77
|
const res = await subscriptionsCreateSubscription(flexprice, {
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
currency: "New Leu",
|
|
78
|
+
billingPeriod: "ONETIME",
|
|
79
|
+
currency: "Kwacha",
|
|
81
80
|
planId: "<id>",
|
|
82
81
|
});
|
|
83
82
|
if (res.ok) {
|
|
@@ -944,8 +943,8 @@ async function run() {
|
|
|
944
943
|
const result = await flexprice.subscriptions.executeSubscriptionChange("<id>", {
|
|
945
944
|
billingCadence: "RECURRING",
|
|
946
945
|
billingCycle: "anniversary",
|
|
947
|
-
billingPeriod: "
|
|
948
|
-
prorationBehavior: "
|
|
946
|
+
billingPeriod: "ANNUAL",
|
|
947
|
+
prorationBehavior: "none",
|
|
949
948
|
targetPlanId: "<id>",
|
|
950
949
|
});
|
|
951
950
|
|
|
@@ -973,8 +972,8 @@ async function run() {
|
|
|
973
972
|
const res = await subscriptionsExecuteSubscriptionChange(flexprice, "<id>", {
|
|
974
973
|
billingCadence: "RECURRING",
|
|
975
974
|
billingCycle: "anniversary",
|
|
976
|
-
billingPeriod: "
|
|
977
|
-
prorationBehavior: "
|
|
975
|
+
billingPeriod: "ANNUAL",
|
|
976
|
+
prorationBehavior: "none",
|
|
978
977
|
targetPlanId: "<id>",
|
|
979
978
|
});
|
|
980
979
|
if (res.ok) {
|
|
@@ -1027,9 +1026,9 @@ const flexprice = new Flexprice({
|
|
|
1027
1026
|
async function run() {
|
|
1028
1027
|
const result = await flexprice.subscriptions.previewSubscriptionChange("<id>", {
|
|
1029
1028
|
billingCadence: "RECURRING",
|
|
1030
|
-
billingCycle: "
|
|
1031
|
-
billingPeriod: "
|
|
1032
|
-
prorationBehavior: "
|
|
1029
|
+
billingCycle: "anniversary",
|
|
1030
|
+
billingPeriod: "ONETIME",
|
|
1031
|
+
prorationBehavior: "none",
|
|
1033
1032
|
targetPlanId: "<id>",
|
|
1034
1033
|
});
|
|
1035
1034
|
|
|
@@ -1056,9 +1055,9 @@ const flexprice = new FlexpriceCore({
|
|
|
1056
1055
|
async function run() {
|
|
1057
1056
|
const res = await subscriptionsPreviewSubscriptionChange(flexprice, "<id>", {
|
|
1058
1057
|
billingCadence: "RECURRING",
|
|
1059
|
-
billingCycle: "
|
|
1060
|
-
billingPeriod: "
|
|
1061
|
-
prorationBehavior: "
|
|
1058
|
+
billingCycle: "anniversary",
|
|
1059
|
+
billingPeriod: "ONETIME",
|
|
1060
|
+
prorationBehavior: "none",
|
|
1062
1061
|
targetPlanId: "<id>",
|
|
1063
1062
|
});
|
|
1064
1063
|
if (res.ok) {
|
|
@@ -1311,7 +1310,7 @@ run();
|
|
|
1311
1310
|
|
|
1312
1311
|
## executeSubscriptionModify
|
|
1313
1312
|
|
|
1314
|
-
|
|
1313
|
+
Execute a mid-cycle subscription modification (inheritance or quantity change).
|
|
1315
1314
|
|
|
1316
1315
|
### Example Usage
|
|
1317
1316
|
|
|
@@ -1324,7 +1323,9 @@ const flexprice = new Flexprice({
|
|
|
1324
1323
|
});
|
|
1325
1324
|
|
|
1326
1325
|
async function run() {
|
|
1327
|
-
const result = await flexprice.subscriptions.executeSubscriptionModify("<id>", {
|
|
1326
|
+
const result = await flexprice.subscriptions.executeSubscriptionModify("<id>", {
|
|
1327
|
+
type: "inheritance",
|
|
1328
|
+
});
|
|
1328
1329
|
|
|
1329
1330
|
console.log(result);
|
|
1330
1331
|
}
|
|
@@ -1347,7 +1348,9 @@ const flexprice = new FlexpriceCore({
|
|
|
1347
1348
|
});
|
|
1348
1349
|
|
|
1349
1350
|
async function run() {
|
|
1350
|
-
const res = await subscriptionsExecuteSubscriptionModify(flexprice, "<id>", {
|
|
1351
|
+
const res = await subscriptionsExecuteSubscriptionModify(flexprice, "<id>", {
|
|
1352
|
+
type: "inheritance",
|
|
1353
|
+
});
|
|
1351
1354
|
if (res.ok) {
|
|
1352
1355
|
const { value: result } = res;
|
|
1353
1356
|
console.log(result);
|
|
@@ -1364,14 +1367,90 @@ run();
|
|
|
1364
1367
|
| Parameter | Type | Required | Description |
|
|
1365
1368
|
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
1366
1369
|
| `id` | *string* | :heavy_check_mark: | Subscription ID |
|
|
1367
|
-
| `body` | [models.
|
|
1370
|
+
| `body` | [models.ExecuteSubscriptionModifyRequest](../../sdk/models/execute-subscription-modify-request.md) | :heavy_check_mark: | Modification request |
|
|
1368
1371
|
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
|
|
1369
1372
|
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. |
|
|
1370
1373
|
| `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
|
|
1371
1374
|
|
|
1372
1375
|
### Response
|
|
1373
1376
|
|
|
1374
|
-
**Promise\<[models.
|
|
1377
|
+
**Promise\<[models.SubscriptionModifyResponse](../../sdk/models/subscription-modify-response.md)\>**
|
|
1378
|
+
|
|
1379
|
+
### Errors
|
|
1380
|
+
|
|
1381
|
+
| Error Type | Status Code | Content Type |
|
|
1382
|
+
| -------------------------- | -------------------------- | -------------------------- |
|
|
1383
|
+
| models.ErrorsErrorResponse | 400, 404 | application/json |
|
|
1384
|
+
| models.ErrorsErrorResponse | 500 | application/json |
|
|
1385
|
+
| models.SDKError | 4XX, 5XX | \*/\* |
|
|
1386
|
+
|
|
1387
|
+
## previewSubscriptionModify
|
|
1388
|
+
|
|
1389
|
+
Preview the impact of a mid-cycle subscription modification without committing changes.
|
|
1390
|
+
|
|
1391
|
+
### Example Usage
|
|
1392
|
+
|
|
1393
|
+
<!-- UsageSnippet language="typescript" operationID="previewSubscriptionModify" method="post" path="/subscriptions/{id}/modify/preview" -->
|
|
1394
|
+
```typescript
|
|
1395
|
+
import { Flexprice } from "@flexprice/sdk";
|
|
1396
|
+
|
|
1397
|
+
const flexprice = new Flexprice({
|
|
1398
|
+
apiKeyAuth: "<YOUR_API_KEY_HERE>",
|
|
1399
|
+
});
|
|
1400
|
+
|
|
1401
|
+
async function run() {
|
|
1402
|
+
const result = await flexprice.subscriptions.previewSubscriptionModify("<id>", {
|
|
1403
|
+
type: "quantity_change",
|
|
1404
|
+
});
|
|
1405
|
+
|
|
1406
|
+
console.log(result);
|
|
1407
|
+
}
|
|
1408
|
+
|
|
1409
|
+
run();
|
|
1410
|
+
```
|
|
1411
|
+
|
|
1412
|
+
### Standalone function
|
|
1413
|
+
|
|
1414
|
+
The standalone function version of this method:
|
|
1415
|
+
|
|
1416
|
+
```typescript
|
|
1417
|
+
import { FlexpriceCore } from "@flexprice/sdk/core.js";
|
|
1418
|
+
import { subscriptionsPreviewSubscriptionModify } from "@flexprice/sdk/funcs/subscriptions-preview-subscription-modify.js";
|
|
1419
|
+
|
|
1420
|
+
// Use `FlexpriceCore` for best tree-shaking performance.
|
|
1421
|
+
// You can create one instance of it to use across an application.
|
|
1422
|
+
const flexprice = new FlexpriceCore({
|
|
1423
|
+
apiKeyAuth: "<YOUR_API_KEY_HERE>",
|
|
1424
|
+
});
|
|
1425
|
+
|
|
1426
|
+
async function run() {
|
|
1427
|
+
const res = await subscriptionsPreviewSubscriptionModify(flexprice, "<id>", {
|
|
1428
|
+
type: "quantity_change",
|
|
1429
|
+
});
|
|
1430
|
+
if (res.ok) {
|
|
1431
|
+
const { value: result } = res;
|
|
1432
|
+
console.log(result);
|
|
1433
|
+
} else {
|
|
1434
|
+
console.log("subscriptionsPreviewSubscriptionModify failed:", res.error);
|
|
1435
|
+
}
|
|
1436
|
+
}
|
|
1437
|
+
|
|
1438
|
+
run();
|
|
1439
|
+
```
|
|
1440
|
+
|
|
1441
|
+
### Parameters
|
|
1442
|
+
|
|
1443
|
+
| Parameter | Type | Required | Description |
|
|
1444
|
+
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
1445
|
+
| `id` | *string* | :heavy_check_mark: | Subscription ID |
|
|
1446
|
+
| `body` | [models.ExecuteSubscriptionModifyRequest](../../sdk/models/execute-subscription-modify-request.md) | :heavy_check_mark: | Modification preview request |
|
|
1447
|
+
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
|
|
1448
|
+
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. |
|
|
1449
|
+
| `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
|
|
1450
|
+
|
|
1451
|
+
### Response
|
|
1452
|
+
|
|
1453
|
+
**Promise\<[models.SubscriptionModifyResponse](../../sdk/models/subscription-modify-response.md)\>**
|
|
1375
1454
|
|
|
1376
1455
|
### Errors
|
|
1377
1456
|
|