@trycourier/courier 7.20.0 → 7.22.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 (358) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/client.d.mts +57 -3
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +57 -3
  5. package/client.d.ts.map +1 -1
  6. package/client.js +57 -3
  7. package/client.js.map +1 -1
  8. package/client.mjs +57 -3
  9. package/client.mjs.map +1 -1
  10. package/package.json +1 -1
  11. package/resources/audiences.d.mts +13 -5
  12. package/resources/audiences.d.mts.map +1 -1
  13. package/resources/audiences.d.ts +13 -5
  14. package/resources/audiences.d.ts.map +1 -1
  15. package/resources/audiences.js +13 -5
  16. package/resources/audiences.js.map +1 -1
  17. package/resources/audiences.mjs +13 -5
  18. package/resources/audiences.mjs.map +1 -1
  19. package/resources/audit-events.d.mts +7 -2
  20. package/resources/audit-events.d.mts.map +1 -1
  21. package/resources/audit-events.d.ts +7 -2
  22. package/resources/audit-events.d.ts.map +1 -1
  23. package/resources/audit-events.js +7 -2
  24. package/resources/audit-events.js.map +1 -1
  25. package/resources/audit-events.mjs +7 -2
  26. package/resources/audit-events.mjs.map +1 -1
  27. package/resources/auth.d.mts +5 -1
  28. package/resources/auth.d.mts.map +1 -1
  29. package/resources/auth.d.ts +5 -1
  30. package/resources/auth.d.ts.map +1 -1
  31. package/resources/auth.js +5 -1
  32. package/resources/auth.js.map +1 -1
  33. package/resources/auth.mjs +5 -1
  34. package/resources/auth.mjs.map +1 -1
  35. package/resources/automations/automations.d.mts +5 -1
  36. package/resources/automations/automations.d.mts.map +1 -1
  37. package/resources/automations/automations.d.ts +5 -1
  38. package/resources/automations/automations.d.ts.map +1 -1
  39. package/resources/automations/automations.js +5 -1
  40. package/resources/automations/automations.js.map +1 -1
  41. package/resources/automations/automations.mjs +5 -1
  42. package/resources/automations/automations.mjs.map +1 -1
  43. package/resources/automations/invoke.d.mts +74 -7
  44. package/resources/automations/invoke.d.mts.map +1 -1
  45. package/resources/automations/invoke.d.ts +74 -7
  46. package/resources/automations/invoke.d.ts.map +1 -1
  47. package/resources/automations/invoke.js +38 -9
  48. package/resources/automations/invoke.js.map +1 -1
  49. package/resources/automations/invoke.mjs +38 -9
  50. package/resources/automations/invoke.mjs.map +1 -1
  51. package/resources/brands.d.mts +42 -7
  52. package/resources/brands.d.mts.map +1 -1
  53. package/resources/brands.d.ts +42 -7
  54. package/resources/brands.d.ts.map +1 -1
  55. package/resources/brands.js +28 -8
  56. package/resources/brands.js.map +1 -1
  57. package/resources/brands.mjs +28 -8
  58. package/resources/brands.mjs.map +1 -1
  59. package/resources/digests/schedules.d.mts +5 -3
  60. package/resources/digests/schedules.d.mts.map +1 -1
  61. package/resources/digests/schedules.d.ts +5 -3
  62. package/resources/digests/schedules.d.ts.map +1 -1
  63. package/resources/digests/schedules.js +5 -3
  64. package/resources/digests/schedules.js.map +1 -1
  65. package/resources/digests/schedules.mjs +5 -3
  66. package/resources/digests/schedules.mjs.map +1 -1
  67. package/resources/inbound.d.mts +5 -1
  68. package/resources/inbound.d.mts.map +1 -1
  69. package/resources/inbound.d.ts +5 -1
  70. package/resources/inbound.d.ts.map +1 -1
  71. package/resources/inbound.js +5 -1
  72. package/resources/inbound.js.map +1 -1
  73. package/resources/inbound.mjs +5 -1
  74. package/resources/inbound.mjs.map +1 -1
  75. package/resources/inbox/inbox.d.mts +10 -0
  76. package/resources/inbox/inbox.d.mts.map +1 -0
  77. package/resources/inbox/inbox.d.ts +10 -0
  78. package/resources/inbox/inbox.d.ts.map +1 -0
  79. package/resources/inbox/inbox.js +17 -0
  80. package/resources/inbox/inbox.js.map +1 -0
  81. package/resources/inbox/inbox.mjs +12 -0
  82. package/resources/inbox/inbox.mjs.map +1 -0
  83. package/resources/inbox/index.d.mts +3 -0
  84. package/resources/inbox/index.d.mts.map +1 -0
  85. package/resources/inbox/index.d.ts +3 -0
  86. package/resources/inbox/index.d.ts.map +1 -0
  87. package/resources/inbox/index.js +9 -0
  88. package/resources/inbox/index.js.map +1 -0
  89. package/resources/inbox/index.mjs +4 -0
  90. package/resources/inbox/index.mjs.map +1 -0
  91. package/resources/inbox/messages.d.mts +23 -0
  92. package/resources/inbox/messages.d.mts.map +1 -0
  93. package/resources/inbox/messages.d.ts +23 -0
  94. package/resources/inbox/messages.d.ts.map +1 -0
  95. package/resources/inbox/messages.js +34 -0
  96. package/resources/inbox/messages.js.map +1 -0
  97. package/resources/inbox/messages.mjs +30 -0
  98. package/resources/inbox/messages.mjs.map +1 -0
  99. package/resources/inbox.d.mts +2 -0
  100. package/resources/inbox.d.mts.map +1 -0
  101. package/resources/inbox.d.ts +2 -0
  102. package/resources/inbox.d.ts.map +1 -0
  103. package/resources/inbox.js +6 -0
  104. package/resources/inbox.js.map +1 -0
  105. package/resources/inbox.mjs +3 -0
  106. package/resources/inbox.mjs.map +1 -0
  107. package/resources/index.d.mts +1 -1
  108. package/resources/index.d.mts.map +1 -1
  109. package/resources/index.d.ts +1 -1
  110. package/resources/index.d.ts.map +1 -1
  111. package/resources/index.js +3 -3
  112. package/resources/index.js.map +1 -1
  113. package/resources/index.mjs +1 -1
  114. package/resources/index.mjs.map +1 -1
  115. package/resources/journeys/journeys.d.mts +130 -39
  116. package/resources/journeys/journeys.d.mts.map +1 -1
  117. package/resources/journeys/journeys.d.ts +130 -39
  118. package/resources/journeys/journeys.d.ts.map +1 -1
  119. package/resources/journeys/journeys.js +79 -34
  120. package/resources/journeys/journeys.js.map +1 -1
  121. package/resources/journeys/journeys.mjs +79 -34
  122. package/resources/journeys/journeys.mjs.map +1 -1
  123. package/resources/journeys/templates.d.mts +60 -17
  124. package/resources/journeys/templates.d.mts.map +1 -1
  125. package/resources/journeys/templates.d.ts +60 -17
  126. package/resources/journeys/templates.d.ts.map +1 -1
  127. package/resources/journeys/templates.js +41 -20
  128. package/resources/journeys/templates.js.map +1 -1
  129. package/resources/journeys/templates.mjs +41 -20
  130. package/resources/journeys/templates.mjs.map +1 -1
  131. package/resources/lists/lists.d.mts +40 -5
  132. package/resources/lists/lists.d.mts.map +1 -1
  133. package/resources/lists/lists.d.ts +40 -5
  134. package/resources/lists/lists.d.ts.map +1 -1
  135. package/resources/lists/lists.js +40 -5
  136. package/resources/lists/lists.js.map +1 -1
  137. package/resources/lists/lists.mjs +40 -5
  138. package/resources/lists/lists.mjs.map +1 -1
  139. package/resources/lists/subscriptions.d.mts +65 -5
  140. package/resources/lists/subscriptions.d.mts.map +1 -1
  141. package/resources/lists/subscriptions.d.ts +65 -5
  142. package/resources/lists/subscriptions.d.ts.map +1 -1
  143. package/resources/lists/subscriptions.js +57 -6
  144. package/resources/lists/subscriptions.js.map +1 -1
  145. package/resources/lists/subscriptions.mjs +57 -6
  146. package/resources/lists/subscriptions.mjs.map +1 -1
  147. package/resources/messages.d.mts +15 -14
  148. package/resources/messages.d.mts.map +1 -1
  149. package/resources/messages.d.ts +15 -14
  150. package/resources/messages.d.ts.map +1 -1
  151. package/resources/messages.js +15 -14
  152. package/resources/messages.js.map +1 -1
  153. package/resources/messages.mjs +15 -14
  154. package/resources/messages.mjs.map +1 -1
  155. package/resources/notifications/checks.d.mts +9 -3
  156. package/resources/notifications/checks.d.mts.map +1 -1
  157. package/resources/notifications/checks.d.ts +9 -3
  158. package/resources/notifications/checks.d.ts.map +1 -1
  159. package/resources/notifications/checks.js +9 -3
  160. package/resources/notifications/checks.js.map +1 -1
  161. package/resources/notifications/checks.mjs +9 -3
  162. package/resources/notifications/checks.mjs.map +1 -1
  163. package/resources/notifications/notifications.d.mts +62 -29
  164. package/resources/notifications/notifications.d.mts.map +1 -1
  165. package/resources/notifications/notifications.d.ts +62 -29
  166. package/resources/notifications/notifications.d.ts.map +1 -1
  167. package/resources/notifications/notifications.js +49 -26
  168. package/resources/notifications/notifications.js.map +1 -1
  169. package/resources/notifications/notifications.mjs +49 -26
  170. package/resources/notifications/notifications.mjs.map +1 -1
  171. package/resources/profiles/lists.d.mts +49 -5
  172. package/resources/profiles/lists.d.mts.map +1 -1
  173. package/resources/profiles/lists.d.ts +49 -5
  174. package/resources/profiles/lists.d.ts.map +1 -1
  175. package/resources/profiles/lists.js +45 -6
  176. package/resources/profiles/lists.js.map +1 -1
  177. package/resources/profiles/lists.mjs +45 -6
  178. package/resources/profiles/lists.mjs.map +1 -1
  179. package/resources/profiles/profiles.d.mts +70 -11
  180. package/resources/profiles/profiles.d.mts.map +1 -1
  181. package/resources/profiles/profiles.d.ts +70 -11
  182. package/resources/profiles/profiles.d.ts.map +1 -1
  183. package/resources/profiles/profiles.js +65 -12
  184. package/resources/profiles/profiles.js.map +1 -1
  185. package/resources/profiles/profiles.mjs +65 -12
  186. package/resources/profiles/profiles.mjs.map +1 -1
  187. package/resources/providers/catalog.d.mts +10 -4
  188. package/resources/providers/catalog.d.mts.map +1 -1
  189. package/resources/providers/catalog.d.ts +10 -4
  190. package/resources/providers/catalog.d.ts.map +1 -1
  191. package/resources/providers/catalog.js +10 -4
  192. package/resources/providers/catalog.js.map +1 -1
  193. package/resources/providers/catalog.mjs +10 -4
  194. package/resources/providers/catalog.mjs.map +1 -1
  195. package/resources/providers/providers.d.mts +68 -22
  196. package/resources/providers/providers.d.mts.map +1 -1
  197. package/resources/providers/providers.d.ts +68 -22
  198. package/resources/providers/providers.d.ts.map +1 -1
  199. package/resources/providers/providers.js +57 -14
  200. package/resources/providers/providers.js.map +1 -1
  201. package/resources/providers/providers.mjs +57 -14
  202. package/resources/providers/providers.mjs.map +1 -1
  203. package/resources/requests.d.mts +5 -1
  204. package/resources/requests.d.mts.map +1 -1
  205. package/resources/requests.d.ts +5 -1
  206. package/resources/requests.d.ts.map +1 -1
  207. package/resources/requests.js +5 -1
  208. package/resources/requests.js.map +1 -1
  209. package/resources/requests.mjs +5 -1
  210. package/resources/requests.mjs.map +1 -1
  211. package/resources/routing-strategies.d.mts +30 -11
  212. package/resources/routing-strategies.d.mts.map +1 -1
  213. package/resources/routing-strategies.d.ts +30 -11
  214. package/resources/routing-strategies.d.ts.map +1 -1
  215. package/resources/routing-strategies.js +22 -6
  216. package/resources/routing-strategies.js.map +1 -1
  217. package/resources/routing-strategies.mjs +22 -6
  218. package/resources/routing-strategies.mjs.map +1 -1
  219. package/resources/send.d.mts +24 -4
  220. package/resources/send.d.mts.map +1 -1
  221. package/resources/send.d.ts +24 -4
  222. package/resources/send.d.ts.map +1 -1
  223. package/resources/send.js +21 -3
  224. package/resources/send.js.map +1 -1
  225. package/resources/send.mjs +21 -3
  226. package/resources/send.mjs.map +1 -1
  227. package/resources/tenants/preferences/items.d.mts +7 -2
  228. package/resources/tenants/preferences/items.d.mts.map +1 -1
  229. package/resources/tenants/preferences/items.d.ts +7 -2
  230. package/resources/tenants/preferences/items.d.ts.map +1 -1
  231. package/resources/tenants/preferences/items.js +7 -2
  232. package/resources/tenants/preferences/items.js.map +1 -1
  233. package/resources/tenants/preferences/items.mjs +7 -2
  234. package/resources/tenants/preferences/items.mjs.map +1 -1
  235. package/resources/tenants/templates/templates.d.mts +13 -19
  236. package/resources/tenants/templates/templates.d.mts.map +1 -1
  237. package/resources/tenants/templates/templates.d.ts +13 -19
  238. package/resources/tenants/templates/templates.d.ts.map +1 -1
  239. package/resources/tenants/templates/templates.js +13 -19
  240. package/resources/tenants/templates/templates.js.map +1 -1
  241. package/resources/tenants/templates/templates.mjs +13 -19
  242. package/resources/tenants/templates/templates.mjs.map +1 -1
  243. package/resources/tenants/templates/versions.d.mts +5 -7
  244. package/resources/tenants/templates/versions.d.mts.map +1 -1
  245. package/resources/tenants/templates/versions.d.ts +5 -7
  246. package/resources/tenants/templates/versions.d.ts.map +1 -1
  247. package/resources/tenants/templates/versions.js +5 -7
  248. package/resources/tenants/templates/versions.js.map +1 -1
  249. package/resources/tenants/templates/versions.mjs +5 -7
  250. package/resources/tenants/templates/versions.mjs.map +1 -1
  251. package/resources/tenants/tenants.d.mts +13 -5
  252. package/resources/tenants/tenants.d.mts.map +1 -1
  253. package/resources/tenants/tenants.d.ts +13 -5
  254. package/resources/tenants/tenants.d.ts.map +1 -1
  255. package/resources/tenants/tenants.js +13 -5
  256. package/resources/tenants/tenants.js.map +1 -1
  257. package/resources/tenants/tenants.mjs +13 -5
  258. package/resources/tenants/tenants.mjs.map +1 -1
  259. package/resources/translations.d.mts +7 -2
  260. package/resources/translations.d.mts.map +1 -1
  261. package/resources/translations.d.ts +7 -2
  262. package/resources/translations.d.ts.map +1 -1
  263. package/resources/translations.js +7 -2
  264. package/resources/translations.js.map +1 -1
  265. package/resources/translations.mjs +7 -2
  266. package/resources/translations.mjs.map +1 -1
  267. package/resources/users/preferences.d.mts +64 -42
  268. package/resources/users/preferences.d.mts.map +1 -1
  269. package/resources/users/preferences.d.ts +64 -42
  270. package/resources/users/preferences.d.ts.map +1 -1
  271. package/resources/users/preferences.js +30 -42
  272. package/resources/users/preferences.js.map +1 -1
  273. package/resources/users/preferences.mjs +30 -42
  274. package/resources/users/preferences.mjs.map +1 -1
  275. package/resources/users/tenants.d.mts +13 -10
  276. package/resources/users/tenants.d.mts.map +1 -1
  277. package/resources/users/tenants.d.ts +13 -10
  278. package/resources/users/tenants.d.ts.map +1 -1
  279. package/resources/users/tenants.js +13 -10
  280. package/resources/users/tenants.js.map +1 -1
  281. package/resources/users/tenants.mjs +13 -10
  282. package/resources/users/tenants.mjs.map +1 -1
  283. package/resources/users/tokens.d.mts +15 -6
  284. package/resources/users/tokens.d.mts.map +1 -1
  285. package/resources/users/tokens.d.ts +15 -6
  286. package/resources/users/tokens.d.ts.map +1 -1
  287. package/resources/users/tokens.js +15 -6
  288. package/resources/users/tokens.js.map +1 -1
  289. package/resources/users/tokens.mjs +15 -6
  290. package/resources/users/tokens.mjs.map +1 -1
  291. package/resources/workspace-preferences/topics.d.mts +40 -18
  292. package/resources/workspace-preferences/topics.d.mts.map +1 -1
  293. package/resources/workspace-preferences/topics.d.ts +40 -18
  294. package/resources/workspace-preferences/topics.d.ts.map +1 -1
  295. package/resources/workspace-preferences/topics.js +26 -11
  296. package/resources/workspace-preferences/topics.js.map +1 -1
  297. package/resources/workspace-preferences/topics.mjs +26 -11
  298. package/resources/workspace-preferences/topics.mjs.map +1 -1
  299. package/resources/workspace-preferences/workspace-preferences.d.mts +56 -19
  300. package/resources/workspace-preferences/workspace-preferences.d.mts.map +1 -1
  301. package/resources/workspace-preferences/workspace-preferences.d.ts +56 -19
  302. package/resources/workspace-preferences/workspace-preferences.d.ts.map +1 -1
  303. package/resources/workspace-preferences/workspace-preferences.js +41 -13
  304. package/resources/workspace-preferences/workspace-preferences.js.map +1 -1
  305. package/resources/workspace-preferences/workspace-preferences.mjs +41 -13
  306. package/resources/workspace-preferences/workspace-preferences.mjs.map +1 -1
  307. package/src/client.ts +59 -25
  308. package/src/resources/audiences.ts +13 -5
  309. package/src/resources/audit-events.ts +7 -2
  310. package/src/resources/auth.ts +5 -1
  311. package/src/resources/automations/automations.ts +5 -1
  312. package/src/resources/automations/invoke.ts +115 -9
  313. package/src/resources/brands.ts +62 -8
  314. package/src/resources/digests/schedules.ts +5 -3
  315. package/src/resources/inbound.ts +5 -1
  316. package/src/resources/inbox/inbox.ts +15 -0
  317. package/src/resources/inbox/index.ts +4 -0
  318. package/src/resources/inbox/messages.ts +40 -0
  319. package/src/resources/inbox.ts +3 -0
  320. package/src/resources/index.ts +1 -11
  321. package/src/resources/journeys/journeys.ts +212 -43
  322. package/src/resources/journeys/templates.ts +98 -20
  323. package/src/resources/lists/lists.ts +40 -5
  324. package/src/resources/lists/subscriptions.ts +82 -6
  325. package/src/resources/messages.ts +15 -14
  326. package/src/resources/notifications/checks.ts +9 -3
  327. package/src/resources/notifications/notifications.ts +102 -31
  328. package/src/resources/profiles/lists.ts +70 -6
  329. package/src/resources/profiles/profiles.ts +90 -12
  330. package/src/resources/providers/catalog.ts +10 -4
  331. package/src/resources/providers/providers.ts +86 -21
  332. package/src/resources/requests.ts +5 -1
  333. package/src/resources/routing-strategies.ts +50 -12
  334. package/src/resources/send.ts +45 -5
  335. package/src/resources/tenants/preferences/items.ts +7 -2
  336. package/src/resources/tenants/templates/templates.ts +13 -19
  337. package/src/resources/tenants/templates/versions.ts +5 -7
  338. package/src/resources/tenants/tenants.ts +13 -5
  339. package/src/resources/translations.ts +7 -2
  340. package/src/resources/users/preferences.ts +86 -44
  341. package/src/resources/users/tenants.ts +13 -10
  342. package/src/resources/users/tokens.ts +15 -6
  343. package/src/resources/workspace-preferences/topics.ts +60 -19
  344. package/src/resources/workspace-preferences/workspace-preferences.ts +96 -21
  345. package/src/version.ts +1 -1
  346. package/version.d.mts +1 -1
  347. package/version.d.ts +1 -1
  348. package/version.js +1 -1
  349. package/version.mjs +1 -1
  350. package/resources/bulk.d.mts +0 -155
  351. package/resources/bulk.d.mts.map +0 -1
  352. package/resources/bulk.d.ts +0 -155
  353. package/resources/bulk.d.ts.map +0 -1
  354. package/resources/bulk.js +0 -58
  355. package/resources/bulk.js.map +0 -1
  356. package/resources/bulk.mjs +0 -54
  357. package/resources/bulk.mjs.map +0 -1
  358. package/src/resources/bulk.ts +0 -210
@@ -1 +1 @@
1
- {"version":3,"file":"profiles.d.mts","sourceRoot":"","sources":["../../src/resources/profiles/profiles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"profiles.d.mts","sourceRoot":"","sources":["../../src/resources/profiles/profiles.ts"],"names":[],"mappings":"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"}
@@ -4,31 +4,71 @@ import * as ListsAPI from "./lists.js";
4
4
  import { ListDeleteResponse, ListRetrieveParams, ListRetrieveResponse, ListSubscribeParams, ListSubscribeResponse, Lists } from "./lists.js";
5
5
  import { APIPromise } from "../../core/api-promise.js";
6
6
  import { RequestOptions } from "../../internal/request-options.js";
7
+ /**
8
+ * Store the contact information Courier delivers to for each user — email, phone number, push tokens, and any custom data you send to.
9
+ */
7
10
  export declare class Profiles extends APIResource {
8
11
  lists: ListsAPI.Lists;
9
12
  /**
10
- * Merge the supplied values with an existing profile or create a new profile if
11
- * one doesn't already exist.
13
+ * Merges the supplied values into a user's profile, creating it if absent and
14
+ * leaving any key you omit untouched. Prefer this for everyday writes.
15
+ *
16
+ * @example
17
+ * ```ts
18
+ * const profile = await client.profiles.create('user_id', {
19
+ * profile: { foo: 'bar' },
20
+ * });
21
+ * ```
12
22
  */
13
- create(userID: string, body: ProfileCreateParams, options?: RequestOptions): APIPromise<ProfileCreateResponse>;
23
+ create(userID: string, params: ProfileCreateParams, options?: RequestOptions): APIPromise<ProfileCreateResponse>;
14
24
  /**
15
- * Returns the specified user profile.
25
+ * Returns a user's stored profile and preferences, including the email address,
26
+ * phone number, and push tokens Courier can reach them on.
27
+ *
28
+ * @example
29
+ * ```ts
30
+ * const profile = await client.profiles.retrieve('user_id');
31
+ * ```
16
32
  */
17
33
  retrieve(userID: string, options?: RequestOptions): APIPromise<ProfileRetrieveResponse>;
18
34
  /**
19
- * Update a profile
35
+ * Applies a JSON Patch to a user profile, adding, removing, or replacing
36
+ * individual fields without sending the whole object.
37
+ *
38
+ * @example
39
+ * ```ts
40
+ * await client.profiles.update('user_id', {
41
+ * patch: [
42
+ * {
43
+ * op: 'op',
44
+ * path: 'path',
45
+ * value: 'value',
46
+ * },
47
+ * ],
48
+ * });
49
+ * ```
20
50
  */
21
51
  update(userID: string, body: ProfileUpdateParams, options?: RequestOptions): APIPromise<void>;
22
52
  /**
23
- * Deletes the specified user profile.
53
+ * Deletes a user's profile and stored contact details. List subscriptions and
54
+ * preferences are separate resources, so remove those too if required.
55
+ *
56
+ * @example
57
+ * ```ts
58
+ * await client.profiles.delete('user_id');
59
+ * ```
24
60
  */
25
61
  delete(userID: string, options?: RequestOptions): APIPromise<void>;
26
62
  /**
27
- * When using `PUT`, be sure to include all the key-value pairs required by the
28
- * recipient's profile. Any key-value pairs that exist in the profile but fail to
29
- * be included in the `PUT` request will be removed from the profile. Remember, a
30
- * `PUT` update is a full replacement of the data. For partial updates, use the
31
- * [Patch](https://www.courier.com/docs/reference/profiles/patch/) request.
63
+ * Overwrites a user profile in full, removing any key absent from the request
64
+ * body. Use the patch endpoint when changing a single field.
65
+ *
66
+ * @example
67
+ * ```ts
68
+ * const response = await client.profiles.replace('user_id', {
69
+ * profile: { foo: 'bar' },
70
+ * });
71
+ * ```
32
72
  */
33
73
  replace(userID: string, body: ProfileReplaceParams, options?: RequestOptions): APIPromise<ProfileReplaceResponse>;
34
74
  }
@@ -49,9 +89,28 @@ export interface ProfileReplaceResponse {
49
89
  status: 'SUCCESS';
50
90
  }
51
91
  export interface ProfileCreateParams {
92
+ /**
93
+ * Body param
94
+ */
52
95
  profile: {
53
96
  [key: string]: unknown;
54
97
  };
98
+ /**
99
+ * Header param: A unique key that makes this request idempotent. If Courier
100
+ * receives another request with the same `Idempotency-Key`, it returns the stored
101
+ * response from the first request without performing the operation again
102
+ * (including the original status code and any error). Use it to safely retry
103
+ * `POST` requests after network failures without risking duplicate sends. The key
104
+ * is scoped to this endpoint.
105
+ */
106
+ 'Idempotency-Key'?: string;
107
+ /**
108
+ * Header param: How long the idempotency key remains valid, as a Unix epoch
109
+ * timestamp in seconds or an ISO 8601 date string. Only applies when
110
+ * `Idempotency-Key` is provided. If omitted, the key is retained for 25 hours; the
111
+ * maximum is 1 year.
112
+ */
113
+ 'x-idempotency-expiration'?: string;
55
114
  }
56
115
  export interface ProfileUpdateParams {
57
116
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"profiles.d.ts","sourceRoot":"","sources":["../../src/resources/profiles/profiles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"profiles.d.ts","sourceRoot":"","sources":["../../src/resources/profiles/profiles.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,+BAA4B;AAClD,OAAO,KAAK,MAAM,qBAAkB;AACpC,OAAO,KAAK,QAAQ,mBAAgB;AACpC,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACrB,KAAK,EACN,mBAAgB;AACjB,OAAO,EAAE,UAAU,EAAE,kCAA+B;AAEpD,OAAO,EAAE,cAAc,EAAE,0CAAuC;AAGhE;;GAEG;AACH,qBAAa,QAAS,SAAQ,WAAW;IACvC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAoC;IAEzD;;;;;;;;;;OAUG;IACH,MAAM,CACJ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,mBAAmB,EAC3B,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,qBAAqB,CAAC;IAqBpC;;;;;;;;OAQG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,uBAAuB,CAAC;IAIvF;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC;IAQ7F;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC;IAOlE;;;;;;;;;;OAUG;IACH,OAAO,CACL,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,oBAAoB,EAC1B,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,sBAAsB,CAAC;CAGtC;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,MAAM,CAAC;IAEf,WAAW,CAAC,EAAE,MAAM,CAAC,oBAAoB,GAAG,IAAI,CAAC;CAClD;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,SAAS,CAAC;CACnB;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAEpC,WAAW,CAAC,EAAE,MAAM,CAAC,oBAAoB,GAAG,IAAI,CAAC;CAClD;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,SAAS,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAEpC;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;;;;OAKG;IACH,0BAA0B,CAAC,EAAE,MAAM,CAAC;CACrC;AAED,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,KAAK,EAAE,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzC;AAED,yBAAiB,mBAAmB,CAAC;IACnC,UAAiB,KAAK;QACpB;;WAEG;QACH,EAAE,EAAE,MAAM,CAAC;QAEX;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QAEb;;WAEG;QACH,KAAK,EAAE,MAAM,CAAC;KACf;CACF;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;CACrC;AAID,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,OAAO,EACL,KAAK,2BAA2B,IAAI,2BAA2B,EAC/D,KAAK,qBAAqB,IAAI,qBAAqB,EACnD,KAAK,uBAAuB,IAAI,uBAAuB,EACvD,KAAK,sBAAsB,IAAI,sBAAsB,EACrD,KAAK,mBAAmB,IAAI,mBAAmB,EAC/C,KAAK,mBAAmB,IAAI,mBAAmB,EAC/C,KAAK,oBAAoB,IAAI,oBAAoB,GAClD,CAAC;IAEF,OAAO,EACL,KAAK,IAAI,KAAK,EACd,KAAK,oBAAoB,IAAI,oBAAoB,EACjD,KAAK,kBAAkB,IAAI,kBAAkB,EAC7C,KAAK,qBAAqB,IAAI,qBAAqB,EACnD,KAAK,kBAAkB,IAAI,kBAAkB,EAC7C,KAAK,mBAAmB,IAAI,mBAAmB,GAChD,CAAC;CACH"}
@@ -8,26 +8,69 @@ const ListsAPI = tslib_1.__importStar(require("./lists.js"));
8
8
  const lists_1 = require("./lists.js");
9
9
  const headers_1 = require("../../internal/headers.js");
10
10
  const path_1 = require("../../internal/utils/path.js");
11
+ /**
12
+ * Store the contact information Courier delivers to for each user — email, phone number, push tokens, and any custom data you send to.
13
+ */
11
14
  class Profiles extends resource_1.APIResource {
12
15
  constructor() {
13
16
  super(...arguments);
14
17
  this.lists = new ListsAPI.Lists(this._client);
15
18
  }
16
19
  /**
17
- * Merge the supplied values with an existing profile or create a new profile if
18
- * one doesn't already exist.
20
+ * Merges the supplied values into a user's profile, creating it if absent and
21
+ * leaving any key you omit untouched. Prefer this for everyday writes.
22
+ *
23
+ * @example
24
+ * ```ts
25
+ * const profile = await client.profiles.create('user_id', {
26
+ * profile: { foo: 'bar' },
27
+ * });
28
+ * ```
19
29
  */
20
- create(userID, body, options) {
21
- return this._client.post((0, path_1.path) `/profiles/${userID}`, { body, ...options });
30
+ create(userID, params, options) {
31
+ const { 'Idempotency-Key': idempotencyKey, 'x-idempotency-expiration': xIdempotencyExpiration, ...body } = params;
32
+ return this._client.post((0, path_1.path) `/profiles/${userID}`, {
33
+ body,
34
+ ...options,
35
+ headers: (0, headers_1.buildHeaders)([
36
+ {
37
+ ...(idempotencyKey != null ? { 'Idempotency-Key': idempotencyKey } : undefined),
38
+ ...(xIdempotencyExpiration != null ?
39
+ { 'x-idempotency-expiration': xIdempotencyExpiration }
40
+ : undefined),
41
+ },
42
+ options?.headers,
43
+ ]),
44
+ });
22
45
  }
23
46
  /**
24
- * Returns the specified user profile.
47
+ * Returns a user's stored profile and preferences, including the email address,
48
+ * phone number, and push tokens Courier can reach them on.
49
+ *
50
+ * @example
51
+ * ```ts
52
+ * const profile = await client.profiles.retrieve('user_id');
53
+ * ```
25
54
  */
26
55
  retrieve(userID, options) {
27
56
  return this._client.get((0, path_1.path) `/profiles/${userID}`, options);
28
57
  }
29
58
  /**
30
- * Update a profile
59
+ * Applies a JSON Patch to a user profile, adding, removing, or replacing
60
+ * individual fields without sending the whole object.
61
+ *
62
+ * @example
63
+ * ```ts
64
+ * await client.profiles.update('user_id', {
65
+ * patch: [
66
+ * {
67
+ * op: 'op',
68
+ * path: 'path',
69
+ * value: 'value',
70
+ * },
71
+ * ],
72
+ * });
73
+ * ```
31
74
  */
32
75
  update(userID, body, options) {
33
76
  return this._client.patch((0, path_1.path) `/profiles/${userID}`, {
@@ -37,7 +80,13 @@ class Profiles extends resource_1.APIResource {
37
80
  });
38
81
  }
39
82
  /**
40
- * Deletes the specified user profile.
83
+ * Deletes a user's profile and stored contact details. List subscriptions and
84
+ * preferences are separate resources, so remove those too if required.
85
+ *
86
+ * @example
87
+ * ```ts
88
+ * await client.profiles.delete('user_id');
89
+ * ```
41
90
  */
42
91
  delete(userID, options) {
43
92
  return this._client.delete((0, path_1.path) `/profiles/${userID}`, {
@@ -46,11 +95,15 @@ class Profiles extends resource_1.APIResource {
46
95
  });
47
96
  }
48
97
  /**
49
- * When using `PUT`, be sure to include all the key-value pairs required by the
50
- * recipient's profile. Any key-value pairs that exist in the profile but fail to
51
- * be included in the `PUT` request will be removed from the profile. Remember, a
52
- * `PUT` update is a full replacement of the data. For partial updates, use the
53
- * [Patch](https://www.courier.com/docs/reference/profiles/patch/) request.
98
+ * Overwrites a user profile in full, removing any key absent from the request
99
+ * body. Use the patch endpoint when changing a single field.
100
+ *
101
+ * @example
102
+ * ```ts
103
+ * const response = await client.profiles.replace('user_id', {
104
+ * profile: { foo: 'bar' },
105
+ * });
106
+ * ```
54
107
  */
55
108
  replace(userID, body, options) {
56
109
  return this._client.put((0, path_1.path) `/profiles/${userID}`, { body, ...options });
@@ -1 +1 @@
1
- {"version":3,"file":"profiles.js","sourceRoot":"","sources":["../../src/resources/profiles/profiles.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;;AAEtF,qDAAkD;AAElD,6DAAoC;AACpC,sCAOiB;AAEjB,uDAAsD;AAEtD,uDAAiD;AAEjD,MAAa,QAAS,SAAQ,sBAAW;IAAzC;;QACE,UAAK,GAAmB,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAwD3D,CAAC;IAtDC;;;OAGG;IACH,MAAM,CACJ,MAAc,EACd,IAAyB,EACzB,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAA,WAAI,EAAA,aAAa,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,MAAc,EAAE,OAAwB;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,aAAa,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAc,EAAE,IAAyB,EAAE,OAAwB;QACxE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAA,WAAI,EAAA,aAAa,MAAM,EAAE,EAAE;YACnD,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAc,EAAE,OAAwB;QAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAA,WAAI,EAAA,aAAa,MAAM,EAAE,EAAE;YACpD,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,OAAO,CACL,MAAc,EACd,IAA0B,EAC1B,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,aAAa,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC3E,CAAC;CACF;AAzDD,4BAyDC;AAwDD,QAAQ,CAAC,KAAK,GAAG,aAAK,CAAC"}
1
+ {"version":3,"file":"profiles.js","sourceRoot":"","sources":["../../src/resources/profiles/profiles.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;;AAEtF,qDAAkD;AAElD,6DAAoC;AACpC,sCAOiB;AAEjB,uDAAsD;AAEtD,uDAAiD;AAEjD;;GAEG;AACH,MAAa,QAAS,SAAQ,sBAAW;IAAzC;;QACE,UAAK,GAAmB,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IA8G3D,CAAC;IA5GC;;;;;;;;;;OAUG;IACH,MAAM,CACJ,MAAc,EACd,MAA2B,EAC3B,OAAwB;QAExB,MAAM,EACJ,iBAAiB,EAAE,cAAc,EACjC,0BAA0B,EAAE,sBAAsB,EAClD,GAAG,IAAI,EACR,GAAG,MAAM,CAAC;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAA,WAAI,EAAA,aAAa,MAAM,EAAE,EAAE;YAClD,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC;gBACpB;oBACE,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC/E,GAAG,CAAC,sBAAsB,IAAI,IAAI,CAAC,CAAC;wBAClC,EAAE,0BAA0B,EAAE,sBAAsB,EAAE;wBACxD,CAAC,CAAC,SAAS,CAAC;iBACb;gBACD,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACH,QAAQ,CAAC,MAAc,EAAE,OAAwB;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,aAAa,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,MAAc,EAAE,IAAyB,EAAE,OAAwB;QACxE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAA,WAAI,EAAA,aAAa,MAAM,EAAE,EAAE;YACnD,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAc,EAAE,OAAwB;QAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAA,WAAI,EAAA,aAAa,MAAM,EAAE,EAAE;YACpD,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,OAAO,CACL,MAAc,EACd,IAA0B,EAC1B,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,aAAa,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC3E,CAAC;CACF;AA/GD,4BA+GC;AA6ED,QAAQ,CAAC,KAAK,GAAG,aAAK,CAAC"}
@@ -4,26 +4,69 @@ import * as ListsAPI from "./lists.mjs";
4
4
  import { Lists, } from "./lists.mjs";
5
5
  import { buildHeaders } from "../../internal/headers.mjs";
6
6
  import { path } from "../../internal/utils/path.mjs";
7
+ /**
8
+ * Store the contact information Courier delivers to for each user — email, phone number, push tokens, and any custom data you send to.
9
+ */
7
10
  export class Profiles extends APIResource {
8
11
  constructor() {
9
12
  super(...arguments);
10
13
  this.lists = new ListsAPI.Lists(this._client);
11
14
  }
12
15
  /**
13
- * Merge the supplied values with an existing profile or create a new profile if
14
- * one doesn't already exist.
16
+ * Merges the supplied values into a user's profile, creating it if absent and
17
+ * leaving any key you omit untouched. Prefer this for everyday writes.
18
+ *
19
+ * @example
20
+ * ```ts
21
+ * const profile = await client.profiles.create('user_id', {
22
+ * profile: { foo: 'bar' },
23
+ * });
24
+ * ```
15
25
  */
16
- create(userID, body, options) {
17
- return this._client.post(path `/profiles/${userID}`, { body, ...options });
26
+ create(userID, params, options) {
27
+ const { 'Idempotency-Key': idempotencyKey, 'x-idempotency-expiration': xIdempotencyExpiration, ...body } = params;
28
+ return this._client.post(path `/profiles/${userID}`, {
29
+ body,
30
+ ...options,
31
+ headers: buildHeaders([
32
+ {
33
+ ...(idempotencyKey != null ? { 'Idempotency-Key': idempotencyKey } : undefined),
34
+ ...(xIdempotencyExpiration != null ?
35
+ { 'x-idempotency-expiration': xIdempotencyExpiration }
36
+ : undefined),
37
+ },
38
+ options?.headers,
39
+ ]),
40
+ });
18
41
  }
19
42
  /**
20
- * Returns the specified user profile.
43
+ * Returns a user's stored profile and preferences, including the email address,
44
+ * phone number, and push tokens Courier can reach them on.
45
+ *
46
+ * @example
47
+ * ```ts
48
+ * const profile = await client.profiles.retrieve('user_id');
49
+ * ```
21
50
  */
22
51
  retrieve(userID, options) {
23
52
  return this._client.get(path `/profiles/${userID}`, options);
24
53
  }
25
54
  /**
26
- * Update a profile
55
+ * Applies a JSON Patch to a user profile, adding, removing, or replacing
56
+ * individual fields without sending the whole object.
57
+ *
58
+ * @example
59
+ * ```ts
60
+ * await client.profiles.update('user_id', {
61
+ * patch: [
62
+ * {
63
+ * op: 'op',
64
+ * path: 'path',
65
+ * value: 'value',
66
+ * },
67
+ * ],
68
+ * });
69
+ * ```
27
70
  */
28
71
  update(userID, body, options) {
29
72
  return this._client.patch(path `/profiles/${userID}`, {
@@ -33,7 +76,13 @@ export class Profiles extends APIResource {
33
76
  });
34
77
  }
35
78
  /**
36
- * Deletes the specified user profile.
79
+ * Deletes a user's profile and stored contact details. List subscriptions and
80
+ * preferences are separate resources, so remove those too if required.
81
+ *
82
+ * @example
83
+ * ```ts
84
+ * await client.profiles.delete('user_id');
85
+ * ```
37
86
  */
38
87
  delete(userID, options) {
39
88
  return this._client.delete(path `/profiles/${userID}`, {
@@ -42,11 +91,15 @@ export class Profiles extends APIResource {
42
91
  });
43
92
  }
44
93
  /**
45
- * When using `PUT`, be sure to include all the key-value pairs required by the
46
- * recipient's profile. Any key-value pairs that exist in the profile but fail to
47
- * be included in the `PUT` request will be removed from the profile. Remember, a
48
- * `PUT` update is a full replacement of the data. For partial updates, use the
49
- * [Patch](https://www.courier.com/docs/reference/profiles/patch/) request.
94
+ * Overwrites a user profile in full, removing any key absent from the request
95
+ * body. Use the patch endpoint when changing a single field.
96
+ *
97
+ * @example
98
+ * ```ts
99
+ * const response = await client.profiles.replace('user_id', {
100
+ * profile: { foo: 'bar' },
101
+ * });
102
+ * ```
50
103
  */
51
104
  replace(userID, body, options) {
52
105
  return this._client.put(path `/profiles/${userID}`, { body, ...options });
@@ -1 +1 @@
1
- {"version":3,"file":"profiles.mjs","sourceRoot":"","sources":["../../src/resources/profiles/profiles.ts"],"names":[],"mappings":"AAAA,sFAAsF;AAEtF,OAAO,EAAE,WAAW,EAAE,gCAA4B;AAElD,OAAO,KAAK,QAAQ,oBAAgB;AACpC,OAAO,EAML,KAAK,GACN,oBAAgB;AAEjB,OAAO,EAAE,YAAY,EAAE,mCAA+B;AAEtD,OAAO,EAAE,IAAI,EAAE,sCAAkC;AAEjD,MAAM,OAAO,QAAS,SAAQ,WAAW;IAAzC;;QACE,UAAK,GAAmB,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAwD3D,CAAC;IAtDC;;;OAGG;IACH,MAAM,CACJ,MAAc,EACd,IAAyB,EACzB,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA,aAAa,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,MAAc,EAAE,OAAwB;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,aAAa,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAc,EAAE,IAAyB,EAAE,OAAwB;QACxE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAA,aAAa,MAAM,EAAE,EAAE;YACnD,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAc,EAAE,OAAwB;QAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAA,aAAa,MAAM,EAAE,EAAE;YACpD,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,OAAO,CACL,MAAc,EACd,IAA0B,EAC1B,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,aAAa,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC3E,CAAC;CACF;AAwDD,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC"}
1
+ {"version":3,"file":"profiles.mjs","sourceRoot":"","sources":["../../src/resources/profiles/profiles.ts"],"names":[],"mappings":"AAAA,sFAAsF;AAEtF,OAAO,EAAE,WAAW,EAAE,gCAA4B;AAElD,OAAO,KAAK,QAAQ,oBAAgB;AACpC,OAAO,EAML,KAAK,GACN,oBAAgB;AAEjB,OAAO,EAAE,YAAY,EAAE,mCAA+B;AAEtD,OAAO,EAAE,IAAI,EAAE,sCAAkC;AAEjD;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,WAAW;IAAzC;;QACE,UAAK,GAAmB,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IA8G3D,CAAC;IA5GC;;;;;;;;;;OAUG;IACH,MAAM,CACJ,MAAc,EACd,MAA2B,EAC3B,OAAwB;QAExB,MAAM,EACJ,iBAAiB,EAAE,cAAc,EACjC,0BAA0B,EAAE,sBAAsB,EAClD,GAAG,IAAI,EACR,GAAG,MAAM,CAAC;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA,aAAa,MAAM,EAAE,EAAE;YAClD,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC;gBACpB;oBACE,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC/E,GAAG,CAAC,sBAAsB,IAAI,IAAI,CAAC,CAAC;wBAClC,EAAE,0BAA0B,EAAE,sBAAsB,EAAE;wBACxD,CAAC,CAAC,SAAS,CAAC;iBACb;gBACD,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACH,QAAQ,CAAC,MAAc,EAAE,OAAwB;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,aAAa,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,MAAc,EAAE,IAAyB,EAAE,OAAwB;QACxE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAA,aAAa,MAAM,EAAE,EAAE;YACnD,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAc,EAAE,OAAwB;QAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAA,aAAa,MAAM,EAAE,EAAE;YACpD,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,OAAO,CACL,MAAc,EACd,IAA0B,EAC1B,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,aAAa,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC3E,CAAC;CACF;AA6ED,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC"}
@@ -3,12 +3,18 @@ import * as Shared from "../shared.mjs";
3
3
  import * as ProvidersAPI from "./providers.mjs";
4
4
  import { APIPromise } from "../../core/api-promise.mjs";
5
5
  import { RequestOptions } from "../../internal/request-options.mjs";
6
+ /**
7
+ * Configure the channel providers Courier delivers through, and browse the provider types it supports.
8
+ */
6
9
  export declare class Catalog extends APIResource {
7
10
  /**
8
- * Returns the catalog of available provider types with their display names,
9
- * descriptions, and configuration schema fields (snake_case, with `type` and
10
- * `required`). Providers with no configurable schema return only `provider`,
11
- * `name`, and `description`.
11
+ * Returns the provider types Courier supports, each with a display name,
12
+ * description, and the configuration fields it requires.
13
+ *
14
+ * @example
15
+ * ```ts
16
+ * const catalogs = await client.providers.catalog.list();
17
+ * ```
12
18
  */
13
19
  list(query?: CatalogListParams | null | undefined, options?: RequestOptions): APIPromise<CatalogListResponse>;
14
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.d.mts","sourceRoot":"","sources":["../../src/resources/providers/catalog.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,gCAA4B;AAClD,OAAO,KAAK,MAAM,sBAAkB;AACpC,OAAO,KAAK,YAAY,wBAAoB;AAC5C,OAAO,EAAE,UAAU,EAAE,mCAA+B;AACpD,OAAO,EAAE,cAAc,EAAE,2CAAuC;AAEhE,qBAAa,OAAQ,SAAQ,WAAW;IACtC;;;;;OAKG;IACH,IAAI,CACF,KAAK,GAAE,iBAAiB,GAAG,IAAI,GAAG,SAAc,EAChD,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,mBAAmB,CAAC;CAGnC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;IAEtB,OAAO,EAAE,KAAK,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;CACpD;AAED,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,OAAO,EAAE,KAAK,mBAAmB,IAAI,mBAAmB,EAAE,KAAK,iBAAiB,IAAI,iBAAiB,EAAE,CAAC;CACzG"}
1
+ {"version":3,"file":"catalog.d.mts","sourceRoot":"","sources":["../../src/resources/providers/catalog.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,gCAA4B;AAClD,OAAO,KAAK,MAAM,sBAAkB;AACpC,OAAO,KAAK,YAAY,wBAAoB;AAC5C,OAAO,EAAE,UAAU,EAAE,mCAA+B;AACpD,OAAO,EAAE,cAAc,EAAE,2CAAuC;AAEhE;;GAEG;AACH,qBAAa,OAAQ,SAAQ,WAAW;IACtC;;;;;;;;OAQG;IACH,IAAI,CACF,KAAK,GAAE,iBAAiB,GAAG,IAAI,GAAG,SAAc,EAChD,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,mBAAmB,CAAC;CAGnC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;IAEtB,OAAO,EAAE,KAAK,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;CACpD;AAED,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,OAAO,EAAE,KAAK,mBAAmB,IAAI,mBAAmB,EAAE,KAAK,iBAAiB,IAAI,iBAAiB,EAAE,CAAC;CACzG"}
@@ -3,12 +3,18 @@ import * as Shared from "../shared.js";
3
3
  import * as ProvidersAPI from "./providers.js";
4
4
  import { APIPromise } from "../../core/api-promise.js";
5
5
  import { RequestOptions } from "../../internal/request-options.js";
6
+ /**
7
+ * Configure the channel providers Courier delivers through, and browse the provider types it supports.
8
+ */
6
9
  export declare class Catalog extends APIResource {
7
10
  /**
8
- * Returns the catalog of available provider types with their display names,
9
- * descriptions, and configuration schema fields (snake_case, with `type` and
10
- * `required`). Providers with no configurable schema return only `provider`,
11
- * `name`, and `description`.
11
+ * Returns the provider types Courier supports, each with a display name,
12
+ * description, and the configuration fields it requires.
13
+ *
14
+ * @example
15
+ * ```ts
16
+ * const catalogs = await client.providers.catalog.list();
17
+ * ```
12
18
  */
13
19
  list(query?: CatalogListParams | null | undefined, options?: RequestOptions): APIPromise<CatalogListResponse>;
14
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/resources/providers/catalog.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,+BAA4B;AAClD,OAAO,KAAK,MAAM,qBAAkB;AACpC,OAAO,KAAK,YAAY,uBAAoB;AAC5C,OAAO,EAAE,UAAU,EAAE,kCAA+B;AACpD,OAAO,EAAE,cAAc,EAAE,0CAAuC;AAEhE,qBAAa,OAAQ,SAAQ,WAAW;IACtC;;;;;OAKG;IACH,IAAI,CACF,KAAK,GAAE,iBAAiB,GAAG,IAAI,GAAG,SAAc,EAChD,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,mBAAmB,CAAC;CAGnC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;IAEtB,OAAO,EAAE,KAAK,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;CACpD;AAED,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,OAAO,EAAE,KAAK,mBAAmB,IAAI,mBAAmB,EAAE,KAAK,iBAAiB,IAAI,iBAAiB,EAAE,CAAC;CACzG"}
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/resources/providers/catalog.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,+BAA4B;AAClD,OAAO,KAAK,MAAM,qBAAkB;AACpC,OAAO,KAAK,YAAY,uBAAoB;AAC5C,OAAO,EAAE,UAAU,EAAE,kCAA+B;AACpD,OAAO,EAAE,cAAc,EAAE,0CAAuC;AAEhE;;GAEG;AACH,qBAAa,OAAQ,SAAQ,WAAW;IACtC;;;;;;;;OAQG;IACH,IAAI,CACF,KAAK,GAAE,iBAAiB,GAAG,IAAI,GAAG,SAAc,EAChD,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,mBAAmB,CAAC;CAGnC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;IAEtB,OAAO,EAAE,KAAK,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;CACpD;AAED,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,OAAO,EAAE,KAAK,mBAAmB,IAAI,mBAAmB,EAAE,KAAK,iBAAiB,IAAI,iBAAiB,EAAE,CAAC;CACzG"}
@@ -3,12 +3,18 @@
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.Catalog = void 0;
5
5
  const resource_1 = require("../../core/resource.js");
6
+ /**
7
+ * Configure the channel providers Courier delivers through, and browse the provider types it supports.
8
+ */
6
9
  class Catalog extends resource_1.APIResource {
7
10
  /**
8
- * Returns the catalog of available provider types with their display names,
9
- * descriptions, and configuration schema fields (snake_case, with `type` and
10
- * `required`). Providers with no configurable schema return only `provider`,
11
- * `name`, and `description`.
11
+ * Returns the provider types Courier supports, each with a display name,
12
+ * description, and the configuration fields it requires.
13
+ *
14
+ * @example
15
+ * ```ts
16
+ * const catalogs = await client.providers.catalog.list();
17
+ * ```
12
18
  */
13
19
  list(query = {}, options) {
14
20
  return this._client.get('/providers/catalog', { query, ...options });
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/resources/providers/catalog.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,qDAAkD;AAMlD,MAAa,OAAQ,SAAQ,sBAAW;IACtC;;;;;OAKG;IACH,IAAI,CACF,QAA8C,EAAE,EAChD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;CACF;AAbD,0BAaC"}
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/resources/providers/catalog.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,qDAAkD;AAMlD;;GAEG;AACH,MAAa,OAAQ,SAAQ,sBAAW;IACtC;;;;;;;;OAQG;IACH,IAAI,CACF,QAA8C,EAAE,EAChD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;CACF;AAhBD,0BAgBC"}
@@ -1,11 +1,17 @@
1
1
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
  import { APIResource } from "../../core/resource.mjs";
3
+ /**
4
+ * Configure the channel providers Courier delivers through, and browse the provider types it supports.
5
+ */
3
6
  export class Catalog extends APIResource {
4
7
  /**
5
- * Returns the catalog of available provider types with their display names,
6
- * descriptions, and configuration schema fields (snake_case, with `type` and
7
- * `required`). Providers with no configurable schema return only `provider`,
8
- * `name`, and `description`.
8
+ * Returns the provider types Courier supports, each with a display name,
9
+ * description, and the configuration fields it requires.
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * const catalogs = await client.providers.catalog.list();
14
+ * ```
9
15
  */
10
16
  list(query = {}, options) {
11
17
  return this._client.get('/providers/catalog', { query, ...options });
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.mjs","sourceRoot":"","sources":["../../src/resources/providers/catalog.ts"],"names":[],"mappings":"AAAA,sFAAsF;AAEtF,OAAO,EAAE,WAAW,EAAE,gCAA4B;AAMlD,MAAM,OAAO,OAAQ,SAAQ,WAAW;IACtC;;;;;OAKG;IACH,IAAI,CACF,QAA8C,EAAE,EAChD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;CACF"}
1
+ {"version":3,"file":"catalog.mjs","sourceRoot":"","sources":["../../src/resources/providers/catalog.ts"],"names":[],"mappings":"AAAA,sFAAsF;AAEtF,OAAO,EAAE,WAAW,EAAE,gCAA4B;AAMlD;;GAEG;AACH,MAAM,OAAO,OAAQ,SAAQ,WAAW;IACtC;;;;;;;;OAQG;IACH,IAAI,CACF,QAA8C,EAAE,EAChD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;CACF"}
@@ -4,33 +4,63 @@ import * as CatalogAPI from "./catalog.mjs";
4
4
  import { Catalog, CatalogListParams, CatalogListResponse } from "./catalog.mjs";
5
5
  import { APIPromise } from "../../core/api-promise.mjs";
6
6
  import { RequestOptions } from "../../internal/request-options.mjs";
7
+ /**
8
+ * Configure the channel providers Courier delivers through, and browse the provider types it supports.
9
+ */
7
10
  export declare class Providers extends APIResource {
8
11
  catalog: CatalogAPI.Catalog;
9
12
  /**
10
- * Create a new provider configuration. The `provider` field must be a known
11
- * Courier provider key (see catalog).
12
- */
13
- create(body: ProviderCreateParams, options?: RequestOptions): APIPromise<Provider>;
14
- /**
15
- * Fetch a single provider configuration by ID.
13
+ * Configures a provider integration from a Courier provider key and its settings.
14
+ * Check the catalog endpoint for the schema each provider expects.
15
+ *
16
+ * @example
17
+ * ```ts
18
+ * const provider = await client.providers.create({
19
+ * provider: 'provider',
20
+ * });
21
+ * ```
22
+ */
23
+ create(params: ProviderCreateParams, options?: RequestOptions): APIPromise<Provider>;
24
+ /**
25
+ * Returns one configured provider by id, including its channel, provider key,
26
+ * alias, title, and current settings.
27
+ *
28
+ * @example
29
+ * ```ts
30
+ * const provider = await client.providers.retrieve('id');
31
+ * ```
16
32
  */
17
33
  retrieve(id: string, options?: RequestOptions): APIPromise<Provider>;
18
34
  /**
19
- * Replace an existing provider configuration. The `provider` key is required and
20
- * determines which provider-specific settings schema is applied. All other fields
21
- * are optional — omitted fields are cleared from the stored configuration (this is
22
- * a full replacement, not a partial merge). Changing the provider type for an
23
- * existing configuration is not supported.
35
+ * Replaces a provider's configuration in full, clearing any field you omit rather
36
+ * than merging it. Send the complete settings object.
37
+ *
38
+ * @example
39
+ * ```ts
40
+ * const provider = await client.providers.update('id', {
41
+ * provider: 'provider',
42
+ * });
43
+ * ```
24
44
  */
25
45
  update(id: string, body: ProviderUpdateParams, options?: RequestOptions): APIPromise<Provider>;
26
46
  /**
27
- * List configured provider integrations for the current workspace. Supports
28
- * cursor-based pagination.
47
+ * Lists the provider integrations configured in the workspace, one entry per
48
+ * channel and provider key with its alias and settings.
49
+ *
50
+ * @example
51
+ * ```ts
52
+ * const providers = await client.providers.list();
53
+ * ```
29
54
  */
30
55
  list(query?: ProviderListParams | null | undefined, options?: RequestOptions): APIPromise<ProviderListResponse>;
31
56
  /**
32
- * Delete a provider configuration. Returns 409 if the provider is still referenced
33
- * by routing or notifications.
57
+ * Deletes a provider configuration, which fails while routing strategies or
58
+ * templates still reference it. Update those references first.
59
+ *
60
+ * @example
61
+ * ```ts
62
+ * await client.providers.delete('id');
63
+ * ```
34
64
  */
35
65
  delete(id: string, options?: RequestOptions): APIPromise<void>;
36
66
  }
@@ -128,26 +158,42 @@ export interface ProviderListResponse {
128
158
  }
129
159
  export interface ProviderCreateParams {
130
160
  /**
131
- * The provider key identifying the type (e.g. "sendgrid", "twilio"). Must be a
132
- * known Courier provider — see the catalog endpoint for valid keys.
161
+ * Body param: The provider key identifying the type (e.g. "sendgrid", "twilio").
162
+ * Must be a known Courier provider — see the catalog endpoint for valid keys.
133
163
  */
134
164
  provider: string;
135
165
  /**
136
- * Optional alias for this configuration.
166
+ * Body param: Optional alias for this configuration.
137
167
  */
138
168
  alias?: string;
139
169
  /**
140
- * Provider-specific settings (snake_case keys). Defaults to an empty object when
141
- * omitted. Use the catalog endpoint to discover required fields for a given
142
- * provider — omitting a required field returns a 400 validation error.
170
+ * Body param: Provider-specific settings (snake_case keys). Defaults to an empty
171
+ * object when omitted. Use the catalog endpoint to discover required fields for a
172
+ * given provider — omitting a required field returns a 400 validation error.
143
173
  */
144
174
  settings?: {
145
175
  [key: string]: unknown;
146
176
  };
147
177
  /**
148
- * Optional display title. Omit to use "Default Configuration".
178
+ * Body param: Optional display title. Omit to use "Default Configuration".
149
179
  */
150
180
  title?: string;
181
+ /**
182
+ * Header param: A unique key that makes this request idempotent. If Courier
183
+ * receives another request with the same `Idempotency-Key`, it returns the stored
184
+ * response from the first request without performing the operation again
185
+ * (including the original status code and any error). Use it to safely retry
186
+ * `POST` requests after network failures without risking duplicate sends. The key
187
+ * is scoped to this endpoint.
188
+ */
189
+ 'Idempotency-Key'?: string;
190
+ /**
191
+ * Header param: How long the idempotency key remains valid, as a Unix epoch
192
+ * timestamp in seconds or an ISO 8601 date string. Only applies when
193
+ * `Idempotency-Key` is provided. If omitted, the key is retained for 25 hours; the
194
+ * maximum is 1 year.
195
+ */
196
+ 'x-idempotency-expiration'?: string;
151
197
  }
152
198
  export interface ProviderUpdateParams {
153
199
  /**