revenuecat-api 1.0.3 → 1.1.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.
@@ -229,6 +229,31 @@ export interface paths {
229
229
  patch?: never;
230
230
  trace?: never;
231
231
  };
232
+ "/projects/{project_id}/products/{product_id}/create_in_store": {
233
+ parameters: {
234
+ query?: never;
235
+ header?: never;
236
+ path?: never;
237
+ cookie?: never;
238
+ };
239
+ get?: never;
240
+ put?: never;
241
+ /**
242
+ * Push a product to the store
243
+ * @description Push a product to the App Store.
244
+ *
245
+ * **For subscription products**: You must provide store information including duration and subscription group details.
246
+ *
247
+ * **For in-app purchase products** (consumable, non-consumable, non-renewing subscription): No request body is required.
248
+ * This endpoint requires the following permission(s): <code>project_configuration:products:read_write</code>.
249
+ */
250
+ post: operations["create-product-in-store"];
251
+ delete?: never;
252
+ options?: never;
253
+ head?: never;
254
+ patch?: never;
255
+ trace?: never;
256
+ };
232
257
  "/projects/{project_id}/products": {
233
258
  parameters: {
234
259
  query?: never;
@@ -819,6 +844,66 @@ export interface paths {
819
844
  patch?: never;
820
845
  trace?: never;
821
846
  };
847
+ "/projects/{project_id}/customers/{customer_id}/virtual_currencies": {
848
+ parameters: {
849
+ query?: never;
850
+ header?: never;
851
+ path?: never;
852
+ cookie?: never;
853
+ };
854
+ /**
855
+ * Get a list of customer's virtual currencies balances
856
+ * @description This endpoint requires the following permission(s): <code>customer_information:purchases:read</code>.
857
+ */
858
+ get: operations["list-virtual-currencies-balances"];
859
+ put?: never;
860
+ post?: never;
861
+ delete?: never;
862
+ options?: never;
863
+ head?: never;
864
+ patch?: never;
865
+ trace?: never;
866
+ };
867
+ "/projects/{project_id}/customers/{customer_id}/virtual_currencies/transactions": {
868
+ parameters: {
869
+ query?: never;
870
+ header?: never;
871
+ path?: never;
872
+ cookie?: never;
873
+ };
874
+ get?: never;
875
+ put?: never;
876
+ /**
877
+ * Create a virtual currencies transaction
878
+ * @description This endpoint requires the following permission(s): <code>customer_information:purchases:read_write</code>.
879
+ */
880
+ post: operations["create-virtual-currencies-transaction"];
881
+ delete?: never;
882
+ options?: never;
883
+ head?: never;
884
+ patch?: never;
885
+ trace?: never;
886
+ };
887
+ "/projects/{project_id}/customers/{customer_id}/virtual_currencies/update_balance": {
888
+ parameters: {
889
+ query?: never;
890
+ header?: never;
891
+ path?: never;
892
+ cookie?: never;
893
+ };
894
+ get?: never;
895
+ put?: never;
896
+ /**
897
+ * Update a virtual currencies balance without creating a transaction
898
+ * @description This endpoint requires the following permission(s): <code>customer_information:purchases:read_write</code>.
899
+ */
900
+ post: operations["update-virtual-currencies-balance"];
901
+ delete?: never;
902
+ options?: never;
903
+ head?: never;
904
+ patch?: never;
905
+ trace?: never;
906
+ };
822
907
  "/projects/{project_id}/customers/{customer_id}/attributes": {
823
908
  parameters: {
824
909
  query?: never;
@@ -970,6 +1055,8 @@ export interface components {
970
1055
  };
971
1056
  };
972
1057
  App: {
1058
+ [key: string]: unknown;
1059
+ } & ({
973
1060
  /**
974
1061
  * @description String representing the object's type. Objects of the same type share the same value.
975
1062
  * @enum {string}
@@ -999,7 +1086,7 @@ export interface components {
999
1086
  * @example proj1a2b3c4
1000
1087
  */
1001
1088
  project_id: string;
1002
- } & components["schemas"]["AmazonApp"] & components["schemas"]["AppStoreApp"] & components["schemas"]["MacAppStoreApp"] & components["schemas"]["PlayStoreApp"] & components["schemas"]["StripeApp"] & components["schemas"]["RCBillingApp"] & components["schemas"]["RokuApp"] & components["schemas"]["PaddleApp"];
1089
+ } & components["schemas"]["AmazonApp"] & components["schemas"]["AppStoreApp"] & components["schemas"]["MacAppStoreApp"] & components["schemas"]["PlayStoreApp"] & components["schemas"]["StripeApp"] & components["schemas"]["RCBillingApp"] & components["schemas"]["RokuApp"] & components["schemas"]["PaddleApp"]);
1003
1090
  AppCreate: {
1004
1091
  /** @description The name of the app */
1005
1092
  name: string;
@@ -1053,13 +1140,26 @@ export interface components {
1053
1140
  * @example US
1054
1141
  * @enum {string|null}
1055
1142
  */
1056
- Country: null | "AF" | "AL" | "DZ" | "AS" | "AD" | "AO" | "AI" | "AQ" | "AG" | "AR" | "AM" | "AW" | "AU" | "AT" | "AZ" | "BS" | "BH" | "BD" | "BB" | "BY" | "BE" | "BZ" | "BJ" | "BM" | "BT" | "BO" | "BQ" | "BA" | "BW" | "BV" | "BR" | "IO" | "BN" | "BG" | "BF" | "BI" | "CV" | "KH" | "CM" | "CA" | "KY" | "CF" | "TD" | "CL" | "CN" | "CX" | "CC" | "CO" | "KM" | "CD" | "CG" | "CK" | "CR" | "HR" | "CU" | "CW" | "CY" | "CZ" | "CI" | "DK" | "DJ" | "DM" | "DO" | "EC" | "EG" | "SV" | "GQ" | "ER" | "EE" | "SZ" | "ET" | "FK" | "FO" | "FJ" | "FI" | "FR" | "GF" | "PF" | "TF" | "GA" | "GM" | "GE" | "DE" | "GH" | "GI" | "GR" | "GL" | "GD" | "GP" | "GU" | "GT" | "GG" | "GN" | "GW" | "GY" | "HT" | "HM" | "VA" | "HN" | "HK" | "HU" | "IS" | "IN" | "ID" | "IR" | "IQ" | "IE" | "IM" | "IL" | "IT" | "JM" | "JP" | "JE" | "JO" | "KZ" | "KE" | "KI" | "KP" | "KR" | "KW" | "KG" | "LA" | "LV" | "LB" | "LS" | "LR" | "LY" | "LI" | "LT" | "LU" | "MO" | "MG" | "MW" | "MY" | "MV" | "ML" | "MT" | "MH" | "MQ" | "MR" | "MU" | "YT" | "MX" | "FM" | "MD" | "MC" | "MN" | "ME" | "MS" | "MA" | "MZ" | "MM" | "NA" | "NR" | "NP" | "NL" | "NC" | "NZ" | "NI" | "NE" | "NG" | "NU" | "NF" | "MP" | "NO" | "OM" | "PK" | "PW" | "PS" | "PA" | "PG" | "PY" | "PE" | "PH" | "PN" | "PL" | "PT" | "PR" | "QA" | "MK" | "RO" | "RU" | "RW" | "RE" | "BL" | "SH" | "KN" | "LC" | "MF" | "PM" | "VC" | "WS" | "SM" | "ST" | "SA" | "SN" | "RS" | "SC" | "SL" | "SG" | "SX" | "SK" | "SI" | "SB" | "SO" | "ZA" | "GS" | "SS" | "ES" | "LK" | "SD" | "SR" | "SJ" | "SE" | "CH" | "SY" | "TW" | "TJ" | "TZ" | "TH" | "TL" | "TG" | "TK" | "TO" | "TT" | "TN" | "TR" | "TM" | "TC" | "TV" | "UG" | "UA" | "AE" | "GB" | "UM" | "US" | "UY" | "UZ" | "VU" | "VE" | "VN" | "VG" | "VI" | "WF" | "EH" | "YE" | "ZM" | "ZW" | "AX";
1143
+ Country: string | null;
1144
+ /** @description In-app purchase products do not require any additional information */
1145
+ CreateAppStoreConnectInAppPurchaseInput: Record<string, never>;
1146
+ CreateAppStoreConnectSubscriptionInput: {
1147
+ /**
1148
+ * @description The subscription duration period
1149
+ * @enum {string}
1150
+ */
1151
+ duration: "ONE_WEEK" | "ONE_MONTH" | "TWO_MONTHS" | "THREE_MONTHS" | "SIX_MONTHS" | "ONE_YEAR";
1152
+ /** @description The name of the subscription group */
1153
+ subscription_group_name: string;
1154
+ /** @description The ID of the subscription group (optional) */
1155
+ subscription_group_id?: string | null;
1156
+ };
1057
1157
  /**
1058
1158
  * @description ISO 4217 currency code
1059
1159
  * @example USD
1060
1160
  * @enum {string}
1061
1161
  */
1062
- Currency: "AED" | "AFN" | "ALL" | "AMD" | "ANG" | "AOA" | "ARS" | "AUD" | "AWG" | "AZN" | "BAM" | "BBD" | "BDT" | "BGN" | "BHD" | "BIF" | "BMD" | "BND" | "BOB" | "BRL" | "BSD" | "BTC" | "BTN" | "BWP" | "BYN" | "BZD" | "CAD" | "CDF" | "CHF" | "CLF" | "CLP" | "CNH" | "CNY" | "COP" | "CRC" | "CUC" | "CUP" | "CVE" | "CZK" | "DJF" | "DKK" | "DOP" | "DZD" | "EGP" | "ERN" | "ETB" | "EUR" | "FJD" | "FKP" | "GBP" | "GEL" | "GGP" | "GHS" | "GIP" | "GMD" | "GNF" | "GTQ" | "GYD" | "HKD" | "HNL" | "HRK" | "HTG" | "HUF" | "IDR" | "ILS" | "IMP" | "INR" | "IQD" | "IRR" | "ISK" | "JEP" | "JMD" | "JOD" | "JPY" | "KES" | "KGS" | "KHR" | "KMF" | "KPW" | "KRW" | "KWD" | "KYD" | "KZT" | "LAK" | "LBP" | "LKR" | "LRD" | "LSL" | "LYD" | "MAD" | "MDL" | "MGA" | "MKD" | "MMK" | "MNT" | "MOP" | "MRU" | "MUR" | "MVR" | "MWK" | "MXN" | "MYR" | "MZN" | "NAD" | "NGN" | "NIO" | "NOK" | "NPR" | "NZD" | "OMR" | "PAB" | "PEN" | "PGK" | "PHP" | "PKR" | "PLN" | "PYG" | "QAR" | "RON" | "RSD" | "RUB" | "RWF" | "SAR" | "SBD" | "SCR" | "SDG" | "SEK" | "SGD" | "SHP" | "SLL" | "SOS" | "SRD" | "SSP" | "STD" | "STN" | "SVC" | "SYP" | "SZL" | "THB" | "TJS" | "TMT" | "TND" | "TOP" | "TRY" | "TTD" | "TWD" | "TZS" | "UAH" | "UGX" | "USD" | "UYU" | "UZS" | "VEF" | "VES" | "VND" | "VUV" | "WST" | "XAF" | "XAG" | "XAU" | "XCD" | "XDR" | "XOF" | "XPD" | "XPF" | "XPT" | "YER" | "ZAR" | "ZMW" | "ZWL";
1162
+ Currency: string;
1063
1163
  Customer: {
1064
1164
  /**
1065
1165
  * @description String representing the object's type. Objects of the same type share the same value.
@@ -1154,7 +1254,7 @@ export interface components {
1154
1254
  * @example $email
1155
1255
  * @enum {string}
1156
1256
  */
1157
- CustomerAttributeReservedName: "$ad" | "$adGroup" | "$adjustId" | "$airshipChannelId" | "$amazonAdId" | "$amplitudeDeviceId" | "$amplitudeUserId" | "$appleRefundHandlingPreference" | "$apnsTokens" | "$appsflyerId" | "$appsflyerSharingFilter" | "$attConsentStatus" | "$branchId" | "$brazeAliasLabel" | "$brazeAliasName" | "$campaign" | "$clevertapId" | "$creative" | "$customerioId" | "$displayName" | "$email" | "$fbAnonId" | "$fcmTokens" | "$firebaseAppInstanceId" | "$gpsAdId" | "$idfa" | "$idfv" | "$ip" | "$iterableCampaignId" | "$iterableTemplateId" | "$iterableUserId" | "$keyword" | "$kochavaDeviceId" | "$mediaSource" | "$mixpanelDistinctId" | "$mparticleId" | "$onesignalId" | "$onesignalUserId" | "$phoneNumber" | "$posthogUserId" | "$telemetryDeckUserId" | "$telemetryDeckAppId" | "telemetry_deck_user_id" | "telemetry_deck_app_id" | "$segmentId" | "$tenjinId" | "$deviceVersion";
1257
+ CustomerAttributeReservedName: string;
1158
1258
  CustomerEntitlement: {
1159
1259
  /**
1160
1260
  * @description String representing the object's type. Objects of the same type share the same value.
@@ -1251,7 +1351,7 @@ export interface components {
1251
1351
  * @example production
1252
1352
  * @enum {string}
1253
1353
  */
1254
- Environment: "production" | "sandbox";
1354
+ Environment: string;
1255
1355
  Error: {
1256
1356
  /**
1257
1357
  * @description String representing the object's type. Objects of the same type share the same value.
@@ -1671,6 +1771,26 @@ export interface components {
1671
1771
  */
1672
1772
  url: string;
1673
1773
  };
1774
+ /** VirtualCurrenciesBalancesList */
1775
+ ListVirtualCurrenciesBalances: {
1776
+ /**
1777
+ * @description String representing the object's type. Objects of the same type share the same value.
1778
+ * @enum {string}
1779
+ */
1780
+ object: "list";
1781
+ /** @description Details about each object. */
1782
+ items: components["schemas"]["VirtualCurrencyBalance"][];
1783
+ /**
1784
+ * @description URL to access the next page of the customer's balances. If not present / null, there is no next page
1785
+ * @example /v2/projects/proj1ab2c3d4/customers/19b8de26-77c1-49f1-aa18-019a391603e2/virtual_currencies?starting_after=9fjeja8fjed
1786
+ */
1787
+ next_page: string | null;
1788
+ /**
1789
+ * @description The URL where this list can be accessed.
1790
+ * @example /v2/projects/proj1ab2c3d4/customers/19b8de26-77c1-49f1-aa18-019a391603e2/virtual_currencies
1791
+ */
1792
+ url: string;
1793
+ };
1674
1794
  MacAppStoreApp: {
1675
1795
  /** @description Legacy Mac App Store type details */
1676
1796
  mac_app_store?: {
@@ -1847,7 +1967,7 @@ export interface components {
1847
1967
  * @example purchased
1848
1968
  * @enum {string}
1849
1969
  */
1850
- Ownership: "purchased" | "family_shared";
1970
+ Ownership: string;
1851
1971
  Package: {
1852
1972
  /**
1853
1973
  * @description String representing the object's type. Objects of the same type share the same value.
@@ -1927,10 +2047,13 @@ export interface components {
1927
2047
  /** @description Paddle Server-side API key provided on the Paddle dashboard. */
1928
2048
  paddle_api_key?: string | null;
1929
2049
  /**
1930
- * @description Whether the app is tied to the sandbox environment.
2050
+ * @description [Deprecated] Whether the app is tied to the sandbox environment.
2051
+ * This field is deprecated and will be removed in the future.
2052
+ * The environment is determined by the `paddle_api_key` format.
2053
+ *
1931
2054
  * @example true
1932
2055
  */
1933
- paddle_is_sandbox?: boolean;
2056
+ paddle_is_sandbox?: boolean | null;
1934
2057
  } | null;
1935
2058
  };
1936
2059
  Paywall: {
@@ -2023,7 +2146,7 @@ export interface components {
2023
2146
  display_name: string | null;
2024
2147
  };
2025
2148
  /** @enum {string} */
2026
- ProductType: "subscription" | "one_time" | "consumable" | "non_consumable" | "non_renewing_subscription";
2149
+ ProductType: string;
2027
2150
  /** ProductsFromEntitlementList */
2028
2151
  ProductsFromEntitlement: {
2029
2152
  /**
@@ -2247,7 +2370,7 @@ export interface components {
2247
2370
  * @example USD
2248
2371
  * @enum {string}
2249
2372
  */
2250
- RCBillingCurrency: "AUD" | "CAD" | "EUR" | "GBP" | "JPY" | "USD";
2373
+ RCBillingCurrency: string;
2251
2374
  RokuApp: {
2252
2375
  /** @description Roku Channel Store type details */
2253
2376
  roku?: {
@@ -2280,6 +2403,28 @@ export interface components {
2280
2403
  [key: string]: unknown;
2281
2404
  };
2282
2405
  };
2406
+ StoreProduct: {
2407
+ /**
2408
+ * @description String representing the object's type. Objects of the same type share the same value.
2409
+ * @enum {string}
2410
+ */
2411
+ object: "store_product";
2412
+ /**
2413
+ * @description The unique identifier of the product in the store (e.g., App Store Connect product ID)
2414
+ * @example 1234567890
2415
+ */
2416
+ id: string;
2417
+ /**
2418
+ * @description The name of the store product
2419
+ * @example Premium Monthly Subscription
2420
+ */
2421
+ name?: string | null;
2422
+ /**
2423
+ * @description The product identifier used in the store
2424
+ * @example com.example.premium_monthly
2425
+ */
2426
+ product_identifier: string;
2427
+ };
2283
2428
  StripeApp: {
2284
2429
  /** @description Stripe type details */
2285
2430
  stripe?: {
@@ -2338,6 +2483,12 @@ export interface components {
2338
2483
  * @example 1658399423658
2339
2484
  */
2340
2485
  current_period_ends_at: number | null;
2486
+ /**
2487
+ * Format: int64
2488
+ * @description The date when the latest subscription billing period is expected to end in ms since epoch. It will only be different from `current_period_ends_at` if `auto_renewal_status` is `has_already_renewed`, in which case it indicates the end of the next billing period. Can be null if the subscription is paused until an indefinite date.
2489
+ * @example 1658399423658
2490
+ */
2491
+ ends_at: number | null;
2341
2492
  /**
2342
2493
  * @description Determines whether the customer should currently be provided access to the entitlements associated with the subscription
2343
2494
  * @example true
@@ -2459,6 +2610,22 @@ export interface components {
2459
2610
  /** @description The target customer after the transfer */
2460
2611
  target_customer: components["schemas"]["Customer"];
2461
2612
  };
2613
+ /** VirtualCurrencyBalance */
2614
+ VirtualCurrencyBalance: {
2615
+ /**
2616
+ * @description String representing the object's type. Objects of the same type share the same value.
2617
+ * @enum {string}
2618
+ */
2619
+ object: "virtual_currency_balance";
2620
+ /** @description The code of the virtual currency. */
2621
+ currency_code: string;
2622
+ /** @description The balance of the virtual currency. */
2623
+ balance: number;
2624
+ /** @description The description of the virtual currency. */
2625
+ description?: string;
2626
+ /** @description The name of the virtual currency. */
2627
+ name?: string;
2628
+ };
2462
2629
  };
2463
2630
  responses: {
2464
2631
  /** @description Bad request */
@@ -3297,6 +3464,55 @@ export interface operations {
3297
3464
  503: components["responses"]["InternalError"];
3298
3465
  };
3299
3466
  };
3467
+ "create-product-in-store": {
3468
+ parameters: {
3469
+ query?: never;
3470
+ header?: never;
3471
+ path: {
3472
+ /** @description ID of the project */
3473
+ project_id: string;
3474
+ /** @description ID of the product */
3475
+ product_id: string;
3476
+ };
3477
+ cookie?: never;
3478
+ };
3479
+ /** @description Store-specific information. Only required for subscription products.
3480
+ * For in-app purchase products, send an empty body or omit the request body entirely.
3481
+ * */
3482
+ requestBody?: {
3483
+ content: {
3484
+ "application/json": {
3485
+ /** @description Store-specific information for creating the product in the store */
3486
+ store_information?: components["schemas"]["CreateAppStoreConnectSubscriptionInput"] | components["schemas"]["CreateAppStoreConnectInAppPurchaseInput"];
3487
+ };
3488
+ };
3489
+ };
3490
+ responses: {
3491
+ /** @description Success. The product was pushed to the store */
3492
+ 201: {
3493
+ headers: {
3494
+ "RevenueCat-Rate-Limit-Current-Usage": components["headers"]["RateLimitCurrentUsage"];
3495
+ "RevenueCat-Rate-Limit-Current-Limit": components["headers"]["RateLimitCurrentLimit"];
3496
+ [name: string]: unknown;
3497
+ };
3498
+ content: {
3499
+ "application/json": {
3500
+ created_product: components["schemas"]["StoreProduct"];
3501
+ };
3502
+ };
3503
+ };
3504
+ 400: components["responses"]["BadRequest"];
3505
+ 401: components["responses"]["Unauthorized"];
3506
+ 403: components["responses"]["Forbidden"];
3507
+ 404: components["responses"]["NotFound"];
3508
+ 409: components["responses"]["Conflict"];
3509
+ 422: components["responses"]["UnprocessableEntity"];
3510
+ 423: components["responses"]["Locked"];
3511
+ 429: components["responses"]["RateLimited"];
3512
+ 500: components["responses"]["InternalError"];
3513
+ 503: components["responses"]["InternalError"];
3514
+ };
3515
+ };
3300
3516
  "list-products": {
3301
3517
  parameters: {
3302
3518
  query?: {
@@ -4834,6 +5050,151 @@ export interface operations {
4834
5050
  503: components["responses"]["InternalError"];
4835
5051
  };
4836
5052
  };
5053
+ "list-virtual-currencies-balances": {
5054
+ parameters: {
5055
+ query?: {
5056
+ include_empty_balances?: boolean;
5057
+ starting_after?: string;
5058
+ limit?: number;
5059
+ };
5060
+ header?: never;
5061
+ path: {
5062
+ /** @description ID of the project */
5063
+ project_id: string;
5064
+ /** @description ID of the customer */
5065
+ customer_id: string;
5066
+ };
5067
+ cookie?: never;
5068
+ };
5069
+ requestBody?: never;
5070
+ responses: {
5071
+ /** @description Success */
5072
+ 200: {
5073
+ headers: {
5074
+ "RevenueCat-Rate-Limit-Current-Usage": components["headers"]["RateLimitCurrentUsage"];
5075
+ "RevenueCat-Rate-Limit-Current-Limit": components["headers"]["RateLimitCurrentLimit"];
5076
+ [name: string]: unknown;
5077
+ };
5078
+ content: {
5079
+ "application/json": components["schemas"]["ListVirtualCurrenciesBalances"];
5080
+ };
5081
+ };
5082
+ 400: components["responses"]["BadRequest"];
5083
+ 401: components["responses"]["Unauthorized"];
5084
+ 403: components["responses"]["Forbidden"];
5085
+ 404: components["responses"]["NotFound"];
5086
+ 423: components["responses"]["Locked"];
5087
+ 429: components["responses"]["RateLimited"];
5088
+ 500: components["responses"]["InternalError"];
5089
+ 503: components["responses"]["InternalError"];
5090
+ };
5091
+ };
5092
+ "create-virtual-currencies-transaction": {
5093
+ parameters: {
5094
+ query?: {
5095
+ include_empty_balances?: boolean;
5096
+ };
5097
+ header?: {
5098
+ /** @description This is an optional idempotency key to ensure exactly once execution of the request. */
5099
+ "Idempotency-Key"?: string;
5100
+ };
5101
+ path: {
5102
+ /** @description ID of the project */
5103
+ project_id: string;
5104
+ /** @description ID of the customer */
5105
+ customer_id: string;
5106
+ };
5107
+ cookie?: never;
5108
+ };
5109
+ requestBody: {
5110
+ content: {
5111
+ "application/json": {
5112
+ /** @description The adjustments to the virtual currencies */
5113
+ adjustments: {
5114
+ [key: string]: number;
5115
+ };
5116
+ /** @description The reference of the transaction */
5117
+ reference?: string | null;
5118
+ };
5119
+ };
5120
+ };
5121
+ responses: {
5122
+ /** @description Success */
5123
+ 200: {
5124
+ headers: {
5125
+ "RevenueCat-Rate-Limit-Current-Usage": components["headers"]["RateLimitCurrentUsage"];
5126
+ "RevenueCat-Rate-Limit-Current-Limit": components["headers"]["RateLimitCurrentLimit"];
5127
+ [name: string]: unknown;
5128
+ };
5129
+ content: {
5130
+ "application/json": components["schemas"]["ListVirtualCurrenciesBalances"];
5131
+ };
5132
+ };
5133
+ 400: components["responses"]["BadRequest"];
5134
+ 401: components["responses"]["Unauthorized"];
5135
+ 403: components["responses"]["Forbidden"];
5136
+ 404: components["responses"]["NotFound"];
5137
+ 409: components["responses"]["Conflict"];
5138
+ 422: components["responses"]["UnprocessableEntity"];
5139
+ 423: components["responses"]["Locked"];
5140
+ 429: components["responses"]["RateLimited"];
5141
+ 500: components["responses"]["InternalError"];
5142
+ 503: components["responses"]["InternalError"];
5143
+ };
5144
+ };
5145
+ "update-virtual-currencies-balance": {
5146
+ parameters: {
5147
+ query?: {
5148
+ include_empty_balances?: boolean;
5149
+ };
5150
+ header?: {
5151
+ /** @description This is an optional idempotency key to ensure exactly once execution of the request. */
5152
+ "Idempotency-Key"?: string;
5153
+ };
5154
+ path: {
5155
+ /** @description ID of the project */
5156
+ project_id: string;
5157
+ /** @description ID of the customer */
5158
+ customer_id: string;
5159
+ };
5160
+ cookie?: never;
5161
+ };
5162
+ requestBody: {
5163
+ content: {
5164
+ "application/json": {
5165
+ /** @description The adjustments to the virtual currencies */
5166
+ adjustments: {
5167
+ [key: string]: number;
5168
+ };
5169
+ /** @description The reference of the transaction */
5170
+ reference?: string | null;
5171
+ };
5172
+ };
5173
+ };
5174
+ responses: {
5175
+ /** @description Success */
5176
+ 200: {
5177
+ headers: {
5178
+ "RevenueCat-Rate-Limit-Current-Usage": components["headers"]["RateLimitCurrentUsage"];
5179
+ "RevenueCat-Rate-Limit-Current-Limit": components["headers"]["RateLimitCurrentLimit"];
5180
+ [name: string]: unknown;
5181
+ };
5182
+ content: {
5183
+ "application/json": components["schemas"]["ListVirtualCurrenciesBalances"];
5184
+ };
5185
+ };
5186
+ 400: components["responses"]["BadRequest"];
5187
+ 401: components["responses"]["Unauthorized"];
5188
+ 403: components["responses"]["Forbidden"];
5189
+ 404: components["responses"]["NotFound"];
5190
+ 409: components["responses"]["Conflict"];
5191
+ 422: components["responses"]["UnprocessableEntity"];
5192
+ 423: components["responses"]["Locked"];
5193
+ 429: components["responses"]["RateLimited"];
5194
+ 500: components["responses"]["InternalError"];
5195
+ 503: components["responses"]["InternalError"];
5196
+ };
5197
+ };
4837
5198
  "list-customer-attributes": {
4838
5199
  parameters: {
4839
5200
  query?: {
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import createClient, { type ClientOptions } from "openapi-fetch";
2
- import type { paths } from "./__generated/revenuecat-api-v2";
3
- export type { paths };
2
+ import type { paths, components } from "./__generated/revenuecat-api-v2";
3
+ export type { paths, components };
4
4
  export type CreateRevenueCatClientOptions = ClientOptions & {
5
5
  automaticRateLimit?: boolean;
6
6
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,EAAE,EACnB,KAAK,aAAa,EAEnB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAG7D,YAAY,EAAE,KAAK,EAAE,CAAC;AAEtB,MAAM,MAAM,6BAA6B,GAAG,aAAa,GAAG;IAC1D,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,CAAC;AAOF,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,6BAA6B,8DA2BxC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,EAAE,EACnB,KAAK,aAAa,EAEnB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAGzE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;AAElC,MAAM,MAAM,6BAA6B,GAAG,aAAa,GAAG;IAC1D,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,CAAC;AAOF,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,6BAA6B,8DA2BxC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "revenuecat-api",
3
- "version": "1.0.3",
3
+ "version": "1.1.0",
4
4
  "description": "Type-safe RevenueCat API client using fetch with automatic rate limiting",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -19,16 +19,16 @@
19
19
  "url": "git+https://github.com/idolize/revenuecat-api.git"
20
20
  },
21
21
  "dependencies": {
22
- "openapi-fetch": "^0.14.0"
22
+ "openapi-fetch": "^0.14.1"
23
23
  },
24
24
  "devDependencies": {
25
- "@eslint/js": "^9.30.1",
26
- "@types/node": "^24.0.13",
27
- "eslint": "^9.30.1",
28
- "globals": "^16.3.0",
29
- "openapi-typescript": "^7.8.0",
30
- "typescript": "^5.8.3",
31
- "typescript-eslint": "^8.36.0",
25
+ "@eslint/js": "^9.37.0",
26
+ "@types/node": "^24.7.1",
27
+ "eslint": "^9.37.0",
28
+ "globals": "^16.4.0",
29
+ "openapi-typescript": "^7.9.1",
30
+ "typescript": "^5.9.3",
31
+ "typescript-eslint": "^8.46.0",
32
32
  "vitest": "^3.2.4"
33
33
  },
34
34
  "scripts": {