@metronome/sdk 0.2.0 → 1.0.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.
Files changed (808) hide show
  1. package/CHANGELOG.md +62 -0
  2. package/README.md +123 -51
  3. package/api-promise.d.mts +2 -0
  4. package/api-promise.d.mts.map +1 -0
  5. package/api-promise.d.ts +2 -0
  6. package/api-promise.d.ts.map +1 -0
  7. package/api-promise.js +6 -0
  8. package/api-promise.js.map +1 -0
  9. package/api-promise.mjs +2 -0
  10. package/api-promise.mjs.map +1 -0
  11. package/bin/cli +53 -0
  12. package/bin/migration-config.json +6 -0
  13. package/client.d.mts +232 -0
  14. package/client.d.mts.map +1 -0
  15. package/client.d.ts +232 -0
  16. package/client.d.ts.map +1 -0
  17. package/client.js +464 -0
  18. package/client.js.map +1 -0
  19. package/client.mjs +460 -0
  20. package/client.mjs.map +1 -0
  21. package/core/api-promise.d.mts +46 -0
  22. package/core/api-promise.d.mts.map +1 -0
  23. package/core/api-promise.d.ts +46 -0
  24. package/core/api-promise.d.ts.map +1 -0
  25. package/core/api-promise.js +74 -0
  26. package/core/api-promise.js.map +1 -0
  27. package/core/api-promise.mjs +70 -0
  28. package/core/api-promise.mjs.map +1 -0
  29. package/core/error.d.mts +46 -0
  30. package/core/error.d.mts.map +1 -0
  31. package/core/error.d.ts +46 -0
  32. package/core/error.d.ts.map +1 -0
  33. package/core/error.js +113 -0
  34. package/core/error.js.map +1 -0
  35. package/core/error.mjs +97 -0
  36. package/core/error.mjs.map +1 -0
  37. package/core/pagination.d.mts +137 -0
  38. package/core/pagination.d.mts.map +1 -0
  39. package/core/pagination.d.ts +137 -0
  40. package/core/pagination.d.ts.map +1 -0
  41. package/core/pagination.js +158 -0
  42. package/core/pagination.js.map +1 -0
  43. package/core/pagination.mjs +150 -0
  44. package/core/pagination.mjs.map +1 -0
  45. package/core/resource.d.mts +6 -0
  46. package/core/resource.d.mts.map +1 -0
  47. package/core/resource.d.ts +6 -0
  48. package/core/resource.d.ts.map +1 -0
  49. package/core/resource.js +11 -0
  50. package/core/resource.js.map +1 -0
  51. package/core/resource.mjs +7 -0
  52. package/core/resource.mjs.map +1 -0
  53. package/core/uploads.d.mts +3 -0
  54. package/core/uploads.d.mts.map +1 -0
  55. package/core/uploads.d.ts +3 -0
  56. package/core/uploads.d.ts.map +1 -0
  57. package/core/uploads.js +6 -0
  58. package/core/uploads.js.map +1 -0
  59. package/core/uploads.mjs +2 -0
  60. package/core/uploads.mjs.map +1 -0
  61. package/error.d.mts +2 -0
  62. package/error.d.mts.map +1 -0
  63. package/error.d.ts +1 -46
  64. package/error.d.ts.map +1 -1
  65. package/error.js +3 -110
  66. package/error.js.map +1 -1
  67. package/error.mjs +1 -96
  68. package/error.mjs.map +1 -1
  69. package/index.d.mts +7 -144
  70. package/index.d.mts.map +1 -0
  71. package/index.d.ts +6 -143
  72. package/index.d.ts.map +1 -1
  73. package/index.js +14 -120
  74. package/index.js.map +1 -1
  75. package/index.mjs +6 -93
  76. package/index.mjs.map +1 -1
  77. package/internal/builtin-types.d.mts +73 -0
  78. package/internal/builtin-types.d.mts.map +1 -0
  79. package/internal/builtin-types.d.ts +73 -0
  80. package/internal/builtin-types.d.ts.map +1 -0
  81. package/internal/builtin-types.js +4 -0
  82. package/internal/builtin-types.js.map +1 -0
  83. package/internal/builtin-types.mjs +3 -0
  84. package/internal/builtin-types.mjs.map +1 -0
  85. package/internal/detect-platform.d.mts +15 -0
  86. package/internal/detect-platform.d.mts.map +1 -0
  87. package/internal/detect-platform.d.ts +15 -0
  88. package/internal/detect-platform.d.ts.map +1 -0
  89. package/internal/detect-platform.js +162 -0
  90. package/internal/detect-platform.js.map +1 -0
  91. package/internal/detect-platform.mjs +157 -0
  92. package/internal/detect-platform.mjs.map +1 -0
  93. package/internal/errors.d.mts +3 -0
  94. package/internal/errors.d.mts.map +1 -0
  95. package/internal/errors.d.ts +3 -0
  96. package/internal/errors.d.ts.map +1 -0
  97. package/internal/errors.js +41 -0
  98. package/internal/errors.js.map +1 -0
  99. package/internal/errors.mjs +36 -0
  100. package/internal/errors.mjs.map +1 -0
  101. package/internal/headers.d.mts +26 -0
  102. package/internal/headers.d.mts.map +1 -0
  103. package/internal/headers.d.ts +26 -0
  104. package/internal/headers.d.ts.map +1 -0
  105. package/internal/headers.js +120 -0
  106. package/internal/headers.js.map +1 -0
  107. package/internal/headers.mjs +112 -0
  108. package/internal/headers.mjs.map +1 -0
  109. package/internal/parse.d.mts +12 -0
  110. package/internal/parse.d.mts.map +1 -0
  111. package/internal/parse.d.ts +12 -0
  112. package/internal/parse.d.ts.map +1 -0
  113. package/internal/parse.js +35 -0
  114. package/internal/parse.js.map +1 -0
  115. package/internal/parse.mjs +32 -0
  116. package/internal/parse.mjs.map +1 -0
  117. package/internal/qs/formats.d.mts +7 -0
  118. package/internal/qs/formats.d.mts.map +1 -0
  119. package/internal/qs/formats.d.ts +1 -0
  120. package/internal/qs/formats.d.ts.map +1 -1
  121. package/internal/qs/formats.js +4 -2
  122. package/internal/qs/formats.js.map +1 -1
  123. package/internal/qs/formats.mjs +2 -1
  124. package/internal/qs/formats.mjs.map +1 -1
  125. package/internal/qs/index.d.mts +10 -0
  126. package/internal/qs/index.d.mts.map +1 -0
  127. package/internal/qs/index.d.ts.map +1 -1
  128. package/internal/qs/stringify.d.mts +3 -0
  129. package/internal/qs/stringify.d.mts.map +1 -0
  130. package/internal/qs/stringify.d.ts.map +1 -1
  131. package/internal/qs/stringify.js +16 -19
  132. package/internal/qs/stringify.js.map +1 -1
  133. package/internal/qs/stringify.mjs +17 -19
  134. package/internal/qs/stringify.mjs.map +1 -1
  135. package/internal/qs/types.d.mts +57 -0
  136. package/internal/qs/types.d.mts.map +1 -0
  137. package/internal/qs/utils.d.mts +15 -0
  138. package/internal/qs/utils.d.mts.map +1 -0
  139. package/internal/qs/utils.d.ts +1 -0
  140. package/internal/qs/utils.d.ts.map +1 -1
  141. package/internal/qs/utils.js +22 -21
  142. package/internal/qs/utils.js.map +1 -1
  143. package/internal/qs/utils.mjs +12 -12
  144. package/internal/qs/utils.mjs.map +1 -1
  145. package/internal/request-options.d.mts +75 -0
  146. package/internal/request-options.d.mts.map +1 -0
  147. package/internal/request-options.d.ts +75 -0
  148. package/internal/request-options.d.ts.map +1 -0
  149. package/internal/request-options.js +14 -0
  150. package/internal/request-options.js.map +1 -0
  151. package/internal/request-options.mjs +10 -0
  152. package/internal/request-options.mjs.map +1 -0
  153. package/internal/shim-types.d.mts +17 -0
  154. package/internal/shim-types.d.mts.map +1 -0
  155. package/internal/shim-types.d.ts +17 -0
  156. package/internal/shim-types.d.ts.map +1 -0
  157. package/internal/shim-types.js +4 -0
  158. package/internal/shim-types.js.map +1 -0
  159. package/internal/shim-types.mjs +3 -0
  160. package/internal/shim-types.mjs.map +1 -0
  161. package/internal/shims.d.mts +20 -0
  162. package/internal/shims.d.mts.map +1 -0
  163. package/internal/shims.d.ts +20 -0
  164. package/internal/shims.d.ts.map +1 -0
  165. package/internal/shims.js +92 -0
  166. package/internal/shims.js.map +1 -0
  167. package/internal/shims.mjs +85 -0
  168. package/internal/shims.mjs.map +1 -0
  169. package/internal/to-file.d.mts +45 -0
  170. package/internal/to-file.d.mts.map +1 -0
  171. package/internal/to-file.d.ts +45 -0
  172. package/internal/to-file.d.ts.map +1 -0
  173. package/internal/to-file.js +91 -0
  174. package/internal/to-file.js.map +1 -0
  175. package/internal/to-file.mjs +88 -0
  176. package/internal/to-file.mjs.map +1 -0
  177. package/internal/tslib.js +81 -0
  178. package/internal/tslib.mjs +17 -0
  179. package/internal/types.d.mts +69 -0
  180. package/internal/types.d.mts.map +1 -0
  181. package/internal/types.d.ts +69 -0
  182. package/internal/types.d.ts.map +1 -0
  183. package/internal/types.js +4 -0
  184. package/internal/types.js.map +1 -0
  185. package/internal/types.mjs +3 -0
  186. package/internal/types.mjs.map +1 -0
  187. package/internal/uploads.d.mts +42 -0
  188. package/internal/uploads.d.mts.map +1 -0
  189. package/internal/uploads.d.ts +42 -0
  190. package/internal/uploads.d.ts.map +1 -0
  191. package/internal/uploads.js +141 -0
  192. package/internal/uploads.js.map +1 -0
  193. package/internal/uploads.mjs +131 -0
  194. package/internal/uploads.mjs.map +1 -0
  195. package/internal/utils/base64.d.mts +3 -0
  196. package/internal/utils/base64.d.mts.map +1 -0
  197. package/internal/utils/base64.d.ts +3 -0
  198. package/internal/utils/base64.d.ts.map +1 -0
  199. package/internal/utils/base64.js +38 -0
  200. package/internal/utils/base64.js.map +1 -0
  201. package/internal/utils/base64.mjs +33 -0
  202. package/internal/utils/base64.mjs.map +1 -0
  203. package/internal/utils/bytes.d.mts +4 -0
  204. package/internal/utils/bytes.d.mts.map +1 -0
  205. package/internal/utils/bytes.d.ts +4 -0
  206. package/internal/utils/bytes.d.ts.map +1 -0
  207. package/internal/utils/bytes.js +31 -0
  208. package/internal/utils/bytes.js.map +1 -0
  209. package/internal/utils/bytes.mjs +26 -0
  210. package/internal/utils/bytes.mjs.map +1 -0
  211. package/internal/utils/env.d.mts +9 -0
  212. package/internal/utils/env.d.mts.map +1 -0
  213. package/internal/utils/env.d.ts +9 -0
  214. package/internal/utils/env.d.ts.map +1 -0
  215. package/internal/utils/env.js +22 -0
  216. package/internal/utils/env.js.map +1 -0
  217. package/internal/utils/env.mjs +18 -0
  218. package/internal/utils/env.mjs.map +1 -0
  219. package/internal/utils/log.d.mts +37 -0
  220. package/internal/utils/log.d.mts.map +1 -0
  221. package/internal/utils/log.d.ts +37 -0
  222. package/internal/utils/log.d.ts.map +1 -0
  223. package/internal/utils/log.js +85 -0
  224. package/internal/utils/log.js.map +1 -0
  225. package/internal/utils/log.mjs +79 -0
  226. package/internal/utils/log.mjs.map +1 -0
  227. package/internal/utils/path.d.mts +15 -0
  228. package/internal/utils/path.d.mts.map +1 -0
  229. package/internal/utils/path.d.ts +15 -0
  230. package/internal/utils/path.d.ts.map +1 -0
  231. package/internal/utils/path.js +79 -0
  232. package/internal/utils/path.js.map +1 -0
  233. package/internal/utils/path.mjs +74 -0
  234. package/internal/utils/path.mjs.map +1 -0
  235. package/internal/utils/sleep.d.mts +2 -0
  236. package/internal/utils/sleep.d.mts.map +1 -0
  237. package/internal/utils/sleep.d.ts +2 -0
  238. package/internal/utils/sleep.d.ts.map +1 -0
  239. package/internal/utils/sleep.js +7 -0
  240. package/internal/utils/sleep.js.map +1 -0
  241. package/internal/utils/sleep.mjs +3 -0
  242. package/internal/utils/sleep.mjs.map +1 -0
  243. package/internal/utils/uuid.d.mts +5 -0
  244. package/internal/utils/uuid.d.mts.map +1 -0
  245. package/internal/utils/uuid.d.ts +5 -0
  246. package/internal/utils/uuid.d.ts.map +1 -0
  247. package/internal/utils/uuid.js +19 -0
  248. package/internal/utils/uuid.js.map +1 -0
  249. package/internal/utils/uuid.mjs +15 -0
  250. package/internal/utils/uuid.mjs.map +1 -0
  251. package/internal/utils/values.d.mts +18 -0
  252. package/internal/utils/values.d.mts.map +1 -0
  253. package/internal/utils/values.d.ts +18 -0
  254. package/internal/utils/values.d.ts.map +1 -0
  255. package/internal/utils/values.js +112 -0
  256. package/internal/utils/values.js.map +1 -0
  257. package/internal/utils/values.mjs +94 -0
  258. package/internal/utils/values.mjs.map +1 -0
  259. package/internal/utils.d.mts +7 -0
  260. package/internal/utils.d.mts.map +1 -0
  261. package/internal/utils.d.ts +7 -0
  262. package/internal/utils.d.ts.map +1 -0
  263. package/internal/utils.js +11 -0
  264. package/internal/utils.js.map +1 -0
  265. package/internal/utils.mjs +8 -0
  266. package/internal/utils.mjs.map +1 -0
  267. package/package.json +116 -64
  268. package/pagination.d.mts +2 -0
  269. package/pagination.d.mts.map +1 -0
  270. package/pagination.d.ts +1 -36
  271. package/pagination.d.ts.map +1 -1
  272. package/pagination.js +3 -40
  273. package/pagination.js.map +1 -1
  274. package/pagination.mjs +1 -38
  275. package/pagination.mjs.map +1 -1
  276. package/resource.d.mts +2 -0
  277. package/resource.d.mts.map +1 -0
  278. package/resource.d.ts +1 -5
  279. package/resource.d.ts.map +1 -1
  280. package/resource.js +3 -8
  281. package/resource.js.map +1 -1
  282. package/resource.mjs +1 -6
  283. package/resource.mjs.map +1 -1
  284. package/resources/index.d.mts +5 -0
  285. package/resources/index.d.mts.map +1 -0
  286. package/resources/index.d.ts.map +1 -1
  287. package/resources/index.js +2 -15
  288. package/resources/index.js.map +1 -1
  289. package/resources/shared.d.mts +2239 -0
  290. package/resources/shared.d.mts.map +1 -0
  291. package/resources/shared.d.ts +1409 -523
  292. package/resources/shared.d.ts.map +1 -1
  293. package/resources/v1/alerts.d.mts +203 -0
  294. package/resources/v1/alerts.d.mts.map +1 -0
  295. package/resources/v1/alerts.d.ts +78 -7
  296. package/resources/v1/alerts.d.ts.map +1 -1
  297. package/resources/v1/alerts.js +73 -3
  298. package/resources/v1/alerts.js.map +1 -1
  299. package/resources/v1/alerts.mjs +73 -3
  300. package/resources/v1/alerts.mjs.map +1 -1
  301. package/resources/v1/audit-logs.d.mts +108 -0
  302. package/resources/v1/audit-logs.d.mts.map +1 -0
  303. package/resources/v1/audit-logs.d.ts +45 -12
  304. package/resources/v1/audit-logs.d.ts.map +1 -1
  305. package/resources/v1/audit-logs.js +53 -12
  306. package/resources/v1/audit-logs.js.map +1 -1
  307. package/resources/v1/audit-logs.mjs +52 -10
  308. package/resources/v1/audit-logs.mjs.map +1 -1
  309. package/resources/v1/billable-metrics.d.mts +293 -0
  310. package/resources/v1/billable-metrics.d.mts.map +1 -0
  311. package/resources/v1/billable-metrics.d.ts +70 -15
  312. package/resources/v1/billable-metrics.d.ts.map +1 -1
  313. package/resources/v1/billable-metrics.js +70 -16
  314. package/resources/v1/billable-metrics.js.map +1 -1
  315. package/resources/v1/billable-metrics.mjs +69 -14
  316. package/resources/v1/billable-metrics.mjs.map +1 -1
  317. package/resources/v1/contracts/contracts.d.mts +2984 -0
  318. package/resources/v1/contracts/contracts.d.mts.map +1 -0
  319. package/resources/v1/contracts/contracts.d.ts +450 -1285
  320. package/resources/v1/contracts/contracts.d.ts.map +1 -1
  321. package/resources/v1/contracts/contracts.js +268 -50
  322. package/resources/v1/contracts/contracts.js.map +1 -1
  323. package/resources/v1/contracts/contracts.mjs +266 -26
  324. package/resources/v1/contracts/contracts.mjs.map +1 -1
  325. package/resources/v1/contracts/index.d.mts +5 -0
  326. package/resources/v1/contracts/index.d.mts.map +1 -0
  327. package/resources/v1/contracts/index.d.ts +3 -3
  328. package/resources/v1/contracts/index.d.ts.map +1 -1
  329. package/resources/v1/contracts/index.js +1 -3
  330. package/resources/v1/contracts/index.js.map +1 -1
  331. package/resources/v1/contracts/index.mjs +2 -2
  332. package/resources/v1/contracts/index.mjs.map +1 -1
  333. package/resources/v1/contracts/named-schedules.d.mts +82 -0
  334. package/resources/v1/contracts/named-schedules.d.mts.map +1 -0
  335. package/resources/v1/contracts/named-schedules.d.ts +5 -4
  336. package/resources/v1/contracts/named-schedules.d.ts.map +1 -1
  337. package/resources/v1/contracts/named-schedules.js +3 -2
  338. package/resources/v1/contracts/named-schedules.js.map +1 -1
  339. package/resources/v1/contracts/named-schedules.mjs +3 -2
  340. package/resources/v1/contracts/named-schedules.mjs.map +1 -1
  341. package/resources/v1/contracts/products.d.mts +502 -0
  342. package/resources/v1/contracts/products.d.mts.map +1 -0
  343. package/resources/v1/contracts/products.d.ts +47 -17
  344. package/resources/v1/contracts/products.d.ts.map +1 -1
  345. package/resources/v1/contracts/products.js +41 -17
  346. package/resources/v1/contracts/products.js.map +1 -1
  347. package/resources/v1/contracts/products.mjs +40 -15
  348. package/resources/v1/contracts/products.mjs.map +1 -1
  349. package/resources/v1/contracts/rate-cards/index.d.mts +5 -0
  350. package/resources/v1/contracts/rate-cards/index.d.mts.map +1 -0
  351. package/resources/v1/contracts/rate-cards/index.d.ts +2 -2
  352. package/resources/v1/contracts/rate-cards/index.d.ts.map +1 -1
  353. package/resources/v1/contracts/rate-cards/index.js +1 -3
  354. package/resources/v1/contracts/rate-cards/index.js.map +1 -1
  355. package/resources/v1/contracts/rate-cards/index.mjs +2 -2
  356. package/resources/v1/contracts/rate-cards/index.mjs.map +1 -1
  357. package/resources/v1/contracts/rate-cards/named-schedules.d.mts +94 -0
  358. package/resources/v1/contracts/rate-cards/named-schedules.d.mts.map +1 -0
  359. package/resources/v1/contracts/rate-cards/named-schedules.d.ts +5 -4
  360. package/resources/v1/contracts/rate-cards/named-schedules.d.ts.map +1 -1
  361. package/resources/v1/contracts/rate-cards/named-schedules.js +3 -2
  362. package/resources/v1/contracts/rate-cards/named-schedules.js.map +1 -1
  363. package/resources/v1/contracts/rate-cards/named-schedules.mjs +3 -2
  364. package/resources/v1/contracts/rate-cards/named-schedules.mjs.map +1 -1
  365. package/resources/v1/contracts/rate-cards/product-orders.d.mts +85 -0
  366. package/resources/v1/contracts/rate-cards/product-orders.d.mts.map +1 -0
  367. package/resources/v1/contracts/rate-cards/product-orders.d.ts +12 -6
  368. package/resources/v1/contracts/rate-cards/product-orders.d.ts.map +1 -1
  369. package/resources/v1/contracts/rate-cards/product-orders.js +8 -3
  370. package/resources/v1/contracts/rate-cards/product-orders.js.map +1 -1
  371. package/resources/v1/contracts/rate-cards/product-orders.mjs +8 -3
  372. package/resources/v1/contracts/rate-cards/product-orders.mjs.map +1 -1
  373. package/resources/v1/contracts/rate-cards/rate-cards.d.mts +452 -0
  374. package/resources/v1/contracts/rate-cards/rate-cards.d.mts.map +1 -0
  375. package/resources/v1/contracts/rate-cards/rate-cards.d.ts +134 -41
  376. package/resources/v1/contracts/rate-cards/rate-cards.d.ts.map +1 -1
  377. package/resources/v1/contracts/rate-cards/rate-cards.js +127 -47
  378. package/resources/v1/contracts/rate-cards/rate-cards.js.map +1 -1
  379. package/resources/v1/contracts/rate-cards/rate-cards.mjs +123 -20
  380. package/resources/v1/contracts/rate-cards/rate-cards.mjs.map +1 -1
  381. package/resources/v1/contracts/rate-cards/rates.d.mts +382 -0
  382. package/resources/v1/contracts/rate-cards/rates.d.mts.map +1 -0
  383. package/resources/v1/contracts/rate-cards/rates.d.ts +25 -82
  384. package/resources/v1/contracts/rate-cards/rates.d.ts.map +1 -1
  385. package/resources/v1/contracts/rate-cards/rates.js +13 -9
  386. package/resources/v1/contracts/rate-cards/rates.js.map +1 -1
  387. package/resources/v1/contracts/rate-cards/rates.mjs +12 -7
  388. package/resources/v1/contracts/rate-cards/rates.mjs.map +1 -1
  389. package/resources/v1/contracts/rate-cards.d.mts +2 -0
  390. package/resources/v1/contracts/rate-cards.d.mts.map +1 -0
  391. package/resources/v1/contracts/rate-cards.d.ts.map +1 -1
  392. package/resources/v1/contracts/rate-cards.js +2 -15
  393. package/resources/v1/contracts/rate-cards.js.map +1 -1
  394. package/resources/v1/contracts.d.mts +2 -0
  395. package/resources/v1/contracts.d.mts.map +1 -0
  396. package/resources/v1/contracts.d.ts.map +1 -1
  397. package/resources/v1/contracts.js +2 -15
  398. package/resources/v1/contracts.js.map +1 -1
  399. package/resources/v1/credit-grants.d.mts +505 -0
  400. package/resources/v1/credit-grants.d.mts.map +1 -0
  401. package/resources/v1/credit-grants.d.ts +73 -74
  402. package/resources/v1/credit-grants.d.ts.map +1 -1
  403. package/resources/v1/credit-grants.js +52 -18
  404. package/resources/v1/credit-grants.js.map +1 -1
  405. package/resources/v1/credit-grants.mjs +51 -16
  406. package/resources/v1/credit-grants.mjs.map +1 -1
  407. package/resources/v1/custom-fields.d.mts +151 -0
  408. package/resources/v1/custom-fields.d.mts.map +1 -0
  409. package/resources/v1/custom-fields.d.ts +69 -38
  410. package/resources/v1/custom-fields.d.ts.map +1 -1
  411. package/resources/v1/custom-fields.js +66 -22
  412. package/resources/v1/custom-fields.js.map +1 -1
  413. package/resources/v1/custom-fields.mjs +66 -22
  414. package/resources/v1/custom-fields.mjs.map +1 -1
  415. package/resources/v1/customers/alerts.d.mts +288 -0
  416. package/resources/v1/customers/alerts.d.mts.map +1 -0
  417. package/resources/v1/customers/alerts.d.ts +128 -23
  418. package/resources/v1/customers/alerts.d.ts.map +1 -1
  419. package/resources/v1/customers/alerts.js +112 -10
  420. package/resources/v1/customers/alerts.js.map +1 -1
  421. package/resources/v1/customers/alerts.mjs +112 -10
  422. package/resources/v1/customers/alerts.mjs.map +1 -1
  423. package/resources/v1/customers/billing-config.d.mts +125 -0
  424. package/resources/v1/customers/billing-config.d.mts.map +1 -0
  425. package/resources/v1/customers/billing-config.d.ts +8 -7
  426. package/resources/v1/customers/billing-config.d.ts.map +1 -1
  427. package/resources/v1/customers/billing-config.js +8 -6
  428. package/resources/v1/customers/billing-config.js.map +1 -1
  429. package/resources/v1/customers/billing-config.mjs +8 -6
  430. package/resources/v1/customers/billing-config.mjs.map +1 -1
  431. package/resources/v1/customers/commits.d.mts +456 -0
  432. package/resources/v1/customers/commits.d.mts.map +1 -0
  433. package/resources/v1/customers/commits.d.ts +145 -47
  434. package/resources/v1/customers/commits.d.ts.map +1 -1
  435. package/resources/v1/customers/commits.js +132 -12
  436. package/resources/v1/customers/commits.js.map +1 -1
  437. package/resources/v1/customers/commits.mjs +132 -12
  438. package/resources/v1/customers/commits.mjs.map +1 -1
  439. package/resources/v1/customers/credits.d.mts +310 -0
  440. package/resources/v1/customers/credits.d.mts.map +1 -0
  441. package/resources/v1/customers/credits.d.ts +124 -46
  442. package/resources/v1/customers/credits.d.ts.map +1 -1
  443. package/resources/v1/customers/credits.js +116 -11
  444. package/resources/v1/customers/credits.js.map +1 -1
  445. package/resources/v1/customers/credits.mjs +116 -11
  446. package/resources/v1/customers/credits.mjs.map +1 -1
  447. package/resources/v1/customers/customers.d.mts +818 -0
  448. package/resources/v1/customers/customers.d.mts.map +1 -0
  449. package/resources/v1/customers/customers.d.ts +304 -41
  450. package/resources/v1/customers/customers.d.ts.map +1 -1
  451. package/resources/v1/customers/customers.js +214 -73
  452. package/resources/v1/customers/customers.js.map +1 -1
  453. package/resources/v1/customers/customers.mjs +207 -41
  454. package/resources/v1/customers/customers.mjs.map +1 -1
  455. package/resources/v1/customers/index.d.mts +9 -0
  456. package/resources/v1/customers/index.d.mts.map +1 -0
  457. package/resources/v1/customers/index.d.ts +6 -6
  458. package/resources/v1/customers/index.d.ts.map +1 -1
  459. package/resources/v1/customers/index.js +1 -8
  460. package/resources/v1/customers/index.js.map +1 -1
  461. package/resources/v1/customers/index.mjs +3 -3
  462. package/resources/v1/customers/index.mjs.map +1 -1
  463. package/resources/v1/customers/invoices.d.mts +710 -0
  464. package/resources/v1/customers/invoices.d.mts.map +1 -0
  465. package/resources/v1/customers/invoices.d.ts +196 -19
  466. package/resources/v1/customers/invoices.d.ts.map +1 -1
  467. package/resources/v1/customers/invoices.js +131 -22
  468. package/resources/v1/customers/invoices.js.map +1 -1
  469. package/resources/v1/customers/invoices.mjs +130 -19
  470. package/resources/v1/customers/invoices.mjs.map +1 -1
  471. package/resources/v1/customers/named-schedules.d.mts +82 -0
  472. package/resources/v1/customers/named-schedules.d.mts.map +1 -0
  473. package/resources/v1/customers/named-schedules.d.ts +5 -4
  474. package/resources/v1/customers/named-schedules.d.ts.map +1 -1
  475. package/resources/v1/customers/named-schedules.js +3 -2
  476. package/resources/v1/customers/named-schedules.js.map +1 -1
  477. package/resources/v1/customers/named-schedules.mjs +3 -2
  478. package/resources/v1/customers/named-schedules.mjs.map +1 -1
  479. package/resources/v1/customers/plans.d.mts +281 -0
  480. package/resources/v1/customers/plans.d.mts.map +1 -0
  481. package/resources/v1/customers/plans.d.ts +14 -12
  482. package/resources/v1/customers/plans.d.ts.map +1 -1
  483. package/resources/v1/customers/plans.js +8 -15
  484. package/resources/v1/customers/plans.js.map +1 -1
  485. package/resources/v1/customers/plans.mjs +7 -12
  486. package/resources/v1/customers/plans.mjs.map +1 -1
  487. package/resources/v1/customers.d.mts +2 -0
  488. package/resources/v1/customers.d.mts.map +1 -0
  489. package/resources/v1/customers.d.ts.map +1 -1
  490. package/resources/v1/customers.js +2 -15
  491. package/resources/v1/customers.js.map +1 -1
  492. package/resources/v1/dashboards.d.mts +133 -0
  493. package/resources/v1/dashboards.d.mts.map +1 -0
  494. package/resources/v1/dashboards.d.ts +33 -6
  495. package/resources/v1/dashboards.d.ts.map +1 -1
  496. package/resources/v1/dashboards.js +30 -4
  497. package/resources/v1/dashboards.js.map +1 -1
  498. package/resources/v1/dashboards.mjs +30 -4
  499. package/resources/v1/dashboards.mjs.map +1 -1
  500. package/resources/v1/index.d.mts +15 -0
  501. package/resources/v1/index.d.mts.map +1 -0
  502. package/resources/v1/index.d.ts +9 -9
  503. package/resources/v1/index.d.ts.map +1 -1
  504. package/resources/v1/index.js +1 -12
  505. package/resources/v1/index.js.map +1 -1
  506. package/resources/v1/index.mjs +7 -7
  507. package/resources/v1/index.mjs.map +1 -1
  508. package/resources/v1/invoices.d.mts +83 -0
  509. package/resources/v1/invoices.d.mts.map +1 -0
  510. package/resources/v1/invoices.d.ts +28 -6
  511. package/resources/v1/invoices.d.ts.map +1 -1
  512. package/resources/v1/invoices.js +24 -3
  513. package/resources/v1/invoices.js.map +1 -1
  514. package/resources/v1/invoices.mjs +24 -3
  515. package/resources/v1/invoices.mjs.map +1 -1
  516. package/resources/v1/plans.d.mts +240 -0
  517. package/resources/v1/plans.d.mts.map +1 -0
  518. package/resources/v1/plans.d.ts +24 -15
  519. package/resources/v1/plans.d.ts.map +1 -1
  520. package/resources/v1/plans.js +19 -26
  521. package/resources/v1/plans.js.map +1 -1
  522. package/resources/v1/plans.mjs +18 -22
  523. package/resources/v1/plans.mjs.map +1 -1
  524. package/resources/v1/pricing-units.d.mts +34 -0
  525. package/resources/v1/pricing-units.d.mts.map +1 -0
  526. package/resources/v1/pricing-units.d.ts +12 -9
  527. package/resources/v1/pricing-units.d.ts.map +1 -1
  528. package/resources/v1/pricing-units.js +20 -12
  529. package/resources/v1/pricing-units.js.map +1 -1
  530. package/resources/v1/pricing-units.mjs +19 -10
  531. package/resources/v1/pricing-units.mjs.map +1 -1
  532. package/resources/v1/services.d.mts +33 -0
  533. package/resources/v1/services.d.mts.map +1 -0
  534. package/resources/v1/services.d.ts +10 -7
  535. package/resources/v1/services.d.ts.map +1 -1
  536. package/resources/v1/services.js +7 -5
  537. package/resources/v1/services.js.map +1 -1
  538. package/resources/v1/services.mjs +7 -5
  539. package/resources/v1/services.mjs.map +1 -1
  540. package/resources/v1/usage.d.mts +488 -0
  541. package/resources/v1/usage.d.mts.map +1 -0
  542. package/resources/v1/usage.d.ts +220 -57
  543. package/resources/v1/usage.d.ts.map +1 -1
  544. package/resources/v1/usage.js +212 -26
  545. package/resources/v1/usage.js.map +1 -1
  546. package/resources/v1/usage.mjs +211 -24
  547. package/resources/v1/usage.mjs.map +1 -1
  548. package/resources/v1/v1.d.mts +58 -0
  549. package/resources/v1/v1.d.mts.map +1 -0
  550. package/resources/v1/v1.d.ts +15 -15
  551. package/resources/v1/v1.d.ts.map +1 -1
  552. package/resources/v1/v1.js +15 -48
  553. package/resources/v1/v1.js.map +1 -1
  554. package/resources/v1/v1.mjs +8 -19
  555. package/resources/v1/v1.mjs.map +1 -1
  556. package/resources/v1.d.mts +2 -0
  557. package/resources/v1.d.mts.map +1 -0
  558. package/resources/v1.d.ts.map +1 -1
  559. package/resources/v1.js +2 -15
  560. package/resources/v1.js.map +1 -1
  561. package/resources/v2/contracts.d.mts +2794 -0
  562. package/resources/v2/contracts.d.mts.map +1 -0
  563. package/resources/v2/contracts.d.ts +381 -3862
  564. package/resources/v2/contracts.d.ts.map +1 -1
  565. package/resources/v2/contracts.js +102 -12
  566. package/resources/v2/contracts.js.map +1 -1
  567. package/resources/v2/contracts.mjs +102 -12
  568. package/resources/v2/contracts.mjs.map +1 -1
  569. package/resources/v2/index.d.mts +3 -0
  570. package/resources/v2/index.d.mts.map +1 -0
  571. package/resources/v2/index.d.ts.map +1 -1
  572. package/resources/v2/v2.d.mts +10 -0
  573. package/resources/v2/v2.d.mts.map +1 -0
  574. package/resources/v2/v2.d.ts +1 -1
  575. package/resources/v2/v2.d.ts.map +1 -1
  576. package/resources/v2/v2.js +3 -25
  577. package/resources/v2/v2.js.map +1 -1
  578. package/resources/v2/v2.mjs +1 -1
  579. package/resources/v2.d.mts +2 -0
  580. package/resources/v2.d.mts.map +1 -0
  581. package/resources/v2.d.ts.map +1 -1
  582. package/resources/v2.js +2 -15
  583. package/resources/v2.js.map +1 -1
  584. package/resources/webhooks.d.mts +22 -0
  585. package/resources/webhooks.d.mts.map +1 -0
  586. package/resources/webhooks.d.ts +1 -1
  587. package/resources/webhooks.d.ts.map +1 -1
  588. package/resources/webhooks.js +3 -3
  589. package/resources/webhooks.js.map +1 -1
  590. package/resources/webhooks.mjs +1 -1
  591. package/resources/webhooks.mjs.map +1 -1
  592. package/resources.d.mts +2 -0
  593. package/resources.d.mts.map +1 -0
  594. package/resources.d.ts.map +1 -1
  595. package/resources.js +2 -15
  596. package/resources.js.map +1 -1
  597. package/src/api-promise.ts +2 -0
  598. package/src/client.ts +809 -0
  599. package/src/core/README.md +3 -0
  600. package/src/core/api-promise.ts +92 -0
  601. package/src/core/error.ts +130 -0
  602. package/src/core/pagination.ts +319 -0
  603. package/src/core/resource.ts +11 -0
  604. package/src/core/uploads.ts +2 -0
  605. package/src/error.ts +2 -130
  606. package/src/index.ts +6 -220
  607. package/src/internal/README.md +3 -0
  608. package/src/internal/builtin-types.ts +93 -0
  609. package/src/internal/detect-platform.ts +196 -0
  610. package/src/internal/errors.ts +33 -0
  611. package/src/internal/headers.ts +144 -0
  612. package/src/internal/parse.ts +50 -0
  613. package/src/internal/qs/formats.ts +3 -2
  614. package/src/internal/qs/index.ts +3 -3
  615. package/src/internal/qs/stringify.ts +18 -21
  616. package/src/internal/qs/utils.ts +16 -16
  617. package/src/internal/request-options.ts +91 -0
  618. package/src/internal/shim-types.ts +26 -0
  619. package/src/internal/shims.ts +107 -0
  620. package/src/internal/to-file.ts +154 -0
  621. package/src/internal/types.ts +95 -0
  622. package/src/internal/uploads.ts +187 -0
  623. package/src/internal/utils/base64.ts +40 -0
  624. package/src/internal/utils/bytes.ts +32 -0
  625. package/src/internal/utils/env.ts +18 -0
  626. package/src/internal/utils/log.ts +126 -0
  627. package/src/internal/utils/path.ts +88 -0
  628. package/src/internal/utils/sleep.ts +3 -0
  629. package/src/internal/utils/uuid.ts +17 -0
  630. package/src/internal/utils/values.ts +105 -0
  631. package/src/internal/utils.ts +8 -0
  632. package/src/pagination.ts +2 -82
  633. package/src/resource.ts +2 -11
  634. package/src/resources/index.ts +4 -4
  635. package/src/resources/shared.ts +1786 -520
  636. package/src/resources/v1/alerts.ts +79 -8
  637. package/src/resources/v1/audit-logs.ts +48 -26
  638. package/src/resources/v1/billable-metrics.ts +79 -34
  639. package/src/resources/v1/contracts/contracts.ts +518 -1622
  640. package/src/resources/v1/contracts/index.ts +7 -6
  641. package/src/resources/v1/contracts/named-schedules.ts +8 -6
  642. package/src/resources/v1/contracts/products.ts +52 -38
  643. package/src/resources/v1/contracts/rate-cards/index.ts +6 -6
  644. package/src/resources/v1/contracts/rate-cards/named-schedules.ts +8 -6
  645. package/src/resources/v1/contracts/rate-cards/product-orders.ts +13 -10
  646. package/src/resources/v1/contracts/rate-cards/rate-cards.ts +145 -72
  647. package/src/resources/v1/contracts/rate-cards/rates.ts +28 -98
  648. package/src/resources/v1/contracts/rate-cards.ts +1 -1
  649. package/src/resources/v1/contracts.ts +1 -1
  650. package/src/resources/v1/credit-grants.ts +100 -112
  651. package/src/resources/v1/custom-fields.ts +106 -74
  652. package/src/resources/v1/customers/alerts.ts +147 -28
  653. package/src/resources/v1/customers/billing-config.ts +27 -13
  654. package/src/resources/v1/customers/commits.ts +153 -54
  655. package/src/resources/v1/customers/credits.ts +131 -53
  656. package/src/resources/v1/customers/customers.ts +390 -101
  657. package/src/resources/v1/customers/index.ts +19 -18
  658. package/src/resources/v1/customers/invoices.ts +206 -37
  659. package/src/resources/v1/customers/named-schedules.ts +8 -6
  660. package/src/resources/v1/customers/plans.ts +24 -22
  661. package/src/resources/v1/customers.ts +1 -1
  662. package/src/resources/v1/dashboards.ts +34 -7
  663. package/src/resources/v1/index.ts +32 -25
  664. package/src/resources/v1/invoices.ts +28 -9
  665. package/src/resources/v1/plans.ts +42 -43
  666. package/src/resources/v1/pricing-units.ts +15 -23
  667. package/src/resources/v1/services.ts +10 -7
  668. package/src/resources/v1/usage.ts +244 -72
  669. package/src/resources/v1/v1.ts +52 -49
  670. package/src/resources/v1.ts +1 -1
  671. package/src/resources/v2/contracts.ts +431 -4967
  672. package/src/resources/v2/index.ts +2 -2
  673. package/src/resources/v2/v2.ts +3 -3
  674. package/src/resources/v2.ts +1 -1
  675. package/src/resources/webhooks.ts +2 -2
  676. package/src/resources.ts +1 -1
  677. package/src/tsconfig.json +2 -2
  678. package/src/uploads.ts +2 -255
  679. package/src/version.ts +1 -1
  680. package/uploads.d.mts +2 -0
  681. package/uploads.d.mts.map +1 -0
  682. package/uploads.d.ts +1 -74
  683. package/uploads.d.ts.map +1 -1
  684. package/uploads.js +3 -168
  685. package/uploads.js.map +1 -1
  686. package/uploads.mjs +1 -157
  687. package/uploads.mjs.map +1 -1
  688. package/version.d.mts +2 -0
  689. package/version.d.mts.map +1 -0
  690. package/version.d.ts +1 -1
  691. package/version.js +1 -1
  692. package/version.mjs +1 -1
  693. package/_shims/MultipartBody.d.ts +0 -9
  694. package/_shims/MultipartBody.d.ts.map +0 -1
  695. package/_shims/MultipartBody.js +0 -16
  696. package/_shims/MultipartBody.js.map +0 -1
  697. package/_shims/MultipartBody.mjs +0 -12
  698. package/_shims/MultipartBody.mjs.map +0 -1
  699. package/_shims/README.md +0 -46
  700. package/_shims/auto/runtime-bun.d.ts +0 -5
  701. package/_shims/auto/runtime-bun.d.ts.map +0 -1
  702. package/_shims/auto/runtime-bun.js +0 -21
  703. package/_shims/auto/runtime-bun.js.map +0 -1
  704. package/_shims/auto/runtime-bun.mjs +0 -2
  705. package/_shims/auto/runtime-bun.mjs.map +0 -1
  706. package/_shims/auto/runtime-node.d.ts +0 -5
  707. package/_shims/auto/runtime-node.d.ts.map +0 -1
  708. package/_shims/auto/runtime-node.js +0 -21
  709. package/_shims/auto/runtime-node.js.map +0 -1
  710. package/_shims/auto/runtime-node.mjs +0 -2
  711. package/_shims/auto/runtime-node.mjs.map +0 -1
  712. package/_shims/auto/runtime.d.ts +0 -5
  713. package/_shims/auto/runtime.d.ts.map +0 -1
  714. package/_shims/auto/runtime.js +0 -21
  715. package/_shims/auto/runtime.js.map +0 -1
  716. package/_shims/auto/runtime.mjs +0 -2
  717. package/_shims/auto/runtime.mjs.map +0 -1
  718. package/_shims/auto/types-node.d.ts +0 -5
  719. package/_shims/auto/types-node.d.ts.map +0 -1
  720. package/_shims/auto/types-node.js +0 -21
  721. package/_shims/auto/types-node.js.map +0 -1
  722. package/_shims/auto/types-node.mjs +0 -2
  723. package/_shims/auto/types-node.mjs.map +0 -1
  724. package/_shims/auto/types.d.ts +0 -101
  725. package/_shims/auto/types.js +0 -3
  726. package/_shims/auto/types.mjs +0 -3
  727. package/_shims/bun-runtime.d.ts +0 -6
  728. package/_shims/bun-runtime.d.ts.map +0 -1
  729. package/_shims/bun-runtime.js +0 -14
  730. package/_shims/bun-runtime.js.map +0 -1
  731. package/_shims/bun-runtime.mjs +0 -10
  732. package/_shims/bun-runtime.mjs.map +0 -1
  733. package/_shims/index.d.ts +0 -83
  734. package/_shims/index.js +0 -17
  735. package/_shims/index.mjs +0 -11
  736. package/_shims/manual-types.d.ts +0 -12
  737. package/_shims/manual-types.js +0 -3
  738. package/_shims/manual-types.mjs +0 -3
  739. package/_shims/node-runtime.d.ts +0 -3
  740. package/_shims/node-runtime.d.ts.map +0 -1
  741. package/_shims/node-runtime.js +0 -89
  742. package/_shims/node-runtime.js.map +0 -1
  743. package/_shims/node-runtime.mjs +0 -56
  744. package/_shims/node-runtime.mjs.map +0 -1
  745. package/_shims/node-types.d.ts +0 -42
  746. package/_shims/node-types.js +0 -3
  747. package/_shims/node-types.mjs +0 -3
  748. package/_shims/registry.d.ts +0 -37
  749. package/_shims/registry.d.ts.map +0 -1
  750. package/_shims/registry.js +0 -41
  751. package/_shims/registry.js.map +0 -1
  752. package/_shims/registry.mjs +0 -37
  753. package/_shims/registry.mjs.map +0 -1
  754. package/_shims/web-runtime.d.ts +0 -5
  755. package/_shims/web-runtime.d.ts.map +0 -1
  756. package/_shims/web-runtime.js +0 -78
  757. package/_shims/web-runtime.js.map +0 -1
  758. package/_shims/web-runtime.mjs +0 -71
  759. package/_shims/web-runtime.mjs.map +0 -1
  760. package/_shims/web-types.d.ts +0 -83
  761. package/_shims/web-types.js +0 -3
  762. package/_shims/web-types.mjs +0 -3
  763. package/core.d.ts +0 -255
  764. package/core.d.ts.map +0 -1
  765. package/core.js +0 -924
  766. package/core.js.map +0 -1
  767. package/core.mjs +0 -892
  768. package/core.mjs.map +0 -1
  769. package/shims/node.d.ts +0 -30
  770. package/shims/node.d.ts.map +0 -1
  771. package/shims/node.js +0 -31
  772. package/shims/node.js.map +0 -1
  773. package/shims/node.mjs +0 -5
  774. package/shims/node.mjs.map +0 -1
  775. package/shims/web.d.ts +0 -26
  776. package/shims/web.d.ts.map +0 -1
  777. package/shims/web.js +0 -31
  778. package/shims/web.js.map +0 -1
  779. package/shims/web.mjs +0 -5
  780. package/shims/web.mjs.map +0 -1
  781. package/src/_shims/MultipartBody.ts +0 -9
  782. package/src/_shims/README.md +0 -46
  783. package/src/_shims/auto/runtime-bun.ts +0 -4
  784. package/src/_shims/auto/runtime-node.ts +0 -4
  785. package/src/_shims/auto/runtime.ts +0 -4
  786. package/src/_shims/auto/types-node.ts +0 -4
  787. package/src/_shims/auto/types.d.ts +0 -101
  788. package/src/_shims/auto/types.js +0 -3
  789. package/src/_shims/auto/types.mjs +0 -3
  790. package/src/_shims/bun-runtime.ts +0 -14
  791. package/src/_shims/index.d.ts +0 -83
  792. package/src/_shims/index.js +0 -17
  793. package/src/_shims/index.mjs +0 -11
  794. package/src/_shims/manual-types.d.ts +0 -12
  795. package/src/_shims/manual-types.js +0 -3
  796. package/src/_shims/manual-types.mjs +0 -3
  797. package/src/_shims/node-runtime.ts +0 -81
  798. package/src/_shims/node-types.d.ts +0 -42
  799. package/src/_shims/node-types.js +0 -3
  800. package/src/_shims/node-types.mjs +0 -3
  801. package/src/_shims/registry.ts +0 -67
  802. package/src/_shims/web-runtime.ts +0 -103
  803. package/src/_shims/web-types.d.ts +0 -83
  804. package/src/_shims/web-types.js +0 -3
  805. package/src/_shims/web-types.mjs +0 -3
  806. package/src/core.ts +0 -1236
  807. package/src/shims/node.ts +0 -50
  808. package/src/shims/web.ts +0 -50
@@ -1,48 +1,44 @@
1
1
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
- import { APIResource } from "../../../resource.js";
4
- import { isRequestOptions } from "../../../core.js";
5
- import * as Core from "../../../core.js";
6
- import * as Shared from "../../shared.js";
7
- import * as AlertsAPI from "./alerts.js";
3
+ import { APIResource } from '../../../core/resource';
4
+ import * as Shared from '../../shared';
5
+ import * as AlertsAPI from './alerts';
8
6
  import {
9
7
  AlertListParams,
10
- AlertListResponse,
11
8
  AlertResetParams,
12
9
  AlertRetrieveParams,
13
10
  AlertRetrieveResponse,
14
11
  Alerts,
15
12
  CustomerAlert,
16
- } from "./alerts.js";
17
- import * as BillingConfigAPI from "./billing-config.js";
13
+ CustomerAlertsCursorPageWithoutLimit,
14
+ } from './alerts';
15
+ import * as BillingConfigAPI from './billing-config';
18
16
  import {
19
17
  BillingConfig as BillingConfigAPIBillingConfig,
20
18
  BillingConfigCreateParams,
21
19
  BillingConfigDeleteParams,
22
20
  BillingConfigRetrieveParams,
23
21
  BillingConfigRetrieveResponse,
24
- } from "./billing-config.js";
25
- import * as CommitsAPI from "./commits.js";
22
+ } from './billing-config';
23
+ import * as CommitsAPI from './commits';
26
24
  import {
27
25
  CommitCreateParams,
28
26
  CommitCreateResponse,
29
27
  CommitListParams,
30
- CommitListResponse,
31
28
  CommitUpdateEndDateParams,
32
29
  CommitUpdateEndDateResponse,
33
30
  Commits,
34
- } from "./commits.js";
35
- import * as CreditsAPI from "./credits.js";
31
+ } from './commits';
32
+ import * as CreditsAPI from './credits';
36
33
  import {
37
34
  CreditCreateParams,
38
35
  CreditCreateResponse,
39
36
  CreditListParams,
40
- CreditListResponse,
41
37
  CreditUpdateEndDateParams,
42
38
  CreditUpdateEndDateResponse,
43
39
  Credits,
44
- } from "./credits.js";
45
- import * as InvoicesAPI from "./invoices.js";
40
+ } from './credits';
41
+ import * as InvoicesAPI from './invoices';
46
42
  import {
47
43
  Invoice,
48
44
  InvoiceAddChargeParams,
@@ -55,15 +51,15 @@ import {
55
51
  InvoiceRetrieveResponse,
56
52
  Invoices,
57
53
  InvoicesCursorPage,
58
- } from "./invoices.js";
59
- import * as NamedSchedulesAPI from "./named-schedules.js";
54
+ } from './invoices';
55
+ import * as NamedSchedulesAPI from './named-schedules';
60
56
  import {
61
57
  NamedScheduleRetrieveParams,
62
58
  NamedScheduleRetrieveResponse,
63
59
  NamedScheduleUpdateParams,
64
60
  NamedSchedules,
65
- } from "./named-schedules.js";
66
- import * as PlansAPI from "./plans.js";
61
+ } from './named-schedules';
62
+ import * as PlansAPI from './plans';
67
63
  import {
68
64
  PlanAddParams,
69
65
  PlanAddResponse,
@@ -76,8 +72,12 @@ import {
76
72
  PlanListResponse,
77
73
  PlanListResponsesCursorPage,
78
74
  Plans,
79
- } from "./plans.js";
80
- import { CursorPage, type CursorPageParams } from "../../../pagination.js";
75
+ } from './plans';
76
+ import { APIPromise } from '../../../core/api-promise';
77
+ import { CursorPage, type CursorPageParams, PagePromise } from '../../../core/pagination';
78
+ import { buildHeaders } from '../../../internal/headers';
79
+ import { RequestOptions } from '../../../internal/request-options';
80
+ import { path } from '../../../internal/utils/path';
81
81
 
82
82
  export class Customers extends APIResource {
83
83
  alerts: AlertsAPI.Alerts = new AlertsAPI.Alerts(this._client);
@@ -89,7 +89,40 @@ export class Customers extends APIResource {
89
89
  namedSchedules: NamedSchedulesAPI.NamedSchedules = new NamedSchedulesAPI.NamedSchedules(this._client);
90
90
 
91
91
  /**
92
- * Create a new customer
92
+ * Create a new customer in Metronome and optionally the billing configuration
93
+ * (recommended) which dictates where invoices for the customer will be sent or
94
+ * where payment will be collected.
95
+ *
96
+ * ### Use this endpoint to:
97
+ *
98
+ * Execute your customer provisioning workflows for either PLG motions, where
99
+ * customers originate in your platform, or SLG motions, where customers originate
100
+ * in your sales system.
101
+ *
102
+ * ### Key response fields:
103
+ *
104
+ * This end-point returns the `customer_id` created by the request. This id can be
105
+ * used to fetch relevant billing configurations and create contracts.
106
+ *
107
+ * ### Example workflow:
108
+ *
109
+ * - Generally, Metronome recommends first creating the customer in the downstream
110
+ * payment / ERP system when payment method is collected and then creating the
111
+ * customer in Metronome using the response (i.e. `customer_id`) from the
112
+ * downstream system. If you do not create a billing configuration on customer
113
+ * creation, you can add it later.
114
+ * - Once a customer is created, you can then create a contract for the customer.
115
+ * In the contract creation process, you will need to add the customer billing
116
+ * configuration to the contract to ensure Metronome invoices the customer
117
+ * correctly. This is because a customer can have multiple configurations.
118
+ * - As part of the customer creation process, set the ingest alias for the
119
+ * customer which will ensure usage is accurately mapped to the customer. Ingest
120
+ * aliases can be added or changed after the creation process as well.
121
+ *
122
+ * ### Usage guidelines:
123
+ *
124
+ * For details on different billing configurations for different systems, review
125
+ * the `/setCustomerBillingConfiguration` end-point.
93
126
  *
94
127
  * @example
95
128
  * ```ts
@@ -109,12 +142,18 @@ export class Customers extends APIResource {
109
142
  * });
110
143
  * ```
111
144
  */
112
- create(body: CustomerCreateParams, options?: Core.RequestOptions): Core.APIPromise<CustomerCreateResponse> {
145
+ create(body: CustomerCreateParams, options?: RequestOptions): APIPromise<CustomerCreateResponse> {
113
146
  return this._client.post('/v1/customers', { body, ...options });
114
147
  }
115
148
 
116
149
  /**
117
- * Get a customer by Metronome ID.
150
+ * Get detailed information for a specific customer by their Metronome ID. Returns
151
+ * customer profile data including name, creation date, ingest aliases,
152
+ * configuration settings, and custom fields. Use this endpoint to fetch complete
153
+ * customer details for billing operations or account management.
154
+ *
155
+ * Note: If searching for a customer billing configuration, use the
156
+ * `/getCustomerBillingConfigurations` endpoint.
118
157
  *
119
158
  * @example
120
159
  * ```ts
@@ -123,16 +162,17 @@ export class Customers extends APIResource {
123
162
  * });
124
163
  * ```
125
164
  */
126
- retrieve(
127
- params: CustomerRetrieveParams,
128
- options?: Core.RequestOptions,
129
- ): Core.APIPromise<CustomerRetrieveResponse> {
165
+ retrieve(params: CustomerRetrieveParams, options?: RequestOptions): APIPromise<CustomerRetrieveResponse> {
130
166
  const { customer_id } = params;
131
- return this._client.get(`/v1/customers/${customer_id}`, options);
167
+ return this._client.get(path`/v1/customers/${customer_id}`, options);
132
168
  }
133
169
 
134
170
  /**
135
- * List all customers.
171
+ * Gets a paginated list of all customers in your Metronome account. Use this
172
+ * endpoint to browse your customer base, implement customer search functionality,
173
+ * or sync customer data with external systems. Returns customer details including
174
+ * IDs, names, and configuration settings. Supports filtering and pagination
175
+ * parameters for efficient data retrieval.
136
176
  *
137
177
  * @example
138
178
  * ```ts
@@ -143,23 +183,27 @@ export class Customers extends APIResource {
143
183
  * ```
144
184
  */
145
185
  list(
146
- query?: CustomerListParams,
147
- options?: Core.RequestOptions,
148
- ): Core.PagePromise<CustomerDetailsCursorPage, CustomerDetail>;
149
- list(options?: Core.RequestOptions): Core.PagePromise<CustomerDetailsCursorPage, CustomerDetail>;
150
- list(
151
- query: CustomerListParams | Core.RequestOptions = {},
152
- options?: Core.RequestOptions,
153
- ): Core.PagePromise<CustomerDetailsCursorPage, CustomerDetail> {
154
- if (isRequestOptions(query)) {
155
- return this.list({}, query);
156
- }
157
- return this._client.getAPIList('/v1/customers', CustomerDetailsCursorPage, { query, ...options });
186
+ query: CustomerListParams | null | undefined = {},
187
+ options?: RequestOptions,
188
+ ): PagePromise<CustomerDetailsCursorPage, CustomerDetail> {
189
+ return this._client.getAPIList('/v1/customers', CursorPage<CustomerDetail>, { query, ...options });
158
190
  }
159
191
 
160
192
  /**
161
- * Archive a customer Note: any alerts associated with the customer will not be
162
- * triggered.
193
+ * Use this endpoint to archive a customer while preserving auditability. Archiving
194
+ * a customer will automatically archive all contracts as of the current date and
195
+ * void all corresponding invoices. Use this endpoint if a customer is onboarded by
196
+ * mistake.
197
+ *
198
+ * ### Usage guidelines:
199
+ *
200
+ * - Once a customer is archived, it cannot be unarchived.
201
+ * - Archived customers can still be viewed through the API or the UI for audit
202
+ * purposes.
203
+ * - Ingest aliases remain idempotent for archived customers. In order to reuse an
204
+ * ingest alias, first remove the ingest alias from the customer prior to
205
+ * archiving.
206
+ * - Any alerts associated with the customer will no longer be triggered.
163
207
  *
164
208
  * @example
165
209
  * ```ts
@@ -168,15 +212,15 @@ export class Customers extends APIResource {
168
212
  * });
169
213
  * ```
170
214
  */
171
- archive(
172
- body: CustomerArchiveParams,
173
- options?: Core.RequestOptions,
174
- ): Core.APIPromise<CustomerArchiveResponse> {
215
+ archive(body: CustomerArchiveParams, options?: RequestOptions): APIPromise<CustomerArchiveResponse> {
175
216
  return this._client.post('/v1/customers/archive', { body, ...options });
176
217
  }
177
218
 
178
219
  /**
179
- * Get all billable metrics for a given customer.
220
+ * Get all billable metrics available for a specific customer. Supports pagination
221
+ * and filtering by current plan status or archived metrics. Use this endpoint to
222
+ * see which metrics are being tracked for billing calculations for a given
223
+ * customer.
180
224
  *
181
225
  * @example
182
226
  * ```ts
@@ -190,12 +234,12 @@ export class Customers extends APIResource {
190
234
  */
191
235
  listBillableMetrics(
192
236
  params: CustomerListBillableMetricsParams,
193
- options?: Core.RequestOptions,
194
- ): Core.PagePromise<CustomerListBillableMetricsResponsesCursorPage, CustomerListBillableMetricsResponse> {
237
+ options?: RequestOptions,
238
+ ): PagePromise<CustomerListBillableMetricsResponsesCursorPage, CustomerListBillableMetricsResponse> {
195
239
  const { customer_id, ...query } = params;
196
240
  return this._client.getAPIList(
197
- `/v1/customers/${customer_id}/billable-metrics`,
198
- CustomerListBillableMetricsResponsesCursorPage,
241
+ path`/v1/customers/${customer_id}/billable-metrics`,
242
+ CursorPage<CustomerListBillableMetricsResponse>,
199
243
  { query, ...options },
200
244
  );
201
245
  }
@@ -221,12 +265,12 @@ export class Customers extends APIResource {
221
265
  */
222
266
  listCosts(
223
267
  params: CustomerListCostsParams,
224
- options?: Core.RequestOptions,
225
- ): Core.PagePromise<CustomerListCostsResponsesCursorPage, CustomerListCostsResponse> {
268
+ options?: RequestOptions,
269
+ ): PagePromise<CustomerListCostsResponsesCursorPage, CustomerListCostsResponse> {
226
270
  const { customer_id, ...query } = params;
227
271
  return this._client.getAPIList(
228
- `/v1/customers/${customer_id}/costs`,
229
- CustomerListCostsResponsesCursorPage,
272
+ path`/v1/customers/${customer_id}/costs`,
273
+ CursorPage<CustomerListCostsResponse>,
230
274
  { query, ...options },
231
275
  );
232
276
  }
@@ -253,16 +297,129 @@ export class Customers extends APIResource {
253
297
  */
254
298
  previewEvents(
255
299
  params: CustomerPreviewEventsParams,
256
- options?: Core.RequestOptions,
257
- ): Core.APIPromise<CustomerPreviewEventsResponse> {
300
+ options?: RequestOptions,
301
+ ): APIPromise<CustomerPreviewEventsResponse> {
258
302
  const { customer_id, ...body } = params;
259
- return this._client.post(`/v1/customers/${customer_id}/previewEvents`, { body, ...options });
303
+ return this._client.post(path`/v1/customers/${customer_id}/previewEvents`, { body, ...options });
304
+ }
305
+
306
+ /**
307
+ * Returns all billing configurations previously set for the customer. Use during
308
+ * the contract provisioning process to fetch the
309
+ * `billing_provider_configuration_id` needed to set the contract billing
310
+ * configuration.
311
+ *
312
+ * @example
313
+ * ```ts
314
+ * const response =
315
+ * await client.v1.customers.retrieveBillingConfigurations({
316
+ * customer_id: '6a37bb88-8538-48c5-b37b-a41c836328bd',
317
+ * });
318
+ * ```
319
+ */
320
+ retrieveBillingConfigurations(
321
+ body: CustomerRetrieveBillingConfigurationsParams,
322
+ options?: RequestOptions,
323
+ ): APIPromise<CustomerRetrieveBillingConfigurationsResponse> {
324
+ return this._client.post('/v1/getCustomerBillingProviderConfigurations', { body, ...options });
325
+ }
326
+
327
+ /**
328
+ * Create a billing configuration for a customer. Once created, these
329
+ * configurations are available to associate to a contract and dictates which
330
+ * downstream system to collect payment in or send the invoice to. You can create
331
+ * multiple configurations per customer. The configuration formats are distinct for
332
+ * each downstream provider.
333
+ *
334
+ * ### Use this endpoint to:
335
+ *
336
+ * - Add the initial configuration to an existing customer. Once created, the
337
+ * billing configuration can then be associated to the customer's contract.
338
+ * - Add a new configuration to an existing customer. This might be used as part of
339
+ * an upgrade or downgrade workflow where the customer was previously billed
340
+ * through system A (e.g. Stripe) but will now be billed through system B (e.g.
341
+ * AWS). Once created, the new configuration can then be associated to the
342
+ * customer's contract.
343
+ *
344
+ * ### Delivery method options:
345
+ *
346
+ * - `direct_to_billing_provider`: Use when Metronome should send invoices directly
347
+ * to the billing provider's API (e.g., Stripe, NetSuite). This is the most
348
+ * common method for automated billing workflows.
349
+ * - `tackle`: Use specifically for AWS Marketplace transactions that require
350
+ * Tackle's co-selling platform for partner attribution and commission tracking.
351
+ * - `aws_sqs`: Use when you want invoice data delivered to an AWS SQS queue for
352
+ * custom processing before sending to your billing system.
353
+ * - `aws_sns`: Use when you want invoice notifications published to an AWS SNS
354
+ * topic for event-driven billing workflows.
355
+ *
356
+ * ### Key response fields:
357
+ *
358
+ * The id for the customer billing configuration. This id can be used to associate
359
+ * the billing configuration to a contract.
360
+ *
361
+ * ### Usage guidelines:
362
+ *
363
+ * Must use the `delivery_method_id` if you have multiple Stripe accounts connected
364
+ * to Metronome.
365
+ *
366
+ * @example
367
+ * ```ts
368
+ * await client.v1.customers.setBillingConfigurations({
369
+ * data: [
370
+ * {
371
+ * customer_id: '4db51251-61de-4bfe-b9ce-495e244f3491',
372
+ * billing_provider: 'stripe',
373
+ * configuration: { ... },
374
+ * delivery_method: 'direct_to_billing_provider',
375
+ * },
376
+ * {
377
+ * customer_id: '4db51251-61de-4bfe-b9ce-495e244f3491',
378
+ * billing_provider: 'aws_marketplace',
379
+ * configuration: { ... },
380
+ * delivery_method: 'direct_to_billing_provider',
381
+ * },
382
+ * {
383
+ * customer_id: '4db51251-61de-4bfe-b9ce-495e244f3491',
384
+ * billing_provider: 'azure_marketplace',
385
+ * configuration: { ... },
386
+ * delivery_method_id: '5b9e3072-415b-4842-94f0-0b6700c8b6be',
387
+ * },
388
+ * {
389
+ * customer_id: '4db51251-61de-4bfe-b9ce-495e244f3491',
390
+ * billing_provider: 'aws_marketplace',
391
+ * configuration: { ... },
392
+ * delivery_method: 'direct_to_billing_provider',
393
+ * },
394
+ * ],
395
+ * });
396
+ * ```
397
+ */
398
+ setBillingConfigurations(
399
+ body: CustomerSetBillingConfigurationsParams,
400
+ options?: RequestOptions,
401
+ ): APIPromise<void> {
402
+ return this._client.post('/v1/setCustomerBillingProviderConfigurations', {
403
+ body,
404
+ ...options,
405
+ headers: buildHeaders([{ Accept: '*/*' }, options?.headers]),
406
+ });
260
407
  }
261
408
 
262
409
  /**
263
- * Sets the ingest aliases for a customer. Ingest aliases can be used in the
264
- * `customer_id` field when sending usage events to Metronome. This call is
265
- * idempotent. It fully replaces the set of ingest aliases for the given customer.
410
+ * Sets the ingest aliases for a customer. Use this endpoint to associate a
411
+ * Metronome customer with an internal ID for easier tracking between systems.
412
+ * Ingest aliases can be used in the `customer_id` field when sending usage events
413
+ * to Metronome.
414
+ *
415
+ * ### Usage guidelines:
416
+ *
417
+ * - This call is idempotent and fully replaces the set of ingest aliases for the
418
+ * given customer.
419
+ * - Switching an ingest alias from one customer to another will associate all
420
+ * corresponding usage to the new customer.
421
+ * - Use multiple ingest aliases to model child organizations within a single
422
+ * Metronome customer.
266
423
  *
267
424
  * @example
268
425
  * ```ts
@@ -272,20 +429,21 @@ export class Customers extends APIResource {
272
429
  * });
273
430
  * ```
274
431
  */
275
- setIngestAliases(
276
- params: CustomerSetIngestAliasesParams,
277
- options?: Core.RequestOptions,
278
- ): Core.APIPromise<void> {
432
+ setIngestAliases(params: CustomerSetIngestAliasesParams, options?: RequestOptions): APIPromise<void> {
279
433
  const { customer_id, ...body } = params;
280
- return this._client.post(`/v1/customers/${customer_id}/setIngestAliases`, {
434
+ return this._client.post(path`/v1/customers/${customer_id}/setIngestAliases`, {
281
435
  body,
282
436
  ...options,
283
- headers: { Accept: '*/*', ...options?.headers },
437
+ headers: buildHeaders([{ Accept: '*/*' }, options?.headers]),
284
438
  });
285
439
  }
286
440
 
287
441
  /**
288
- * Updates the specified customer's name.
442
+ * Updates the display name for a customer record. Use this to correct customer
443
+ * names, update business names after rebranding, or maintain accurate customer
444
+ * information for invoicing and reporting. Returns the updated customer object
445
+ * with the new name applied immediately across all billing documents and
446
+ * interfaces.
289
447
  *
290
448
  * @example
291
449
  * ```ts
@@ -295,16 +453,16 @@ export class Customers extends APIResource {
295
453
  * });
296
454
  * ```
297
455
  */
298
- setName(
299
- params: CustomerSetNameParams,
300
- options?: Core.RequestOptions,
301
- ): Core.APIPromise<CustomerSetNameResponse> {
456
+ setName(params: CustomerSetNameParams, options?: RequestOptions): APIPromise<CustomerSetNameResponse> {
302
457
  const { customer_id, ...body } = params;
303
- return this._client.post(`/v1/customers/${customer_id}/setName`, { body, ...options });
458
+ return this._client.post(path`/v1/customers/${customer_id}/setName`, { body, ...options });
304
459
  }
305
460
 
306
461
  /**
307
- * Updates the specified customer's config.
462
+ * Update configuration settings for a specific customer, such as external system
463
+ * integrations (e.g., Salesforce account ID) and other customer-specific billing
464
+ * parameters. Use this endpoint to modify customer configurations without
465
+ * affecting core customer data like name or ingest aliases.
308
466
  *
309
467
  * @example
310
468
  * ```ts
@@ -314,21 +472,21 @@ export class Customers extends APIResource {
314
472
  * });
315
473
  * ```
316
474
  */
317
- updateConfig(params: CustomerUpdateConfigParams, options?: Core.RequestOptions): Core.APIPromise<void> {
475
+ updateConfig(params: CustomerUpdateConfigParams, options?: RequestOptions): APIPromise<void> {
318
476
  const { customer_id, ...body } = params;
319
- return this._client.post(`/v1/customers/${customer_id}/updateConfig`, {
477
+ return this._client.post(path`/v1/customers/${customer_id}/updateConfig`, {
320
478
  body,
321
479
  ...options,
322
- headers: { Accept: '*/*', ...options?.headers },
480
+ headers: buildHeaders([{ Accept: '*/*' }, options?.headers]),
323
481
  });
324
482
  }
325
483
  }
326
484
 
327
- export class CustomerDetailsCursorPage extends CursorPage<CustomerDetail> {}
485
+ export type CustomerDetailsCursorPage = CursorPage<CustomerDetail>;
328
486
 
329
- export class CustomerListBillableMetricsResponsesCursorPage extends CursorPage<CustomerListBillableMetricsResponse> {}
487
+ export type CustomerListBillableMetricsResponsesCursorPage = CursorPage<CustomerListBillableMetricsResponse>;
330
488
 
331
- export class CustomerListCostsResponsesCursorPage extends CursorPage<CustomerListCostsResponse> {}
489
+ export type CustomerListCostsResponsesCursorPage = CursorPage<CustomerListCostsResponse>;
332
490
 
333
491
  export interface Customer {
334
492
  /**
@@ -350,6 +508,9 @@ export interface Customer {
350
508
 
351
509
  name: string;
352
510
 
511
+ /**
512
+ * Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
513
+ */
353
514
  custom_fields?: { [key: string]: string };
354
515
  }
355
516
 
@@ -364,6 +525,9 @@ export interface CustomerDetail {
364
525
  */
365
526
  created_at: string;
366
527
 
528
+ /**
529
+ * Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
530
+ */
367
531
  custom_fields: { [key: string]: string };
368
532
 
369
533
  customer_config: CustomerDetail.CustomerConfig;
@@ -457,6 +621,9 @@ export interface CustomerListBillableMetricsResponse {
457
621
  */
458
622
  archived_at?: string;
459
623
 
624
+ /**
625
+ * Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
626
+ */
460
627
  custom_fields?: { [key: string]: string };
461
628
 
462
629
  /**
@@ -527,6 +694,59 @@ export interface CustomerPreviewEventsResponse {
527
694
  data: InvoicesAPI.Invoice;
528
695
  }
529
696
 
697
+ export interface CustomerRetrieveBillingConfigurationsResponse {
698
+ data: Array<CustomerRetrieveBillingConfigurationsResponse.Data>;
699
+ }
700
+
701
+ export namespace CustomerRetrieveBillingConfigurationsResponse {
702
+ export interface Data {
703
+ /**
704
+ * ID of this configuration; can be provided as the
705
+ * billing_provider_configuration_id when creating a contract.
706
+ */
707
+ id: string;
708
+
709
+ archived_at: string | null;
710
+
711
+ /**
712
+ * The billing provider set for this configuration.
713
+ */
714
+ billing_provider:
715
+ | 'aws_marketplace'
716
+ | 'stripe'
717
+ | 'netsuite'
718
+ | 'custom'
719
+ | 'azure_marketplace'
720
+ | 'quickbooks_online'
721
+ | 'workday'
722
+ | 'gcp_marketplace';
723
+
724
+ /**
725
+ * Configuration for the billing provider. The structure of this object is specific
726
+ * to the billing provider.
727
+ */
728
+ configuration: { [key: string]: unknown };
729
+
730
+ customer_id: string;
731
+
732
+ /**
733
+ * The method to use for delivering invoices to this customer.
734
+ */
735
+ delivery_method: 'direct_to_billing_provider' | 'aws_sqs' | 'tackle' | 'aws_sns';
736
+
737
+ /**
738
+ * Configuration for the delivery method. The structure of this object is specific
739
+ * to the delivery method.
740
+ */
741
+ delivery_method_configuration: { [key: string]: unknown };
742
+
743
+ /**
744
+ * ID of the delivery method to use for this customer.
745
+ */
746
+ delivery_method_id: string;
747
+ }
748
+ }
749
+
530
750
  export interface CustomerSetNameResponse {
531
751
  data: Customer;
532
752
  }
@@ -539,6 +759,9 @@ export interface CustomerCreateParams {
539
759
 
540
760
  billing_config?: CustomerCreateParams.BillingConfig;
541
761
 
762
+ /**
763
+ * Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
764
+ */
542
765
  custom_fields?: { [key: string]: string };
543
766
 
544
767
  customer_billing_provider_configurations?: Array<CustomerCreateParams.CustomerBillingProviderConfiguration>;
@@ -603,7 +826,11 @@ export namespace CustomerCreateParams {
603
826
  | 'us-west-1'
604
827
  | 'us-west-2';
605
828
 
606
- stripe_collection_method?: 'charge_automatically' | 'send_invoice';
829
+ stripe_collection_method?:
830
+ | 'charge_automatically'
831
+ | 'send_invoice'
832
+ | 'auto_charge_payment_intent'
833
+ | 'manually_charge_payment_intent';
607
834
  }
608
835
 
609
836
  export interface CustomerBillingProviderConfiguration {
@@ -631,6 +858,14 @@ export namespace CustomerCreateParams {
631
858
  * `delivery_method` must be provided.
632
859
  */
633
860
  delivery_method_id?: string;
861
+
862
+ /**
863
+ * Specifies which tax provider Metronome should use for tax calculation when
864
+ * billing through Stripe. This is only supported for Stripe billing provider
865
+ * configurations with auto_charge_payment_intent or manual_charge_payment_intent
866
+ * collection methods.
867
+ */
868
+ tax_provider?: 'anrok' | 'avalara' | 'stripe';
634
869
  }
635
870
  }
636
871
 
@@ -754,6 +989,66 @@ export namespace CustomerPreviewEventsParams {
754
989
  }
755
990
  }
756
991
 
992
+ export interface CustomerRetrieveBillingConfigurationsParams {
993
+ customer_id: string;
994
+
995
+ include_archived?: boolean;
996
+ }
997
+
998
+ export interface CustomerSetBillingConfigurationsParams {
999
+ data: Array<CustomerSetBillingConfigurationsParams.Data>;
1000
+ }
1001
+
1002
+ export namespace CustomerSetBillingConfigurationsParams {
1003
+ export interface Data {
1004
+ /**
1005
+ * The billing provider set for this configuration.
1006
+ */
1007
+ billing_provider:
1008
+ | 'aws_marketplace'
1009
+ | 'stripe'
1010
+ | 'netsuite'
1011
+ | 'custom'
1012
+ | 'azure_marketplace'
1013
+ | 'quickbooks_online'
1014
+ | 'workday'
1015
+ | 'gcp_marketplace';
1016
+
1017
+ customer_id: string;
1018
+
1019
+ /**
1020
+ * Configuration for the billing provider. The structure of this object is specific
1021
+ * to the billing provider and delivery method combination. Defaults to an empty
1022
+ * object, however, for most billing provider + delivery method combinations, it
1023
+ * will not be a valid configuration. For AWS marketplace configurations, the
1024
+ * aws_is_subscription_product flag can be used to indicate a product with
1025
+ * usage-based pricing. More information can be found
1026
+ * [here](https://docs.metronome.com/invoice-customers/solutions/marketplaces/invoice-aws/#provision-aws-marketplace-customers-in-metronome).
1027
+ */
1028
+ configuration?: { [key: string]: unknown };
1029
+
1030
+ /**
1031
+ * The method to use for delivering invoices to this customer. If not provided, the
1032
+ * `delivery_method_id` must be provided.
1033
+ */
1034
+ delivery_method?: 'direct_to_billing_provider' | 'aws_sqs' | 'tackle' | 'aws_sns';
1035
+
1036
+ /**
1037
+ * ID of the delivery method to use for this customer. If not provided, the
1038
+ * `delivery_method` must be provided.
1039
+ */
1040
+ delivery_method_id?: string;
1041
+
1042
+ /**
1043
+ * Specifies which tax provider Metronome should use for tax calculation when
1044
+ * billing through Stripe. This is only supported for Stripe billing provider
1045
+ * configurations with auto_charge_payment_intent or manual_charge_payment_intent
1046
+ * collection methods.
1047
+ */
1048
+ tax_provider?: 'anrok' | 'avalara' | 'stripe';
1049
+ }
1050
+ }
1051
+
757
1052
  export interface CustomerSetIngestAliasesParams {
758
1053
  /**
759
1054
  * Path param:
@@ -797,16 +1092,9 @@ export interface CustomerUpdateConfigParams {
797
1092
  salesforce_account_id?: string | null;
798
1093
  }
799
1094
 
800
- Customers.CustomerDetailsCursorPage = CustomerDetailsCursorPage;
801
- Customers.CustomerListBillableMetricsResponsesCursorPage = CustomerListBillableMetricsResponsesCursorPage;
802
- Customers.CustomerListCostsResponsesCursorPage = CustomerListCostsResponsesCursorPage;
803
1095
  Customers.Alerts = Alerts;
804
1096
  Customers.Plans = Plans;
805
- Customers.PlanListResponsesCursorPage = PlanListResponsesCursorPage;
806
- Customers.PlanListPriceAdjustmentsResponsesCursorPage = PlanListPriceAdjustmentsResponsesCursorPage;
807
1097
  Customers.Invoices = Invoices;
808
- Customers.InvoicesCursorPage = InvoicesCursorPage;
809
- Customers.InvoiceListBreakdownsResponsesCursorPage = InvoiceListBreakdownsResponsesCursorPage;
810
1098
  Customers.BillingConfig = BillingConfigAPIBillingConfig;
811
1099
  Customers.Commits = Commits;
812
1100
  Customers.Credits = Credits;
@@ -822,10 +1110,11 @@ export declare namespace Customers {
822
1110
  type CustomerListBillableMetricsResponse as CustomerListBillableMetricsResponse,
823
1111
  type CustomerListCostsResponse as CustomerListCostsResponse,
824
1112
  type CustomerPreviewEventsResponse as CustomerPreviewEventsResponse,
1113
+ type CustomerRetrieveBillingConfigurationsResponse as CustomerRetrieveBillingConfigurationsResponse,
825
1114
  type CustomerSetNameResponse as CustomerSetNameResponse,
826
- CustomerDetailsCursorPage as CustomerDetailsCursorPage,
827
- CustomerListBillableMetricsResponsesCursorPage as CustomerListBillableMetricsResponsesCursorPage,
828
- CustomerListCostsResponsesCursorPage as CustomerListCostsResponsesCursorPage,
1115
+ type CustomerDetailsCursorPage as CustomerDetailsCursorPage,
1116
+ type CustomerListBillableMetricsResponsesCursorPage as CustomerListBillableMetricsResponsesCursorPage,
1117
+ type CustomerListCostsResponsesCursorPage as CustomerListCostsResponsesCursorPage,
829
1118
  type CustomerCreateParams as CustomerCreateParams,
830
1119
  type CustomerRetrieveParams as CustomerRetrieveParams,
831
1120
  type CustomerListParams as CustomerListParams,
@@ -833,6 +1122,8 @@ export declare namespace Customers {
833
1122
  type CustomerListBillableMetricsParams as CustomerListBillableMetricsParams,
834
1123
  type CustomerListCostsParams as CustomerListCostsParams,
835
1124
  type CustomerPreviewEventsParams as CustomerPreviewEventsParams,
1125
+ type CustomerRetrieveBillingConfigurationsParams as CustomerRetrieveBillingConfigurationsParams,
1126
+ type CustomerSetBillingConfigurationsParams as CustomerSetBillingConfigurationsParams,
836
1127
  type CustomerSetIngestAliasesParams as CustomerSetIngestAliasesParams,
837
1128
  type CustomerSetNameParams as CustomerSetNameParams,
838
1129
  type CustomerUpdateConfigParams as CustomerUpdateConfigParams,
@@ -842,7 +1133,7 @@ export declare namespace Customers {
842
1133
  Alerts as Alerts,
843
1134
  type CustomerAlert as CustomerAlert,
844
1135
  type AlertRetrieveResponse as AlertRetrieveResponse,
845
- type AlertListResponse as AlertListResponse,
1136
+ type CustomerAlertsCursorPageWithoutLimit as CustomerAlertsCursorPageWithoutLimit,
846
1137
  type AlertRetrieveParams as AlertRetrieveParams,
847
1138
  type AlertListParams as AlertListParams,
848
1139
  type AlertResetParams as AlertResetParams,
@@ -854,8 +1145,8 @@ export declare namespace Customers {
854
1145
  type PlanAddResponse as PlanAddResponse,
855
1146
  type PlanEndResponse as PlanEndResponse,
856
1147
  type PlanListPriceAdjustmentsResponse as PlanListPriceAdjustmentsResponse,
857
- PlanListResponsesCursorPage as PlanListResponsesCursorPage,
858
- PlanListPriceAdjustmentsResponsesCursorPage as PlanListPriceAdjustmentsResponsesCursorPage,
1148
+ type PlanListResponsesCursorPage as PlanListResponsesCursorPage,
1149
+ type PlanListPriceAdjustmentsResponsesCursorPage as PlanListPriceAdjustmentsResponsesCursorPage,
859
1150
  type PlanListParams as PlanListParams,
860
1151
  type PlanAddParams as PlanAddParams,
861
1152
  type PlanEndParams as PlanEndParams,
@@ -868,8 +1159,8 @@ export declare namespace Customers {
868
1159
  type InvoiceRetrieveResponse as InvoiceRetrieveResponse,
869
1160
  type InvoiceAddChargeResponse as InvoiceAddChargeResponse,
870
1161
  type InvoiceListBreakdownsResponse as InvoiceListBreakdownsResponse,
871
- InvoicesCursorPage as InvoicesCursorPage,
872
- InvoiceListBreakdownsResponsesCursorPage as InvoiceListBreakdownsResponsesCursorPage,
1162
+ type InvoicesCursorPage as InvoicesCursorPage,
1163
+ type InvoiceListBreakdownsResponsesCursorPage as InvoiceListBreakdownsResponsesCursorPage,
873
1164
  type InvoiceRetrieveParams as InvoiceRetrieveParams,
874
1165
  type InvoiceListParams as InvoiceListParams,
875
1166
  type InvoiceAddChargeParams as InvoiceAddChargeParams,
@@ -887,7 +1178,6 @@ export declare namespace Customers {
887
1178
  export {
888
1179
  Commits as Commits,
889
1180
  type CommitCreateResponse as CommitCreateResponse,
890
- type CommitListResponse as CommitListResponse,
891
1181
  type CommitUpdateEndDateResponse as CommitUpdateEndDateResponse,
892
1182
  type CommitCreateParams as CommitCreateParams,
893
1183
  type CommitListParams as CommitListParams,
@@ -897,7 +1187,6 @@ export declare namespace Customers {
897
1187
  export {
898
1188
  Credits as Credits,
899
1189
  type CreditCreateResponse as CreditCreateResponse,
900
- type CreditListResponse as CreditListResponse,
901
1190
  type CreditUpdateEndDateResponse as CreditUpdateEndDateResponse,
902
1191
  type CreditCreateParams as CreditCreateParams,
903
1192
  type CreditListParams as CreditListParams,