orb-billing 4.49.0 → 4.51.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 +26 -0
- package/package.json +1 -1
- package/resources/alerts.d.ts +5 -8
- package/resources/alerts.d.ts.map +1 -1
- package/resources/alerts.js +2 -4
- package/resources/alerts.js.map +1 -1
- package/resources/alerts.mjs +2 -4
- package/resources/alerts.mjs.map +1 -1
- package/resources/coupons/coupons.d.ts +0 -34
- package/resources/coupons/coupons.d.ts.map +1 -1
- package/resources/coupons/coupons.js.map +1 -1
- package/resources/coupons/coupons.mjs.map +1 -1
- package/resources/coupons/subscriptions.d.ts +3 -3
- package/resources/credit-notes.d.ts +5 -5
- package/resources/credit-notes.js +3 -3
- package/resources/credit-notes.mjs +3 -3
- package/resources/customers/costs.d.ts +12 -454
- package/resources/customers/costs.d.ts.map +1 -1
- package/resources/customers/credits/ledger.d.ts +14 -14
- package/resources/customers/customers.d.ts +19 -19
- package/resources/customers/customers.d.ts.map +1 -1
- package/resources/customers/customers.js +14 -12
- package/resources/customers/customers.js.map +1 -1
- package/resources/customers/customers.mjs +14 -12
- package/resources/customers/customers.mjs.map +1 -1
- package/resources/events/backfills.d.ts +18 -18
- package/resources/events/backfills.js +3 -3
- package/resources/events/backfills.mjs +3 -3
- package/resources/events/events.d.ts +6 -7
- package/resources/events/events.d.ts.map +1 -1
- package/resources/events/events.js +3 -3
- package/resources/events/events.js.map +1 -1
- package/resources/events/events.mjs +3 -3
- package/resources/events/events.mjs.map +1 -1
- package/resources/events/volume.d.ts +5 -5
- package/resources/events/volume.js +5 -5
- package/resources/events/volume.mjs +5 -5
- package/resources/invoice-line-items.d.ts +2 -223
- package/resources/invoice-line-items.d.ts.map +1 -1
- package/resources/invoices.d.ts +14 -456
- package/resources/invoices.d.ts.map +1 -1
- package/resources/invoices.js +3 -3
- package/resources/invoices.js.map +1 -1
- package/resources/invoices.mjs +3 -3
- package/resources/invoices.mjs.map +1 -1
- package/resources/items.d.ts +1 -1
- package/resources/items.js +1 -1
- package/resources/items.mjs +1 -1
- package/resources/metrics.d.ts +6 -7
- package/resources/metrics.d.ts.map +1 -1
- package/resources/metrics.js +3 -4
- package/resources/metrics.js.map +1 -1
- package/resources/metrics.mjs +3 -4
- package/resources/metrics.mjs.map +1 -1
- package/resources/plans/external-plan-id.d.ts +6 -6
- package/resources/plans/external-plan-id.js +6 -6
- package/resources/plans/external-plan-id.mjs +6 -6
- package/resources/plans/plans.d.ts +15 -15
- package/resources/plans/plans.js +6 -6
- package/resources/plans/plans.mjs +6 -6
- package/resources/prices/external-price-id.d.ts +2 -2
- package/resources/prices/external-price-id.js +2 -2
- package/resources/prices/external-price-id.mjs +2 -2
- package/resources/prices/prices.d.ts +14 -235
- package/resources/prices/prices.d.ts.map +1 -1
- package/resources/prices/prices.js +7 -7
- package/resources/prices/prices.js.map +1 -1
- package/resources/prices/prices.mjs +7 -7
- package/resources/prices/prices.mjs.map +1 -1
- package/resources/subscriptions.d.ts +172 -2831
- package/resources/subscriptions.d.ts.map +1 -1
- package/resources/subscriptions.js +53 -49
- package/resources/subscriptions.js.map +1 -1
- package/resources/subscriptions.mjs +53 -49
- package/resources/subscriptions.mjs.map +1 -1
- package/src/resources/alerts.ts +5 -8
- package/src/resources/coupons/coupons.ts +0 -34
- package/src/resources/coupons/subscriptions.ts +3 -3
- package/src/resources/credit-notes.ts +5 -5
- package/src/resources/customers/costs.ts +12 -454
- package/src/resources/customers/credits/ledger.ts +14 -14
- package/src/resources/customers/customers.ts +19 -19
- package/src/resources/events/backfills.ts +18 -18
- package/src/resources/events/events.ts +6 -7
- package/src/resources/events/volume.ts +5 -5
- package/src/resources/invoice-line-items.ts +2 -223
- package/src/resources/invoices.ts +14 -456
- package/src/resources/items.ts +1 -1
- package/src/resources/metrics.ts +6 -7
- package/src/resources/plans/external-plan-id.ts +6 -6
- package/src/resources/plans/plans.ts +15 -15
- package/src/resources/prices/external-price-id.ts +2 -2
- package/src/resources/prices/prices.ts +14 -235
- package/src/resources/subscriptions.ts +172 -2831
- package/src/version.ts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
|
@@ -31,13 +31,13 @@ export class Invoices extends APIResource {
|
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
/**
|
|
34
|
-
* This endpoint returns a list of all [`Invoice`](
|
|
35
|
-
*
|
|
34
|
+
* This endpoint returns a list of all [`Invoice`](/core-concepts#invoice)s for an
|
|
35
|
+
* account in a list format.
|
|
36
36
|
*
|
|
37
37
|
* The list of invoices is ordered starting from the most recently issued invoice
|
|
38
38
|
* date. The response also includes
|
|
39
|
-
* [`pagination_metadata`](
|
|
40
|
-
* the next page of results if they exist.
|
|
39
|
+
* [`pagination_metadata`](/api-reference/pagination), which lets the caller
|
|
40
|
+
* retrieve the next page of results if they exist.
|
|
41
41
|
*
|
|
42
42
|
* By default, this only returns invoices that are `issued`, `paid`, or `synced`.
|
|
43
43
|
*
|
|
@@ -58,8 +58,8 @@ export class Invoices extends APIResource {
|
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
/**
|
|
61
|
-
* This endpoint is used to fetch an [`Invoice`](
|
|
62
|
-
*
|
|
61
|
+
* This endpoint is used to fetch an [`Invoice`](/core-concepts#invoice) given an
|
|
62
|
+
* identifier.
|
|
63
63
|
*/
|
|
64
64
|
fetch(invoiceId: string, options?: Core.RequestOptions): Core.APIPromise<Invoice> {
|
|
65
65
|
return this._client.get(`/invoices/${invoiceId}`, options);
|
|
@@ -67,7 +67,7 @@ export class Invoices extends APIResource {
|
|
|
67
67
|
|
|
68
68
|
/**
|
|
69
69
|
* This endpoint can be used to fetch the upcoming
|
|
70
|
-
* [invoice](
|
|
70
|
+
* [invoice](/core-concepts#invoice) for the current billing period given a
|
|
71
71
|
* subscription.
|
|
72
72
|
*/
|
|
73
73
|
fetchUpcoming(
|
|
@@ -139,7 +139,7 @@ export class Invoices extends APIResource {
|
|
|
139
139
|
export class InvoicesPage extends Page<Invoice> {}
|
|
140
140
|
|
|
141
141
|
/**
|
|
142
|
-
* An [`Invoice`](
|
|
142
|
+
* An [`Invoice`](/core-concepts#invoice) is a fundamental billing entity,
|
|
143
143
|
* representing the request for payment for a single subscription. This includes a
|
|
144
144
|
* set of line items, which correspond to prices in the subscription's plan and can
|
|
145
145
|
* represent fixed recurring fees or usage-based fees. They are generated at the
|
|
@@ -287,7 +287,7 @@ export interface Invoice {
|
|
|
287
287
|
customer_tax_id: Invoice.CustomerTaxID | null;
|
|
288
288
|
|
|
289
289
|
/**
|
|
290
|
-
* @deprecated
|
|
290
|
+
* @deprecated This field is deprecated in favor of `discounts`. If a `discounts`
|
|
291
291
|
* list is provided, the first discount in the list will be returned. If the list
|
|
292
292
|
* is empty, `None` will be returned.
|
|
293
293
|
*/
|
|
@@ -886,229 +886,8 @@ export namespace Invoice {
|
|
|
886
886
|
* is serialized differently in a given Price object. The model_type field
|
|
887
887
|
* determines the key for the configuration object that is present.
|
|
888
888
|
*
|
|
889
|
-
*
|
|
890
|
-
*
|
|
891
|
-
* With unit pricing, each unit costs a fixed amount.
|
|
892
|
-
*
|
|
893
|
-
* ```json
|
|
894
|
-
* {
|
|
895
|
-
* ...
|
|
896
|
-
* "model_type": "unit",
|
|
897
|
-
* "unit_config": {
|
|
898
|
-
* "unit_amount": "0.50"
|
|
899
|
-
* }
|
|
900
|
-
* ...
|
|
901
|
-
* }
|
|
902
|
-
* ```
|
|
903
|
-
*
|
|
904
|
-
* ## Tiered pricing
|
|
905
|
-
*
|
|
906
|
-
* In tiered pricing, the cost of a given unit depends on the tier range that it
|
|
907
|
-
* falls into, where each tier range is defined by an upper and lower bound. For
|
|
908
|
-
* example, the first ten units may cost $0.50 each and all units thereafter may
|
|
909
|
-
* cost $0.10 each.
|
|
910
|
-
*
|
|
911
|
-
* ```json
|
|
912
|
-
* {
|
|
913
|
-
* ...
|
|
914
|
-
* "model_type": "tiered",
|
|
915
|
-
* "tiered_config": {
|
|
916
|
-
* "tiers": [
|
|
917
|
-
* {
|
|
918
|
-
* "first_unit": 1,
|
|
919
|
-
* "last_unit": 10,
|
|
920
|
-
* "unit_amount": "0.50"
|
|
921
|
-
* },
|
|
922
|
-
* {
|
|
923
|
-
* "first_unit": 11,
|
|
924
|
-
* "last_unit": null,
|
|
925
|
-
* "unit_amount": "0.10"
|
|
926
|
-
* }
|
|
927
|
-
* ]
|
|
928
|
-
* }
|
|
929
|
-
* ...
|
|
930
|
-
* ```
|
|
931
|
-
*
|
|
932
|
-
* ## Bulk pricing
|
|
933
|
-
*
|
|
934
|
-
* Bulk pricing applies when the number of units determine the cost of all units.
|
|
935
|
-
* For example, if you've bought less than 10 units, they may each be $0.50 for a
|
|
936
|
-
* total of $5.00. Once you've bought more than 10 units, all units may now be
|
|
937
|
-
* priced at $0.40 (i.e. 101 units total would be $40.40).
|
|
938
|
-
*
|
|
939
|
-
* ```json
|
|
940
|
-
* {
|
|
941
|
-
* ...
|
|
942
|
-
* "model_type": "bulk",
|
|
943
|
-
* "bulk_config": {
|
|
944
|
-
* "tiers": [
|
|
945
|
-
* {
|
|
946
|
-
* "maximum_units": 10,
|
|
947
|
-
* "unit_amount": "0.50"
|
|
948
|
-
* },
|
|
949
|
-
* {
|
|
950
|
-
* "maximum_units": 1000,
|
|
951
|
-
* "unit_amount": "0.40"
|
|
952
|
-
* }
|
|
953
|
-
* ]
|
|
954
|
-
* }
|
|
955
|
-
* ...
|
|
956
|
-
* }
|
|
957
|
-
* ```
|
|
958
|
-
*
|
|
959
|
-
* ## Package pricing
|
|
960
|
-
*
|
|
961
|
-
* Package pricing defines the size or granularity of a unit for billing purposes.
|
|
962
|
-
* For example, if the package size is set to 5, then 4 units will be billed as 5
|
|
963
|
-
* and 6 units will be billed at 10.
|
|
964
|
-
*
|
|
965
|
-
* ```json
|
|
966
|
-
* {
|
|
967
|
-
* ...
|
|
968
|
-
* "model_type": "package",
|
|
969
|
-
* "package_config": {
|
|
970
|
-
* "package_amount": "0.80",
|
|
971
|
-
* "package_size": 10
|
|
972
|
-
* }
|
|
973
|
-
* ...
|
|
974
|
-
* }
|
|
975
|
-
* ```
|
|
976
|
-
*
|
|
977
|
-
* ## BPS pricing
|
|
978
|
-
*
|
|
979
|
-
* BPS pricing specifies a per-event (e.g. per-payment) rate in one hundredth of a
|
|
980
|
-
* percent (the number of basis points to charge), as well as a cap per event to
|
|
981
|
-
* assess. For example, this would allow you to assess a fee of 0.25% on every
|
|
982
|
-
* payment you process, with a maximum charge of $25 per payment.
|
|
983
|
-
*
|
|
984
|
-
* ```json
|
|
985
|
-
* {
|
|
986
|
-
* ...
|
|
987
|
-
* "model_type": "bps",
|
|
988
|
-
* "bps_config": {
|
|
989
|
-
* "bps": 125,
|
|
990
|
-
* "per_unit_maximum": "11.00"
|
|
991
|
-
* }
|
|
992
|
-
* ...
|
|
993
|
-
* }
|
|
994
|
-
* ```
|
|
995
|
-
*
|
|
996
|
-
* ## Bulk BPS pricing
|
|
997
|
-
*
|
|
998
|
-
* Bulk BPS pricing specifies BPS parameters in a tiered manner, dependent on the
|
|
999
|
-
* total quantity across all events. Similar to bulk pricing, the BPS parameters of
|
|
1000
|
-
* a given event depends on the tier range that the billing period falls into. Each
|
|
1001
|
-
* tier range is defined by an upper bound. For example, after $1.5M of payment
|
|
1002
|
-
* volume is reached, each individual payment may have a lower cap or a smaller
|
|
1003
|
-
* take-rate.
|
|
1004
|
-
*
|
|
1005
|
-
* ```json
|
|
1006
|
-
* ...
|
|
1007
|
-
* "model_type": "bulk_bps",
|
|
1008
|
-
* "bulk_bps_config": {
|
|
1009
|
-
* "tiers": [
|
|
1010
|
-
* {
|
|
1011
|
-
* "maximum_amount": "1000000.00",
|
|
1012
|
-
* "bps": 125,
|
|
1013
|
-
* "per_unit_maximum": "19.00"
|
|
1014
|
-
* },
|
|
1015
|
-
* {
|
|
1016
|
-
* "maximum_amount": null,
|
|
1017
|
-
* "bps": 115,
|
|
1018
|
-
* "per_unit_maximum": "4.00"
|
|
1019
|
-
* }
|
|
1020
|
-
* ]
|
|
1021
|
-
* }
|
|
1022
|
-
* ...
|
|
1023
|
-
* }
|
|
1024
|
-
* ```
|
|
1025
|
-
*
|
|
1026
|
-
* ## Tiered BPS pricing
|
|
1027
|
-
*
|
|
1028
|
-
* Tiered BPS pricing specifies BPS parameters in a graduated manner, where an
|
|
1029
|
-
* event's applicable parameter is a function of its marginal addition to the
|
|
1030
|
-
* period total. Similar to tiered pricing, the BPS parameters of a given event
|
|
1031
|
-
* depends on the tier range that it falls into, where each tier range is defined
|
|
1032
|
-
* by an upper and lower bound. For example, the first few payments may have a 0.8
|
|
1033
|
-
* BPS take-rate and all payments after a specific volume may incur a take-rate of
|
|
1034
|
-
* 0.5 BPS each.
|
|
1035
|
-
*
|
|
1036
|
-
* ```json
|
|
1037
|
-
* ...
|
|
1038
|
-
* "model_type": "tiered_bps",
|
|
1039
|
-
* "tiered_bps_config": {
|
|
1040
|
-
* "tiers": [
|
|
1041
|
-
* {
|
|
1042
|
-
* "minimum_amount": "0",
|
|
1043
|
-
* "maximum_amount": "1000000.00",
|
|
1044
|
-
* "bps": 125,
|
|
1045
|
-
* "per_unit_maximum": "19.00"
|
|
1046
|
-
* },
|
|
1047
|
-
* {
|
|
1048
|
-
* "minimum_amount": "1000000.00",
|
|
1049
|
-
* "maximum_amount": null,
|
|
1050
|
-
* "bps": 115,
|
|
1051
|
-
* "per_unit_maximum": "4.00"
|
|
1052
|
-
* }
|
|
1053
|
-
* ]
|
|
1054
|
-
* }
|
|
1055
|
-
* ...
|
|
1056
|
-
* }
|
|
1057
|
-
* ```
|
|
1058
|
-
*
|
|
1059
|
-
* ## Matrix pricing
|
|
1060
|
-
*
|
|
1061
|
-
* Matrix pricing defines a set of unit prices in a one or two-dimensional matrix.
|
|
1062
|
-
* `dimensions` defines the two event property values evaluated in this pricing
|
|
1063
|
-
* model. In a one-dimensional matrix, the second value is `null`. Every
|
|
1064
|
-
* configuration has a list of `matrix_values` which give the unit prices for
|
|
1065
|
-
* specified property values. In a one-dimensional matrix, the matrix values will
|
|
1066
|
-
* have `dimension_values` where the second value of the pair is null. If an event
|
|
1067
|
-
* does not match any of the dimension values in the matrix, it will resort to the
|
|
1068
|
-
* `default_unit_amount`.
|
|
1069
|
-
*
|
|
1070
|
-
* ```json
|
|
1071
|
-
* {
|
|
1072
|
-
* "model_type": "matrix"
|
|
1073
|
-
* "matrix_config": {
|
|
1074
|
-
* "default_unit_amount": "3.00",
|
|
1075
|
-
* "dimensions": [
|
|
1076
|
-
* "cluster_name",
|
|
1077
|
-
* "region"
|
|
1078
|
-
* ],
|
|
1079
|
-
* "matrix_values": [
|
|
1080
|
-
* {
|
|
1081
|
-
* "dimension_values": [
|
|
1082
|
-
* "alpha",
|
|
1083
|
-
* "west"
|
|
1084
|
-
* ],
|
|
1085
|
-
* "unit_amount": "2.00"
|
|
1086
|
-
* },
|
|
1087
|
-
* ...
|
|
1088
|
-
* ]
|
|
1089
|
-
* }
|
|
1090
|
-
* }
|
|
1091
|
-
* ```
|
|
1092
|
-
*
|
|
1093
|
-
* ## Fixed fees
|
|
1094
|
-
*
|
|
1095
|
-
* Fixed fees are prices that are applied independent of usage quantities, and
|
|
1096
|
-
* follow unit pricing. They also have an additional parameter
|
|
1097
|
-
* `fixed_price_quantity`. If the Price represents a fixed cost, this represents
|
|
1098
|
-
* the quantity of units applied.
|
|
1099
|
-
*
|
|
1100
|
-
* ```json
|
|
1101
|
-
* {
|
|
1102
|
-
* ...
|
|
1103
|
-
* "id": "price_id",
|
|
1104
|
-
* "model_type": "unit",
|
|
1105
|
-
* "unit_config": {
|
|
1106
|
-
* "unit_amount": "2.00"
|
|
1107
|
-
* },
|
|
1108
|
-
* "fixed_price_quantity": 3.0
|
|
1109
|
-
* ...
|
|
1110
|
-
* }
|
|
1111
|
-
* ```
|
|
889
|
+
* For more on the types of prices, see
|
|
890
|
+
* [the core concepts documentation](/core-concepts#plan-and-price)
|
|
1112
891
|
*/
|
|
1113
892
|
price: PricesAPI.Price | null;
|
|
1114
893
|
|
|
@@ -1498,7 +1277,7 @@ export interface InvoiceFetchUpcomingResponse {
|
|
|
1498
1277
|
customer_tax_id: InvoiceFetchUpcomingResponse.CustomerTaxID | null;
|
|
1499
1278
|
|
|
1500
1279
|
/**
|
|
1501
|
-
* @deprecated
|
|
1280
|
+
* @deprecated This field is deprecated in favor of `discounts`. If a `discounts`
|
|
1502
1281
|
* list is provided, the first discount in the list will be returned. If the list
|
|
1503
1282
|
* is empty, `None` will be returned.
|
|
1504
1283
|
*/
|
|
@@ -2097,229 +1876,8 @@ export namespace InvoiceFetchUpcomingResponse {
|
|
|
2097
1876
|
* is serialized differently in a given Price object. The model_type field
|
|
2098
1877
|
* determines the key for the configuration object that is present.
|
|
2099
1878
|
*
|
|
2100
|
-
*
|
|
2101
|
-
*
|
|
2102
|
-
* With unit pricing, each unit costs a fixed amount.
|
|
2103
|
-
*
|
|
2104
|
-
* ```json
|
|
2105
|
-
* {
|
|
2106
|
-
* ...
|
|
2107
|
-
* "model_type": "unit",
|
|
2108
|
-
* "unit_config": {
|
|
2109
|
-
* "unit_amount": "0.50"
|
|
2110
|
-
* }
|
|
2111
|
-
* ...
|
|
2112
|
-
* }
|
|
2113
|
-
* ```
|
|
2114
|
-
*
|
|
2115
|
-
* ## Tiered pricing
|
|
2116
|
-
*
|
|
2117
|
-
* In tiered pricing, the cost of a given unit depends on the tier range that it
|
|
2118
|
-
* falls into, where each tier range is defined by an upper and lower bound. For
|
|
2119
|
-
* example, the first ten units may cost $0.50 each and all units thereafter may
|
|
2120
|
-
* cost $0.10 each.
|
|
2121
|
-
*
|
|
2122
|
-
* ```json
|
|
2123
|
-
* {
|
|
2124
|
-
* ...
|
|
2125
|
-
* "model_type": "tiered",
|
|
2126
|
-
* "tiered_config": {
|
|
2127
|
-
* "tiers": [
|
|
2128
|
-
* {
|
|
2129
|
-
* "first_unit": 1,
|
|
2130
|
-
* "last_unit": 10,
|
|
2131
|
-
* "unit_amount": "0.50"
|
|
2132
|
-
* },
|
|
2133
|
-
* {
|
|
2134
|
-
* "first_unit": 11,
|
|
2135
|
-
* "last_unit": null,
|
|
2136
|
-
* "unit_amount": "0.10"
|
|
2137
|
-
* }
|
|
2138
|
-
* ]
|
|
2139
|
-
* }
|
|
2140
|
-
* ...
|
|
2141
|
-
* ```
|
|
2142
|
-
*
|
|
2143
|
-
* ## Bulk pricing
|
|
2144
|
-
*
|
|
2145
|
-
* Bulk pricing applies when the number of units determine the cost of all units.
|
|
2146
|
-
* For example, if you've bought less than 10 units, they may each be $0.50 for a
|
|
2147
|
-
* total of $5.00. Once you've bought more than 10 units, all units may now be
|
|
2148
|
-
* priced at $0.40 (i.e. 101 units total would be $40.40).
|
|
2149
|
-
*
|
|
2150
|
-
* ```json
|
|
2151
|
-
* {
|
|
2152
|
-
* ...
|
|
2153
|
-
* "model_type": "bulk",
|
|
2154
|
-
* "bulk_config": {
|
|
2155
|
-
* "tiers": [
|
|
2156
|
-
* {
|
|
2157
|
-
* "maximum_units": 10,
|
|
2158
|
-
* "unit_amount": "0.50"
|
|
2159
|
-
* },
|
|
2160
|
-
* {
|
|
2161
|
-
* "maximum_units": 1000,
|
|
2162
|
-
* "unit_amount": "0.40"
|
|
2163
|
-
* }
|
|
2164
|
-
* ]
|
|
2165
|
-
* }
|
|
2166
|
-
* ...
|
|
2167
|
-
* }
|
|
2168
|
-
* ```
|
|
2169
|
-
*
|
|
2170
|
-
* ## Package pricing
|
|
2171
|
-
*
|
|
2172
|
-
* Package pricing defines the size or granularity of a unit for billing purposes.
|
|
2173
|
-
* For example, if the package size is set to 5, then 4 units will be billed as 5
|
|
2174
|
-
* and 6 units will be billed at 10.
|
|
2175
|
-
*
|
|
2176
|
-
* ```json
|
|
2177
|
-
* {
|
|
2178
|
-
* ...
|
|
2179
|
-
* "model_type": "package",
|
|
2180
|
-
* "package_config": {
|
|
2181
|
-
* "package_amount": "0.80",
|
|
2182
|
-
* "package_size": 10
|
|
2183
|
-
* }
|
|
2184
|
-
* ...
|
|
2185
|
-
* }
|
|
2186
|
-
* ```
|
|
2187
|
-
*
|
|
2188
|
-
* ## BPS pricing
|
|
2189
|
-
*
|
|
2190
|
-
* BPS pricing specifies a per-event (e.g. per-payment) rate in one hundredth of a
|
|
2191
|
-
* percent (the number of basis points to charge), as well as a cap per event to
|
|
2192
|
-
* assess. For example, this would allow you to assess a fee of 0.25% on every
|
|
2193
|
-
* payment you process, with a maximum charge of $25 per payment.
|
|
2194
|
-
*
|
|
2195
|
-
* ```json
|
|
2196
|
-
* {
|
|
2197
|
-
* ...
|
|
2198
|
-
* "model_type": "bps",
|
|
2199
|
-
* "bps_config": {
|
|
2200
|
-
* "bps": 125,
|
|
2201
|
-
* "per_unit_maximum": "11.00"
|
|
2202
|
-
* }
|
|
2203
|
-
* ...
|
|
2204
|
-
* }
|
|
2205
|
-
* ```
|
|
2206
|
-
*
|
|
2207
|
-
* ## Bulk BPS pricing
|
|
2208
|
-
*
|
|
2209
|
-
* Bulk BPS pricing specifies BPS parameters in a tiered manner, dependent on the
|
|
2210
|
-
* total quantity across all events. Similar to bulk pricing, the BPS parameters of
|
|
2211
|
-
* a given event depends on the tier range that the billing period falls into. Each
|
|
2212
|
-
* tier range is defined by an upper bound. For example, after $1.5M of payment
|
|
2213
|
-
* volume is reached, each individual payment may have a lower cap or a smaller
|
|
2214
|
-
* take-rate.
|
|
2215
|
-
*
|
|
2216
|
-
* ```json
|
|
2217
|
-
* ...
|
|
2218
|
-
* "model_type": "bulk_bps",
|
|
2219
|
-
* "bulk_bps_config": {
|
|
2220
|
-
* "tiers": [
|
|
2221
|
-
* {
|
|
2222
|
-
* "maximum_amount": "1000000.00",
|
|
2223
|
-
* "bps": 125,
|
|
2224
|
-
* "per_unit_maximum": "19.00"
|
|
2225
|
-
* },
|
|
2226
|
-
* {
|
|
2227
|
-
* "maximum_amount": null,
|
|
2228
|
-
* "bps": 115,
|
|
2229
|
-
* "per_unit_maximum": "4.00"
|
|
2230
|
-
* }
|
|
2231
|
-
* ]
|
|
2232
|
-
* }
|
|
2233
|
-
* ...
|
|
2234
|
-
* }
|
|
2235
|
-
* ```
|
|
2236
|
-
*
|
|
2237
|
-
* ## Tiered BPS pricing
|
|
2238
|
-
*
|
|
2239
|
-
* Tiered BPS pricing specifies BPS parameters in a graduated manner, where an
|
|
2240
|
-
* event's applicable parameter is a function of its marginal addition to the
|
|
2241
|
-
* period total. Similar to tiered pricing, the BPS parameters of a given event
|
|
2242
|
-
* depends on the tier range that it falls into, where each tier range is defined
|
|
2243
|
-
* by an upper and lower bound. For example, the first few payments may have a 0.8
|
|
2244
|
-
* BPS take-rate and all payments after a specific volume may incur a take-rate of
|
|
2245
|
-
* 0.5 BPS each.
|
|
2246
|
-
*
|
|
2247
|
-
* ```json
|
|
2248
|
-
* ...
|
|
2249
|
-
* "model_type": "tiered_bps",
|
|
2250
|
-
* "tiered_bps_config": {
|
|
2251
|
-
* "tiers": [
|
|
2252
|
-
* {
|
|
2253
|
-
* "minimum_amount": "0",
|
|
2254
|
-
* "maximum_amount": "1000000.00",
|
|
2255
|
-
* "bps": 125,
|
|
2256
|
-
* "per_unit_maximum": "19.00"
|
|
2257
|
-
* },
|
|
2258
|
-
* {
|
|
2259
|
-
* "minimum_amount": "1000000.00",
|
|
2260
|
-
* "maximum_amount": null,
|
|
2261
|
-
* "bps": 115,
|
|
2262
|
-
* "per_unit_maximum": "4.00"
|
|
2263
|
-
* }
|
|
2264
|
-
* ]
|
|
2265
|
-
* }
|
|
2266
|
-
* ...
|
|
2267
|
-
* }
|
|
2268
|
-
* ```
|
|
2269
|
-
*
|
|
2270
|
-
* ## Matrix pricing
|
|
2271
|
-
*
|
|
2272
|
-
* Matrix pricing defines a set of unit prices in a one or two-dimensional matrix.
|
|
2273
|
-
* `dimensions` defines the two event property values evaluated in this pricing
|
|
2274
|
-
* model. In a one-dimensional matrix, the second value is `null`. Every
|
|
2275
|
-
* configuration has a list of `matrix_values` which give the unit prices for
|
|
2276
|
-
* specified property values. In a one-dimensional matrix, the matrix values will
|
|
2277
|
-
* have `dimension_values` where the second value of the pair is null. If an event
|
|
2278
|
-
* does not match any of the dimension values in the matrix, it will resort to the
|
|
2279
|
-
* `default_unit_amount`.
|
|
2280
|
-
*
|
|
2281
|
-
* ```json
|
|
2282
|
-
* {
|
|
2283
|
-
* "model_type": "matrix"
|
|
2284
|
-
* "matrix_config": {
|
|
2285
|
-
* "default_unit_amount": "3.00",
|
|
2286
|
-
* "dimensions": [
|
|
2287
|
-
* "cluster_name",
|
|
2288
|
-
* "region"
|
|
2289
|
-
* ],
|
|
2290
|
-
* "matrix_values": [
|
|
2291
|
-
* {
|
|
2292
|
-
* "dimension_values": [
|
|
2293
|
-
* "alpha",
|
|
2294
|
-
* "west"
|
|
2295
|
-
* ],
|
|
2296
|
-
* "unit_amount": "2.00"
|
|
2297
|
-
* },
|
|
2298
|
-
* ...
|
|
2299
|
-
* ]
|
|
2300
|
-
* }
|
|
2301
|
-
* }
|
|
2302
|
-
* ```
|
|
2303
|
-
*
|
|
2304
|
-
* ## Fixed fees
|
|
2305
|
-
*
|
|
2306
|
-
* Fixed fees are prices that are applied independent of usage quantities, and
|
|
2307
|
-
* follow unit pricing. They also have an additional parameter
|
|
2308
|
-
* `fixed_price_quantity`. If the Price represents a fixed cost, this represents
|
|
2309
|
-
* the quantity of units applied.
|
|
2310
|
-
*
|
|
2311
|
-
* ```json
|
|
2312
|
-
* {
|
|
2313
|
-
* ...
|
|
2314
|
-
* "id": "price_id",
|
|
2315
|
-
* "model_type": "unit",
|
|
2316
|
-
* "unit_config": {
|
|
2317
|
-
* "unit_amount": "2.00"
|
|
2318
|
-
* },
|
|
2319
|
-
* "fixed_price_quantity": 3.0
|
|
2320
|
-
* ...
|
|
2321
|
-
* }
|
|
2322
|
-
* ```
|
|
1879
|
+
* For more on the types of prices, see
|
|
1880
|
+
* [the core concepts documentation](/core-concepts#plan-and-price)
|
|
2323
1881
|
*/
|
|
2324
1882
|
price: PricesAPI.Price | null;
|
|
2325
1883
|
|
package/src/resources/items.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { Page, type PageParams } from '../pagination';
|
|
|
7
7
|
|
|
8
8
|
export class Items extends APIResource {
|
|
9
9
|
/**
|
|
10
|
-
* This endpoint is used to create an [Item](
|
|
10
|
+
* This endpoint is used to create an [Item](/core-concepts#item).
|
|
11
11
|
*/
|
|
12
12
|
create(body: ItemCreateParams, options?: Core.RequestOptions): Core.APIPromise<Item> {
|
|
13
13
|
return this._client.post('/items', { body, ...options });
|
package/src/resources/metrics.ts
CHANGED
|
@@ -8,9 +8,8 @@ import { Page, type PageParams } from '../pagination';
|
|
|
8
8
|
|
|
9
9
|
export class Metrics extends APIResource {
|
|
10
10
|
/**
|
|
11
|
-
* This endpoint is used to create a [metric](
|
|
12
|
-
*
|
|
13
|
-
* [SQL support](../guides/extensibility/advanced-metrics#sql-support) for a
|
|
11
|
+
* This endpoint is used to create a [metric](/core-concepts###metric) using a SQL
|
|
12
|
+
* string. See [SQL support](/extensibility/advanced-metrics#sql-support) for a
|
|
14
13
|
* description of constructing SQL queries with examples.
|
|
15
14
|
*/
|
|
16
15
|
create(body: MetricCreateParams, options?: Core.RequestOptions): Core.APIPromise<BillableMetric> {
|
|
@@ -31,9 +30,9 @@ export class Metrics extends APIResource {
|
|
|
31
30
|
}
|
|
32
31
|
|
|
33
32
|
/**
|
|
34
|
-
* This endpoint is used to fetch [metric](
|
|
35
|
-
*
|
|
36
|
-
*
|
|
33
|
+
* This endpoint is used to fetch [metric](/core-concepts##metric) details given a
|
|
34
|
+
* metric identifier. It returns information about the metrics including its name,
|
|
35
|
+
* description, and item.
|
|
37
36
|
*/
|
|
38
37
|
list(
|
|
39
38
|
query?: MetricListParams,
|
|
@@ -51,7 +50,7 @@ export class Metrics extends APIResource {
|
|
|
51
50
|
}
|
|
52
51
|
|
|
53
52
|
/**
|
|
54
|
-
* This endpoint is used to list [metrics](
|
|
53
|
+
* This endpoint is used to list [metrics](/core-concepts#metric). It returns
|
|
55
54
|
* information about the metrics including its name, description, and item.
|
|
56
55
|
*/
|
|
57
56
|
fetch(metricId: string, options?: Core.RequestOptions): Core.APIPromise<BillableMetric> {
|
|
@@ -20,10 +20,10 @@ export class ExternalPlanID extends APIResource {
|
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
/**
|
|
23
|
-
* This endpoint is used to fetch [plan](
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
23
|
+
* This endpoint is used to fetch [plan](/core-concepts##plan-and-price) details
|
|
24
|
+
* given an external_plan_id identifier. It returns information about the prices
|
|
25
|
+
* included in the plan and their configuration, as well as the product that the
|
|
26
|
+
* plan is attached to.
|
|
27
27
|
*
|
|
28
28
|
* If multiple plans are found to contain the specified external_plan_id, the
|
|
29
29
|
* active plans will take priority over archived ones, and among those, the
|
|
@@ -32,10 +32,10 @@ export class ExternalPlanID extends APIResource {
|
|
|
32
32
|
* ## Serialized prices
|
|
33
33
|
*
|
|
34
34
|
* Orb supports a few different pricing models out of the box. Each of these models
|
|
35
|
-
* is serialized differently in a given [Price](
|
|
35
|
+
* is serialized differently in a given [Price](/core-concepts#plan-and-price)
|
|
36
36
|
* object. The `model_type` field determines the key for the configuration object
|
|
37
37
|
* that is present. A detailed explanation of price types can be found in the
|
|
38
|
-
* [Price schema](
|
|
38
|
+
* [Price schema](/core-concepts#plan-and-price). "
|
|
39
39
|
*/
|
|
40
40
|
fetch(externalPlanId: string, options?: Core.RequestOptions): Core.APIPromise<PlansAPI.Plan> {
|
|
41
41
|
return this._client.get(`/plans/external_plan_id/${externalPlanId}`, options);
|
|
@@ -30,11 +30,11 @@ export class Plans extends APIResource {
|
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
/**
|
|
33
|
-
* This endpoint returns a list of all [plans](
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
* [`pagination_metadata`](
|
|
37
|
-
* the next page of results if they exist.
|
|
33
|
+
* This endpoint returns a list of all [plans](/core-concepts#plan-and-price) for
|
|
34
|
+
* an account in a list format. The list of plans is ordered starting from the most
|
|
35
|
+
* recently created plan. The response also includes
|
|
36
|
+
* [`pagination_metadata`](/api-reference/pagination), which lets the caller
|
|
37
|
+
* retrieve the next page of results if they exist.
|
|
38
38
|
*/
|
|
39
39
|
list(query?: PlanListParams, options?: Core.RequestOptions): Core.PagePromise<PlansPage, Plan>;
|
|
40
40
|
list(options?: Core.RequestOptions): Core.PagePromise<PlansPage, Plan>;
|
|
@@ -49,18 +49,18 @@ export class Plans extends APIResource {
|
|
|
49
49
|
}
|
|
50
50
|
|
|
51
51
|
/**
|
|
52
|
-
* This endpoint is used to fetch [plan](
|
|
53
|
-
*
|
|
54
|
-
*
|
|
55
|
-
*
|
|
52
|
+
* This endpoint is used to fetch [plan](/core-concepts#plan-and-price) details
|
|
53
|
+
* given a plan identifier. It returns information about the prices included in the
|
|
54
|
+
* plan and their configuration, as well as the product that the plan is attached
|
|
55
|
+
* to.
|
|
56
56
|
*
|
|
57
57
|
* ## Serialized prices
|
|
58
58
|
*
|
|
59
59
|
* Orb supports a few different pricing models out of the box. Each of these models
|
|
60
|
-
* is serialized differently in a given [Price](
|
|
60
|
+
* is serialized differently in a given [Price](/core-concepts#plan-and-price)
|
|
61
61
|
* object. The `model_type` field determines the key for the configuration object
|
|
62
62
|
* that is present. A detailed explanation of price types can be found in the
|
|
63
|
-
* [Price schema](
|
|
63
|
+
* [Price schema](/core-concepts#plan-and-price).
|
|
64
64
|
*
|
|
65
65
|
* ## Phases
|
|
66
66
|
*
|
|
@@ -75,9 +75,9 @@ export class Plans extends APIResource {
|
|
|
75
75
|
export class PlansPage extends Page<Plan> {}
|
|
76
76
|
|
|
77
77
|
/**
|
|
78
|
-
* The [Plan](
|
|
79
|
-
*
|
|
80
|
-
*
|
|
78
|
+
* The [Plan](/core-concepts#plan-and-price) resource represents a plan that can be
|
|
79
|
+
* subscribed to by a customer. Plans define the billing behavior of the
|
|
80
|
+
* subscription. You can see more about how to configure prices in the
|
|
81
81
|
* [Price resource](/reference/price).
|
|
82
82
|
*/
|
|
83
83
|
export interface Plan {
|
|
@@ -106,7 +106,7 @@ export interface Plan {
|
|
|
106
106
|
created_at: string;
|
|
107
107
|
|
|
108
108
|
/**
|
|
109
|
-
* @deprecated
|
|
109
|
+
* @deprecated An ISO 4217 currency string or custom pricing unit (`credits`) for
|
|
110
110
|
* this plan's prices.
|
|
111
111
|
*/
|
|
112
112
|
currency: string;
|
|
@@ -20,8 +20,8 @@ export class ExternalPriceID extends APIResource {
|
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
22
|
* This endpoint returns a price given an external price id. See the
|
|
23
|
-
* [price creation API](
|
|
24
|
-
* external price aliases.
|
|
23
|
+
* [price creation API](/api-reference/price/create-price) for more information
|
|
24
|
+
* about external price aliases.
|
|
25
25
|
*/
|
|
26
26
|
fetch(externalPriceId: string, options?: Core.RequestOptions): Core.APIPromise<PricesAPI.Price> {
|
|
27
27
|
return this._client.get(`/prices/external_price_id/${externalPriceId}`, options);
|