featurebase-node 0.0.2

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 (795) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/LICENSE +201 -0
  3. package/README.md +356 -0
  4. package/api-promise.d.mts +2 -0
  5. package/api-promise.d.mts.map +1 -0
  6. package/api-promise.d.ts +2 -0
  7. package/api-promise.d.ts.map +1 -0
  8. package/api-promise.js +6 -0
  9. package/api-promise.js.map +1 -0
  10. package/api-promise.mjs +2 -0
  11. package/api-promise.mjs.map +1 -0
  12. package/client.d.mts +274 -0
  13. package/client.d.mts.map +1 -0
  14. package/client.d.ts +274 -0
  15. package/client.d.ts.map +1 -0
  16. package/client.js +569 -0
  17. package/client.js.map +1 -0
  18. package/client.mjs +565 -0
  19. package/client.mjs.map +1 -0
  20. package/core/api-promise.d.mts +46 -0
  21. package/core/api-promise.d.mts.map +1 -0
  22. package/core/api-promise.d.ts +46 -0
  23. package/core/api-promise.d.ts.map +1 -0
  24. package/core/api-promise.js +74 -0
  25. package/core/api-promise.js.map +1 -0
  26. package/core/api-promise.mjs +70 -0
  27. package/core/api-promise.mjs.map +1 -0
  28. package/core/error.d.mts +46 -0
  29. package/core/error.d.mts.map +1 -0
  30. package/core/error.d.ts +46 -0
  31. package/core/error.d.ts.map +1 -0
  32. package/core/error.js +113 -0
  33. package/core/error.js.map +1 -0
  34. package/core/error.mjs +97 -0
  35. package/core/error.mjs.map +1 -0
  36. package/core/resource.d.mts +6 -0
  37. package/core/resource.d.mts.map +1 -0
  38. package/core/resource.d.ts +6 -0
  39. package/core/resource.d.ts.map +1 -0
  40. package/core/resource.js +11 -0
  41. package/core/resource.js.map +1 -0
  42. package/core/resource.mjs +7 -0
  43. package/core/resource.mjs.map +1 -0
  44. package/core/uploads.d.mts +3 -0
  45. package/core/uploads.d.mts.map +1 -0
  46. package/core/uploads.d.ts +3 -0
  47. package/core/uploads.d.ts.map +1 -0
  48. package/core/uploads.js +6 -0
  49. package/core/uploads.js.map +1 -0
  50. package/core/uploads.mjs +2 -0
  51. package/core/uploads.mjs.map +1 -0
  52. package/error.d.mts +2 -0
  53. package/error.d.mts.map +1 -0
  54. package/error.d.ts +2 -0
  55. package/error.d.ts.map +1 -0
  56. package/error.js +6 -0
  57. package/error.js.map +1 -0
  58. package/error.mjs +2 -0
  59. package/error.mjs.map +1 -0
  60. package/index.d.mts +6 -0
  61. package/index.d.mts.map +1 -0
  62. package/index.d.ts +6 -0
  63. package/index.d.ts.map +1 -0
  64. package/index.js +30 -0
  65. package/index.js.map +1 -0
  66. package/index.mjs +7 -0
  67. package/index.mjs.map +1 -0
  68. package/internal/builtin-types.d.mts +73 -0
  69. package/internal/builtin-types.d.mts.map +1 -0
  70. package/internal/builtin-types.d.ts +73 -0
  71. package/internal/builtin-types.d.ts.map +1 -0
  72. package/internal/builtin-types.js +4 -0
  73. package/internal/builtin-types.js.map +1 -0
  74. package/internal/builtin-types.mjs +3 -0
  75. package/internal/builtin-types.mjs.map +1 -0
  76. package/internal/detect-platform.d.mts +15 -0
  77. package/internal/detect-platform.d.mts.map +1 -0
  78. package/internal/detect-platform.d.ts +15 -0
  79. package/internal/detect-platform.d.ts.map +1 -0
  80. package/internal/detect-platform.js +162 -0
  81. package/internal/detect-platform.js.map +1 -0
  82. package/internal/detect-platform.mjs +157 -0
  83. package/internal/detect-platform.mjs.map +1 -0
  84. package/internal/errors.d.mts +3 -0
  85. package/internal/errors.d.mts.map +1 -0
  86. package/internal/errors.d.ts +3 -0
  87. package/internal/errors.d.ts.map +1 -0
  88. package/internal/errors.js +41 -0
  89. package/internal/errors.js.map +1 -0
  90. package/internal/errors.mjs +36 -0
  91. package/internal/errors.mjs.map +1 -0
  92. package/internal/headers.d.mts +20 -0
  93. package/internal/headers.d.mts.map +1 -0
  94. package/internal/headers.d.ts +20 -0
  95. package/internal/headers.d.ts.map +1 -0
  96. package/internal/headers.js +79 -0
  97. package/internal/headers.js.map +1 -0
  98. package/internal/headers.mjs +74 -0
  99. package/internal/headers.mjs.map +1 -0
  100. package/internal/parse.d.mts +12 -0
  101. package/internal/parse.d.mts.map +1 -0
  102. package/internal/parse.d.ts +12 -0
  103. package/internal/parse.d.ts.map +1 -0
  104. package/internal/parse.js +40 -0
  105. package/internal/parse.js.map +1 -0
  106. package/internal/parse.mjs +37 -0
  107. package/internal/parse.mjs.map +1 -0
  108. package/internal/qs/formats.d.mts +7 -0
  109. package/internal/qs/formats.d.mts.map +1 -0
  110. package/internal/qs/formats.d.ts +7 -0
  111. package/internal/qs/formats.d.ts.map +1 -0
  112. package/internal/qs/formats.js +13 -0
  113. package/internal/qs/formats.js.map +1 -0
  114. package/internal/qs/formats.mjs +9 -0
  115. package/internal/qs/formats.mjs.map +1 -0
  116. package/internal/qs/index.d.mts +10 -0
  117. package/internal/qs/index.d.mts.map +1 -0
  118. package/internal/qs/index.d.ts +10 -0
  119. package/internal/qs/index.d.ts.map +1 -0
  120. package/internal/qs/index.js +14 -0
  121. package/internal/qs/index.js.map +1 -0
  122. package/internal/qs/index.mjs +10 -0
  123. package/internal/qs/index.mjs.map +1 -0
  124. package/internal/qs/stringify.d.mts +3 -0
  125. package/internal/qs/stringify.d.mts.map +1 -0
  126. package/internal/qs/stringify.d.ts +3 -0
  127. package/internal/qs/stringify.d.ts.map +1 -0
  128. package/internal/qs/stringify.js +277 -0
  129. package/internal/qs/stringify.js.map +1 -0
  130. package/internal/qs/stringify.mjs +274 -0
  131. package/internal/qs/stringify.mjs.map +1 -0
  132. package/internal/qs/types.d.mts +57 -0
  133. package/internal/qs/types.d.mts.map +1 -0
  134. package/internal/qs/types.d.ts +57 -0
  135. package/internal/qs/types.d.ts.map +1 -0
  136. package/internal/qs/types.js +3 -0
  137. package/internal/qs/types.js.map +1 -0
  138. package/internal/qs/types.mjs +2 -0
  139. package/internal/qs/types.mjs.map +1 -0
  140. package/internal/qs/utils.d.mts +15 -0
  141. package/internal/qs/utils.d.mts.map +1 -0
  142. package/internal/qs/utils.d.ts +15 -0
  143. package/internal/qs/utils.d.ts.map +1 -0
  144. package/internal/qs/utils.js +230 -0
  145. package/internal/qs/utils.js.map +1 -0
  146. package/internal/qs/utils.mjs +217 -0
  147. package/internal/qs/utils.mjs.map +1 -0
  148. package/internal/request-options.d.mts +75 -0
  149. package/internal/request-options.d.mts.map +1 -0
  150. package/internal/request-options.d.ts +75 -0
  151. package/internal/request-options.d.ts.map +1 -0
  152. package/internal/request-options.js +14 -0
  153. package/internal/request-options.js.map +1 -0
  154. package/internal/request-options.mjs +10 -0
  155. package/internal/request-options.mjs.map +1 -0
  156. package/internal/shim-types.d.mts +17 -0
  157. package/internal/shim-types.d.mts.map +1 -0
  158. package/internal/shim-types.d.ts +17 -0
  159. package/internal/shim-types.d.ts.map +1 -0
  160. package/internal/shim-types.js +4 -0
  161. package/internal/shim-types.js.map +1 -0
  162. package/internal/shim-types.mjs +3 -0
  163. package/internal/shim-types.mjs.map +1 -0
  164. package/internal/shims.d.mts +20 -0
  165. package/internal/shims.d.mts.map +1 -0
  166. package/internal/shims.d.ts +20 -0
  167. package/internal/shims.d.ts.map +1 -0
  168. package/internal/shims.js +92 -0
  169. package/internal/shims.js.map +1 -0
  170. package/internal/shims.mjs +85 -0
  171. package/internal/shims.mjs.map +1 -0
  172. package/internal/to-file.d.mts +45 -0
  173. package/internal/to-file.d.mts.map +1 -0
  174. package/internal/to-file.d.ts +45 -0
  175. package/internal/to-file.d.ts.map +1 -0
  176. package/internal/to-file.js +91 -0
  177. package/internal/to-file.js.map +1 -0
  178. package/internal/to-file.mjs +88 -0
  179. package/internal/to-file.mjs.map +1 -0
  180. package/internal/tslib.js +81 -0
  181. package/internal/tslib.mjs +17 -0
  182. package/internal/types.d.mts +69 -0
  183. package/internal/types.d.mts.map +1 -0
  184. package/internal/types.d.ts +69 -0
  185. package/internal/types.d.ts.map +1 -0
  186. package/internal/types.js +4 -0
  187. package/internal/types.js.map +1 -0
  188. package/internal/types.mjs +3 -0
  189. package/internal/types.mjs.map +1 -0
  190. package/internal/uploads.d.mts +42 -0
  191. package/internal/uploads.d.mts.map +1 -0
  192. package/internal/uploads.d.ts +42 -0
  193. package/internal/uploads.d.ts.map +1 -0
  194. package/internal/uploads.js +141 -0
  195. package/internal/uploads.js.map +1 -0
  196. package/internal/uploads.mjs +131 -0
  197. package/internal/uploads.mjs.map +1 -0
  198. package/internal/utils/base64.d.mts +3 -0
  199. package/internal/utils/base64.d.mts.map +1 -0
  200. package/internal/utils/base64.d.ts +3 -0
  201. package/internal/utils/base64.d.ts.map +1 -0
  202. package/internal/utils/base64.js +38 -0
  203. package/internal/utils/base64.js.map +1 -0
  204. package/internal/utils/base64.mjs +33 -0
  205. package/internal/utils/base64.mjs.map +1 -0
  206. package/internal/utils/bytes.d.mts +4 -0
  207. package/internal/utils/bytes.d.mts.map +1 -0
  208. package/internal/utils/bytes.d.ts +4 -0
  209. package/internal/utils/bytes.d.ts.map +1 -0
  210. package/internal/utils/bytes.js +31 -0
  211. package/internal/utils/bytes.js.map +1 -0
  212. package/internal/utils/bytes.mjs +26 -0
  213. package/internal/utils/bytes.mjs.map +1 -0
  214. package/internal/utils/env.d.mts +9 -0
  215. package/internal/utils/env.d.mts.map +1 -0
  216. package/internal/utils/env.d.ts +9 -0
  217. package/internal/utils/env.d.ts.map +1 -0
  218. package/internal/utils/env.js +22 -0
  219. package/internal/utils/env.js.map +1 -0
  220. package/internal/utils/env.mjs +18 -0
  221. package/internal/utils/env.mjs.map +1 -0
  222. package/internal/utils/log.d.mts +37 -0
  223. package/internal/utils/log.d.mts.map +1 -0
  224. package/internal/utils/log.d.ts +37 -0
  225. package/internal/utils/log.d.ts.map +1 -0
  226. package/internal/utils/log.js +85 -0
  227. package/internal/utils/log.js.map +1 -0
  228. package/internal/utils/log.mjs +79 -0
  229. package/internal/utils/log.mjs.map +1 -0
  230. package/internal/utils/path.d.mts +15 -0
  231. package/internal/utils/path.d.mts.map +1 -0
  232. package/internal/utils/path.d.ts +15 -0
  233. package/internal/utils/path.d.ts.map +1 -0
  234. package/internal/utils/path.js +79 -0
  235. package/internal/utils/path.js.map +1 -0
  236. package/internal/utils/path.mjs +74 -0
  237. package/internal/utils/path.mjs.map +1 -0
  238. package/internal/utils/query.d.mts +2 -0
  239. package/internal/utils/query.d.mts.map +1 -0
  240. package/internal/utils/query.d.ts +2 -0
  241. package/internal/utils/query.d.ts.map +1 -0
  242. package/internal/utils/query.js +10 -0
  243. package/internal/utils/query.js.map +1 -0
  244. package/internal/utils/query.mjs +6 -0
  245. package/internal/utils/query.mjs.map +1 -0
  246. package/internal/utils/sleep.d.mts +2 -0
  247. package/internal/utils/sleep.d.mts.map +1 -0
  248. package/internal/utils/sleep.d.ts +2 -0
  249. package/internal/utils/sleep.d.ts.map +1 -0
  250. package/internal/utils/sleep.js +7 -0
  251. package/internal/utils/sleep.js.map +1 -0
  252. package/internal/utils/sleep.mjs +3 -0
  253. package/internal/utils/sleep.mjs.map +1 -0
  254. package/internal/utils/uuid.d.mts +5 -0
  255. package/internal/utils/uuid.d.mts.map +1 -0
  256. package/internal/utils/uuid.d.ts +5 -0
  257. package/internal/utils/uuid.d.ts.map +1 -0
  258. package/internal/utils/uuid.js +19 -0
  259. package/internal/utils/uuid.js.map +1 -0
  260. package/internal/utils/uuid.mjs +15 -0
  261. package/internal/utils/uuid.mjs.map +1 -0
  262. package/internal/utils/values.d.mts +18 -0
  263. package/internal/utils/values.d.mts.map +1 -0
  264. package/internal/utils/values.d.ts +18 -0
  265. package/internal/utils/values.d.ts.map +1 -0
  266. package/internal/utils/values.js +112 -0
  267. package/internal/utils/values.js.map +1 -0
  268. package/internal/utils/values.mjs +94 -0
  269. package/internal/utils/values.mjs.map +1 -0
  270. package/internal/utils.d.mts +8 -0
  271. package/internal/utils.d.mts.map +1 -0
  272. package/internal/utils.d.ts +8 -0
  273. package/internal/utils.d.ts.map +1 -0
  274. package/internal/utils.js +12 -0
  275. package/internal/utils.js.map +1 -0
  276. package/internal/utils.mjs +9 -0
  277. package/internal/utils.mjs.map +1 -0
  278. package/package.json +143 -0
  279. package/resource.d.mts +2 -0
  280. package/resource.d.mts.map +1 -0
  281. package/resource.d.ts +2 -0
  282. package/resource.d.ts.map +1 -0
  283. package/resource.js +6 -0
  284. package/resource.js.map +1 -0
  285. package/resource.mjs +2 -0
  286. package/resource.mjs.map +1 -0
  287. package/resources/admins.d.mts +437 -0
  288. package/resources/admins.d.mts.map +1 -0
  289. package/resources/admins.d.ts +437 -0
  290. package/resources/admins.d.ts.map +1 -0
  291. package/resources/admins.js +157 -0
  292. package/resources/admins.js.map +1 -0
  293. package/resources/admins.mjs +153 -0
  294. package/resources/admins.mjs.map +1 -0
  295. package/resources/boards.d.mts +202 -0
  296. package/resources/boards.d.mts.map +1 -0
  297. package/resources/boards.d.ts +202 -0
  298. package/resources/boards.d.ts.map +1 -0
  299. package/resources/boards.js +52 -0
  300. package/resources/boards.js.map +1 -0
  301. package/resources/boards.mjs +48 -0
  302. package/resources/boards.mjs.map +1 -0
  303. package/resources/brands.d.mts +180 -0
  304. package/resources/brands.d.mts.map +1 -0
  305. package/resources/brands.d.ts +180 -0
  306. package/resources/brands.d.ts.map +1 -0
  307. package/resources/brands.js +130 -0
  308. package/resources/brands.js.map +1 -0
  309. package/resources/brands.mjs +126 -0
  310. package/resources/brands.mjs.map +1 -0
  311. package/resources/changelogs/changelogs.d.mts +723 -0
  312. package/resources/changelogs/changelogs.d.mts.map +1 -0
  313. package/resources/changelogs/changelogs.d.ts +723 -0
  314. package/resources/changelogs/changelogs.d.ts.map +1 -0
  315. package/resources/changelogs/changelogs.js +406 -0
  316. package/resources/changelogs/changelogs.js.map +1 -0
  317. package/resources/changelogs/changelogs.mjs +401 -0
  318. package/resources/changelogs/changelogs.mjs.map +1 -0
  319. package/resources/changelogs/index.d.mts +3 -0
  320. package/resources/changelogs/index.d.mts.map +1 -0
  321. package/resources/changelogs/index.d.ts +3 -0
  322. package/resources/changelogs/index.d.ts.map +1 -0
  323. package/resources/changelogs/index.js +9 -0
  324. package/resources/changelogs/index.js.map +1 -0
  325. package/resources/changelogs/index.mjs +4 -0
  326. package/resources/changelogs/index.mjs.map +1 -0
  327. package/resources/changelogs/subscribers.d.mts +145 -0
  328. package/resources/changelogs/subscribers.d.mts.map +1 -0
  329. package/resources/changelogs/subscribers.d.ts +145 -0
  330. package/resources/changelogs/subscribers.d.ts.map +1 -0
  331. package/resources/changelogs/subscribers.js +119 -0
  332. package/resources/changelogs/subscribers.js.map +1 -0
  333. package/resources/changelogs/subscribers.mjs +115 -0
  334. package/resources/changelogs/subscribers.mjs.map +1 -0
  335. package/resources/changelogs.d.mts +2 -0
  336. package/resources/changelogs.d.mts.map +1 -0
  337. package/resources/changelogs.d.ts +2 -0
  338. package/resources/changelogs.d.ts.map +1 -0
  339. package/resources/changelogs.js +6 -0
  340. package/resources/changelogs.js.map +1 -0
  341. package/resources/changelogs.mjs +3 -0
  342. package/resources/changelogs.mjs.map +1 -0
  343. package/resources/comments.d.mts +632 -0
  344. package/resources/comments.d.mts.map +1 -0
  345. package/resources/comments.d.ts +632 -0
  346. package/resources/comments.d.ts.map +1 -0
  347. package/resources/comments.js +397 -0
  348. package/resources/comments.js.map +1 -0
  349. package/resources/comments.mjs +393 -0
  350. package/resources/comments.mjs.map +1 -0
  351. package/resources/companies/companies.d.mts +497 -0
  352. package/resources/companies/companies.d.mts.map +1 -0
  353. package/resources/companies/companies.d.ts +497 -0
  354. package/resources/companies/companies.d.ts.map +1 -0
  355. package/resources/companies/companies.js +368 -0
  356. package/resources/companies/companies.js.map +1 -0
  357. package/resources/companies/companies.mjs +363 -0
  358. package/resources/companies/companies.mjs.map +1 -0
  359. package/resources/companies/contacts.d.mts +236 -0
  360. package/resources/companies/contacts.d.mts.map +1 -0
  361. package/resources/companies/contacts.d.ts +236 -0
  362. package/resources/companies/contacts.d.ts.map +1 -0
  363. package/resources/companies/contacts.js +218 -0
  364. package/resources/companies/contacts.js.map +1 -0
  365. package/resources/companies/contacts.mjs +214 -0
  366. package/resources/companies/contacts.mjs.map +1 -0
  367. package/resources/companies/index.d.mts +3 -0
  368. package/resources/companies/index.d.mts.map +1 -0
  369. package/resources/companies/index.d.ts +3 -0
  370. package/resources/companies/index.d.ts.map +1 -0
  371. package/resources/companies/index.js +9 -0
  372. package/resources/companies/index.js.map +1 -0
  373. package/resources/companies/index.mjs +4 -0
  374. package/resources/companies/index.mjs.map +1 -0
  375. package/resources/companies.d.mts +2 -0
  376. package/resources/companies.d.mts.map +1 -0
  377. package/resources/companies.d.ts +2 -0
  378. package/resources/companies.d.ts.map +1 -0
  379. package/resources/companies.js +6 -0
  380. package/resources/companies.js.map +1 -0
  381. package/resources/companies.mjs +3 -0
  382. package/resources/companies.mjs.map +1 -0
  383. package/resources/contacts/by-user-id/by-user-id.d.mts +147 -0
  384. package/resources/contacts/by-user-id/by-user-id.d.mts.map +1 -0
  385. package/resources/contacts/by-user-id/by-user-id.d.ts +147 -0
  386. package/resources/contacts/by-user-id/by-user-id.d.ts.map +1 -0
  387. package/resources/contacts/by-user-id/by-user-id.js +152 -0
  388. package/resources/contacts/by-user-id/by-user-id.js.map +1 -0
  389. package/resources/contacts/by-user-id/by-user-id.mjs +147 -0
  390. package/resources/contacts/by-user-id/by-user-id.mjs.map +1 -0
  391. package/resources/contacts/by-user-id/email-preferences.d.mts +199 -0
  392. package/resources/contacts/by-user-id/email-preferences.d.mts.map +1 -0
  393. package/resources/contacts/by-user-id/email-preferences.d.ts +199 -0
  394. package/resources/contacts/by-user-id/email-preferences.d.ts.map +1 -0
  395. package/resources/contacts/by-user-id/email-preferences.js +176 -0
  396. package/resources/contacts/by-user-id/email-preferences.js.map +1 -0
  397. package/resources/contacts/by-user-id/email-preferences.mjs +172 -0
  398. package/resources/contacts/by-user-id/email-preferences.mjs.map +1 -0
  399. package/resources/contacts/by-user-id/index.d.mts +3 -0
  400. package/resources/contacts/by-user-id/index.d.mts.map +1 -0
  401. package/resources/contacts/by-user-id/index.d.ts +3 -0
  402. package/resources/contacts/by-user-id/index.d.ts.map +1 -0
  403. package/resources/contacts/by-user-id/index.js +9 -0
  404. package/resources/contacts/by-user-id/index.js.map +1 -0
  405. package/resources/contacts/by-user-id/index.mjs +4 -0
  406. package/resources/contacts/by-user-id/index.mjs.map +1 -0
  407. package/resources/contacts/by-user-id.d.mts +2 -0
  408. package/resources/contacts/by-user-id.d.mts.map +1 -0
  409. package/resources/contacts/by-user-id.d.ts +2 -0
  410. package/resources/contacts/by-user-id.d.ts.map +1 -0
  411. package/resources/contacts/by-user-id.js +6 -0
  412. package/resources/contacts/by-user-id.js.map +1 -0
  413. package/resources/contacts/by-user-id.mjs +3 -0
  414. package/resources/contacts/by-user-id.mjs.map +1 -0
  415. package/resources/contacts/contacts.d.mts +708 -0
  416. package/resources/contacts/contacts.d.mts.map +1 -0
  417. package/resources/contacts/contacts.d.ts +708 -0
  418. package/resources/contacts/contacts.d.ts.map +1 -0
  419. package/resources/contacts/contacts.js +444 -0
  420. package/resources/contacts/contacts.js.map +1 -0
  421. package/resources/contacts/contacts.mjs +439 -0
  422. package/resources/contacts/contacts.mjs.map +1 -0
  423. package/resources/contacts/email-preferences.d.mts +334 -0
  424. package/resources/contacts/email-preferences.d.mts.map +1 -0
  425. package/resources/contacts/email-preferences.d.ts +334 -0
  426. package/resources/contacts/email-preferences.d.ts.map +1 -0
  427. package/resources/contacts/email-preferences.js +219 -0
  428. package/resources/contacts/email-preferences.js.map +1 -0
  429. package/resources/contacts/email-preferences.mjs +215 -0
  430. package/resources/contacts/email-preferences.mjs.map +1 -0
  431. package/resources/contacts/index.d.mts +4 -0
  432. package/resources/contacts/index.d.mts.map +1 -0
  433. package/resources/contacts/index.d.ts +4 -0
  434. package/resources/contacts/index.d.ts.map +1 -0
  435. package/resources/contacts/index.js +11 -0
  436. package/resources/contacts/index.js.map +1 -0
  437. package/resources/contacts/index.mjs +5 -0
  438. package/resources/contacts/index.mjs.map +1 -0
  439. package/resources/contacts.d.mts +2 -0
  440. package/resources/contacts.d.mts.map +1 -0
  441. package/resources/contacts.d.ts +2 -0
  442. package/resources/contacts.d.ts.map +1 -0
  443. package/resources/contacts.js +6 -0
  444. package/resources/contacts.js.map +1 -0
  445. package/resources/contacts.mjs +3 -0
  446. package/resources/contacts.mjs.map +1 -0
  447. package/resources/conversations/conversations.d.mts +2235 -0
  448. package/resources/conversations/conversations.d.mts.map +1 -0
  449. package/resources/conversations/conversations.d.ts +2235 -0
  450. package/resources/conversations/conversations.d.ts.map +1 -0
  451. package/resources/conversations/conversations.js +753 -0
  452. package/resources/conversations/conversations.js.map +1 -0
  453. package/resources/conversations/conversations.mjs +748 -0
  454. package/resources/conversations/conversations.mjs.map +1 -0
  455. package/resources/conversations/index.d.mts +4 -0
  456. package/resources/conversations/index.d.mts.map +1 -0
  457. package/resources/conversations/index.d.ts +4 -0
  458. package/resources/conversations/index.d.ts.map +1 -0
  459. package/resources/conversations/index.js +11 -0
  460. package/resources/conversations/index.js.map +1 -0
  461. package/resources/conversations/index.mjs +5 -0
  462. package/resources/conversations/index.mjs.map +1 -0
  463. package/resources/conversations/participants.d.mts +217 -0
  464. package/resources/conversations/participants.d.mts.map +1 -0
  465. package/resources/conversations/participants.d.ts +217 -0
  466. package/resources/conversations/participants.d.ts.map +1 -0
  467. package/resources/conversations/participants.js +185 -0
  468. package/resources/conversations/participants.js.map +1 -0
  469. package/resources/conversations/participants.mjs +181 -0
  470. package/resources/conversations/participants.mjs.map +1 -0
  471. package/resources/conversations/tags.d.mts +200 -0
  472. package/resources/conversations/tags.d.mts.map +1 -0
  473. package/resources/conversations/tags.d.ts +200 -0
  474. package/resources/conversations/tags.d.ts.map +1 -0
  475. package/resources/conversations/tags.js +138 -0
  476. package/resources/conversations/tags.js.map +1 -0
  477. package/resources/conversations/tags.mjs +134 -0
  478. package/resources/conversations/tags.mjs.map +1 -0
  479. package/resources/conversations.d.mts +2 -0
  480. package/resources/conversations.d.mts.map +1 -0
  481. package/resources/conversations.d.ts +2 -0
  482. package/resources/conversations.d.ts.map +1 -0
  483. package/resources/conversations.js +6 -0
  484. package/resources/conversations.js.map +1 -0
  485. package/resources/conversations.mjs +3 -0
  486. package/resources/conversations.mjs.map +1 -0
  487. package/resources/custom-fields.d.mts +189 -0
  488. package/resources/custom-fields.d.mts.map +1 -0
  489. package/resources/custom-fields.d.ts +189 -0
  490. package/resources/custom-fields.d.ts.map +1 -0
  491. package/resources/custom-fields.js +92 -0
  492. package/resources/custom-fields.js.map +1 -0
  493. package/resources/custom-fields.mjs +88 -0
  494. package/resources/custom-fields.mjs.map +1 -0
  495. package/resources/help-center/articles.d.mts +770 -0
  496. package/resources/help-center/articles.d.mts.map +1 -0
  497. package/resources/help-center/articles.d.ts +770 -0
  498. package/resources/help-center/articles.d.ts.map +1 -0
  499. package/resources/help-center/articles.js +296 -0
  500. package/resources/help-center/articles.js.map +1 -0
  501. package/resources/help-center/articles.mjs +292 -0
  502. package/resources/help-center/articles.mjs.map +1 -0
  503. package/resources/help-center/collections.d.mts +669 -0
  504. package/resources/help-center/collections.d.mts.map +1 -0
  505. package/resources/help-center/collections.d.ts +669 -0
  506. package/resources/help-center/collections.d.ts.map +1 -0
  507. package/resources/help-center/collections.js +278 -0
  508. package/resources/help-center/collections.js.map +1 -0
  509. package/resources/help-center/collections.mjs +274 -0
  510. package/resources/help-center/collections.mjs.map +1 -0
  511. package/resources/help-center/help-center.d.mts +22 -0
  512. package/resources/help-center/help-center.d.mts.map +1 -0
  513. package/resources/help-center/help-center.d.ts +22 -0
  514. package/resources/help-center/help-center.d.ts.map +1 -0
  515. package/resources/help-center/help-center.js +29 -0
  516. package/resources/help-center/help-center.js.map +1 -0
  517. package/resources/help-center/help-center.mjs +24 -0
  518. package/resources/help-center/help-center.mjs.map +1 -0
  519. package/resources/help-center/help-centers.d.mts +312 -0
  520. package/resources/help-center/help-centers.d.mts.map +1 -0
  521. package/resources/help-center/help-centers.d.ts +312 -0
  522. package/resources/help-center/help-centers.d.ts.map +1 -0
  523. package/resources/help-center/help-centers.js +111 -0
  524. package/resources/help-center/help-centers.js.map +1 -0
  525. package/resources/help-center/help-centers.mjs +107 -0
  526. package/resources/help-center/help-centers.mjs.map +1 -0
  527. package/resources/help-center/index.d.mts +6 -0
  528. package/resources/help-center/index.d.mts.map +1 -0
  529. package/resources/help-center/index.d.ts +6 -0
  530. package/resources/help-center/index.d.ts.map +1 -0
  531. package/resources/help-center/index.js +15 -0
  532. package/resources/help-center/index.js.map +1 -0
  533. package/resources/help-center/index.mjs +7 -0
  534. package/resources/help-center/index.mjs.map +1 -0
  535. package/resources/help-center/redirect-rules.d.mts +417 -0
  536. package/resources/help-center/redirect-rules.d.mts.map +1 -0
  537. package/resources/help-center/redirect-rules.d.ts +417 -0
  538. package/resources/help-center/redirect-rules.d.ts.map +1 -0
  539. package/resources/help-center/redirect-rules.js +297 -0
  540. package/resources/help-center/redirect-rules.js.map +1 -0
  541. package/resources/help-center/redirect-rules.mjs +293 -0
  542. package/resources/help-center/redirect-rules.mjs.map +1 -0
  543. package/resources/help-center.d.mts +2 -0
  544. package/resources/help-center.d.mts.map +1 -0
  545. package/resources/help-center.d.ts +2 -0
  546. package/resources/help-center.d.ts.map +1 -0
  547. package/resources/help-center.js +6 -0
  548. package/resources/help-center.js.map +1 -0
  549. package/resources/help-center.mjs +3 -0
  550. package/resources/help-center.mjs.map +1 -0
  551. package/resources/index.d.mts +18 -0
  552. package/resources/index.d.mts.map +1 -0
  553. package/resources/index.d.ts +18 -0
  554. package/resources/index.d.ts.map +1 -0
  555. package/resources/index.js +39 -0
  556. package/resources/index.js.map +1 -0
  557. package/resources/index.mjs +19 -0
  558. package/resources/index.mjs.map +1 -0
  559. package/resources/post-statuses.d.mts +74 -0
  560. package/resources/post-statuses.d.mts.map +1 -0
  561. package/resources/post-statuses.d.ts +74 -0
  562. package/resources/post-statuses.d.ts.map +1 -0
  563. package/resources/post-statuses.js +53 -0
  564. package/resources/post-statuses.js.map +1 -0
  565. package/resources/post-statuses.mjs +49 -0
  566. package/resources/post-statuses.mjs.map +1 -0
  567. package/resources/posts/index.d.mts +3 -0
  568. package/resources/posts/index.d.mts.map +1 -0
  569. package/resources/posts/index.d.ts +3 -0
  570. package/resources/posts/index.d.ts.map +1 -0
  571. package/resources/posts/index.js +9 -0
  572. package/resources/posts/index.js.map +1 -0
  573. package/resources/posts/index.mjs +4 -0
  574. package/resources/posts/index.mjs.map +1 -0
  575. package/resources/posts/posts.d.mts +799 -0
  576. package/resources/posts/posts.d.mts.map +1 -0
  577. package/resources/posts/posts.d.ts +799 -0
  578. package/resources/posts/posts.d.ts.map +1 -0
  579. package/resources/posts/posts.js +271 -0
  580. package/resources/posts/posts.js.map +1 -0
  581. package/resources/posts/posts.mjs +266 -0
  582. package/resources/posts/posts.mjs.map +1 -0
  583. package/resources/posts/voters.d.mts +359 -0
  584. package/resources/posts/voters.d.mts.map +1 -0
  585. package/resources/posts/voters.d.ts +359 -0
  586. package/resources/posts/voters.d.ts.map +1 -0
  587. package/resources/posts/voters.js +171 -0
  588. package/resources/posts/voters.js.map +1 -0
  589. package/resources/posts/voters.mjs +167 -0
  590. package/resources/posts/voters.mjs.map +1 -0
  591. package/resources/posts.d.mts +2 -0
  592. package/resources/posts.d.mts.map +1 -0
  593. package/resources/posts.d.ts +2 -0
  594. package/resources/posts.d.ts.map +1 -0
  595. package/resources/posts.js +6 -0
  596. package/resources/posts.js.map +1 -0
  597. package/resources/posts.mjs +3 -0
  598. package/resources/posts.mjs.map +1 -0
  599. package/resources/surveys.d.mts +451 -0
  600. package/resources/surveys.d.mts.map +1 -0
  601. package/resources/surveys.d.ts +451 -0
  602. package/resources/surveys.d.ts.map +1 -0
  603. package/resources/surveys.js +149 -0
  604. package/resources/surveys.js.map +1 -0
  605. package/resources/surveys.mjs +145 -0
  606. package/resources/surveys.mjs.map +1 -0
  607. package/resources/tags.d.mts +147 -0
  608. package/resources/tags.d.mts.map +1 -0
  609. package/resources/tags.d.ts +147 -0
  610. package/resources/tags.d.ts.map +1 -0
  611. package/resources/tags.js +100 -0
  612. package/resources/tags.js.map +1 -0
  613. package/resources/tags.mjs +96 -0
  614. package/resources/tags.mjs.map +1 -0
  615. package/resources/teams.d.mts +165 -0
  616. package/resources/teams.d.mts.map +1 -0
  617. package/resources/teams.d.ts +165 -0
  618. package/resources/teams.d.ts.map +1 -0
  619. package/resources/teams.js +120 -0
  620. package/resources/teams.js.map +1 -0
  621. package/resources/teams.mjs +116 -0
  622. package/resources/teams.mjs.map +1 -0
  623. package/resources/tickets/categories.d.mts +63 -0
  624. package/resources/tickets/categories.d.mts.map +1 -0
  625. package/resources/tickets/categories.d.ts +63 -0
  626. package/resources/tickets/categories.d.ts.map +1 -0
  627. package/resources/tickets/categories.js +67 -0
  628. package/resources/tickets/categories.js.map +1 -0
  629. package/resources/tickets/categories.mjs +63 -0
  630. package/resources/tickets/categories.mjs.map +1 -0
  631. package/resources/tickets/custom-fields.d.mts +80 -0
  632. package/resources/tickets/custom-fields.d.mts.map +1 -0
  633. package/resources/tickets/custom-fields.d.ts +80 -0
  634. package/resources/tickets/custom-fields.d.ts.map +1 -0
  635. package/resources/tickets/custom-fields.js +85 -0
  636. package/resources/tickets/custom-fields.js.map +1 -0
  637. package/resources/tickets/custom-fields.mjs +81 -0
  638. package/resources/tickets/custom-fields.mjs.map +1 -0
  639. package/resources/tickets/index.d.mts +5 -0
  640. package/resources/tickets/index.d.mts.map +1 -0
  641. package/resources/tickets/index.d.ts +5 -0
  642. package/resources/tickets/index.d.ts.map +1 -0
  643. package/resources/tickets/index.js +13 -0
  644. package/resources/tickets/index.js.map +1 -0
  645. package/resources/tickets/index.mjs +6 -0
  646. package/resources/tickets/index.mjs.map +1 -0
  647. package/resources/tickets/statuses.d.mts +59 -0
  648. package/resources/tickets/statuses.d.mts.map +1 -0
  649. package/resources/tickets/statuses.d.ts +59 -0
  650. package/resources/tickets/statuses.d.ts.map +1 -0
  651. package/resources/tickets/statuses.js +63 -0
  652. package/resources/tickets/statuses.js.map +1 -0
  653. package/resources/tickets/statuses.mjs +59 -0
  654. package/resources/tickets/statuses.mjs.map +1 -0
  655. package/resources/tickets/tickets.d.mts +794 -0
  656. package/resources/tickets/tickets.d.mts.map +1 -0
  657. package/resources/tickets/tickets.d.ts +794 -0
  658. package/resources/tickets/tickets.d.ts.map +1 -0
  659. package/resources/tickets/tickets.js +327 -0
  660. package/resources/tickets/tickets.js.map +1 -0
  661. package/resources/tickets/tickets.mjs +322 -0
  662. package/resources/tickets/tickets.mjs.map +1 -0
  663. package/resources/tickets.d.mts +2 -0
  664. package/resources/tickets.d.mts.map +1 -0
  665. package/resources/tickets.d.ts +2 -0
  666. package/resources/tickets.d.ts.map +1 -0
  667. package/resources/tickets.js +6 -0
  668. package/resources/tickets.js.map +1 -0
  669. package/resources/tickets.mjs +3 -0
  670. package/resources/tickets.mjs.map +1 -0
  671. package/resources/webhooks.d.mts +626 -0
  672. package/resources/webhooks.d.mts.map +1 -0
  673. package/resources/webhooks.d.ts +626 -0
  674. package/resources/webhooks.d.ts.map +1 -0
  675. package/resources/webhooks.js +442 -0
  676. package/resources/webhooks.js.map +1 -0
  677. package/resources/webhooks.mjs +438 -0
  678. package/resources/webhooks.mjs.map +1 -0
  679. package/resources.d.mts +2 -0
  680. package/resources.d.mts.map +1 -0
  681. package/resources.d.ts +2 -0
  682. package/resources.d.ts.map +1 -0
  683. package/resources.js +5 -0
  684. package/resources.js.map +1 -0
  685. package/resources.mjs +2 -0
  686. package/resources.mjs.map +1 -0
  687. package/src/api-promise.ts +2 -0
  688. package/src/client.ts +1169 -0
  689. package/src/core/README.md +3 -0
  690. package/src/core/api-promise.ts +92 -0
  691. package/src/core/error.ts +130 -0
  692. package/src/core/resource.ts +11 -0
  693. package/src/core/uploads.ts +2 -0
  694. package/src/error.ts +2 -0
  695. package/src/index.ts +22 -0
  696. package/src/internal/README.md +3 -0
  697. package/src/internal/builtin-types.ts +93 -0
  698. package/src/internal/detect-platform.ts +196 -0
  699. package/src/internal/errors.ts +33 -0
  700. package/src/internal/headers.ts +97 -0
  701. package/src/internal/parse.ts +56 -0
  702. package/src/internal/qs/LICENSE.md +13 -0
  703. package/src/internal/qs/README.md +3 -0
  704. package/src/internal/qs/formats.ts +10 -0
  705. package/src/internal/qs/index.ts +13 -0
  706. package/src/internal/qs/stringify.ts +385 -0
  707. package/src/internal/qs/types.ts +71 -0
  708. package/src/internal/qs/utils.ts +265 -0
  709. package/src/internal/request-options.ts +91 -0
  710. package/src/internal/shim-types.ts +26 -0
  711. package/src/internal/shims.ts +107 -0
  712. package/src/internal/to-file.ts +154 -0
  713. package/src/internal/types.ts +95 -0
  714. package/src/internal/uploads.ts +187 -0
  715. package/src/internal/utils/base64.ts +40 -0
  716. package/src/internal/utils/bytes.ts +32 -0
  717. package/src/internal/utils/env.ts +18 -0
  718. package/src/internal/utils/log.ts +126 -0
  719. package/src/internal/utils/path.ts +88 -0
  720. package/src/internal/utils/query.ts +7 -0
  721. package/src/internal/utils/sleep.ts +3 -0
  722. package/src/internal/utils/uuid.ts +17 -0
  723. package/src/internal/utils/values.ts +105 -0
  724. package/src/internal/utils.ts +9 -0
  725. package/src/lib/.keep +4 -0
  726. package/src/resource.ts +2 -0
  727. package/src/resources/admins.ts +557 -0
  728. package/src/resources/boards.ts +259 -0
  729. package/src/resources/brands.ts +232 -0
  730. package/src/resources/changelogs/changelogs.ts +1139 -0
  731. package/src/resources/changelogs/index.ts +23 -0
  732. package/src/resources/changelogs/subscribers.ts +226 -0
  733. package/src/resources/changelogs.ts +3 -0
  734. package/src/resources/comments.ts +786 -0
  735. package/src/resources/companies/companies.ts +632 -0
  736. package/src/resources/companies/contacts.ts +299 -0
  737. package/src/resources/companies/index.ts +21 -0
  738. package/src/resources/companies.ts +3 -0
  739. package/src/resources/contacts/by-user-id/by-user-id.ts +200 -0
  740. package/src/resources/contacts/by-user-id/email-preferences.ts +243 -0
  741. package/src/resources/contacts/by-user-id/index.ts +13 -0
  742. package/src/resources/contacts/by-user-id.ts +3 -0
  743. package/src/resources/contacts/contacts.ts +908 -0
  744. package/src/resources/contacts/email-preferences.ts +399 -0
  745. package/src/resources/contacts/index.ts +32 -0
  746. package/src/resources/contacts.ts +3 -0
  747. package/src/resources/conversations/conversations.ts +2721 -0
  748. package/src/resources/conversations/index.ts +31 -0
  749. package/src/resources/conversations/participants.ts +263 -0
  750. package/src/resources/conversations/tags.ts +252 -0
  751. package/src/resources/conversations.ts +3 -0
  752. package/src/resources/custom-fields.ts +249 -0
  753. package/src/resources/help-center/articles.ts +1231 -0
  754. package/src/resources/help-center/collections.ts +1065 -0
  755. package/src/resources/help-center/help-center.ts +125 -0
  756. package/src/resources/help-center/help-centers.ts +558 -0
  757. package/src/resources/help-center/index.ts +52 -0
  758. package/src/resources/help-center/redirect-rules.ts +711 -0
  759. package/src/resources/help-center.ts +3 -0
  760. package/src/resources/index.ts +179 -0
  761. package/src/resources/post-statuses.ts +119 -0
  762. package/src/resources/posts/index.ts +22 -0
  763. package/src/resources/posts/posts.ts +1019 -0
  764. package/src/resources/posts/voters.ts +453 -0
  765. package/src/resources/posts.ts +3 -0
  766. package/src/resources/surveys.ts +576 -0
  767. package/src/resources/tags.ts +226 -0
  768. package/src/resources/teams.ts +213 -0
  769. package/src/resources/tickets/categories.ts +101 -0
  770. package/src/resources/tickets/custom-fields.ts +116 -0
  771. package/src/resources/tickets/index.ts +28 -0
  772. package/src/resources/tickets/statuses.ts +97 -0
  773. package/src/resources/tickets/tickets.ts +1019 -0
  774. package/src/resources/tickets.ts +3 -0
  775. package/src/resources/webhooks.ts +850 -0
  776. package/src/resources.ts +1 -0
  777. package/src/tsconfig.json +11 -0
  778. package/src/uploads.ts +2 -0
  779. package/src/version.ts +1 -0
  780. package/uploads.d.mts +2 -0
  781. package/uploads.d.mts.map +1 -0
  782. package/uploads.d.ts +2 -0
  783. package/uploads.d.ts.map +1 -0
  784. package/uploads.js +6 -0
  785. package/uploads.js.map +1 -0
  786. package/uploads.mjs +2 -0
  787. package/uploads.mjs.map +1 -0
  788. package/version.d.mts +2 -0
  789. package/version.d.mts.map +1 -0
  790. package/version.d.ts +2 -0
  791. package/version.d.ts.map +1 -0
  792. package/version.js +5 -0
  793. package/version.js.map +1 -0
  794. package/version.mjs +2 -0
  795. package/version.mjs.map +1 -0
@@ -0,0 +1,711 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../core/resource';
4
+ import { APIPromise } from '../../core/api-promise';
5
+ import { buildHeaders } from '../../internal/headers';
6
+ import { RequestOptions } from '../../internal/request-options';
7
+ import { path } from '../../internal/utils/path';
8
+
9
+ /**
10
+ * Help centers allow organizations to create and manage knowledge bases with articles and collections. Currently, Featurebase supports one help center per organization.
11
+ */
12
+ export class RedirectRules extends APIResource {
13
+ /**
14
+ * Creates a new redirect rule in your organization.
15
+ *
16
+ * The `fromUrl` is normalized on creation: query parameters and hash fragments are
17
+ * stripped, the hostname is lowercased, and trailing slashes are removed. The
18
+ * `fromUrl` hostname must match the Help Center's configured custom domain.
19
+ *
20
+ * The target article or collection must exist and have a resolvable URL (i.e., a
21
+ * published translation with a slug).
22
+ *
23
+ * ### Request Body
24
+ *
25
+ * Required attributes:
26
+ *
27
+ * - `helpCenterId` - The ID of the help center this rule belongs to
28
+ * - `locale` - Locale code used to resolve the target translation
29
+ * - `fromUrl` - The full absolute URL to redirect from (must match the help
30
+ * center's custom domain)
31
+ * - `targetType` - "article" or "collection"
32
+ * - `targetId` - The ID of the target article or collection
33
+ *
34
+ * ### Response
35
+ *
36
+ * Returns the created redirect rule object.
37
+ *
38
+ * ### Errors
39
+ *
40
+ * - `400` - Invalid request data, fromUrl does not match custom domain, or target
41
+ * not found
42
+ *
43
+ * @example
44
+ * ```ts
45
+ * const redirectRule =
46
+ * await client.helpCenter.redirectRules.create({
47
+ * fromUrl:
48
+ * 'https://help.example.com/en/old/getting-started',
49
+ * helpCenterId: 'ox6qrqprmsuqaunj',
50
+ * locale: 'en',
51
+ * targetId: '10021362',
52
+ * targetType: 'article',
53
+ * });
54
+ * ```
55
+ */
56
+ create(params: RedirectRuleCreateParams, options?: RequestOptions): APIPromise<RedirectRule> {
57
+ const { 'Featurebase-Version': featurebaseVersion, ...body } = params;
58
+ return this._client.post('/v2/help_center/redirect_rules', {
59
+ body,
60
+ ...options,
61
+ headers: buildHeaders([
62
+ { ...(featurebaseVersion != null ? { 'Featurebase-Version': featurebaseVersion } : undefined) },
63
+ options?.headers,
64
+ ]),
65
+ });
66
+ }
67
+
68
+ /**
69
+ * Retrieves a specific redirect rule by its unique identifier.
70
+ *
71
+ * Returns the redirect rule object if found in your organization.
72
+ *
73
+ * ### Response
74
+ *
75
+ * Returns a redirect rule object with:
76
+ *
77
+ * - `id` - Unique identifier (MongoDB ObjectId)
78
+ * - `helpCenterId` - Help center this rule belongs to
79
+ * - `locale` - Locale code
80
+ * - `fromUrl` - Canonical source URL being redirected from
81
+ * - `targetType` - "article" or "collection"
82
+ * - `targetId` - ID of the target article or collection
83
+ * - `createdAt` - ISO 8601 timestamp when created
84
+ * - `updatedAt` - ISO 8601 timestamp when last updated
85
+ *
86
+ * ### Errors
87
+ *
88
+ * - `404` - Redirect rule not found in your organization
89
+ *
90
+ * @example
91
+ * ```ts
92
+ * const redirectRule =
93
+ * await client.helpCenter.redirectRules.retrieve(
94
+ * '507f1f77bcf86cd799439011',
95
+ * );
96
+ * ```
97
+ */
98
+ retrieve(
99
+ id: string,
100
+ params: RedirectRuleRetrieveParams | null | undefined = {},
101
+ options?: RequestOptions,
102
+ ): APIPromise<RedirectRule> {
103
+ const { 'Featurebase-Version': featurebaseVersion } = params ?? {};
104
+ return this._client.get(path`/v2/help_center/redirect_rules/${id}`, {
105
+ ...options,
106
+ headers: buildHeaders([
107
+ { ...(featurebaseVersion != null ? { 'Featurebase-Version': featurebaseVersion } : undefined) },
108
+ options?.headers,
109
+ ]),
110
+ });
111
+ }
112
+
113
+ /**
114
+ * Updates an existing redirect rule. Only include the fields you wish to update.
115
+ *
116
+ * If `fromUrl` is provided, it will be re-normalized and validated against the
117
+ * Help Center's custom domain. If `targetType` or `targetId` is changed, the new
118
+ * target must exist and have a resolvable URL.
119
+ *
120
+ * ### Path Parameters
121
+ *
122
+ * - `id` - The unique identifier of the redirect rule to update
123
+ *
124
+ * ### Request Body
125
+ *
126
+ * All fields are optional. Only provided fields will be updated:
127
+ *
128
+ * - `helpCenterId` - The help center ID
129
+ * - `locale` - Locale code
130
+ * - `fromUrl` - Updated source URL (will be re-normalized)
131
+ * - `targetType` - "article" or "collection"
132
+ * - `targetId` - ID of the new target article or collection
133
+ *
134
+ * ### Response
135
+ *
136
+ * Returns the updated redirect rule object.
137
+ *
138
+ * ### Errors
139
+ *
140
+ * - `404` - Redirect rule not found
141
+ * - `400` - Invalid data, domain mismatch, duplicate fromUrl, or target not found
142
+ *
143
+ * @example
144
+ * ```ts
145
+ * const redirectRule =
146
+ * await client.helpCenter.redirectRules.update(
147
+ * '507f1f77bcf86cd799439011',
148
+ * );
149
+ * ```
150
+ */
151
+ update(id: string, params: RedirectRuleUpdateParams, options?: RequestOptions): APIPromise<RedirectRule> {
152
+ const { 'Featurebase-Version': featurebaseVersion, ...body } = params;
153
+ return this._client.patch(path`/v2/help_center/redirect_rules/${id}`, {
154
+ body,
155
+ ...options,
156
+ headers: buildHeaders([
157
+ { ...(featurebaseVersion != null ? { 'Featurebase-Version': featurebaseVersion } : undefined) },
158
+ options?.headers,
159
+ ]),
160
+ });
161
+ }
162
+
163
+ /**
164
+ * Returns a paginated list of redirect rules within your organization.
165
+ *
166
+ * Redirect rules map old Help Center URLs to new article or collection
167
+ * destinations, enabling seamless migration from legacy help center systems. Only
168
+ * Help Centers with a custom domain configured support redirect rules.
169
+ *
170
+ * ### Query Parameters
171
+ *
172
+ * - `limit` - Number of items to return (1-100, default 10)
173
+ * - `cursor` - Cursor for pagination
174
+ * - `helpCenterId` - Filter by help center ID
175
+ * - `locale` - Filter by locale code
176
+ * - `targetType` - Filter by target type ("article" or "collection")
177
+ *
178
+ * ### Response Format
179
+ *
180
+ * Returns a list object with:
181
+ *
182
+ * - `object` - Always "list"
183
+ * - `data` - Array of redirect rule objects
184
+ * - `nextCursor` - Cursor for next page (null if no more results)
185
+ *
186
+ * ### Redirect Rule Object
187
+ *
188
+ * Each redirect rule includes:
189
+ *
190
+ * - `id` - Unique identifier (MongoDB ObjectId)
191
+ * - `helpCenterId` - Help center this rule belongs to
192
+ * - `locale` - Locale code used to resolve the target translation
193
+ * - `fromUrl` - Canonical source URL (query/hash stripped, hostname lowercased)
194
+ * - `targetType` - "article" or "collection"
195
+ * - `targetId` - ID of the target article or collection
196
+ * - `createdAt` - ISO 8601 timestamp when created
197
+ * - `updatedAt` - ISO 8601 timestamp when last updated
198
+ *
199
+ * @example
200
+ * ```ts
201
+ * const redirectRules =
202
+ * await client.helpCenter.redirectRules.list();
203
+ * ```
204
+ */
205
+ list(
206
+ params: RedirectRuleListParams | null | undefined = {},
207
+ options?: RequestOptions,
208
+ ): APIPromise<RedirectRuleListResponse> {
209
+ const { 'Featurebase-Version': featurebaseVersion, ...query } = params ?? {};
210
+ return this._client.get('/v2/help_center/redirect_rules', {
211
+ query,
212
+ ...options,
213
+ headers: buildHeaders([
214
+ { ...(featurebaseVersion != null ? { 'Featurebase-Version': featurebaseVersion } : undefined) },
215
+ options?.headers,
216
+ ]),
217
+ });
218
+ }
219
+
220
+ /**
221
+ * Deletes an existing redirect rule. The associated Redis cache entry is also
222
+ * invalidated.
223
+ *
224
+ * ### Path Parameters
225
+ *
226
+ * - `id` - The unique identifier of the redirect rule to delete
227
+ *
228
+ * ### Response
229
+ *
230
+ * Returns a deletion confirmation object:
231
+ *
232
+ * - `id` - The ID of the deleted redirect rule
233
+ * - `object` - Always "redirect_rule"
234
+ * - `deleted` - Always true
235
+ *
236
+ * ### Errors
237
+ *
238
+ * - `404` - Redirect rule not found in your organization
239
+ *
240
+ * @example
241
+ * ```ts
242
+ * const redirectRule =
243
+ * await client.helpCenter.redirectRules.delete(
244
+ * '507f1f77bcf86cd799439011',
245
+ * );
246
+ * ```
247
+ */
248
+ delete(
249
+ id: string,
250
+ params: RedirectRuleDeleteParams | null | undefined = {},
251
+ options?: RequestOptions,
252
+ ): APIPromise<RedirectRuleDeleteResponse> {
253
+ const { 'Featurebase-Version': featurebaseVersion } = params ?? {};
254
+ return this._client.delete(path`/v2/help_center/redirect_rules/${id}`, {
255
+ ...options,
256
+ headers: buildHeaders([
257
+ { ...(featurebaseVersion != null ? { 'Featurebase-Version': featurebaseVersion } : undefined) },
258
+ options?.headers,
259
+ ]),
260
+ });
261
+ }
262
+
263
+ /**
264
+ * Retrieves a specific redirect rule by its source URL.
265
+ *
266
+ * The `url` query parameter is normalized before matching: query parameters and
267
+ * hash fragments are stripped, the hostname is lowercased, and trailing slashes
268
+ * are removed. This is the same normalization applied when creating a redirect
269
+ * rule.
270
+ *
271
+ * ### Query Parameters
272
+ *
273
+ * - `url` (required) - Full absolute URL to look up (http or https)
274
+ *
275
+ * ### Response
276
+ *
277
+ * Returns a redirect rule object with:
278
+ *
279
+ * - `id` - Unique identifier (MongoDB ObjectId)
280
+ * - `helpCenterId` - Help center this rule belongs to
281
+ * - `locale` - Locale code
282
+ * - `fromUrl` - Canonical source URL being redirected from
283
+ * - `targetType` - "article" or "collection"
284
+ * - `targetId` - ID of the target article or collection
285
+ * - `createdAt` - ISO 8601 timestamp when created
286
+ * - `updatedAt` - ISO 8601 timestamp when last updated
287
+ *
288
+ * ### Errors
289
+ *
290
+ * - `400` - Invalid URL format
291
+ * - `404` - No redirect rule exists for the given URL
292
+ *
293
+ * @example
294
+ * ```ts
295
+ * const redirectRule =
296
+ * await client.helpCenter.redirectRules.retrieveByURL({
297
+ * url: 'https://help.example.com/en/old/getting-started',
298
+ * });
299
+ * ```
300
+ */
301
+ retrieveByURL(params: RedirectRuleRetrieveByURLParams, options?: RequestOptions): APIPromise<RedirectRule> {
302
+ const { 'Featurebase-Version': featurebaseVersion, ...query } = params;
303
+ return this._client.get('/v2/help_center/redirect_rules/by-url', {
304
+ query,
305
+ ...options,
306
+ headers: buildHeaders([
307
+ { ...(featurebaseVersion != null ? { 'Featurebase-Version': featurebaseVersion } : undefined) },
308
+ options?.headers,
309
+ ]),
310
+ });
311
+ }
312
+ }
313
+
314
+ export interface RedirectRule {
315
+ /**
316
+ * Redirect rule unique identifier
317
+ */
318
+ id: string;
319
+
320
+ /**
321
+ * ISO 8601 timestamp when created
322
+ */
323
+ createdAt: string;
324
+
325
+ /**
326
+ * Canonical source URL being redirected from (query and hash stripped)
327
+ */
328
+ fromUrl: string;
329
+
330
+ /**
331
+ * Help center identifier
332
+ */
333
+ helpCenterId: string;
334
+
335
+ /**
336
+ * Locale code for the redirect rule
337
+ */
338
+ locale:
339
+ | 'bn'
340
+ | 'bs'
341
+ | 'pt-BR'
342
+ | 'bg'
343
+ | 'ca'
344
+ | 'hr'
345
+ | 'cs'
346
+ | 'da'
347
+ | 'nl'
348
+ | 'en'
349
+ | 'et'
350
+ | 'fi'
351
+ | 'fr'
352
+ | 'de'
353
+ | 'el'
354
+ | 'hi'
355
+ | 'hu'
356
+ | 'id'
357
+ | 'it'
358
+ | 'ja'
359
+ | 'ko'
360
+ | 'lv'
361
+ | 'lt'
362
+ | 'ms'
363
+ | 'mn'
364
+ | 'nb'
365
+ | 'pl'
366
+ | 'pt'
367
+ | 'ro'
368
+ | 'ru'
369
+ | 'sr'
370
+ | 'zh-CN'
371
+ | 'sk'
372
+ | 'sl'
373
+ | 'es'
374
+ | 'sw'
375
+ | 'sv'
376
+ | 'th'
377
+ | 'zh-TW'
378
+ | 'tr'
379
+ | 'uk'
380
+ | 'vi';
381
+
382
+ /**
383
+ * Object type identifier
384
+ */
385
+ object: 'redirect_rule';
386
+
387
+ /**
388
+ * Target article or collection ID
389
+ */
390
+ targetId: string;
391
+
392
+ /**
393
+ * Type of content the redirect points to
394
+ */
395
+ targetType: 'article' | 'collection';
396
+
397
+ /**
398
+ * ISO 8601 timestamp when last updated
399
+ */
400
+ updatedAt: string;
401
+ }
402
+
403
+ export interface RedirectRuleListResponse {
404
+ /**
405
+ * Array of redirect rules
406
+ */
407
+ data: Array<RedirectRule>;
408
+
409
+ /**
410
+ * Cursor for fetching the next page. Null if there are no more results.
411
+ */
412
+ nextCursor: string | null;
413
+
414
+ /**
415
+ * Object type identifier
416
+ */
417
+ object: 'list';
418
+ }
419
+
420
+ export interface RedirectRuleDeleteResponse {
421
+ /**
422
+ * Unique identifier of the deleted redirect rule
423
+ */
424
+ id: string;
425
+
426
+ /**
427
+ * Indicates the resource was deleted
428
+ */
429
+ deleted: true;
430
+
431
+ /**
432
+ * Object type identifier
433
+ */
434
+ object: 'redirect_rule';
435
+ }
436
+
437
+ export interface RedirectRuleCreateParams {
438
+ /**
439
+ * Body param: Full absolute URL to redirect from. Must use http or https protocol.
440
+ * Query parameters and hash fragments are stripped during normalization. The
441
+ * hostname must match the Help Center custom domain.
442
+ */
443
+ fromUrl: string;
444
+
445
+ /**
446
+ * Body param: Help center identifier this redirect rule belongs to
447
+ */
448
+ helpCenterId: string;
449
+
450
+ /**
451
+ * Body param: Locale code for the redirect rule. Used to resolve the target
452
+ * article/collection translation.
453
+ */
454
+ locale:
455
+ | 'bn'
456
+ | 'bs'
457
+ | 'pt-BR'
458
+ | 'bg'
459
+ | 'ca'
460
+ | 'hr'
461
+ | 'cs'
462
+ | 'da'
463
+ | 'nl'
464
+ | 'en'
465
+ | 'et'
466
+ | 'fi'
467
+ | 'fr'
468
+ | 'de'
469
+ | 'el'
470
+ | 'hi'
471
+ | 'hu'
472
+ | 'id'
473
+ | 'it'
474
+ | 'ja'
475
+ | 'ko'
476
+ | 'lv'
477
+ | 'lt'
478
+ | 'ms'
479
+ | 'mn'
480
+ | 'nb'
481
+ | 'pl'
482
+ | 'pt'
483
+ | 'ro'
484
+ | 'ru'
485
+ | 'sr'
486
+ | 'zh-CN'
487
+ | 'sk'
488
+ | 'sl'
489
+ | 'es'
490
+ | 'sw'
491
+ | 'sv'
492
+ | 'th'
493
+ | 'zh-TW'
494
+ | 'tr'
495
+ | 'uk'
496
+ | 'vi';
497
+
498
+ /**
499
+ * Body param: ID of the target article or collection
500
+ */
501
+ targetId: string;
502
+
503
+ /**
504
+ * Body param: Type of content the redirect points to
505
+ */
506
+ targetType: 'article' | 'collection';
507
+
508
+ /**
509
+ * Header param: API version for this request. Defaults to your organization's
510
+ * configured API version if not specified.
511
+ */
512
+ 'Featurebase-Version'?: string;
513
+ }
514
+
515
+ export interface RedirectRuleRetrieveParams {
516
+ /**
517
+ * API version for this request. Defaults to your organization's configured API
518
+ * version if not specified.
519
+ */
520
+ 'Featurebase-Version'?: string;
521
+ }
522
+
523
+ export interface RedirectRuleUpdateParams {
524
+ /**
525
+ * Body param: Full absolute URL to redirect from. Must use http or https protocol.
526
+ * Query parameters and hash fragments are stripped during normalization. The
527
+ * hostname must match the Help Center custom domain.
528
+ */
529
+ fromUrl?: string;
530
+
531
+ /**
532
+ * Body param: Help center identifier
533
+ */
534
+ helpCenterId?: string;
535
+
536
+ /**
537
+ * Body param: Locale code for the redirect rule
538
+ */
539
+ locale?:
540
+ | 'bn'
541
+ | 'bs'
542
+ | 'pt-BR'
543
+ | 'bg'
544
+ | 'ca'
545
+ | 'hr'
546
+ | 'cs'
547
+ | 'da'
548
+ | 'nl'
549
+ | 'en'
550
+ | 'et'
551
+ | 'fi'
552
+ | 'fr'
553
+ | 'de'
554
+ | 'el'
555
+ | 'hi'
556
+ | 'hu'
557
+ | 'id'
558
+ | 'it'
559
+ | 'ja'
560
+ | 'ko'
561
+ | 'lv'
562
+ | 'lt'
563
+ | 'ms'
564
+ | 'mn'
565
+ | 'nb'
566
+ | 'pl'
567
+ | 'pt'
568
+ | 'ro'
569
+ | 'ru'
570
+ | 'sr'
571
+ | 'zh-CN'
572
+ | 'sk'
573
+ | 'sl'
574
+ | 'es'
575
+ | 'sw'
576
+ | 'sv'
577
+ | 'th'
578
+ | 'zh-TW'
579
+ | 'tr'
580
+ | 'uk'
581
+ | 'vi';
582
+
583
+ /**
584
+ * Body param: ID of the target article or collection
585
+ */
586
+ targetId?: string;
587
+
588
+ /**
589
+ * Body param: Type of content the redirect points to
590
+ */
591
+ targetType?: 'article' | 'collection';
592
+
593
+ /**
594
+ * Header param: API version for this request. Defaults to your organization's
595
+ * configured API version if not specified.
596
+ */
597
+ 'Featurebase-Version'?: string;
598
+ }
599
+
600
+ export interface RedirectRuleListParams {
601
+ /**
602
+ * Query param: An opaque cursor for pagination. Use the nextCursor value from a
603
+ * previous response to fetch the next page.
604
+ */
605
+ cursor?: string;
606
+
607
+ /**
608
+ * Query param: Filter redirect rules by help center ID
609
+ */
610
+ helpCenterId?: string;
611
+
612
+ /**
613
+ * Query param: A limit on the number of objects to be returned, between 1 and 100.
614
+ */
615
+ limit?: number;
616
+
617
+ /**
618
+ * Query param: Filter redirect rules by locale
619
+ */
620
+ locale?:
621
+ | 'bn'
622
+ | 'bs'
623
+ | 'pt-BR'
624
+ | 'bg'
625
+ | 'ca'
626
+ | 'hr'
627
+ | 'cs'
628
+ | 'da'
629
+ | 'nl'
630
+ | 'en'
631
+ | 'et'
632
+ | 'fi'
633
+ | 'fr'
634
+ | 'de'
635
+ | 'el'
636
+ | 'hi'
637
+ | 'hu'
638
+ | 'id'
639
+ | 'it'
640
+ | 'ja'
641
+ | 'ko'
642
+ | 'lv'
643
+ | 'lt'
644
+ | 'ms'
645
+ | 'mn'
646
+ | 'nb'
647
+ | 'pl'
648
+ | 'pt'
649
+ | 'ro'
650
+ | 'ru'
651
+ | 'sr'
652
+ | 'zh-CN'
653
+ | 'sk'
654
+ | 'sl'
655
+ | 'es'
656
+ | 'sw'
657
+ | 'sv'
658
+ | 'th'
659
+ | 'zh-TW'
660
+ | 'tr'
661
+ | 'uk'
662
+ | 'vi';
663
+
664
+ /**
665
+ * Query param: Filter redirect rules by target type
666
+ */
667
+ targetType?: 'article' | 'collection';
668
+
669
+ /**
670
+ * Header param: API version for this request. Defaults to your organization's
671
+ * configured API version if not specified.
672
+ */
673
+ 'Featurebase-Version'?: string;
674
+ }
675
+
676
+ export interface RedirectRuleDeleteParams {
677
+ /**
678
+ * API version for this request. Defaults to your organization's configured API
679
+ * version if not specified.
680
+ */
681
+ 'Featurebase-Version'?: string;
682
+ }
683
+
684
+ export interface RedirectRuleRetrieveByURLParams {
685
+ /**
686
+ * Query param: Full absolute URL to look up. The URL is normalized before
687
+ * matching: query parameters and hash fragments are stripped, the hostname is
688
+ * lowercased, and trailing slashes are removed.
689
+ */
690
+ url: string;
691
+
692
+ /**
693
+ * Header param: API version for this request. Defaults to your organization's
694
+ * configured API version if not specified.
695
+ */
696
+ 'Featurebase-Version'?: string;
697
+ }
698
+
699
+ export declare namespace RedirectRules {
700
+ export {
701
+ type RedirectRule as RedirectRule,
702
+ type RedirectRuleListResponse as RedirectRuleListResponse,
703
+ type RedirectRuleDeleteResponse as RedirectRuleDeleteResponse,
704
+ type RedirectRuleCreateParams as RedirectRuleCreateParams,
705
+ type RedirectRuleRetrieveParams as RedirectRuleRetrieveParams,
706
+ type RedirectRuleUpdateParams as RedirectRuleUpdateParams,
707
+ type RedirectRuleListParams as RedirectRuleListParams,
708
+ type RedirectRuleDeleteParams as RedirectRuleDeleteParams,
709
+ type RedirectRuleRetrieveByURLParams as RedirectRuleRetrieveByURLParams,
710
+ };
711
+ }
@@ -0,0 +1,3 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ export * from './help-center/index';