@schematichq/schematic-typescript-node 1.6.2 → 1.6.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/README.md +18 -3
  2. package/dist/api/resources/accounts/client/requests/UpdateEnvironmentRequestBody.d.ts +1 -0
  3. package/dist/api/resources/billing/client/requests/CreateInvoiceRequestBody.d.ts +1 -0
  4. package/dist/api/resources/credits/client/Client.d.ts +24 -4
  5. package/dist/api/resources/credits/client/requests/AcquireCreditLeaseRequestBody.d.ts +2 -0
  6. package/dist/api/resources/credits/client/requests/CountCreditEventLedgerRequest.d.ts +1 -1
  7. package/dist/api/resources/credits/client/requests/CreateCreditSpendPolicyRequestBody.d.ts +8 -4
  8. package/dist/api/resources/credits/client/requests/ExtendCreditLeaseRequestBody.d.ts +2 -0
  9. package/dist/api/resources/credits/client/requests/GetCreditSpendPolicyUsageRequest.d.ts +13 -0
  10. package/dist/api/resources/credits/client/requests/ListCreditEventLedgerRequest.d.ts +1 -1
  11. package/dist/api/resources/credits/client/requests/UpdateCreditSpendPolicyRequestBody.d.ts +3 -0
  12. package/dist/api/resources/credits/client/requests/index.d.ts +1 -0
  13. package/dist/api/resources/credits/types/GetCreditSpendPolicyUsageParams.d.ts +8 -0
  14. package/dist/api/resources/credits/types/GetCreditSpendPolicyUsageResponse.d.ts +6 -0
  15. package/dist/api/resources/credits/types/index.d.ts +2 -0
  16. package/dist/api/resources/entitlements/client/Client.d.ts +69 -0
  17. package/dist/api/resources/entitlements/client/requests/CountCompanyUserUsageRequest.d.ts +29 -0
  18. package/dist/api/resources/entitlements/client/requests/CreateBillingLinkedPlanEntitlementRequestBody.d.ts +1 -1
  19. package/dist/api/resources/entitlements/client/requests/CreatePlanEntitlementRequestBody.d.ts +1 -1
  20. package/dist/api/resources/entitlements/client/requests/GetCompanyUserUsageMetricsRequest.d.ts +16 -0
  21. package/dist/api/resources/entitlements/client/requests/ListCompanyUserUsageRequest.d.ts +29 -0
  22. package/dist/api/resources/entitlements/client/requests/UpdatePlanEntitlementRequestBody.d.ts +1 -1
  23. package/dist/api/resources/entitlements/client/requests/index.d.ts +3 -0
  24. package/dist/api/resources/entitlements/types/CountCompanyUserUsageParams.d.ts +20 -0
  25. package/dist/api/resources/entitlements/types/CountCompanyUserUsageResponse.d.ts +6 -0
  26. package/dist/api/resources/entitlements/types/GetCompanyUserUsageMetricsParams.d.ts +11 -0
  27. package/dist/api/resources/entitlements/types/GetCompanyUserUsageMetricsResponse.d.ts +6 -0
  28. package/dist/api/resources/entitlements/types/ListCompanyUserUsageParams.d.ts +20 -0
  29. package/dist/api/resources/entitlements/types/ListCompanyUserUsageResponse.d.ts +6 -0
  30. package/dist/api/resources/entitlements/types/index.d.ts +6 -0
  31. package/dist/api/resources/plangroups/client/Client.d.ts +2 -0
  32. package/dist/api/resources/plangroups/client/requests/CreatePlanGroupRequestBody.d.ts +2 -0
  33. package/dist/api/resources/plangroups/client/requests/UpdatePlanGroupRequestBody.d.ts +2 -0
  34. package/dist/api/resources/planmigrations/client/Client.d.ts +2 -0
  35. package/dist/api/resources/planmigrations/client/requests/CountMigrationsRequest.d.ts +2 -0
  36. package/dist/api/resources/planmigrations/client/requests/CreateMigrationInput.d.ts +3 -0
  37. package/dist/api/resources/planmigrations/client/requests/ListMigrationsRequest.d.ts +2 -0
  38. package/dist/api/resources/planmigrations/types/CountMigrationsParams.d.ts +1 -0
  39. package/dist/api/resources/planmigrations/types/ListMigrationsParams.d.ts +1 -0
  40. package/dist/api/resources/plans/client/requests/PublishPlanVersionRequestBody.d.ts +5 -0
  41. package/dist/api/resources/plans/client/requests/RetryCustomPlanBillingRequestBody.d.ts +2 -0
  42. package/dist/api/types/CaptureRawEvent.d.ts +2 -0
  43. package/dist/api/types/ChangeSubscriptionInternalRequestBody.d.ts +2 -0
  44. package/dist/api/types/ChangeSubscriptionRequestBody.d.ts +2 -0
  45. package/dist/api/types/CheckFlagsResponseData.d.ts +2 -0
  46. package/dist/api/types/CompanyDetailResponseData.d.ts +1 -0
  47. package/dist/api/types/CompanyFeatureUsageExportMetadataVisibleColumnsItem.d.ts +1 -0
  48. package/dist/api/types/CompanyPlanDetailResponseData.d.ts +1 -0
  49. package/dist/api/types/CompanyUserUsageMetricsResponseData.d.ts +11 -0
  50. package/dist/api/types/CompanyUserUsageResponseData.d.ts +15 -0
  51. package/dist/api/types/CompanyUserUsageRowResponseData.d.ts +13 -0
  52. package/dist/api/types/ComponentDisplaySettings.d.ts +1 -0
  53. package/dist/api/types/ComponentSettingsResponseData.d.ts +1 -0
  54. package/dist/api/types/CreateEntitlementInBundleRequestBody.d.ts +1 -1
  55. package/dist/api/types/CreditEventLedgerResponseData.d.ts +4 -1
  56. package/dist/api/types/CreditEventType.d.ts +3 -0
  57. package/dist/api/types/CreditLedgerEntryKind.d.ts +10 -0
  58. package/dist/api/types/CreditSpendPolicy.d.ts +21 -0
  59. package/dist/api/types/CreditSpendPolicyResponseData.d.ts +9 -0
  60. package/dist/api/types/CreditSpendWindow.d.ts +6 -0
  61. package/dist/api/types/CreditSpendWindowUnit.d.ts +6 -0
  62. package/dist/api/types/CustomPlanBillingResponseData.d.ts +2 -0
  63. package/dist/api/types/EnvironmentDetailResponseData.d.ts +1 -0
  64. package/dist/api/types/EnvironmentResponseData.d.ts +1 -0
  65. package/dist/api/types/EstimatedPlanTotal.d.ts +6 -0
  66. package/dist/api/types/InvoiceRequestBody.d.ts +1 -0
  67. package/dist/api/types/InvoiceResponseData.d.ts +2 -0
  68. package/dist/api/types/ManagePlanRequest.d.ts +2 -0
  69. package/dist/api/types/PendingMigrationResponseData.d.ts +8 -0
  70. package/dist/api/types/PlanEntitlementResponseData.d.ts +1 -1
  71. package/dist/api/types/PlanVersionMigrationResponseData.d.ts +1 -0
  72. package/dist/api/types/PlanVersionMigrationStrategy.d.ts +1 -0
  73. package/dist/api/types/PreviewSubscriptionFinanceResponseData.d.ts +2 -0
  74. package/dist/api/types/RulesEngineSchemaVersion.d.ts +1 -1
  75. package/dist/api/types/RulesengineCompany.d.ts +1 -0
  76. package/dist/api/types/RulesengineComparableOperator.d.ts +11 -0
  77. package/dist/api/types/RulesengineCondition.d.ts +1 -1
  78. package/dist/api/types/RulesengineCreditSpendPolicy.d.ts +21 -0
  79. package/dist/api/types/RulesengineCreditSpendPolicyScope.d.ts +6 -0
  80. package/dist/api/types/RulesengineCreditSpendWindow.d.ts +6 -0
  81. package/dist/api/types/RulesengineUser.d.ts +1 -0
  82. package/dist/api/types/UpcomingInvoiceResponseData.d.ts +2 -0
  83. package/dist/api/types/UsageBasedEntitlementRequestBody.d.ts +1 -1
  84. package/dist/api/types/UsageBasedEntitlementResponseData.d.ts +1 -1
  85. package/dist/api/types/UserUsageMetric.d.ts +5 -0
  86. package/dist/api/types/index.d.ts +13 -0
  87. package/dist/datastream/datastream-client.d.ts +2 -2
  88. package/dist/index.js +9 -9
  89. package/dist/serialization/resources/accounts/client/requests/UpdateEnvironmentRequestBody.d.ts +1 -0
  90. package/dist/serialization/resources/billing/client/requests/CreateInvoiceRequestBody.d.ts +1 -0
  91. package/dist/serialization/resources/credits/client/requests/AcquireCreditLeaseRequestBody.d.ts +1 -0
  92. package/dist/serialization/resources/credits/client/requests/CreateCreditSpendPolicyRequestBody.d.ts +4 -1
  93. package/dist/serialization/resources/credits/client/requests/ExtendCreditLeaseRequestBody.d.ts +1 -0
  94. package/dist/serialization/resources/credits/client/requests/UpdateCreditSpendPolicyRequestBody.d.ts +3 -0
  95. package/dist/serialization/resources/credits/types/GetCreditSpendPolicyUsageParams.d.ts +11 -0
  96. package/dist/serialization/resources/credits/types/GetCreditSpendPolicyUsageResponse.d.ts +12 -0
  97. package/dist/serialization/resources/credits/types/index.d.ts +2 -0
  98. package/dist/serialization/resources/entitlements/types/CountCompanyUserUsageParams.d.ts +16 -0
  99. package/dist/serialization/resources/entitlements/types/CountCompanyUserUsageResponse.d.ts +12 -0
  100. package/dist/serialization/resources/entitlements/types/GetCompanyUserUsageMetricsParams.d.ts +11 -0
  101. package/dist/serialization/resources/entitlements/types/GetCompanyUserUsageMetricsResponse.d.ts +12 -0
  102. package/dist/serialization/resources/entitlements/types/ListCompanyUserUsageParams.d.ts +16 -0
  103. package/dist/serialization/resources/entitlements/types/ListCompanyUserUsageResponse.d.ts +12 -0
  104. package/dist/serialization/resources/entitlements/types/index.d.ts +6 -0
  105. package/dist/serialization/resources/plangroups/client/requests/CreatePlanGroupRequestBody.d.ts +1 -0
  106. package/dist/serialization/resources/plangroups/client/requests/UpdatePlanGroupRequestBody.d.ts +1 -0
  107. package/dist/serialization/resources/planmigrations/client/requests/CreateMigrationInput.d.ts +1 -0
  108. package/dist/serialization/resources/planmigrations/types/CountMigrationsParams.d.ts +1 -0
  109. package/dist/serialization/resources/planmigrations/types/ListMigrationsParams.d.ts +1 -0
  110. package/dist/serialization/resources/plans/client/requests/PublishPlanVersionRequestBody.d.ts +2 -0
  111. package/dist/serialization/resources/plans/client/requests/RetryCustomPlanBillingRequestBody.d.ts +1 -0
  112. package/dist/serialization/types/CaptureRawEvent.d.ts +2 -0
  113. package/dist/serialization/types/ChangeSubscriptionInternalRequestBody.d.ts +1 -0
  114. package/dist/serialization/types/ChangeSubscriptionRequestBody.d.ts +1 -0
  115. package/dist/serialization/types/CheckFlagsResponseData.d.ts +2 -0
  116. package/dist/serialization/types/CompanyDetailResponseData.d.ts +1 -0
  117. package/dist/serialization/types/CompanyFeatureUsageExportMetadataVisibleColumnsItem.d.ts +1 -1
  118. package/dist/serialization/types/CompanyPlanDetailResponseData.d.ts +2 -0
  119. package/dist/serialization/types/CompanyUserUsageMetricsResponseData.d.ts +13 -0
  120. package/dist/serialization/types/CompanyUserUsageResponseData.d.ts +15 -0
  121. package/dist/serialization/types/CompanyUserUsageRowResponseData.d.ts +14 -0
  122. package/dist/serialization/types/ComponentDisplaySettings.d.ts +1 -0
  123. package/dist/serialization/types/ComponentSettingsResponseData.d.ts +1 -0
  124. package/dist/serialization/types/CreditEventLedgerResponseData.d.ts +5 -1
  125. package/dist/serialization/types/CreditEventType.d.ts +1 -1
  126. package/dist/serialization/types/CreditLedgerEntryKind.d.ts +7 -0
  127. package/dist/serialization/types/CreditSpendPolicy.d.ts +19 -0
  128. package/dist/serialization/types/CreditSpendPolicyResponseData.d.ts +7 -0
  129. package/dist/serialization/types/CreditSpendWindow.d.ts +10 -0
  130. package/dist/serialization/types/CreditSpendWindowUnit.d.ts +7 -0
  131. package/dist/serialization/types/CustomPlanBillingResponseData.d.ts +1 -0
  132. package/dist/serialization/types/EnvironmentDetailResponseData.d.ts +1 -0
  133. package/dist/serialization/types/EnvironmentResponseData.d.ts +1 -0
  134. package/dist/serialization/types/EstimatedPlanTotal.d.ts +12 -0
  135. package/dist/serialization/types/InvoiceRequestBody.d.ts +1 -0
  136. package/dist/serialization/types/InvoiceResponseData.d.ts +1 -0
  137. package/dist/serialization/types/ManagePlanRequest.d.ts +1 -0
  138. package/dist/serialization/types/PendingMigrationResponseData.d.ts +5 -0
  139. package/dist/serialization/types/PlanVersionMigrationResponseData.d.ts +1 -0
  140. package/dist/serialization/types/PlanVersionMigrationStrategy.d.ts +1 -1
  141. package/dist/serialization/types/PreviewSubscriptionFinanceResponseData.d.ts +1 -0
  142. package/dist/serialization/types/RulesEngineSchemaVersion.d.ts +1 -1
  143. package/dist/serialization/types/RulesengineCompany.d.ts +2 -0
  144. package/dist/serialization/types/RulesengineComparableOperator.d.ts +7 -0
  145. package/dist/serialization/types/RulesengineCondition.d.ts +2 -2
  146. package/dist/serialization/types/RulesengineCreditSpendPolicy.d.ts +19 -0
  147. package/dist/serialization/types/RulesengineCreditSpendPolicyScope.d.ts +7 -0
  148. package/dist/serialization/types/RulesengineCreditSpendWindow.d.ts +10 -0
  149. package/dist/serialization/types/RulesengineUser.d.ts +2 -0
  150. package/dist/serialization/types/UpcomingInvoiceResponseData.d.ts +1 -0
  151. package/dist/serialization/types/UserUsageMetric.d.ts +7 -0
  152. package/dist/serialization/types/index.d.ts +13 -0
  153. package/dist/wasm/rulesengine.d.ts +1 -0
  154. package/dist/wasm/rulesengine.js +34 -4
  155. package/dist/wasm/rulesengine_bg.wasm.d.ts +2 -0
  156. package/dist/wrapper.d.ts +2 -2
  157. package/package.json +1 -1
package/README.md CHANGED
@@ -781,12 +781,27 @@ const client = new SchematicClient({
781
781
  dataStream: {
782
782
  replicatorMode: true,
783
783
  redisClient,
784
- replicatorHealthURL: "http://localhost:8080/health",
785
- replicatorHealthCheck: 30000, // 30 seconds
786
784
  },
787
785
  });
788
786
  ```
789
787
 
788
+ In replicator mode the SDK polls the replicator's health endpoint to learn when it is ready and which cache version it is writing. The health URL defaults to `http://localhost:8090/ready` and the polling interval defaults to 30 seconds, matching the other Schematic SDKs. If your replicator runs elsewhere, set `replicatorHealthURL` explicitly:
789
+
790
+ ```ts
791
+ const client = new SchematicClient({
792
+ apiKey: process.env.SCHEMATIC_API_KEY,
793
+ useDataStream: true,
794
+ dataStream: {
795
+ replicatorMode: true,
796
+ redisClient,
797
+ replicatorHealthURL: "http://my-replicator:8090/ready",
798
+ replicatorHealthCheck: 60000, // 60 seconds
799
+ },
800
+ });
801
+ ```
802
+
803
+ Until a health check succeeds, the SDK treats the replicator as not ready: bulk flag checks bypass the shared cache, `track` skips local metric updates, and cache keys use the SDK's own rules engine version rather than the replicator's cache version.
804
+
790
805
  ### Configuration options
791
806
 
792
807
  | Option | Type | Default | Description |
@@ -794,7 +809,7 @@ const client = new SchematicClient({
794
809
  | `replicatorMode` | `boolean` | `false` | Enable replicator mode |
795
810
  | `redisClient` | `RedisClient` | — | **Required.** Redis client for reading from the shared cache |
796
811
  | `redisKeyPrefix` | `string` | `schematic:` | Key prefix for Redis cache entries |
797
- | `replicatorHealthURL` | `string` | — | URL to poll for replicator health status |
812
+ | `replicatorHealthURL` | `string` | `http://localhost:8090/ready` | URL to poll for replicator health status (default applies in replicator mode only) |
798
813
  | `replicatorHealthCheck` | `number` | 30000 | Health check polling interval in milliseconds |
799
814
  | `cacheTTL` | `number` | 24 hours | Cache TTL in milliseconds |
800
815
 
@@ -6,4 +6,5 @@ import type * as Schematic from "../../../../index";
6
6
  export interface UpdateEnvironmentRequestBody {
7
7
  environmentType?: Schematic.EnvironmentType;
8
8
  name?: string;
9
+ requireContextSignature?: boolean;
9
10
  }
@@ -26,5 +26,6 @@ export interface CreateInvoiceRequestBody {
26
26
  status?: Schematic.InvoiceStatus;
27
27
  subscriptionExternalId?: string;
28
28
  subtotal: number;
29
+ total?: number;
29
30
  url?: string;
30
31
  }
@@ -672,8 +672,7 @@ export declare class CreditsClient {
672
672
  *
673
673
  * @example
674
674
  * await client.credits.createCreditSpendPolicy({
675
- * billingCreditId: "billing_credit_id",
676
- * maxPerDraw: 1.1
675
+ * billingCreditId: "billing_credit_id"
677
676
  * })
678
677
  */
679
678
  createCreditSpendPolicy(request: Schematic.CreateCreditSpendPolicyRequestBody, requestOptions?: CreditsClient.RequestOptions): core.HttpResponsePromise<Schematic.CreateCreditSpendPolicyResponse>;
@@ -754,6 +753,27 @@ export declare class CreditsClient {
754
753
  */
755
754
  countCreditSpendPolicies(request?: Schematic.CountCreditSpendPoliciesRequest, requestOptions?: CreditsClient.RequestOptions): core.HttpResponsePromise<Schematic.CountCreditSpendPoliciesResponse>;
756
755
  private __countCreditSpendPolicies;
756
+ /**
757
+ * @param {Schematic.GetCreditSpendPolicyUsageRequest} request
758
+ * @param {CreditsClient.RequestOptions} requestOptions - Request-specific configuration.
759
+ *
760
+ * @throws {@link Schematic.BadRequestError}
761
+ * @throws {@link Schematic.UnauthorizedError}
762
+ * @throws {@link Schematic.ForbiddenError}
763
+ * @throws {@link Schematic.NotFoundError}
764
+ * @throws {@link Schematic.InternalServerError}
765
+ * @throws {@link errors.SchematicError}
766
+ * @throws {@link errors.SchematicTimeoutError}
767
+ *
768
+ * @example
769
+ * await client.credits.getCreditSpendPolicyUsage({
770
+ * billingCreditId: "billing_credit_id",
771
+ * companyId: "company_id",
772
+ * userIds: ["user_ids"]
773
+ * })
774
+ */
775
+ getCreditSpendPolicyUsage(request: Schematic.GetCreditSpendPolicyUsageRequest, requestOptions?: CreditsClient.RequestOptions): core.HttpResponsePromise<Schematic.GetCreditSpendPolicyUsageResponse>;
776
+ private __getCreditSpendPolicyUsage;
757
777
  /**
758
778
  * @param {Schematic.ListCreditEventLedgerRequest} request
759
779
  * @param {CreditsClient.RequestOptions} requestOptions - Request-specific configuration.
@@ -771,7 +791,7 @@ export declare class CreditsClient {
771
791
  * billingCreditId: "billing_credit_id",
772
792
  * companyId: "company_id",
773
793
  * endTime: "end_time",
774
- * eventType: "grant",
794
+ * eventType: "adjustment",
775
795
  * featureId: "feature_id",
776
796
  * startTime: "start_time",
777
797
  * limit: 1000000,
@@ -797,7 +817,7 @@ export declare class CreditsClient {
797
817
  * billingCreditId: "billing_credit_id",
798
818
  * companyId: "company_id",
799
819
  * endTime: "end_time",
800
- * eventType: "grant",
820
+ * eventType: "adjustment",
801
821
  * featureId: "feature_id",
802
822
  * startTime: "start_time",
803
823
  * limit: 1000000,
@@ -12,4 +12,6 @@ export interface AcquireCreditLeaseRequestBody {
12
12
  /** When the hold lapses if the lease is never released; defaults to five minutes from now and may be at most one hour out. The unspent hold is refunded on expiry */
13
13
  expiresAt?: Date;
14
14
  requestedAmount: number;
15
+ /** The user drawing the hold, so a user-scope spend policy applies to it */
16
+ userId?: string;
15
17
  }
@@ -5,7 +5,7 @@ import type * as Schematic from "../../../../index";
5
5
  * billingCreditId: "billing_credit_id",
6
6
  * companyId: "company_id",
7
7
  * endTime: "end_time",
8
- * eventType: "grant",
8
+ * eventType: "adjustment",
9
9
  * featureId: "feature_id",
10
10
  * startTime: "start_time",
11
11
  * limit: 1000000,
@@ -1,8 +1,8 @@
1
+ import type * as Schematic from "../../../../index";
1
2
  /**
2
3
  * @example
3
4
  * {
4
- * billingCreditId: "billing_credit_id",
5
- * maxPerDraw: 1.1
5
+ * billingCreditId: "billing_credit_id"
6
6
  * }
7
7
  */
8
8
  export interface CreateCreditSpendPolicyRequestBody {
@@ -10,8 +10,12 @@ export interface CreateCreditSpendPolicyRequestBody {
10
10
  /** The company the cap applies to. Set exactly one of company_id and user_id. */
11
11
  companyId?: string;
12
12
  label?: string;
13
- /** The largest number of credits a single draw may spend. */
14
- maxPerDraw: number;
13
+ /** The largest number of credits a single draw may spend. Set either this or window_amount. */
14
+ maxPerDraw?: number;
15
15
  /** The user the cap applies to. Set exactly one of company_id and user_id. */
16
16
  userId?: string;
17
+ /** The number of credits the company or user may spend in one window. Set either this or max_per_draw. */
18
+ windowAmount?: number;
19
+ /** The window that window_amount applies to: one UTC hour or one UTC day. Required with window_amount. */
20
+ windowUnit?: Schematic.CreditSpendWindowUnit;
17
21
  }
@@ -10,4 +10,6 @@ export interface ExtendCreditLeaseRequestBody {
10
10
  expiresAt?: Date;
11
11
  /** A caller-chosen key for safe retries: a second request with the same key returns the lease as it stands instead of growing it again. Keys are unique per environment across every extend */
12
12
  idempotencyKey?: string;
13
+ /** The user drawing the top-up, so a user-scope spend policy applies to it */
14
+ userId?: string;
13
15
  }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @example
3
+ * {
4
+ * billingCreditId: "billing_credit_id",
5
+ * companyId: "company_id",
6
+ * userIds: ["user_ids"]
7
+ * }
8
+ */
9
+ export interface GetCreditSpendPolicyUsageRequest {
10
+ billingCreditId?: string;
11
+ companyId: string;
12
+ userIds?: string | string[];
13
+ }
@@ -5,7 +5,7 @@ import type * as Schematic from "../../../../index";
5
5
  * billingCreditId: "billing_credit_id",
6
6
  * companyId: "company_id",
7
7
  * endTime: "end_time",
8
- * eventType: "grant",
8
+ * eventType: "adjustment",
9
9
  * featureId: "feature_id",
10
10
  * startTime: "start_time",
11
11
  * limit: 1000000,
@@ -1,3 +1,4 @@
1
+ import type * as Schematic from "../../../../index";
1
2
  /**
2
3
  * @example
3
4
  * {}
@@ -5,4 +6,6 @@
5
6
  export interface UpdateCreditSpendPolicyRequestBody {
6
7
  label?: string;
7
8
  maxPerDraw?: number;
9
+ windowAmount?: number;
10
+ windowUnit?: Schematic.CreditSpendWindowUnit;
8
11
  }
@@ -12,6 +12,7 @@ export type { CreateCreditBundleRequestBody } from "./CreateCreditBundleRequestB
12
12
  export type { CreateCreditSpendPolicyRequestBody } from "./CreateCreditSpendPolicyRequestBody";
13
13
  export type { DeleteBillingPlanCreditGrantRequest } from "./DeleteBillingPlanCreditGrantRequest";
14
14
  export type { ExtendCreditLeaseRequestBody } from "./ExtendCreditLeaseRequestBody";
15
+ export type { GetCreditSpendPolicyUsageRequest } from "./GetCreditSpendPolicyUsageRequest";
15
16
  export type { ListBillingCreditsRequest } from "./ListBillingCreditsRequest";
16
17
  export type { ListBillingPlanCreditGrantsRequest } from "./ListBillingPlanCreditGrantsRequest";
17
18
  export type { ListCompanyCreditBalancesRequest } from "./ListCompanyCreditBalancesRequest";
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Input parameters
3
+ */
4
+ export interface GetCreditSpendPolicyUsageParams {
5
+ billingCreditId?: string;
6
+ companyId?: string;
7
+ userIds?: string[];
8
+ }
@@ -0,0 +1,6 @@
1
+ import type * as Schematic from "../../../index";
2
+ export interface GetCreditSpendPolicyUsageResponse {
3
+ data: Schematic.CreditSpendPolicyResponseData[];
4
+ /** Input parameters */
5
+ params: Schematic.GetCreditSpendPolicyUsageParams;
6
+ }
@@ -24,6 +24,8 @@ export * from "./DeleteCreditSpendPolicyResponse";
24
24
  export * from "./ExtendCreditLeaseResponse";
25
25
  export * from "./GetCreditBundleResponse";
26
26
  export * from "./GetCreditSpendPolicyResponse";
27
+ export * from "./GetCreditSpendPolicyUsageParams";
28
+ export * from "./GetCreditSpendPolicyUsageResponse";
27
29
  export * from "./GetSingleBillingCreditResponse";
28
30
  export * from "./GetSingleBillingPlanCreditGrantResponse";
29
31
  export * from "./GrantBillingCreditsToCompanyResponse";
@@ -541,6 +541,75 @@ export declare class EntitlementsClient {
541
541
  */
542
542
  getUserUsageByCompany(request: Schematic.GetUserUsageByCompanyRequest, requestOptions?: EntitlementsClient.RequestOptions): core.HttpResponsePromise<Schematic.GetUserUsageByCompanyResponse>;
543
543
  private __getUserUsageByCompany;
544
+ /**
545
+ * @param {Schematic.GetCompanyUserUsageMetricsRequest} request
546
+ * @param {EntitlementsClient.RequestOptions} requestOptions - Request-specific configuration.
547
+ *
548
+ * @throws {@link Schematic.UnauthorizedError}
549
+ * @throws {@link Schematic.ForbiddenError}
550
+ * @throws {@link Schematic.NotFoundError}
551
+ * @throws {@link Schematic.InternalServerError}
552
+ * @throws {@link errors.SchematicError}
553
+ * @throws {@link errors.SchematicTimeoutError}
554
+ *
555
+ * @example
556
+ * await client.entitlements.getCompanyUserUsageMetrics({
557
+ * companyId: "company_id",
558
+ * endTime: new Date("2024-01-15T09:30:00.000Z"),
559
+ * startTime: new Date("2024-01-15T09:30:00.000Z")
560
+ * })
561
+ */
562
+ getCompanyUserUsageMetrics(request: Schematic.GetCompanyUserUsageMetricsRequest, requestOptions?: EntitlementsClient.RequestOptions): core.HttpResponsePromise<Schematic.GetCompanyUserUsageMetricsResponse>;
563
+ private __getCompanyUserUsageMetrics;
564
+ /**
565
+ * @param {Schematic.ListCompanyUserUsageRequest} request
566
+ * @param {EntitlementsClient.RequestOptions} requestOptions - Request-specific configuration.
567
+ *
568
+ * @throws {@link Schematic.UnauthorizedError}
569
+ * @throws {@link Schematic.ForbiddenError}
570
+ * @throws {@link Schematic.NotFoundError}
571
+ * @throws {@link Schematic.InternalServerError}
572
+ * @throws {@link errors.SchematicError}
573
+ * @throws {@link errors.SchematicTimeoutError}
574
+ *
575
+ * @example
576
+ * await client.entitlements.listCompanyUserUsage({
577
+ * companyId: "company_id",
578
+ * endTime: new Date("2024-01-15T09:30:00.000Z"),
579
+ * featureId: "feature_id",
580
+ * metric: "credits",
581
+ * limit: 1000000,
582
+ * offset: 1000000,
583
+ * startTime: new Date("2024-01-15T09:30:00.000Z")
584
+ * })
585
+ */
586
+ listCompanyUserUsage(request: Schematic.ListCompanyUserUsageRequest, requestOptions?: EntitlementsClient.RequestOptions): core.HttpResponsePromise<Schematic.ListCompanyUserUsageResponse>;
587
+ private __listCompanyUserUsage;
588
+ /**
589
+ * @param {Schematic.CountCompanyUserUsageRequest} request
590
+ * @param {EntitlementsClient.RequestOptions} requestOptions - Request-specific configuration.
591
+ *
592
+ * @throws {@link Schematic.BadRequestError}
593
+ * @throws {@link Schematic.UnauthorizedError}
594
+ * @throws {@link Schematic.ForbiddenError}
595
+ * @throws {@link Schematic.NotFoundError}
596
+ * @throws {@link Schematic.InternalServerError}
597
+ * @throws {@link errors.SchematicError}
598
+ * @throws {@link errors.SchematicTimeoutError}
599
+ *
600
+ * @example
601
+ * await client.entitlements.countCompanyUserUsage({
602
+ * companyId: "company_id",
603
+ * endTime: new Date("2024-01-15T09:30:00.000Z"),
604
+ * featureId: "feature_id",
605
+ * metric: "credits",
606
+ * limit: 1000000,
607
+ * offset: 1000000,
608
+ * startTime: new Date("2024-01-15T09:30:00.000Z")
609
+ * })
610
+ */
611
+ countCompanyUserUsage(request: Schematic.CountCompanyUserUsageRequest, requestOptions?: EntitlementsClient.RequestOptions): core.HttpResponsePromise<Schematic.CountCompanyUserUsageResponse>;
612
+ private __countCompanyUserUsage;
544
613
  /**
545
614
  * @param {Schematic.GetUserUsageDetailRequest} request
546
615
  * @param {EntitlementsClient.RequestOptions} requestOptions - Request-specific configuration.
@@ -0,0 +1,29 @@
1
+ import type * as Schematic from "../../../../index";
2
+ /**
3
+ * @example
4
+ * {
5
+ * companyId: "company_id",
6
+ * endTime: new Date("2024-01-15T09:30:00.000Z"),
7
+ * featureId: "feature_id",
8
+ * metric: "credits",
9
+ * limit: 1000000,
10
+ * offset: 1000000,
11
+ * startTime: new Date("2024-01-15T09:30:00.000Z")
12
+ * }
13
+ */
14
+ export interface CountCompanyUserUsageRequest {
15
+ /** Company to break usage down for */
16
+ companyId: string;
17
+ /** End of the usage window (exclusive); defaults to now */
18
+ endTime?: Date;
19
+ /** The event-based feature to break down; required when metric is feature */
20
+ featureId?: string;
21
+ /** Which metric to break usage down by */
22
+ metric: Schematic.UserUsageMetric;
23
+ /** Page limit (default 100) */
24
+ limit?: number;
25
+ /** Page offset (default 0) */
26
+ offset?: number;
27
+ /** Start of the usage window; defaults to 30 days before the end */
28
+ startTime?: Date;
29
+ }
@@ -40,7 +40,7 @@ export interface CreateBillingLinkedPlanEntitlementRequestBody {
40
40
  quarterlyUnitPriceDecimal?: string;
41
41
  softLimit?: number;
42
42
  tierMode?: Schematic.BillingTiersMode;
43
- /** The committed unit quantity for this entitlement. For custom plans this is the quantity the company is contractually committed to; for standard plans it is the quantity pre-filled when subscribing. Only applies to pay-in-advance entitlements. Note: this is not yet enforced/auto-provisioned as a true default — it is currently stored for downstream billing use. */
43
+ /** The committed unit quantity for this entitlement. For custom plans this is the minimum the company is contractually committed to: the company can buy more, and finalizing a new plan version sets the subscription quantity to the larger of this value and what the subscription already holds. For standard plans it is the quantity pre-filled when subscribing. Only applies to pay-in-advance entitlements. */
44
44
  usageQuantity?: number;
45
45
  valueBool?: boolean;
46
46
  valueCreditId?: string;
@@ -36,7 +36,7 @@ export interface CreatePlanEntitlementRequestBody {
36
36
  quarterlyUnitPriceDecimal?: string;
37
37
  softLimit?: number;
38
38
  tierMode?: Schematic.BillingTiersMode;
39
- /** The committed unit quantity for this entitlement. For custom plans this is the quantity the company is contractually committed to; for standard plans it is the quantity pre-filled when subscribing. Only applies to pay-in-advance entitlements. Note: this is not yet enforced/auto-provisioned as a true default — it is currently stored for downstream billing use. */
39
+ /** The committed unit quantity for this entitlement. For custom plans this is the minimum the company is contractually committed to: the company can buy more, and finalizing a new plan version sets the subscription quantity to the larger of this value and what the subscription already holds. For standard plans it is the quantity pre-filled when subscribing. Only applies to pay-in-advance entitlements. */
40
40
  usageQuantity?: number;
41
41
  valueBool?: boolean;
42
42
  valueCreditId?: string;
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @example
3
+ * {
4
+ * companyId: "company_id",
5
+ * endTime: new Date("2024-01-15T09:30:00.000Z"),
6
+ * startTime: new Date("2024-01-15T09:30:00.000Z")
7
+ * }
8
+ */
9
+ export interface GetCompanyUserUsageMetricsRequest {
10
+ /** Company to list available metrics for */
11
+ companyId: string;
12
+ /** End of the usage window (exclusive); defaults to now */
13
+ endTime?: Date;
14
+ /** Start of the usage window; defaults to 30 days before the end */
15
+ startTime?: Date;
16
+ }
@@ -0,0 +1,29 @@
1
+ import type * as Schematic from "../../../../index";
2
+ /**
3
+ * @example
4
+ * {
5
+ * companyId: "company_id",
6
+ * endTime: new Date("2024-01-15T09:30:00.000Z"),
7
+ * featureId: "feature_id",
8
+ * metric: "credits",
9
+ * limit: 1000000,
10
+ * offset: 1000000,
11
+ * startTime: new Date("2024-01-15T09:30:00.000Z")
12
+ * }
13
+ */
14
+ export interface ListCompanyUserUsageRequest {
15
+ /** Company to break usage down for */
16
+ companyId: string;
17
+ /** End of the usage window (exclusive); defaults to now */
18
+ endTime?: Date;
19
+ /** The event-based feature to break down; required when metric is feature */
20
+ featureId?: string;
21
+ /** Which metric to break usage down by */
22
+ metric: Schematic.UserUsageMetric;
23
+ /** Page limit (default 100) */
24
+ limit?: number;
25
+ /** Page offset (default 0) */
26
+ offset?: number;
27
+ /** Start of the usage window; defaults to 30 days before the end */
28
+ startTime?: Date;
29
+ }
@@ -31,7 +31,7 @@ export interface UpdatePlanEntitlementRequestBody {
31
31
  quarterlyUnitPriceDecimal?: string;
32
32
  softLimit?: number;
33
33
  tierMode?: Schematic.BillingTiersMode;
34
- /** The committed unit quantity for this entitlement. For custom plans this is the quantity the company is contractually committed to; for standard plans it is the quantity pre-filled when subscribing. Only applies to pay-in-advance entitlements. Note: this is not yet enforced/auto-provisioned as a true default — it is currently stored for downstream billing use. */
34
+ /** The committed unit quantity for this entitlement. For custom plans this is the minimum the company is contractually committed to: the company can buy more, and finalizing a new plan version sets the subscription quantity to the larger of this value and what the subscription already holds. For standard plans it is the quantity pre-filled when subscribing. Only applies to pay-in-advance entitlements. */
35
35
  usageQuantity?: number;
36
36
  valueBool?: boolean;
37
37
  valueCreditId?: string;
@@ -1,4 +1,5 @@
1
1
  export type { CountCompanyOverridesRequest } from "./CountCompanyOverridesRequest";
2
+ export type { CountCompanyUserUsageRequest } from "./CountCompanyUserUsageRequest";
2
3
  export type { CountFeatureCompaniesRequest } from "./CountFeatureCompaniesRequest";
3
4
  export type { CountFeatureUsageRequest } from "./CountFeatureUsageRequest";
4
5
  export type { CountFeatureUsersRequest } from "./CountFeatureUsersRequest";
@@ -7,11 +8,13 @@ export type { CreateBillingLinkedPlanEntitlementRequestBody } from "./CreateBill
7
8
  export type { CreateCompanyOverrideRequestBody } from "./CreateCompanyOverrideRequestBody";
8
9
  export type { CreatePlanEntitlementRequestBody } from "./CreatePlanEntitlementRequestBody";
9
10
  export type { DuplicatePlanEntitlementsRequestBody } from "./DuplicatePlanEntitlementsRequestBody";
11
+ export type { GetCompanyUserUsageMetricsRequest } from "./GetCompanyUserUsageMetricsRequest";
10
12
  export type { GetFeatureUsageByCompanyRequest } from "./GetFeatureUsageByCompanyRequest";
11
13
  export type { GetFeatureUsageTimeSeriesRequest } from "./GetFeatureUsageTimeSeriesRequest";
12
14
  export type { GetUserUsageByCompanyRequest } from "./GetUserUsageByCompanyRequest";
13
15
  export type { GetUserUsageDetailRequest } from "./GetUserUsageDetailRequest";
14
16
  export type { ListCompanyOverridesRequest } from "./ListCompanyOverridesRequest";
17
+ export type { ListCompanyUserUsageRequest } from "./ListCompanyUserUsageRequest";
15
18
  export type { ListFeatureCompaniesRequest } from "./ListFeatureCompaniesRequest";
16
19
  export type { ListFeatureUsageHistoryRequest } from "./ListFeatureUsageHistoryRequest";
17
20
  export type { ListFeatureUsageRequest } from "./ListFeatureUsageRequest";
@@ -0,0 +1,20 @@
1
+ import type * as Schematic from "../../../index";
2
+ /**
3
+ * Input parameters
4
+ */
5
+ export interface CountCompanyUserUsageParams {
6
+ /** Company to break usage down for */
7
+ companyId?: string;
8
+ /** End of the usage window (exclusive); defaults to now */
9
+ endTime?: Date;
10
+ /** The event-based feature to break down; required when metric is feature */
11
+ featureId?: string;
12
+ /** Page limit (default 100) */
13
+ limit?: number;
14
+ /** Which metric to break usage down by */
15
+ metric?: Schematic.UserUsageMetric;
16
+ /** Page offset (default 0) */
17
+ offset?: number;
18
+ /** Start of the usage window; defaults to 30 days before the end */
19
+ startTime?: Date;
20
+ }
@@ -0,0 +1,6 @@
1
+ import type * as Schematic from "../../../index";
2
+ export interface CountCompanyUserUsageResponse {
3
+ data: Schematic.CountResponse;
4
+ /** Input parameters */
5
+ params: Schematic.CountCompanyUserUsageParams;
6
+ }
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Input parameters
3
+ */
4
+ export interface GetCompanyUserUsageMetricsParams {
5
+ /** Company to list available metrics for */
6
+ companyId?: string;
7
+ /** End of the usage window (exclusive); defaults to now */
8
+ endTime?: Date;
9
+ /** Start of the usage window; defaults to 30 days before the end */
10
+ startTime?: Date;
11
+ }
@@ -0,0 +1,6 @@
1
+ import type * as Schematic from "../../../index";
2
+ export interface GetCompanyUserUsageMetricsResponse {
3
+ data: Schematic.CompanyUserUsageMetricsResponseData;
4
+ /** Input parameters */
5
+ params: Schematic.GetCompanyUserUsageMetricsParams;
6
+ }
@@ -0,0 +1,20 @@
1
+ import type * as Schematic from "../../../index";
2
+ /**
3
+ * Input parameters
4
+ */
5
+ export interface ListCompanyUserUsageParams {
6
+ /** Company to break usage down for */
7
+ companyId?: string;
8
+ /** End of the usage window (exclusive); defaults to now */
9
+ endTime?: Date;
10
+ /** The event-based feature to break down; required when metric is feature */
11
+ featureId?: string;
12
+ /** Page limit (default 100) */
13
+ limit?: number;
14
+ /** Which metric to break usage down by */
15
+ metric?: Schematic.UserUsageMetric;
16
+ /** Page offset (default 0) */
17
+ offset?: number;
18
+ /** Start of the usage window; defaults to 30 days before the end */
19
+ startTime?: Date;
20
+ }
@@ -0,0 +1,6 @@
1
+ import type * as Schematic from "../../../index";
2
+ export interface ListCompanyUserUsageResponse {
3
+ data: Schematic.CompanyUserUsageResponseData;
4
+ /** Input parameters */
5
+ params: Schematic.ListCompanyUserUsageParams;
6
+ }
@@ -1,5 +1,7 @@
1
1
  export * from "./CountCompanyOverridesParams";
2
2
  export * from "./CountCompanyOverridesResponse";
3
+ export * from "./CountCompanyUserUsageParams";
4
+ export * from "./CountCompanyUserUsageResponse";
3
5
  export * from "./CountFeatureCompaniesParams";
4
6
  export * from "./CountFeatureCompaniesResponse";
5
7
  export * from "./CountFeatureUsageParams";
@@ -14,6 +16,8 @@ export * from "./DeleteCompanyOverrideResponse";
14
16
  export * from "./DeletePlanEntitlementResponse";
15
17
  export * from "./DuplicatePlanEntitlementsResponse";
16
18
  export * from "./GetCompanyOverrideResponse";
19
+ export * from "./GetCompanyUserUsageMetricsParams";
20
+ export * from "./GetCompanyUserUsageMetricsResponse";
17
21
  export * from "./GetFeatureUsageByCompanyParams";
18
22
  export * from "./GetFeatureUsageByCompanyResponse";
19
23
  export * from "./GetFeatureUsageTimeSeriesParams";
@@ -25,6 +29,8 @@ export * from "./GetUserUsageDetailParams";
25
29
  export * from "./GetUserUsageDetailResponse";
26
30
  export * from "./ListCompanyOverridesParams";
27
31
  export * from "./ListCompanyOverridesResponse";
32
+ export * from "./ListCompanyUserUsageParams";
33
+ export * from "./ListCompanyUserUsageResponse";
28
34
  export * from "./ListFeatureCompaniesParams";
29
35
  export * from "./ListFeatureCompaniesResponse";
30
36
  export * from "./ListFeatureUsageHistoryParams";
@@ -63,6 +63,7 @@ export declare class PlangroupsClient {
63
63
  * prorationBehavior: "create_prorations",
64
64
  * showAsMonthlyPrices: true,
65
65
  * showCredits: true,
66
+ * showEstimatedTotal: true,
66
67
  * showFeatureDescription: true,
67
68
  * showHardLimit: true,
68
69
  * showPeriodToggle: true,
@@ -108,6 +109,7 @@ export declare class PlangroupsClient {
108
109
  * prorationBehavior: "create_prorations",
109
110
  * showAsMonthlyPrices: true,
110
111
  * showCredits: true,
112
+ * showEstimatedTotal: true,
111
113
  * showFeatureDescription: true,
112
114
  * showHardLimit: true,
113
115
  * showPeriodToggle: true,
@@ -23,6 +23,7 @@ import type * as Schematic from "../../../../index";
23
23
  * prorationBehavior: "create_prorations",
24
24
  * showAsMonthlyPrices: true,
25
25
  * showCredits: true,
26
+ * showEstimatedTotal: true,
26
27
  * showFeatureDescription: true,
27
28
  * showHardLimit: true,
28
29
  * showPeriodToggle: true,
@@ -61,6 +62,7 @@ export interface CreatePlanGroupRequestBody {
61
62
  scheduledDowngradePreventWhenOverLimit?: boolean;
62
63
  showAsMonthlyPrices: boolean;
63
64
  showCredits: boolean;
65
+ showEstimatedTotal: boolean;
64
66
  showFeatureDescription: boolean;
65
67
  showHardLimit: boolean;
66
68
  showPeriodToggle: boolean;
@@ -23,6 +23,7 @@ import type * as Schematic from "../../../../index";
23
23
  * prorationBehavior: "create_prorations",
24
24
  * showAsMonthlyPrices: true,
25
25
  * showCredits: true,
26
+ * showEstimatedTotal: true,
26
27
  * showFeatureDescription: true,
27
28
  * showHardLimit: true,
28
29
  * showPeriodToggle: true,
@@ -61,6 +62,7 @@ export interface UpdatePlanGroupRequestBody {
61
62
  scheduledDowngradePreventWhenOverLimit?: boolean;
62
63
  showAsMonthlyPrices: boolean;
63
64
  showCredits: boolean;
65
+ showEstimatedTotal: boolean;
64
66
  showFeatureDescription: boolean;
65
67
  showHardLimit: boolean;
66
68
  showPeriodToggle: boolean;
@@ -88,6 +88,7 @@ export declare class PlanmigrationsClient {
88
88
  * @example
89
89
  * await client.planmigrations.listMigrations({
90
90
  * featureId: "feature_id",
91
+ * featurePlanRolloutId: "feature_plan_rollout_id",
91
92
  * planVersionId: "plan_version_id",
92
93
  * status: "cancelled",
93
94
  * limit: 1000000,
@@ -204,6 +205,7 @@ export declare class PlanmigrationsClient {
204
205
  * @example
205
206
  * await client.planmigrations.countMigrations({
206
207
  * featureId: "feature_id",
208
+ * featurePlanRolloutId: "feature_plan_rollout_id",
207
209
  * planVersionId: "plan_version_id",
208
210
  * status: "cancelled",
209
211
  * limit: 1000000,
@@ -3,6 +3,7 @@ import type * as Schematic from "../../../../index";
3
3
  * @example
4
4
  * {
5
5
  * featureId: "feature_id",
6
+ * featurePlanRolloutId: "feature_plan_rollout_id",
6
7
  * planVersionId: "plan_version_id",
7
8
  * status: "cancelled",
8
9
  * limit: 1000000,
@@ -11,6 +12,7 @@ import type * as Schematic from "../../../../index";
11
12
  */
12
13
  export interface CountMigrationsRequest {
13
14
  featureId?: string;
15
+ featurePlanRolloutId?: string;
14
16
  planVersionId?: string;
15
17
  status?: Schematic.PlanVersionMigrationStatus;
16
18
  /** Page limit (default 100) */