@usehercules/sdk 1.1.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +125 -0
- package/README.md +14 -20
- package/client.d.mts +6 -3
- package/client.d.mts.map +1 -1
- package/client.d.ts +6 -3
- package/client.d.ts.map +1 -1
- package/client.js +1 -1
- package/client.js.map +1 -1
- package/client.mjs +1 -1
- package/client.mjs.map +1 -1
- package/package.json +1 -1
- package/resources/beta/beta.d.mts +4 -4
- package/resources/beta/beta.d.mts.map +1 -1
- package/resources/beta/beta.d.ts +4 -4
- package/resources/beta/beta.d.ts.map +1 -1
- package/resources/beta/beta.js +4 -4
- package/resources/beta/beta.js.map +1 -1
- package/resources/beta/beta.mjs +4 -4
- package/resources/beta/beta.mjs.map +1 -1
- package/resources/beta/index.d.mts +1 -1
- package/resources/beta/index.d.mts.map +1 -1
- package/resources/beta/index.d.ts +1 -1
- package/resources/beta/index.d.ts.map +1 -1
- package/resources/beta/index.js +3 -3
- package/resources/beta/index.js.map +1 -1
- package/resources/beta/index.mjs +1 -1
- package/resources/beta/index.mjs.map +1 -1
- package/resources/beta/pay/coupons.d.mts +156 -0
- package/resources/beta/pay/coupons.d.mts.map +1 -0
- package/resources/beta/pay/coupons.d.ts +156 -0
- package/resources/beta/pay/coupons.d.ts.map +1 -0
- package/resources/beta/pay/coupons.js +51 -0
- package/resources/beta/pay/coupons.js.map +1 -0
- package/resources/beta/pay/coupons.mjs +47 -0
- package/resources/beta/pay/coupons.mjs.map +1 -0
- package/resources/beta/pay/customers.d.mts +160 -0
- package/resources/beta/pay/customers.d.mts.map +1 -0
- package/resources/beta/pay/customers.d.ts +160 -0
- package/resources/beta/pay/customers.d.ts.map +1 -0
- package/resources/beta/pay/customers.js +60 -0
- package/resources/beta/pay/customers.js.map +1 -0
- package/resources/beta/pay/customers.mjs +56 -0
- package/resources/beta/pay/customers.mjs.map +1 -0
- package/resources/beta/pay/entitlements.d.mts +94 -0
- package/resources/beta/pay/entitlements.d.mts.map +1 -0
- package/resources/beta/pay/entitlements.d.ts +94 -0
- package/resources/beta/pay/entitlements.d.ts.map +1 -0
- package/resources/beta/pay/entitlements.js +42 -0
- package/resources/beta/pay/entitlements.js.map +1 -0
- package/resources/beta/pay/entitlements.mjs +38 -0
- package/resources/beta/pay/entitlements.mjs.map +1 -0
- package/resources/beta/pay/index.d.mts +6 -0
- package/resources/beta/pay/index.d.mts.map +1 -0
- package/resources/beta/pay/index.d.ts +6 -0
- package/resources/beta/pay/index.d.ts.map +1 -0
- package/resources/beta/{subscriptions → pay}/index.js +5 -5
- package/resources/beta/pay/index.js.map +1 -0
- package/resources/beta/{subscriptions → pay}/index.mjs +2 -2
- package/resources/beta/pay/index.mjs.map +1 -0
- package/resources/beta/{subscriptions/subscriptions.d.mts → pay/pay.d.mts} +48 -32
- package/resources/beta/pay/pay.d.mts.map +1 -0
- package/resources/beta/{subscriptions/subscriptions.d.ts → pay/pay.d.ts} +48 -32
- package/resources/beta/pay/pay.d.ts.map +1 -0
- package/resources/beta/pay/pay.js +54 -0
- package/resources/beta/pay/pay.js.map +1 -0
- package/resources/beta/pay/pay.mjs +49 -0
- package/resources/beta/pay/pay.mjs.map +1 -0
- package/resources/beta/pay/products/entitlements.d.mts +53 -0
- package/resources/beta/pay/products/entitlements.d.mts.map +1 -0
- package/resources/beta/pay/products/entitlements.d.ts +53 -0
- package/resources/beta/pay/products/entitlements.d.ts.map +1 -0
- package/resources/beta/pay/products/entitlements.js +38 -0
- package/resources/beta/pay/products/entitlements.js.map +1 -0
- package/resources/beta/pay/products/entitlements.mjs +34 -0
- package/resources/beta/pay/products/entitlements.mjs.map +1 -0
- package/resources/beta/pay/products/index.d.mts +3 -0
- package/resources/beta/pay/products/index.d.mts.map +1 -0
- package/resources/beta/pay/products/index.d.ts +3 -0
- package/resources/beta/pay/products/index.d.ts.map +1 -0
- package/resources/beta/{subscriptions/plans → pay/products}/index.js +3 -3
- package/resources/beta/pay/products/index.js.map +1 -0
- package/resources/beta/{subscriptions/plans → pay/products}/index.mjs +1 -1
- package/resources/beta/pay/products/index.mjs.map +1 -0
- package/resources/beta/pay/products/products.d.mts +152 -0
- package/resources/beta/pay/products/products.d.mts.map +1 -0
- package/resources/beta/pay/products/products.d.ts +152 -0
- package/resources/beta/pay/products/products.d.ts.map +1 -0
- package/resources/beta/pay/products/products.js +57 -0
- package/resources/beta/pay/products/products.js.map +1 -0
- package/resources/beta/pay/products/products.mjs +52 -0
- package/resources/beta/pay/products/products.mjs.map +1 -0
- package/resources/beta/pay/products.d.mts +2 -0
- package/resources/beta/pay/products.d.mts.map +1 -0
- package/resources/beta/pay/products.d.ts +2 -0
- package/resources/beta/pay/products.d.ts.map +1 -0
- package/resources/beta/{subscriptions/plans.js → pay/products.js} +2 -2
- package/resources/beta/pay/products.js.map +1 -0
- package/resources/beta/{subscriptions.mjs → pay/products.mjs} +2 -2
- package/resources/beta/pay/products.mjs.map +1 -0
- package/resources/beta/pay.d.mts +2 -0
- package/resources/beta/pay.d.mts.map +1 -0
- package/resources/beta/pay.d.ts +2 -0
- package/resources/beta/pay.d.ts.map +1 -0
- package/resources/beta/{subscriptions.js → pay.js} +2 -2
- package/resources/beta/pay.js.map +1 -0
- package/resources/beta/{subscriptions/plans.mjs → pay.mjs} +2 -2
- package/resources/beta/pay.mjs.map +1 -0
- package/src/client.ts +6 -4
- package/src/resources/beta/beta.ts +18 -18
- package/src/resources/beta/index.ts +8 -8
- package/src/resources/beta/pay/coupons.ts +218 -0
- package/src/resources/beta/pay/customers.ts +229 -0
- package/src/resources/beta/pay/entitlements.ts +135 -0
- package/src/resources/beta/{subscriptions → pay}/index.ts +15 -17
- package/src/resources/beta/{subscriptions/subscriptions.ts → pay/pay.ts} +70 -59
- package/src/resources/beta/{subscriptions/plans → pay/products}/entitlements.ts +26 -21
- package/src/resources/beta/{subscriptions/plans → pay/products}/index.ts +9 -9
- package/src/resources/beta/pay/products/products.ts +224 -0
- package/src/resources/beta/{subscriptions.ts → pay/products.ts} +1 -1
- package/src/resources/beta/{subscriptions/plans.ts → pay.ts} +1 -1
- package/src/version.ts +1 -1
- package/version.d.mts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
- package/resources/beta/subscriptions/coupons.d.mts +0 -151
- package/resources/beta/subscriptions/coupons.d.mts.map +0 -1
- package/resources/beta/subscriptions/coupons.d.ts +0 -151
- package/resources/beta/subscriptions/coupons.d.ts.map +0 -1
- package/resources/beta/subscriptions/coupons.js +0 -51
- package/resources/beta/subscriptions/coupons.js.map +0 -1
- package/resources/beta/subscriptions/coupons.mjs +0 -47
- package/resources/beta/subscriptions/coupons.mjs.map +0 -1
- package/resources/beta/subscriptions/customers.d.mts +0 -93
- package/resources/beta/subscriptions/customers.d.mts.map +0 -1
- package/resources/beta/subscriptions/customers.d.ts +0 -93
- package/resources/beta/subscriptions/customers.d.ts.map +0 -1
- package/resources/beta/subscriptions/customers.js +0 -57
- package/resources/beta/subscriptions/customers.js.map +0 -1
- package/resources/beta/subscriptions/customers.mjs +0 -53
- package/resources/beta/subscriptions/customers.mjs.map +0 -1
- package/resources/beta/subscriptions/entitlements.d.mts +0 -70
- package/resources/beta/subscriptions/entitlements.d.mts.map +0 -1
- package/resources/beta/subscriptions/entitlements.d.ts +0 -70
- package/resources/beta/subscriptions/entitlements.d.ts.map +0 -1
- package/resources/beta/subscriptions/entitlements.js +0 -38
- package/resources/beta/subscriptions/entitlements.js.map +0 -1
- package/resources/beta/subscriptions/entitlements.mjs +0 -34
- package/resources/beta/subscriptions/entitlements.mjs.map +0 -1
- package/resources/beta/subscriptions/index.d.mts +0 -6
- package/resources/beta/subscriptions/index.d.mts.map +0 -1
- package/resources/beta/subscriptions/index.d.ts +0 -6
- package/resources/beta/subscriptions/index.d.ts.map +0 -1
- package/resources/beta/subscriptions/index.js.map +0 -1
- package/resources/beta/subscriptions/index.mjs.map +0 -1
- package/resources/beta/subscriptions/plans/entitlements.d.mts +0 -48
- package/resources/beta/subscriptions/plans/entitlements.d.mts.map +0 -1
- package/resources/beta/subscriptions/plans/entitlements.d.ts +0 -48
- package/resources/beta/subscriptions/plans/entitlements.d.ts.map +0 -1
- package/resources/beta/subscriptions/plans/entitlements.js +0 -34
- package/resources/beta/subscriptions/plans/entitlements.js.map +0 -1
- package/resources/beta/subscriptions/plans/entitlements.mjs +0 -30
- package/resources/beta/subscriptions/plans/entitlements.mjs.map +0 -1
- package/resources/beta/subscriptions/plans/index.d.mts +0 -3
- package/resources/beta/subscriptions/plans/index.d.mts.map +0 -1
- package/resources/beta/subscriptions/plans/index.d.ts +0 -3
- package/resources/beta/subscriptions/plans/index.d.ts.map +0 -1
- package/resources/beta/subscriptions/plans/index.js.map +0 -1
- package/resources/beta/subscriptions/plans/index.mjs.map +0 -1
- package/resources/beta/subscriptions/plans/plans.d.mts +0 -87
- package/resources/beta/subscriptions/plans/plans.d.mts.map +0 -1
- package/resources/beta/subscriptions/plans/plans.d.ts +0 -87
- package/resources/beta/subscriptions/plans/plans.d.ts.map +0 -1
- package/resources/beta/subscriptions/plans/plans.js +0 -49
- package/resources/beta/subscriptions/plans/plans.js.map +0 -1
- package/resources/beta/subscriptions/plans/plans.mjs +0 -44
- package/resources/beta/subscriptions/plans/plans.mjs.map +0 -1
- package/resources/beta/subscriptions/plans.d.mts +0 -2
- package/resources/beta/subscriptions/plans.d.mts.map +0 -1
- package/resources/beta/subscriptions/plans.d.ts +0 -2
- package/resources/beta/subscriptions/plans.d.ts.map +0 -1
- package/resources/beta/subscriptions/plans.js.map +0 -1
- package/resources/beta/subscriptions/plans.mjs.map +0 -1
- package/resources/beta/subscriptions/subscriptions.d.mts.map +0 -1
- package/resources/beta/subscriptions/subscriptions.d.ts.map +0 -1
- package/resources/beta/subscriptions/subscriptions.js +0 -47
- package/resources/beta/subscriptions/subscriptions.js.map +0 -1
- package/resources/beta/subscriptions/subscriptions.mjs +0 -42
- package/resources/beta/subscriptions/subscriptions.mjs.map +0 -1
- package/resources/beta/subscriptions.d.mts +0 -2
- package/resources/beta/subscriptions.d.mts.map +0 -1
- package/resources/beta/subscriptions.d.ts +0 -2
- package/resources/beta/subscriptions.d.ts.map +0 -1
- package/resources/beta/subscriptions.js.map +0 -1
- package/resources/beta/subscriptions.mjs.map +0 -1
- package/src/resources/beta/subscriptions/coupons.ts +0 -221
- package/src/resources/beta/subscriptions/customers.ts +0 -168
- package/src/resources/beta/subscriptions/entitlements.ts +0 -113
- package/src/resources/beta/subscriptions/plans/plans.ts +0 -159
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { APIResource } from "../../../../core/resource.mjs";
|
|
2
|
+
import * as EntitlementsAPI from "../entitlements.mjs";
|
|
3
|
+
import { APIPromise } from "../../../../core/api-promise.mjs";
|
|
4
|
+
import { CursorIDPage, type CursorIDPageParams, PagePromise } from "../../../../core/pagination.mjs";
|
|
5
|
+
import { RequestOptions } from "../../../../internal/request-options.mjs";
|
|
6
|
+
export declare class Entitlements extends APIResource {
|
|
7
|
+
/**
|
|
8
|
+
* Retrieves all entitlements attached to a product. These entitlements define the
|
|
9
|
+
* features that customers subscribed to this product can access.
|
|
10
|
+
*/
|
|
11
|
+
list(productID: string, query?: EntitlementListParams | null | undefined, options?: RequestOptions): PagePromise<ProductEntitlementsCursorIDPage, ProductEntitlement>;
|
|
12
|
+
/**
|
|
13
|
+
* Attaches an entitlement to a product. All customers subscribed to this product
|
|
14
|
+
* will gain access to the attached feature. Hercules recommends attaching
|
|
15
|
+
* entitlements when creating or updating products to keep feature access in sync.
|
|
16
|
+
*/
|
|
17
|
+
attach(productID: string, body: EntitlementAttachParams, options?: RequestOptions): APIPromise<ProductEntitlement>;
|
|
18
|
+
/**
|
|
19
|
+
* Removes an entitlement from a product. Customers subscribed to this product will
|
|
20
|
+
* lose access to the feature. Existing subscriptions are affected immediately.
|
|
21
|
+
*/
|
|
22
|
+
remove(featureID: string, params: EntitlementRemoveParams, options?: RequestOptions): APIPromise<void>;
|
|
23
|
+
}
|
|
24
|
+
export type ProductEntitlementsCursorIDPage = CursorIDPage<ProductEntitlement>;
|
|
25
|
+
/**
|
|
26
|
+
* An entitlement attached to a product. All customers subscribed to the product
|
|
27
|
+
* gain access to this entitlement.
|
|
28
|
+
*/
|
|
29
|
+
export interface ProductEntitlement {
|
|
30
|
+
/**
|
|
31
|
+
* Unique identifier for the entitlement
|
|
32
|
+
*/
|
|
33
|
+
id: string;
|
|
34
|
+
/**
|
|
35
|
+
* The entitlement attached to the product
|
|
36
|
+
*/
|
|
37
|
+
entitlement: EntitlementsAPI.Entitlement;
|
|
38
|
+
}
|
|
39
|
+
export interface EntitlementListParams extends CursorIDPageParams {
|
|
40
|
+
}
|
|
41
|
+
export interface EntitlementAttachParams {
|
|
42
|
+
/**
|
|
43
|
+
* The ID of the entitlement to attach to the product
|
|
44
|
+
*/
|
|
45
|
+
entitlement: string;
|
|
46
|
+
}
|
|
47
|
+
export interface EntitlementRemoveParams {
|
|
48
|
+
product_id: string;
|
|
49
|
+
}
|
|
50
|
+
export declare namespace Entitlements {
|
|
51
|
+
export { type ProductEntitlement as ProductEntitlement, type ProductEntitlementsCursorIDPage as ProductEntitlementsCursorIDPage, type EntitlementListParams as EntitlementListParams, type EntitlementAttachParams as EntitlementAttachParams, type EntitlementRemoveParams as EntitlementRemoveParams, };
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=entitlements.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entitlements.d.mts","sourceRoot":"","sources":["../../../../src/resources/beta/pay/products/entitlements.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,KAAK,eAAe;OACpB,EAAE,UAAU,EAAE;OACd,EAAE,YAAY,EAAE,KAAK,kBAAkB,EAAE,WAAW,EAAE;OAEtD,EAAE,cAAc,EAAE;AAGzB,qBAAa,YAAa,SAAQ,WAAW;IAC3C;;;OAGG;IACH,IAAI,CACF,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,qBAAqB,GAAG,IAAI,GAAG,SAAc,EACpD,OAAO,CAAC,EAAE,cAAc,GACvB,WAAW,CAAC,+BAA+B,EAAE,kBAAkB,CAAC;IAQnE;;;;OAIG;IACH,MAAM,CACJ,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,uBAAuB,EAC7B,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,kBAAkB,CAAC;IAIjC;;;OAGG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,uBAAuB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC;CAOvG;AAED,MAAM,MAAM,+BAA+B,GAAG,YAAY,CAAC,kBAAkB,CAAC,CAAC;AAE/E;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,WAAW,EAAE,eAAe,CAAC,WAAW,CAAC;CAC1C;AAED,MAAM,WAAW,qBAAsB,SAAQ,kBAAkB;CAAG;AAEpE,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,WAAW,YAAY,CAAC;IACpC,OAAO,EACL,KAAK,kBAAkB,IAAI,kBAAkB,EAC7C,KAAK,+BAA+B,IAAI,+BAA+B,EACvE,KAAK,qBAAqB,IAAI,qBAAqB,EACnD,KAAK,uBAAuB,IAAI,uBAAuB,EACvD,KAAK,uBAAuB,IAAI,uBAAuB,GACxD,CAAC;CACH"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { APIResource } from "../../../../core/resource.js";
|
|
2
|
+
import * as EntitlementsAPI from "../entitlements.js";
|
|
3
|
+
import { APIPromise } from "../../../../core/api-promise.js";
|
|
4
|
+
import { CursorIDPage, type CursorIDPageParams, PagePromise } from "../../../../core/pagination.js";
|
|
5
|
+
import { RequestOptions } from "../../../../internal/request-options.js";
|
|
6
|
+
export declare class Entitlements extends APIResource {
|
|
7
|
+
/**
|
|
8
|
+
* Retrieves all entitlements attached to a product. These entitlements define the
|
|
9
|
+
* features that customers subscribed to this product can access.
|
|
10
|
+
*/
|
|
11
|
+
list(productID: string, query?: EntitlementListParams | null | undefined, options?: RequestOptions): PagePromise<ProductEntitlementsCursorIDPage, ProductEntitlement>;
|
|
12
|
+
/**
|
|
13
|
+
* Attaches an entitlement to a product. All customers subscribed to this product
|
|
14
|
+
* will gain access to the attached feature. Hercules recommends attaching
|
|
15
|
+
* entitlements when creating or updating products to keep feature access in sync.
|
|
16
|
+
*/
|
|
17
|
+
attach(productID: string, body: EntitlementAttachParams, options?: RequestOptions): APIPromise<ProductEntitlement>;
|
|
18
|
+
/**
|
|
19
|
+
* Removes an entitlement from a product. Customers subscribed to this product will
|
|
20
|
+
* lose access to the feature. Existing subscriptions are affected immediately.
|
|
21
|
+
*/
|
|
22
|
+
remove(featureID: string, params: EntitlementRemoveParams, options?: RequestOptions): APIPromise<void>;
|
|
23
|
+
}
|
|
24
|
+
export type ProductEntitlementsCursorIDPage = CursorIDPage<ProductEntitlement>;
|
|
25
|
+
/**
|
|
26
|
+
* An entitlement attached to a product. All customers subscribed to the product
|
|
27
|
+
* gain access to this entitlement.
|
|
28
|
+
*/
|
|
29
|
+
export interface ProductEntitlement {
|
|
30
|
+
/**
|
|
31
|
+
* Unique identifier for the entitlement
|
|
32
|
+
*/
|
|
33
|
+
id: string;
|
|
34
|
+
/**
|
|
35
|
+
* The entitlement attached to the product
|
|
36
|
+
*/
|
|
37
|
+
entitlement: EntitlementsAPI.Entitlement;
|
|
38
|
+
}
|
|
39
|
+
export interface EntitlementListParams extends CursorIDPageParams {
|
|
40
|
+
}
|
|
41
|
+
export interface EntitlementAttachParams {
|
|
42
|
+
/**
|
|
43
|
+
* The ID of the entitlement to attach to the product
|
|
44
|
+
*/
|
|
45
|
+
entitlement: string;
|
|
46
|
+
}
|
|
47
|
+
export interface EntitlementRemoveParams {
|
|
48
|
+
product_id: string;
|
|
49
|
+
}
|
|
50
|
+
export declare namespace Entitlements {
|
|
51
|
+
export { type ProductEntitlement as ProductEntitlement, type ProductEntitlementsCursorIDPage as ProductEntitlementsCursorIDPage, type EntitlementListParams as EntitlementListParams, type EntitlementAttachParams as EntitlementAttachParams, type EntitlementRemoveParams as EntitlementRemoveParams, };
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=entitlements.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entitlements.d.ts","sourceRoot":"","sources":["../../../../src/resources/beta/pay/products/entitlements.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,KAAK,eAAe;OACpB,EAAE,UAAU,EAAE;OACd,EAAE,YAAY,EAAE,KAAK,kBAAkB,EAAE,WAAW,EAAE;OAEtD,EAAE,cAAc,EAAE;AAGzB,qBAAa,YAAa,SAAQ,WAAW;IAC3C;;;OAGG;IACH,IAAI,CACF,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,qBAAqB,GAAG,IAAI,GAAG,SAAc,EACpD,OAAO,CAAC,EAAE,cAAc,GACvB,WAAW,CAAC,+BAA+B,EAAE,kBAAkB,CAAC;IAQnE;;;;OAIG;IACH,MAAM,CACJ,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,uBAAuB,EAC7B,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,kBAAkB,CAAC;IAIjC;;;OAGG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,uBAAuB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC;CAOvG;AAED,MAAM,MAAM,+BAA+B,GAAG,YAAY,CAAC,kBAAkB,CAAC,CAAC;AAE/E;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,WAAW,EAAE,eAAe,CAAC,WAAW,CAAC;CAC1C;AAED,MAAM,WAAW,qBAAsB,SAAQ,kBAAkB;CAAG;AAEpE,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,WAAW,YAAY,CAAC;IACpC,OAAO,EACL,KAAK,kBAAkB,IAAI,kBAAkB,EAC7C,KAAK,+BAA+B,IAAI,+BAA+B,EACvE,KAAK,qBAAqB,IAAI,qBAAqB,EACnD,KAAK,uBAAuB,IAAI,uBAAuB,EACvD,KAAK,uBAAuB,IAAI,uBAAuB,GACxD,CAAC;CACH"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.Entitlements = void 0;
|
|
5
|
+
const resource_1 = require("../../../../core/resource.js");
|
|
6
|
+
const pagination_1 = require("../../../../core/pagination.js");
|
|
7
|
+
const headers_1 = require("../../../../internal/headers.js");
|
|
8
|
+
const path_1 = require("../../../../internal/utils/path.js");
|
|
9
|
+
class Entitlements extends resource_1.APIResource {
|
|
10
|
+
/**
|
|
11
|
+
* Retrieves all entitlements attached to a product. These entitlements define the
|
|
12
|
+
* features that customers subscribed to this product can access.
|
|
13
|
+
*/
|
|
14
|
+
list(productID, query = {}, options) {
|
|
15
|
+
return this._client.getAPIList((0, path_1.path) `/v1/pay/products/${productID}/entitlements`, (pagination_1.CursorIDPage), { query, ...options });
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Attaches an entitlement to a product. All customers subscribed to this product
|
|
19
|
+
* will gain access to the attached feature. Hercules recommends attaching
|
|
20
|
+
* entitlements when creating or updating products to keep feature access in sync.
|
|
21
|
+
*/
|
|
22
|
+
attach(productID, body, options) {
|
|
23
|
+
return this._client.post((0, path_1.path) `/v1/pay/products/${productID}/entitlements`, { body, ...options });
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Removes an entitlement from a product. Customers subscribed to this product will
|
|
27
|
+
* lose access to the feature. Existing subscriptions are affected immediately.
|
|
28
|
+
*/
|
|
29
|
+
remove(featureID, params, options) {
|
|
30
|
+
const { product_id } = params;
|
|
31
|
+
return this._client.delete((0, path_1.path) `/v1/pay/products/${product_id}/entitlements/${featureID}`, {
|
|
32
|
+
...options,
|
|
33
|
+
headers: (0, headers_1.buildHeaders)([{ Accept: '*/*' }, options?.headers]),
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
exports.Entitlements = Entitlements;
|
|
38
|
+
//# sourceMappingURL=entitlements.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entitlements.js","sourceRoot":"","sources":["../../../../src/resources/beta/pay/products/entitlements.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,2DAAwD;AAGxD,+DAAiG;AACjG,6DAA4D;AAE5D,6DAAuD;AAEvD,MAAa,YAAa,SAAQ,sBAAW;IAC3C;;;OAGG;IACH,IAAI,CACF,SAAiB,EACjB,QAAkD,EAAE,EACpD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAC5B,IAAA,WAAI,EAAA,oBAAoB,SAAS,eAAe,EAChD,CAAA,yBAAgC,CAAA,EAChC,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CACtB,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,MAAM,CACJ,SAAiB,EACjB,IAA6B,EAC7B,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAA,WAAI,EAAA,oBAAoB,SAAS,eAAe,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACnG,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,SAAiB,EAAE,MAA+B,EAAE,OAAwB;QACjF,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAA,WAAI,EAAA,oBAAoB,UAAU,iBAAiB,SAAS,EAAE,EAAE;YACzF,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;CACF;AAzCD,oCAyCC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
import { APIResource } from "../../../../core/resource.mjs";
|
|
3
|
+
import { CursorIDPage } from "../../../../core/pagination.mjs";
|
|
4
|
+
import { buildHeaders } from "../../../../internal/headers.mjs";
|
|
5
|
+
import { path } from "../../../../internal/utils/path.mjs";
|
|
6
|
+
export class Entitlements extends APIResource {
|
|
7
|
+
/**
|
|
8
|
+
* Retrieves all entitlements attached to a product. These entitlements define the
|
|
9
|
+
* features that customers subscribed to this product can access.
|
|
10
|
+
*/
|
|
11
|
+
list(productID, query = {}, options) {
|
|
12
|
+
return this._client.getAPIList(path `/v1/pay/products/${productID}/entitlements`, (CursorIDPage), { query, ...options });
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Attaches an entitlement to a product. All customers subscribed to this product
|
|
16
|
+
* will gain access to the attached feature. Hercules recommends attaching
|
|
17
|
+
* entitlements when creating or updating products to keep feature access in sync.
|
|
18
|
+
*/
|
|
19
|
+
attach(productID, body, options) {
|
|
20
|
+
return this._client.post(path `/v1/pay/products/${productID}/entitlements`, { body, ...options });
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Removes an entitlement from a product. Customers subscribed to this product will
|
|
24
|
+
* lose access to the feature. Existing subscriptions are affected immediately.
|
|
25
|
+
*/
|
|
26
|
+
remove(featureID, params, options) {
|
|
27
|
+
const { product_id } = params;
|
|
28
|
+
return this._client.delete(path `/v1/pay/products/${product_id}/entitlements/${featureID}`, {
|
|
29
|
+
...options,
|
|
30
|
+
headers: buildHeaders([{ Accept: '*/*' }, options?.headers]),
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=entitlements.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entitlements.mjs","sourceRoot":"","sources":["../../../../src/resources/beta/pay/products/entitlements.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,WAAW,EAAE;OAGf,EAAE,YAAY,EAAwC;OACtD,EAAE,YAAY,EAAE;OAEhB,EAAE,IAAI,EAAE;AAEf,MAAM,OAAO,YAAa,SAAQ,WAAW;IAC3C;;;OAGG;IACH,IAAI,CACF,SAAiB,EACjB,QAAkD,EAAE,EACpD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAC5B,IAAI,CAAA,oBAAoB,SAAS,eAAe,EAChD,CAAA,YAAgC,CAAA,EAChC,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CACtB,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,MAAM,CACJ,SAAiB,EACjB,IAA6B,EAC7B,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA,oBAAoB,SAAS,eAAe,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACnG,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,SAAiB,EAAE,MAA+B,EAAE,OAAwB;QACjF,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAA,oBAAoB,UAAU,iBAAiB,SAAS,EAAE,EAAE;YACzF,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { Entitlements, type ProductEntitlement, type EntitlementListParams, type EntitlementAttachParams, type EntitlementRemoveParams, type ProductEntitlementsCursorIDPage, } from "./entitlements.mjs";
|
|
2
|
+
export { Products, type Product, type ProductCreateParams, type ProductUpdateParams, type ProductListParams, type ProductsCursorIDPage, } from "./products.mjs";
|
|
3
|
+
//# sourceMappingURL=index.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../../src/resources/beta/pay/products/index.ts"],"names":[],"mappings":"OAEO,EACL,YAAY,EACZ,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,+BAA+B,GACrC;OACM,EACL,QAAQ,EACR,KAAK,OAAO,EACZ,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,GAC1B"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { Entitlements, type ProductEntitlement, type EntitlementListParams, type EntitlementAttachParams, type EntitlementRemoveParams, type ProductEntitlementsCursorIDPage, } from "./entitlements.js";
|
|
2
|
+
export { Products, type Product, type ProductCreateParams, type ProductUpdateParams, type ProductListParams, type ProductsCursorIDPage, } from "./products.js";
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/resources/beta/pay/products/index.ts"],"names":[],"mappings":"OAEO,EACL,YAAY,EACZ,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,+BAA+B,GACrC;OACM,EACL,QAAQ,EACR,KAAK,OAAO,EACZ,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,GAC1B"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.
|
|
4
|
+
exports.Products = exports.Entitlements = void 0;
|
|
5
5
|
var entitlements_1 = require("./entitlements.js");
|
|
6
6
|
Object.defineProperty(exports, "Entitlements", { enumerable: true, get: function () { return entitlements_1.Entitlements; } });
|
|
7
|
-
var
|
|
8
|
-
Object.defineProperty(exports, "
|
|
7
|
+
var products_1 = require("./products.js");
|
|
8
|
+
Object.defineProperty(exports, "Products", { enumerable: true, get: function () { return products_1.Products; } });
|
|
9
9
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/resources/beta/pay/products/index.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,kDAOwB;AANtB,4GAAA,YAAY,OAAA;AAOd,0CAOoB;AANlB,oGAAA,QAAQ,OAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../../src/resources/beta/pay/products/index.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EACL,YAAY,GAMb;OACM,EACL,QAAQ,GAMT"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { APIResource } from "../../../../core/resource.mjs";
|
|
2
|
+
import * as EntitlementsAPI from "./entitlements.mjs";
|
|
3
|
+
import { EntitlementAttachParams, EntitlementListParams, EntitlementRemoveParams, Entitlements, ProductEntitlement, ProductEntitlementsCursorIDPage } from "./entitlements.mjs";
|
|
4
|
+
import { APIPromise } from "../../../../core/api-promise.mjs";
|
|
5
|
+
import { CursorIDPage, type CursorIDPageParams, PagePromise } from "../../../../core/pagination.mjs";
|
|
6
|
+
import { RequestOptions } from "../../../../internal/request-options.mjs";
|
|
7
|
+
export declare class Products extends APIResource {
|
|
8
|
+
entitlements: EntitlementsAPI.Entitlements;
|
|
9
|
+
/**
|
|
10
|
+
* Creates a new subscription product with a recurring price. Common examples
|
|
11
|
+
* include Free, Pro, Business, or Teams tiers. After creating a product, attach
|
|
12
|
+
* entitlements to define which features customers on this product can access.
|
|
13
|
+
*/
|
|
14
|
+
create(body: ProductCreateParams, options?: RequestOptions): APIPromise<Product>;
|
|
15
|
+
/**
|
|
16
|
+
* Updates an existing product. Use this to modify the product name, description,
|
|
17
|
+
* or active status. Pricing cannot be changed after creation—create a new product
|
|
18
|
+
* instead.
|
|
19
|
+
*/
|
|
20
|
+
update(productID: string, body?: ProductUpdateParams | null | undefined, options?: RequestOptions): APIPromise<Product>;
|
|
21
|
+
/**
|
|
22
|
+
* Retrieves a paginated list of subscription products. Products define the pricing
|
|
23
|
+
* and billing intervals for subscriptions. Each product can have entitlements
|
|
24
|
+
* attached that grant features to subscribed customers.
|
|
25
|
+
*/
|
|
26
|
+
list(query?: ProductListParams | null | undefined, options?: RequestOptions): PagePromise<ProductsCursorIDPage, Product>;
|
|
27
|
+
/**
|
|
28
|
+
* Archives a product, preventing new subscriptions. Existing subscriptions remain
|
|
29
|
+
* active. Use this instead of deletion to preserve subscription history.
|
|
30
|
+
*/
|
|
31
|
+
archive(productID: string, options?: RequestOptions): APIPromise<Product>;
|
|
32
|
+
/**
|
|
33
|
+
* Retrieves a product by ID. Returns the product object including pricing details
|
|
34
|
+
* and status.
|
|
35
|
+
*/
|
|
36
|
+
get(productID: string, options?: RequestOptions): APIPromise<Product>;
|
|
37
|
+
}
|
|
38
|
+
export type ProductsCursorIDPage = CursorIDPage<Product>;
|
|
39
|
+
/**
|
|
40
|
+
* A subscription product that customers can subscribe to. Products define pricing
|
|
41
|
+
* and billing intervals. Attach entitlements to a product to grant features to all
|
|
42
|
+
* subscribed customers.
|
|
43
|
+
*/
|
|
44
|
+
export interface Product {
|
|
45
|
+
/**
|
|
46
|
+
* Unique identifier for the entitlement
|
|
47
|
+
*/
|
|
48
|
+
id: string;
|
|
49
|
+
/**
|
|
50
|
+
* Whether the product is available for new subscriptions
|
|
51
|
+
*/
|
|
52
|
+
active: boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Timestamp when the product was created
|
|
55
|
+
*/
|
|
56
|
+
created: string;
|
|
57
|
+
/**
|
|
58
|
+
* Display name for the product (e.g., Pro, Business, Teams)
|
|
59
|
+
*/
|
|
60
|
+
name: string;
|
|
61
|
+
/**
|
|
62
|
+
* The recurring price configuration for a product
|
|
63
|
+
*/
|
|
64
|
+
default_price?: Product.DefaultPrice | null;
|
|
65
|
+
/**
|
|
66
|
+
* Detailed description of what the product includes
|
|
67
|
+
*/
|
|
68
|
+
description?: string | null;
|
|
69
|
+
}
|
|
70
|
+
export declare namespace Product {
|
|
71
|
+
/**
|
|
72
|
+
* The recurring price configuration for a product
|
|
73
|
+
*/
|
|
74
|
+
interface DefaultPrice {
|
|
75
|
+
/**
|
|
76
|
+
* Unique identifier for the entitlement
|
|
77
|
+
*/
|
|
78
|
+
id: string;
|
|
79
|
+
/**
|
|
80
|
+
* Three-letter ISO currency code (e.g., usd, eur)
|
|
81
|
+
*/
|
|
82
|
+
currency: string;
|
|
83
|
+
/**
|
|
84
|
+
* Billing frequency: day, week, month, or year
|
|
85
|
+
*/
|
|
86
|
+
interval: 'day' | 'week' | 'month' | 'year';
|
|
87
|
+
/**
|
|
88
|
+
* Number of intervals between billings (e.g., 2 for biweekly)
|
|
89
|
+
*/
|
|
90
|
+
interval_count: number;
|
|
91
|
+
/**
|
|
92
|
+
* Price amount in the smallest currency unit (e.g., cents)
|
|
93
|
+
*/
|
|
94
|
+
unit_amount: number | null;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
export interface ProductCreateParams {
|
|
98
|
+
/**
|
|
99
|
+
* Display name for the product (e.g., Pro, Business, Teams)
|
|
100
|
+
*/
|
|
101
|
+
name: string;
|
|
102
|
+
/**
|
|
103
|
+
* Price amount in the smallest currency unit (e.g., cents). Use 0 for free
|
|
104
|
+
* products.
|
|
105
|
+
*/
|
|
106
|
+
unit_amount: number;
|
|
107
|
+
/**
|
|
108
|
+
* Optional custom ID for the product. If not provided, one will be generated.
|
|
109
|
+
*/
|
|
110
|
+
id?: string;
|
|
111
|
+
/**
|
|
112
|
+
* Three-letter ISO currency code
|
|
113
|
+
*/
|
|
114
|
+
currency?: string;
|
|
115
|
+
/**
|
|
116
|
+
* Detailed description of what the product includes
|
|
117
|
+
*/
|
|
118
|
+
description?: string;
|
|
119
|
+
/**
|
|
120
|
+
* Billing frequency: day, week, month, or year
|
|
121
|
+
*/
|
|
122
|
+
interval?: 'day' | 'week' | 'month' | 'year';
|
|
123
|
+
/**
|
|
124
|
+
* Number of intervals between billings
|
|
125
|
+
*/
|
|
126
|
+
interval_count?: number;
|
|
127
|
+
}
|
|
128
|
+
export interface ProductUpdateParams {
|
|
129
|
+
/**
|
|
130
|
+
* Whether the product is available for new subscriptions
|
|
131
|
+
*/
|
|
132
|
+
active?: boolean;
|
|
133
|
+
/**
|
|
134
|
+
* Detailed description of what the product includes
|
|
135
|
+
*/
|
|
136
|
+
description?: string;
|
|
137
|
+
/**
|
|
138
|
+
* Display name for the product
|
|
139
|
+
*/
|
|
140
|
+
name?: string;
|
|
141
|
+
}
|
|
142
|
+
export interface ProductListParams extends CursorIDPageParams {
|
|
143
|
+
/**
|
|
144
|
+
* Filter by active status
|
|
145
|
+
*/
|
|
146
|
+
active?: 'true' | 'false';
|
|
147
|
+
}
|
|
148
|
+
export declare namespace Products {
|
|
149
|
+
export { type Product as Product, type ProductsCursorIDPage as ProductsCursorIDPage, type ProductCreateParams as ProductCreateParams, type ProductUpdateParams as ProductUpdateParams, type ProductListParams as ProductListParams, };
|
|
150
|
+
export { Entitlements as Entitlements, type ProductEntitlement as ProductEntitlement, type ProductEntitlementsCursorIDPage as ProductEntitlementsCursorIDPage, type EntitlementListParams as EntitlementListParams, type EntitlementAttachParams as EntitlementAttachParams, type EntitlementRemoveParams as EntitlementRemoveParams, };
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=products.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"products.d.mts","sourceRoot":"","sources":["../../../../src/resources/beta/pay/products/products.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,KAAK,eAAe;OACpB,EACL,uBAAuB,EACvB,qBAAqB,EACrB,uBAAuB,EACvB,YAAY,EACZ,kBAAkB,EAClB,+BAA+B,EAChC;OACM,EAAE,UAAU,EAAE;OACd,EAAE,YAAY,EAAE,KAAK,kBAAkB,EAAE,WAAW,EAAE;OACtD,EAAE,cAAc,EAAE;AAGzB,qBAAa,QAAS,SAAQ,WAAW;IACvC,YAAY,EAAE,eAAe,CAAC,YAAY,CAAkD;IAE5F;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC;IAIhF;;;;OAIG;IACH,MAAM,CACJ,SAAS,EAAE,MAAM,EACjB,IAAI,GAAE,mBAAmB,GAAG,IAAI,GAAG,SAAc,EACjD,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,OAAO,CAAC;IAItB;;;;OAIG;IACH,IAAI,CACF,KAAK,GAAE,iBAAiB,GAAG,IAAI,GAAG,SAAc,EAChD,OAAO,CAAC,EAAE,cAAc,GACvB,WAAW,CAAC,oBAAoB,EAAE,OAAO,CAAC;IAI7C;;;OAGG;IACH,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC;IAIzE;;;OAGG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC;CAGtE;AAED,MAAM,MAAM,oBAAoB,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AAEzD;;;;GAIG;AACH,MAAM,WAAW,OAAO;IACtB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAE5C;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,yBAAiB,OAAO,CAAC;IACvB;;OAEG;IACH,UAAiB,YAAY;QAC3B;;WAEG;QACH,EAAE,EAAE,MAAM,CAAC;QAEX;;WAEG;QACH,QAAQ,EAAE,MAAM,CAAC;QAEjB;;WAEG;QACH,QAAQ,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;QAE5C;;WAEG;QACH,cAAc,EAAE,MAAM,CAAC;QAEvB;;WAEG;QACH,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;KAC5B;CACF;AAED,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IAE7C;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iBAAkB,SAAQ,kBAAkB;IAC3D;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAC3B;AAID,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,OAAO,EACL,KAAK,OAAO,IAAI,OAAO,EACvB,KAAK,oBAAoB,IAAI,oBAAoB,EACjD,KAAK,mBAAmB,IAAI,mBAAmB,EAC/C,KAAK,mBAAmB,IAAI,mBAAmB,EAC/C,KAAK,iBAAiB,IAAI,iBAAiB,GAC5C,CAAC;IAEF,OAAO,EACL,YAAY,IAAI,YAAY,EAC5B,KAAK,kBAAkB,IAAI,kBAAkB,EAC7C,KAAK,+BAA+B,IAAI,+BAA+B,EACvE,KAAK,qBAAqB,IAAI,qBAAqB,EACnD,KAAK,uBAAuB,IAAI,uBAAuB,EACvD,KAAK,uBAAuB,IAAI,uBAAuB,GACxD,CAAC;CACH"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { APIResource } from "../../../../core/resource.js";
|
|
2
|
+
import * as EntitlementsAPI from "./entitlements.js";
|
|
3
|
+
import { EntitlementAttachParams, EntitlementListParams, EntitlementRemoveParams, Entitlements, ProductEntitlement, ProductEntitlementsCursorIDPage } from "./entitlements.js";
|
|
4
|
+
import { APIPromise } from "../../../../core/api-promise.js";
|
|
5
|
+
import { CursorIDPage, type CursorIDPageParams, PagePromise } from "../../../../core/pagination.js";
|
|
6
|
+
import { RequestOptions } from "../../../../internal/request-options.js";
|
|
7
|
+
export declare class Products extends APIResource {
|
|
8
|
+
entitlements: EntitlementsAPI.Entitlements;
|
|
9
|
+
/**
|
|
10
|
+
* Creates a new subscription product with a recurring price. Common examples
|
|
11
|
+
* include Free, Pro, Business, or Teams tiers. After creating a product, attach
|
|
12
|
+
* entitlements to define which features customers on this product can access.
|
|
13
|
+
*/
|
|
14
|
+
create(body: ProductCreateParams, options?: RequestOptions): APIPromise<Product>;
|
|
15
|
+
/**
|
|
16
|
+
* Updates an existing product. Use this to modify the product name, description,
|
|
17
|
+
* or active status. Pricing cannot be changed after creation—create a new product
|
|
18
|
+
* instead.
|
|
19
|
+
*/
|
|
20
|
+
update(productID: string, body?: ProductUpdateParams | null | undefined, options?: RequestOptions): APIPromise<Product>;
|
|
21
|
+
/**
|
|
22
|
+
* Retrieves a paginated list of subscription products. Products define the pricing
|
|
23
|
+
* and billing intervals for subscriptions. Each product can have entitlements
|
|
24
|
+
* attached that grant features to subscribed customers.
|
|
25
|
+
*/
|
|
26
|
+
list(query?: ProductListParams | null | undefined, options?: RequestOptions): PagePromise<ProductsCursorIDPage, Product>;
|
|
27
|
+
/**
|
|
28
|
+
* Archives a product, preventing new subscriptions. Existing subscriptions remain
|
|
29
|
+
* active. Use this instead of deletion to preserve subscription history.
|
|
30
|
+
*/
|
|
31
|
+
archive(productID: string, options?: RequestOptions): APIPromise<Product>;
|
|
32
|
+
/**
|
|
33
|
+
* Retrieves a product by ID. Returns the product object including pricing details
|
|
34
|
+
* and status.
|
|
35
|
+
*/
|
|
36
|
+
get(productID: string, options?: RequestOptions): APIPromise<Product>;
|
|
37
|
+
}
|
|
38
|
+
export type ProductsCursorIDPage = CursorIDPage<Product>;
|
|
39
|
+
/**
|
|
40
|
+
* A subscription product that customers can subscribe to. Products define pricing
|
|
41
|
+
* and billing intervals. Attach entitlements to a product to grant features to all
|
|
42
|
+
* subscribed customers.
|
|
43
|
+
*/
|
|
44
|
+
export interface Product {
|
|
45
|
+
/**
|
|
46
|
+
* Unique identifier for the entitlement
|
|
47
|
+
*/
|
|
48
|
+
id: string;
|
|
49
|
+
/**
|
|
50
|
+
* Whether the product is available for new subscriptions
|
|
51
|
+
*/
|
|
52
|
+
active: boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Timestamp when the product was created
|
|
55
|
+
*/
|
|
56
|
+
created: string;
|
|
57
|
+
/**
|
|
58
|
+
* Display name for the product (e.g., Pro, Business, Teams)
|
|
59
|
+
*/
|
|
60
|
+
name: string;
|
|
61
|
+
/**
|
|
62
|
+
* The recurring price configuration for a product
|
|
63
|
+
*/
|
|
64
|
+
default_price?: Product.DefaultPrice | null;
|
|
65
|
+
/**
|
|
66
|
+
* Detailed description of what the product includes
|
|
67
|
+
*/
|
|
68
|
+
description?: string | null;
|
|
69
|
+
}
|
|
70
|
+
export declare namespace Product {
|
|
71
|
+
/**
|
|
72
|
+
* The recurring price configuration for a product
|
|
73
|
+
*/
|
|
74
|
+
interface DefaultPrice {
|
|
75
|
+
/**
|
|
76
|
+
* Unique identifier for the entitlement
|
|
77
|
+
*/
|
|
78
|
+
id: string;
|
|
79
|
+
/**
|
|
80
|
+
* Three-letter ISO currency code (e.g., usd, eur)
|
|
81
|
+
*/
|
|
82
|
+
currency: string;
|
|
83
|
+
/**
|
|
84
|
+
* Billing frequency: day, week, month, or year
|
|
85
|
+
*/
|
|
86
|
+
interval: 'day' | 'week' | 'month' | 'year';
|
|
87
|
+
/**
|
|
88
|
+
* Number of intervals between billings (e.g., 2 for biweekly)
|
|
89
|
+
*/
|
|
90
|
+
interval_count: number;
|
|
91
|
+
/**
|
|
92
|
+
* Price amount in the smallest currency unit (e.g., cents)
|
|
93
|
+
*/
|
|
94
|
+
unit_amount: number | null;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
export interface ProductCreateParams {
|
|
98
|
+
/**
|
|
99
|
+
* Display name for the product (e.g., Pro, Business, Teams)
|
|
100
|
+
*/
|
|
101
|
+
name: string;
|
|
102
|
+
/**
|
|
103
|
+
* Price amount in the smallest currency unit (e.g., cents). Use 0 for free
|
|
104
|
+
* products.
|
|
105
|
+
*/
|
|
106
|
+
unit_amount: number;
|
|
107
|
+
/**
|
|
108
|
+
* Optional custom ID for the product. If not provided, one will be generated.
|
|
109
|
+
*/
|
|
110
|
+
id?: string;
|
|
111
|
+
/**
|
|
112
|
+
* Three-letter ISO currency code
|
|
113
|
+
*/
|
|
114
|
+
currency?: string;
|
|
115
|
+
/**
|
|
116
|
+
* Detailed description of what the product includes
|
|
117
|
+
*/
|
|
118
|
+
description?: string;
|
|
119
|
+
/**
|
|
120
|
+
* Billing frequency: day, week, month, or year
|
|
121
|
+
*/
|
|
122
|
+
interval?: 'day' | 'week' | 'month' | 'year';
|
|
123
|
+
/**
|
|
124
|
+
* Number of intervals between billings
|
|
125
|
+
*/
|
|
126
|
+
interval_count?: number;
|
|
127
|
+
}
|
|
128
|
+
export interface ProductUpdateParams {
|
|
129
|
+
/**
|
|
130
|
+
* Whether the product is available for new subscriptions
|
|
131
|
+
*/
|
|
132
|
+
active?: boolean;
|
|
133
|
+
/**
|
|
134
|
+
* Detailed description of what the product includes
|
|
135
|
+
*/
|
|
136
|
+
description?: string;
|
|
137
|
+
/**
|
|
138
|
+
* Display name for the product
|
|
139
|
+
*/
|
|
140
|
+
name?: string;
|
|
141
|
+
}
|
|
142
|
+
export interface ProductListParams extends CursorIDPageParams {
|
|
143
|
+
/**
|
|
144
|
+
* Filter by active status
|
|
145
|
+
*/
|
|
146
|
+
active?: 'true' | 'false';
|
|
147
|
+
}
|
|
148
|
+
export declare namespace Products {
|
|
149
|
+
export { type Product as Product, type ProductsCursorIDPage as ProductsCursorIDPage, type ProductCreateParams as ProductCreateParams, type ProductUpdateParams as ProductUpdateParams, type ProductListParams as ProductListParams, };
|
|
150
|
+
export { Entitlements as Entitlements, type ProductEntitlement as ProductEntitlement, type ProductEntitlementsCursorIDPage as ProductEntitlementsCursorIDPage, type EntitlementListParams as EntitlementListParams, type EntitlementAttachParams as EntitlementAttachParams, type EntitlementRemoveParams as EntitlementRemoveParams, };
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=products.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"products.d.ts","sourceRoot":"","sources":["../../../../src/resources/beta/pay/products/products.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.Products = void 0;
|
|
5
|
+
const tslib_1 = require("../../../../internal/tslib.js");
|
|
6
|
+
const resource_1 = require("../../../../core/resource.js");
|
|
7
|
+
const EntitlementsAPI = tslib_1.__importStar(require("./entitlements.js"));
|
|
8
|
+
const entitlements_1 = require("./entitlements.js");
|
|
9
|
+
const pagination_1 = require("../../../../core/pagination.js");
|
|
10
|
+
const path_1 = require("../../../../internal/utils/path.js");
|
|
11
|
+
class Products extends resource_1.APIResource {
|
|
12
|
+
constructor() {
|
|
13
|
+
super(...arguments);
|
|
14
|
+
this.entitlements = new EntitlementsAPI.Entitlements(this._client);
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Creates a new subscription product with a recurring price. Common examples
|
|
18
|
+
* include Free, Pro, Business, or Teams tiers. After creating a product, attach
|
|
19
|
+
* entitlements to define which features customers on this product can access.
|
|
20
|
+
*/
|
|
21
|
+
create(body, options) {
|
|
22
|
+
return this._client.post('/v1/pay/products', { body, ...options });
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Updates an existing product. Use this to modify the product name, description,
|
|
26
|
+
* or active status. Pricing cannot be changed after creation—create a new product
|
|
27
|
+
* instead.
|
|
28
|
+
*/
|
|
29
|
+
update(productID, body = {}, options) {
|
|
30
|
+
return this._client.patch((0, path_1.path) `/v1/pay/products/${productID}`, { body, ...options });
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Retrieves a paginated list of subscription products. Products define the pricing
|
|
34
|
+
* and billing intervals for subscriptions. Each product can have entitlements
|
|
35
|
+
* attached that grant features to subscribed customers.
|
|
36
|
+
*/
|
|
37
|
+
list(query = {}, options) {
|
|
38
|
+
return this._client.getAPIList('/v1/pay/products', (pagination_1.CursorIDPage), { query, ...options });
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Archives a product, preventing new subscriptions. Existing subscriptions remain
|
|
42
|
+
* active. Use this instead of deletion to preserve subscription history.
|
|
43
|
+
*/
|
|
44
|
+
archive(productID, options) {
|
|
45
|
+
return this._client.delete((0, path_1.path) `/v1/pay/products/${productID}`, options);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Retrieves a product by ID. Returns the product object including pricing details
|
|
49
|
+
* and status.
|
|
50
|
+
*/
|
|
51
|
+
get(productID, options) {
|
|
52
|
+
return this._client.get((0, path_1.path) `/v1/pay/products/${productID}`, options);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
exports.Products = Products;
|
|
56
|
+
Products.Entitlements = entitlements_1.Entitlements;
|
|
57
|
+
//# sourceMappingURL=products.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"products.js","sourceRoot":"","sources":["../../../../src/resources/beta/pay/products/products.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;;AAEtF,2DAAwD;AACxD,2EAAkD;AAClD,oDAOwB;AAExB,+DAAiG;AAEjG,6DAAuD;AAEvD,MAAa,QAAS,SAAQ,sBAAW;IAAzC;;QACE,iBAAY,GAAiC,IAAI,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAmD9F,CAAC;IAjDC;;;;OAIG;IACH,MAAM,CAAC,IAAyB,EAAE,OAAwB;QACxD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACrE,CAAC;IAED;;;;OAIG;IACH,MAAM,CACJ,SAAiB,EACjB,OAA+C,EAAE,EACjD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAA,WAAI,EAAA,oBAAoB,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACvF,CAAC;IAED;;;;OAIG;IACH,IAAI,CACF,QAA8C,EAAE,EAChD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAA,yBAAqB,CAAA,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACnG,CAAC;IAED;;;OAGG;IACH,OAAO,CAAC,SAAiB,EAAE,OAAwB;QACjD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAA,WAAI,EAAA,oBAAoB,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC;IAC3E,CAAC;IAED;;;OAGG;IACH,GAAG,CAAC,SAAiB,EAAE,OAAwB;QAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,oBAAoB,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC;IACxE,CAAC;CACF;AApDD,4BAoDC;AAuID,QAAQ,CAAC,YAAY,GAAG,2BAAY,CAAC"}
|