@trycourier/courier 6.3.1 → 6.4.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 (390) hide show
  1. package/Client.d.ts +84 -109
  2. package/Client.js +118 -148
  3. package/api/client/requests/SendMessageRequest.d.ts +45 -78
  4. package/api/resources/audiences/client/Client.d.ts +16 -16
  5. package/api/resources/audiences/client/Client.js +63 -86
  6. package/api/resources/audiences/client/requests/AudienceMembersListParams.d.ts +1 -3
  7. package/api/resources/audiences/client/requests/AudienceUpdateParams.d.ts +3 -7
  8. package/api/resources/audiences/client/requests/AudiencesListParams.d.ts +1 -3
  9. package/api/resources/audiences/types/ComparisonOperator.d.ts +1 -1
  10. package/api/resources/audiences/types/Filter.d.ts +1 -1
  11. package/api/resources/audiences/types/FilterConfig.d.ts +1 -1
  12. package/api/resources/audiences/types/LogicalOperator.d.ts +1 -1
  13. package/api/resources/audiences/types/Operator.d.ts +1 -1
  14. package/api/resources/auditEvents/client/Client.d.ts +10 -4
  15. package/api/resources/auditEvents/client/Client.js +35 -37
  16. package/api/resources/auditEvents/client/requests/ListAuditEventsRequest.d.ts +1 -3
  17. package/api/resources/authTokens/client/Client.d.ts +11 -3
  18. package/api/resources/authTokens/client/Client.js +28 -25
  19. package/api/resources/authTokens/client/requests/IssueTokenParams.d.ts +2 -2
  20. package/api/resources/automations/client/Client.d.ts +15 -13
  21. package/api/resources/automations/client/Client.js +38 -48
  22. package/api/resources/automations/types/AutomationAddToBatchMaxItemsType.d.ts +1 -1
  23. package/api/resources/automations/types/AutomationAddToBatchRetainType.d.ts +1 -1
  24. package/api/resources/automations/types/AutomationAddToBatchScope.d.ts +1 -1
  25. package/api/resources/automations/types/AutomationFetchDataWebhookMethod.d.ts +1 -1
  26. package/api/resources/automations/types/AutomationStepOption.d.ts +1 -1
  27. package/api/resources/automations/types/AutomationThrottleScope.d.ts +1 -1
  28. package/api/resources/automations/types/MergeAlgorithm.d.ts +1 -1
  29. package/api/resources/automations/types/Profile.d.ts +1 -1
  30. package/api/resources/brands/client/Client.d.ts +22 -58
  31. package/api/resources/brands/client/Client.js +65 -126
  32. package/api/resources/brands/client/requests/BrandUpdateParameters.d.ts +3 -26
  33. package/api/resources/brands/client/requests/ListBrandsRequest.d.ts +1 -3
  34. package/api/resources/bulk/client/Client.d.ts +30 -121
  35. package/api/resources/bulk/client/Client.js +73 -193
  36. package/api/resources/bulk/client/requests/BulkCreateJobParams.d.ts +6 -86
  37. package/api/resources/bulk/client/requests/BulkGetUsersParams.d.ts +1 -3
  38. package/api/resources/bulk/types/BulkJobStatus.d.ts +1 -1
  39. package/api/resources/bulk/types/BulkJobUserStatus.d.ts +1 -1
  40. package/api/resources/bulk/types/InboundBulkMessageV2.d.ts +3 -5
  41. package/api/resources/commons/errors/AlreadyExistsError.js +17 -7
  42. package/api/resources/commons/errors/BadRequestError.js +17 -7
  43. package/api/resources/commons/errors/ConflictError.js +17 -7
  44. package/api/resources/commons/errors/MessageNotFoundError.js +17 -7
  45. package/api/resources/commons/errors/NotFoundError.js +17 -7
  46. package/api/resources/commons/errors/PaymentRequiredError.js +17 -7
  47. package/api/resources/commons/types/ChannelClassification.d.ts +1 -1
  48. package/api/resources/commons/types/NotificationPreferences.d.ts +1 -1
  49. package/api/resources/commons/types/PreferenceStatus.d.ts +1 -1
  50. package/api/resources/inbound/client/Client.d.ts +9 -1
  51. package/api/resources/inbound/client/Client.js +26 -21
  52. package/api/resources/index.js +17 -7
  53. package/api/resources/lists/client/Client.d.ts +31 -34
  54. package/api/resources/lists/client/Client.js +108 -161
  55. package/api/resources/lists/client/requests/AddSubscribersToList.d.ts +5 -5
  56. package/api/resources/lists/client/requests/GetAllListsRequest.d.ts +1 -4
  57. package/api/resources/lists/client/requests/GetSubscriptionForListRequest.d.ts +1 -3
  58. package/api/resources/lists/client/requests/SubscribeUserToListRequest.d.ts +1 -4
  59. package/api/resources/lists/client/requests/SubscribeUsersToListRequest.d.ts +5 -5
  60. package/api/resources/messages/client/Client.d.ts +15 -24
  61. package/api/resources/messages/client/Client.js +65 -104
  62. package/api/resources/messages/client/requests/GetMessageHistoryRequest.d.ts +1 -3
  63. package/api/resources/messages/client/requests/ListMessagesRequest.d.ts +1 -16
  64. package/api/resources/messages/types/MessageDetailsExtended.d.ts +7 -0
  65. package/api/resources/messages/types/MessageDetailsExtended.js +5 -0
  66. package/api/resources/messages/types/MessageStatus.d.ts +25 -5
  67. package/api/resources/messages/types/MessageStatus.js +6 -1
  68. package/api/resources/messages/types/Reason.d.ts +1 -1
  69. package/api/resources/messages/types/index.d.ts +1 -0
  70. package/api/resources/messages/types/index.js +1 -0
  71. package/api/resources/notifications/client/Client.d.ts +20 -11
  72. package/api/resources/notifications/client/Client.js +69 -88
  73. package/api/resources/notifications/client/requests/NotificationListParams.d.ts +1 -4
  74. package/api/resources/notifications/client/requests/SubmissionChecksReplaceParams.d.ts +6 -2
  75. package/api/resources/notifications/types/BlockType.d.ts +1 -1
  76. package/api/resources/notifications/types/CheckStatus.d.ts +1 -1
  77. package/api/resources/notifications/types/MessageRoutingChannel.d.ts +1 -1
  78. package/api/resources/notifications/types/MessageRoutingMethod.d.ts +1 -1
  79. package/api/resources/notifications/types/NotificationContent.d.ts +1 -1
  80. package/api/resources/profiles/client/Client.d.ts +35 -23
  81. package/api/resources/profiles/client/Client.js +95 -125
  82. package/api/resources/profiles/client/requests/GetListSubscriptionsRequest.d.ts +1 -3
  83. package/api/resources/profiles/client/requests/MergeProfileRequest.d.ts +1 -1
  84. package/api/resources/profiles/client/requests/ReplaceProfileRequest.d.ts +1 -1
  85. package/api/resources/profiles/types/DeviceType.d.ts +1 -1
  86. package/api/resources/profiles/types/Discord.d.ts +1 -1
  87. package/api/resources/profiles/types/Expo.d.ts +1 -1
  88. package/api/resources/profiles/types/MsTeams.d.ts +1 -1
  89. package/api/resources/profiles/types/ProfileUpdateRequest.d.ts +8 -0
  90. package/api/resources/profiles/types/ProfileUpdateRequest.js +5 -0
  91. package/api/resources/profiles/types/Slack.d.ts +1 -1
  92. package/api/resources/profiles/types/SnoozeRuleType.d.ts +1 -1
  93. package/api/resources/profiles/types/UserProfileFirebaseToken.d.ts +1 -1
  94. package/api/resources/profiles/types/WebhookAuthMode.d.ts +1 -1
  95. package/api/resources/profiles/types/WebhookMethod.d.ts +1 -1
  96. package/api/resources/profiles/types/WebhookProfileType.d.ts +1 -1
  97. package/api/resources/profiles/types/index.d.ts +1 -0
  98. package/api/resources/profiles/types/index.js +1 -0
  99. package/api/resources/send/types/Attachment.d.ts +1 -1
  100. package/api/resources/send/types/ChannelSource.d.ts +1 -1
  101. package/api/resources/send/types/Content.d.ts +1 -1
  102. package/api/resources/send/types/Criteria.d.ts +1 -1
  103. package/api/resources/send/types/ElementalNode.d.ts +1 -1
  104. package/api/resources/send/types/ExpiresInType.d.ts +1 -1
  105. package/api/resources/send/types/IActionButtonStyle.d.ts +1 -1
  106. package/api/resources/send/types/IAlignment.d.ts +1 -1
  107. package/api/resources/send/types/IPreferences.d.ts +1 -1
  108. package/api/resources/send/types/InAppPlacement.d.ts +1 -1
  109. package/api/resources/send/types/Locales.d.ts +1 -1
  110. package/api/resources/send/types/Message.d.ts +1 -1
  111. package/api/resources/send/types/MessageChannels.d.ts +1 -1
  112. package/api/resources/send/types/MessageData.d.ts +1 -1
  113. package/api/resources/send/types/MessageProviders.d.ts +1 -1
  114. package/api/resources/send/types/MessageRecipient.d.ts +1 -1
  115. package/api/resources/send/types/Recipient.d.ts +1 -1
  116. package/api/resources/send/types/RecipientData.d.ts +1 -1
  117. package/api/resources/send/types/RoutingChannel.d.ts +1 -1
  118. package/api/resources/send/types/RoutingMethod.d.ts +1 -1
  119. package/api/resources/send/types/RuleType.d.ts +1 -1
  120. package/api/resources/send/types/TextAlign.d.ts +1 -1
  121. package/api/resources/send/types/TextStyle.d.ts +1 -1
  122. package/api/resources/templates/client/Client.d.ts +9 -3
  123. package/api/resources/templates/client/Client.js +28 -25
  124. package/api/resources/templates/client/requests/ListTemplatesRequest.d.ts +1 -3
  125. package/api/resources/templates/types/ChannelIdentifier.d.ts +1 -1
  126. package/api/resources/templates/types/RoutingStrategyMethod.d.ts +1 -1
  127. package/api/resources/tenants/client/Client.d.ts +23 -37
  128. package/api/resources/tenants/client/Client.js +80 -127
  129. package/api/resources/tenants/client/requests/ListTenantParams.d.ts +1 -5
  130. package/api/resources/tenants/client/requests/ListUsersForTenantParams.d.ts +1 -4
  131. package/api/resources/tenants/client/requests/TenantCreateOrReplaceParams.d.ts +6 -21
  132. package/api/resources/tenants/types/SubscriptionTopicStatus.d.ts +1 -1
  133. package/api/resources/tenants/types/TemplateProperty.d.ts +1 -1
  134. package/api/resources/translations/client/Client.d.ts +10 -2
  135. package/api/resources/translations/client/Client.js +33 -33
  136. package/api/resources/users/client/Client.d.ts +5 -7
  137. package/api/resources/users/resources/index.js +17 -7
  138. package/api/resources/users/resources/preferences/client/Client.d.ts +13 -9
  139. package/api/resources/users/resources/preferences/client/Client.js +46 -55
  140. package/api/resources/users/resources/preferences/client/requests/UserPreferencesParams.d.ts +1 -3
  141. package/api/resources/users/resources/preferences/client/requests/UserPreferencesTopicParams.d.ts +1 -3
  142. package/api/resources/users/resources/preferences/client/requests/UserPreferencesUpdateParams.d.ts +2 -2
  143. package/api/resources/users/resources/tenants/client/Client.d.ts +23 -21
  144. package/api/resources/users/resources/tenants/client/Client.js +68 -89
  145. package/api/resources/users/resources/tenants/client/requests/AddUserToMultipleTenantsParams.d.ts +9 -8
  146. package/api/resources/users/resources/tenants/client/requests/AddUserToSingleTenantsParams.d.ts +1 -5
  147. package/api/resources/users/resources/tenants/client/requests/ListTenantsForUserParams.d.ts +1 -4
  148. package/api/resources/users/resources/tokens/client/Client.d.ts +27 -29
  149. package/api/resources/users/resources/tokens/client/Client.js +74 -104
  150. package/api/resources/users/resources/tokens/types/ExpiryDate.d.ts +1 -1
  151. package/api/resources/users/resources/tokens/types/GetAllTokensResponse.d.ts +1 -1
  152. package/api/resources/users/resources/tokens/types/PatchOp.d.ts +1 -1
  153. package/api/resources/users/resources/tokens/types/ProviderKey.d.ts +1 -1
  154. package/api/resources/users/resources/tokens/types/TokenStatus.d.ts +1 -1
  155. package/core/auth/BearerToken.d.ts +1 -1
  156. package/core/fetcher/APIResponse.d.ts +1 -1
  157. package/core/fetcher/Fetcher.d.ts +7 -3
  158. package/core/fetcher/Fetcher.js +30 -135
  159. package/core/fetcher/Supplier.d.ts +1 -1
  160. package/core/fetcher/createRequestUrl.d.ts +1 -0
  161. package/core/fetcher/createRequestUrl.js +12 -0
  162. package/core/fetcher/getFetchFn.d.ts +4 -0
  163. package/core/fetcher/getFetchFn.js +68 -0
  164. package/core/fetcher/getHeader.js +1 -2
  165. package/core/fetcher/getRequestBody.d.ts +7 -0
  166. package/core/fetcher/getRequestBody.js +23 -0
  167. package/core/fetcher/getResponseBody.d.ts +1 -0
  168. package/core/fetcher/getResponseBody.js +54 -0
  169. package/core/fetcher/makeRequest.d.ts +1 -0
  170. package/core/fetcher/makeRequest.js +42 -0
  171. package/core/fetcher/requestWithRetries.d.ts +1 -0
  172. package/core/fetcher/requestWithRetries.js +40 -0
  173. package/core/fetcher/signals.d.ts +11 -0
  174. package/core/fetcher/signals.js +36 -0
  175. package/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.d.ts +30 -0
  176. package/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.js +247 -0
  177. package/core/fetcher/stream-wrappers/NodePre18StreamWrapper.d.ts +21 -0
  178. package/core/fetcher/stream-wrappers/NodePre18StreamWrapper.js +126 -0
  179. package/core/fetcher/stream-wrappers/UndiciStreamWrapper.d.ts +31 -0
  180. package/core/fetcher/stream-wrappers/UndiciStreamWrapper.js +229 -0
  181. package/core/fetcher/stream-wrappers/chooseStreamWrapper.d.ts +18 -0
  182. package/core/fetcher/stream-wrappers/chooseStreamWrapper.js +59 -0
  183. package/core/json.d.ts +15 -0
  184. package/core/json.js +24 -0
  185. package/core/runtime/runtime.d.ts +2 -1
  186. package/core/runtime/runtime.js +57 -36
  187. package/dist/Client.d.ts +84 -109
  188. package/dist/Client.js +118 -148
  189. package/dist/api/client/requests/SendMessageRequest.d.ts +45 -78
  190. package/dist/api/resources/audiences/client/Client.d.ts +16 -16
  191. package/dist/api/resources/audiences/client/Client.js +63 -86
  192. package/dist/api/resources/audiences/client/requests/AudienceMembersListParams.d.ts +1 -3
  193. package/dist/api/resources/audiences/client/requests/AudienceUpdateParams.d.ts +3 -7
  194. package/dist/api/resources/audiences/client/requests/AudiencesListParams.d.ts +1 -3
  195. package/dist/api/resources/audiences/types/ComparisonOperator.d.ts +1 -1
  196. package/dist/api/resources/audiences/types/Filter.d.ts +1 -1
  197. package/dist/api/resources/audiences/types/FilterConfig.d.ts +1 -1
  198. package/dist/api/resources/audiences/types/LogicalOperator.d.ts +1 -1
  199. package/dist/api/resources/audiences/types/Operator.d.ts +1 -1
  200. package/dist/api/resources/auditEvents/client/Client.d.ts +10 -4
  201. package/dist/api/resources/auditEvents/client/Client.js +35 -37
  202. package/dist/api/resources/auditEvents/client/requests/ListAuditEventsRequest.d.ts +1 -3
  203. package/dist/api/resources/authTokens/client/Client.d.ts +11 -3
  204. package/dist/api/resources/authTokens/client/Client.js +28 -25
  205. package/dist/api/resources/authTokens/client/requests/IssueTokenParams.d.ts +2 -2
  206. package/dist/api/resources/automations/client/Client.d.ts +15 -13
  207. package/dist/api/resources/automations/client/Client.js +38 -48
  208. package/dist/api/resources/automations/types/AutomationAddToBatchMaxItemsType.d.ts +1 -1
  209. package/dist/api/resources/automations/types/AutomationAddToBatchRetainType.d.ts +1 -1
  210. package/dist/api/resources/automations/types/AutomationAddToBatchScope.d.ts +1 -1
  211. package/dist/api/resources/automations/types/AutomationFetchDataWebhookMethod.d.ts +1 -1
  212. package/dist/api/resources/automations/types/AutomationStepOption.d.ts +1 -1
  213. package/dist/api/resources/automations/types/AutomationThrottleScope.d.ts +1 -1
  214. package/dist/api/resources/automations/types/MergeAlgorithm.d.ts +1 -1
  215. package/dist/api/resources/automations/types/Profile.d.ts +1 -1
  216. package/dist/api/resources/brands/client/Client.d.ts +22 -58
  217. package/dist/api/resources/brands/client/Client.js +65 -126
  218. package/dist/api/resources/brands/client/requests/BrandUpdateParameters.d.ts +3 -26
  219. package/dist/api/resources/brands/client/requests/ListBrandsRequest.d.ts +1 -3
  220. package/dist/api/resources/bulk/client/Client.d.ts +30 -121
  221. package/dist/api/resources/bulk/client/Client.js +73 -193
  222. package/dist/api/resources/bulk/client/requests/BulkCreateJobParams.d.ts +6 -86
  223. package/dist/api/resources/bulk/client/requests/BulkGetUsersParams.d.ts +1 -3
  224. package/dist/api/resources/bulk/types/BulkJobStatus.d.ts +1 -1
  225. package/dist/api/resources/bulk/types/BulkJobUserStatus.d.ts +1 -1
  226. package/dist/api/resources/bulk/types/InboundBulkMessageV2.d.ts +3 -5
  227. package/dist/api/resources/commons/errors/AlreadyExistsError.js +17 -7
  228. package/dist/api/resources/commons/errors/BadRequestError.js +17 -7
  229. package/dist/api/resources/commons/errors/ConflictError.js +17 -7
  230. package/dist/api/resources/commons/errors/MessageNotFoundError.js +17 -7
  231. package/dist/api/resources/commons/errors/NotFoundError.js +17 -7
  232. package/dist/api/resources/commons/errors/PaymentRequiredError.js +17 -7
  233. package/dist/api/resources/commons/types/ChannelClassification.d.ts +1 -1
  234. package/dist/api/resources/commons/types/NotificationPreferences.d.ts +1 -1
  235. package/dist/api/resources/commons/types/PreferenceStatus.d.ts +1 -1
  236. package/dist/api/resources/inbound/client/Client.d.ts +9 -1
  237. package/dist/api/resources/inbound/client/Client.js +26 -21
  238. package/dist/api/resources/index.js +17 -7
  239. package/dist/api/resources/lists/client/Client.d.ts +31 -34
  240. package/dist/api/resources/lists/client/Client.js +108 -161
  241. package/dist/api/resources/lists/client/requests/AddSubscribersToList.d.ts +5 -5
  242. package/dist/api/resources/lists/client/requests/GetAllListsRequest.d.ts +1 -4
  243. package/dist/api/resources/lists/client/requests/GetSubscriptionForListRequest.d.ts +1 -3
  244. package/dist/api/resources/lists/client/requests/SubscribeUserToListRequest.d.ts +1 -4
  245. package/dist/api/resources/lists/client/requests/SubscribeUsersToListRequest.d.ts +5 -5
  246. package/dist/api/resources/messages/client/Client.d.ts +15 -24
  247. package/dist/api/resources/messages/client/Client.js +65 -104
  248. package/dist/api/resources/messages/client/requests/GetMessageHistoryRequest.d.ts +1 -3
  249. package/dist/api/resources/messages/client/requests/ListMessagesRequest.d.ts +1 -16
  250. package/dist/api/resources/messages/types/MessageDetailsExtended.d.ts +7 -0
  251. package/dist/api/resources/messages/types/MessageDetailsExtended.js +5 -0
  252. package/dist/api/resources/messages/types/MessageStatus.d.ts +25 -5
  253. package/dist/api/resources/messages/types/MessageStatus.js +6 -1
  254. package/dist/api/resources/messages/types/Reason.d.ts +1 -1
  255. package/dist/api/resources/messages/types/index.d.ts +1 -0
  256. package/dist/api/resources/messages/types/index.js +1 -0
  257. package/dist/api/resources/notifications/client/Client.d.ts +20 -11
  258. package/dist/api/resources/notifications/client/Client.js +69 -88
  259. package/dist/api/resources/notifications/client/requests/NotificationListParams.d.ts +1 -4
  260. package/dist/api/resources/notifications/client/requests/SubmissionChecksReplaceParams.d.ts +6 -2
  261. package/dist/api/resources/notifications/types/BlockType.d.ts +1 -1
  262. package/dist/api/resources/notifications/types/CheckStatus.d.ts +1 -1
  263. package/dist/api/resources/notifications/types/MessageRoutingChannel.d.ts +1 -1
  264. package/dist/api/resources/notifications/types/MessageRoutingMethod.d.ts +1 -1
  265. package/dist/api/resources/notifications/types/NotificationContent.d.ts +1 -1
  266. package/dist/api/resources/profiles/client/Client.d.ts +35 -23
  267. package/dist/api/resources/profiles/client/Client.js +95 -125
  268. package/dist/api/resources/profiles/client/requests/GetListSubscriptionsRequest.d.ts +1 -3
  269. package/dist/api/resources/profiles/client/requests/MergeProfileRequest.d.ts +1 -1
  270. package/dist/api/resources/profiles/client/requests/ReplaceProfileRequest.d.ts +1 -1
  271. package/dist/api/resources/profiles/types/DeviceType.d.ts +1 -1
  272. package/dist/api/resources/profiles/types/Discord.d.ts +1 -1
  273. package/dist/api/resources/profiles/types/Expo.d.ts +1 -1
  274. package/dist/api/resources/profiles/types/MsTeams.d.ts +1 -1
  275. package/dist/api/resources/profiles/types/ProfileUpdateRequest.d.ts +8 -0
  276. package/dist/api/resources/profiles/types/ProfileUpdateRequest.js +5 -0
  277. package/dist/api/resources/profiles/types/Slack.d.ts +1 -1
  278. package/dist/api/resources/profiles/types/SnoozeRuleType.d.ts +1 -1
  279. package/dist/api/resources/profiles/types/UserProfileFirebaseToken.d.ts +1 -1
  280. package/dist/api/resources/profiles/types/WebhookAuthMode.d.ts +1 -1
  281. package/dist/api/resources/profiles/types/WebhookMethod.d.ts +1 -1
  282. package/dist/api/resources/profiles/types/WebhookProfileType.d.ts +1 -1
  283. package/dist/api/resources/profiles/types/index.d.ts +1 -0
  284. package/dist/api/resources/profiles/types/index.js +1 -0
  285. package/dist/api/resources/send/types/Attachment.d.ts +1 -1
  286. package/dist/api/resources/send/types/ChannelSource.d.ts +1 -1
  287. package/dist/api/resources/send/types/Content.d.ts +1 -1
  288. package/dist/api/resources/send/types/Criteria.d.ts +1 -1
  289. package/dist/api/resources/send/types/ElementalNode.d.ts +1 -1
  290. package/dist/api/resources/send/types/ExpiresInType.d.ts +1 -1
  291. package/dist/api/resources/send/types/IActionButtonStyle.d.ts +1 -1
  292. package/dist/api/resources/send/types/IAlignment.d.ts +1 -1
  293. package/dist/api/resources/send/types/IPreferences.d.ts +1 -1
  294. package/dist/api/resources/send/types/InAppPlacement.d.ts +1 -1
  295. package/dist/api/resources/send/types/Locales.d.ts +1 -1
  296. package/dist/api/resources/send/types/Message.d.ts +1 -1
  297. package/dist/api/resources/send/types/MessageChannels.d.ts +1 -1
  298. package/dist/api/resources/send/types/MessageData.d.ts +1 -1
  299. package/dist/api/resources/send/types/MessageProviders.d.ts +1 -1
  300. package/dist/api/resources/send/types/MessageRecipient.d.ts +1 -1
  301. package/dist/api/resources/send/types/Recipient.d.ts +1 -1
  302. package/dist/api/resources/send/types/RecipientData.d.ts +1 -1
  303. package/dist/api/resources/send/types/RoutingChannel.d.ts +1 -1
  304. package/dist/api/resources/send/types/RoutingMethod.d.ts +1 -1
  305. package/dist/api/resources/send/types/RuleType.d.ts +1 -1
  306. package/dist/api/resources/send/types/TextAlign.d.ts +1 -1
  307. package/dist/api/resources/send/types/TextStyle.d.ts +1 -1
  308. package/dist/api/resources/templates/client/Client.d.ts +9 -3
  309. package/dist/api/resources/templates/client/Client.js +28 -25
  310. package/dist/api/resources/templates/client/requests/ListTemplatesRequest.d.ts +1 -3
  311. package/dist/api/resources/templates/types/ChannelIdentifier.d.ts +1 -1
  312. package/dist/api/resources/templates/types/RoutingStrategyMethod.d.ts +1 -1
  313. package/dist/api/resources/tenants/client/Client.d.ts +23 -37
  314. package/dist/api/resources/tenants/client/Client.js +80 -127
  315. package/dist/api/resources/tenants/client/requests/ListTenantParams.d.ts +1 -5
  316. package/dist/api/resources/tenants/client/requests/ListUsersForTenantParams.d.ts +1 -4
  317. package/dist/api/resources/tenants/client/requests/TenantCreateOrReplaceParams.d.ts +6 -21
  318. package/dist/api/resources/tenants/types/SubscriptionTopicStatus.d.ts +1 -1
  319. package/dist/api/resources/tenants/types/TemplateProperty.d.ts +1 -1
  320. package/dist/api/resources/translations/client/Client.d.ts +10 -2
  321. package/dist/api/resources/translations/client/Client.js +33 -33
  322. package/dist/api/resources/users/client/Client.d.ts +5 -7
  323. package/dist/api/resources/users/resources/index.js +17 -7
  324. package/dist/api/resources/users/resources/preferences/client/Client.d.ts +13 -9
  325. package/dist/api/resources/users/resources/preferences/client/Client.js +46 -55
  326. package/dist/api/resources/users/resources/preferences/client/requests/UserPreferencesParams.d.ts +1 -3
  327. package/dist/api/resources/users/resources/preferences/client/requests/UserPreferencesTopicParams.d.ts +1 -3
  328. package/dist/api/resources/users/resources/preferences/client/requests/UserPreferencesUpdateParams.d.ts +2 -2
  329. package/dist/api/resources/users/resources/tenants/client/Client.d.ts +23 -21
  330. package/dist/api/resources/users/resources/tenants/client/Client.js +68 -89
  331. package/dist/api/resources/users/resources/tenants/client/requests/AddUserToMultipleTenantsParams.d.ts +9 -8
  332. package/dist/api/resources/users/resources/tenants/client/requests/AddUserToSingleTenantsParams.d.ts +1 -5
  333. package/dist/api/resources/users/resources/tenants/client/requests/ListTenantsForUserParams.d.ts +1 -4
  334. package/dist/api/resources/users/resources/tokens/client/Client.d.ts +27 -29
  335. package/dist/api/resources/users/resources/tokens/client/Client.js +74 -104
  336. package/dist/api/resources/users/resources/tokens/types/ExpiryDate.d.ts +1 -1
  337. package/dist/api/resources/users/resources/tokens/types/GetAllTokensResponse.d.ts +1 -1
  338. package/dist/api/resources/users/resources/tokens/types/PatchOp.d.ts +1 -1
  339. package/dist/api/resources/users/resources/tokens/types/ProviderKey.d.ts +1 -1
  340. package/dist/api/resources/users/resources/tokens/types/TokenStatus.d.ts +1 -1
  341. package/dist/core/auth/BearerToken.d.ts +1 -1
  342. package/dist/core/fetcher/APIResponse.d.ts +1 -1
  343. package/dist/core/fetcher/Fetcher.d.ts +7 -3
  344. package/dist/core/fetcher/Fetcher.js +30 -135
  345. package/dist/core/fetcher/Supplier.d.ts +1 -1
  346. package/dist/core/fetcher/createRequestUrl.d.ts +1 -0
  347. package/dist/core/fetcher/createRequestUrl.js +12 -0
  348. package/dist/core/fetcher/getFetchFn.d.ts +4 -0
  349. package/dist/core/fetcher/getFetchFn.js +68 -0
  350. package/dist/core/fetcher/getHeader.js +1 -2
  351. package/dist/core/fetcher/getRequestBody.d.ts +7 -0
  352. package/dist/core/fetcher/getRequestBody.js +23 -0
  353. package/dist/core/fetcher/getResponseBody.d.ts +1 -0
  354. package/dist/core/fetcher/getResponseBody.js +54 -0
  355. package/dist/core/fetcher/makeRequest.d.ts +1 -0
  356. package/dist/core/fetcher/makeRequest.js +42 -0
  357. package/dist/core/fetcher/requestWithRetries.d.ts +1 -0
  358. package/dist/core/fetcher/requestWithRetries.js +40 -0
  359. package/dist/core/fetcher/signals.d.ts +11 -0
  360. package/dist/core/fetcher/signals.js +36 -0
  361. package/dist/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.d.ts +30 -0
  362. package/dist/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.js +247 -0
  363. package/dist/core/fetcher/stream-wrappers/NodePre18StreamWrapper.d.ts +21 -0
  364. package/dist/core/fetcher/stream-wrappers/NodePre18StreamWrapper.js +126 -0
  365. package/dist/core/fetcher/stream-wrappers/UndiciStreamWrapper.d.ts +31 -0
  366. package/dist/core/fetcher/stream-wrappers/UndiciStreamWrapper.js +229 -0
  367. package/dist/core/fetcher/stream-wrappers/chooseStreamWrapper.d.ts +18 -0
  368. package/dist/core/fetcher/stream-wrappers/chooseStreamWrapper.js +59 -0
  369. package/dist/core/json.d.ts +15 -0
  370. package/dist/core/json.js +24 -0
  371. package/dist/core/runtime/runtime.d.ts +2 -1
  372. package/dist/core/runtime/runtime.js +57 -36
  373. package/dist/environments.d.ts +1 -1
  374. package/dist/errors/CourierError.js +2 -1
  375. package/dist/errors/CourierTimeoutError.d.ts +1 -1
  376. package/dist/errors/CourierTimeoutError.js +2 -2
  377. package/dist/index.js +17 -7
  378. package/dist/version.d.ts +1 -0
  379. package/dist/version.js +4 -0
  380. package/environments.d.ts +1 -1
  381. package/errors/CourierError.js +2 -1
  382. package/errors/CourierTimeoutError.d.ts +1 -1
  383. package/errors/CourierTimeoutError.js +2 -2
  384. package/index.js +17 -7
  385. package/{jest.config.js → jest.config.mjs} +4 -1
  386. package/package.json +23 -14
  387. package/reference.md +5180 -0
  388. package/scripts/rename-to-esm-files.js +115 -0
  389. package/version.d.ts +1 -0
  390. package/version.js +4 -0
package/Client.d.ts CHANGED
@@ -22,12 +22,20 @@ import { Users } from "./api/resources/users/client/Client";
22
22
  export declare namespace CourierClient {
23
23
  interface Options {
24
24
  environment?: core.Supplier<environments.CourierEnvironment | string>;
25
+ /** Specify a custom URL to connect the client to. */
26
+ baseUrl?: core.Supplier<string>;
25
27
  authorizationToken?: core.Supplier<core.BearerToken | undefined>;
26
28
  fetcher?: core.FetchFunction;
27
29
  }
28
30
  interface RequestOptions {
31
+ /** The maximum time to wait for a response in seconds. */
29
32
  timeoutInSeconds?: number;
33
+ /** The number of times to retry the request. Defaults to 2. */
30
34
  maxRetries?: number;
35
+ /** A hook to abort the request. */
36
+ abortSignal?: AbortSignal;
37
+ /** Additional headers to include in the request. */
38
+ headers?: Record<string, string>;
31
39
  }
32
40
  interface IdempotentRequestOptions extends RequestOptions {
33
41
  idempotencyKey?: string | undefined;
@@ -36,7 +44,37 @@ export declare namespace CourierClient {
36
44
  }
37
45
  export declare class CourierClient {
38
46
  protected readonly _options: CourierClient.Options;
47
+ protected _audiences: Audiences | undefined;
48
+ protected _auditEvents: AuditEvents | undefined;
49
+ protected _authTokens: AuthTokens | undefined;
50
+ protected _automations: Automations | undefined;
51
+ protected _brands: Brands | undefined;
52
+ protected _bulk: Bulk | undefined;
53
+ protected _inbound: Inbound | undefined;
54
+ protected _lists: Lists | undefined;
55
+ protected _messages: Messages | undefined;
56
+ protected _notifications: Notifications | undefined;
57
+ protected _profiles: Profiles | undefined;
58
+ protected _templates: Templates | undefined;
59
+ protected _tenants: Tenants | undefined;
60
+ protected _translations: Translations | undefined;
61
+ protected _users: Users | undefined;
39
62
  constructor(_options?: CourierClient.Options);
63
+ get audiences(): Audiences;
64
+ get auditEvents(): AuditEvents;
65
+ get authTokens(): AuthTokens;
66
+ get automations(): Automations;
67
+ get brands(): Brands;
68
+ get bulk(): Bulk;
69
+ get inbound(): Inbound;
70
+ get lists(): Lists;
71
+ get messages(): Messages;
72
+ get notifications(): Notifications;
73
+ get profiles(): Profiles;
74
+ get templates(): Templates;
75
+ get tenants(): Tenants;
76
+ get translations(): Translations;
77
+ get users(): Users;
40
78
  /**
41
79
  * Use the send API to send a message to one or more recipients.
42
80
  *
@@ -44,123 +82,60 @@ export declare class CourierClient {
44
82
  * @param {CourierClient.IdempotentRequestOptions} requestOptions - Request-specific configuration.
45
83
  *
46
84
  * @example
47
- * await courier.send({
85
+ * await client.send({
48
86
  * message: {
87
+ * data: undefined,
88
+ * brand_id: undefined,
89
+ * channels: undefined,
90
+ * context: undefined,
91
+ * metadata: undefined,
92
+ * preferences: undefined,
93
+ * providers: undefined,
94
+ * routing: undefined,
95
+ * timeout: undefined,
96
+ * delay: undefined,
97
+ * expiry: undefined,
98
+ * to: undefined,
49
99
  * content: {
50
- * version: "string",
51
- * brand: {
52
- * "key": "value"
53
- * },
100
+ * version: "version",
101
+ * brand: undefined,
54
102
  * elements: [{
55
- * type: "text"
56
- * }]
57
- * },
58
- * data: {
59
- * "string": {
60
- * "key": "value"
61
- * }
62
- * },
63
- * brand_id: "string",
64
- * channels: {
65
- * "string": {
66
- * brand_id: undefined,
67
- * providers: undefined,
68
- * routing_method: undefined,
69
- * if: undefined,
70
- * timeouts: undefined,
71
- * override: undefined,
72
- * metadata: undefined
73
- * }
74
- * },
75
- * context: {
76
- * tenant_id: "string"
77
- * },
78
- * metadata: {
79
- * event: "string",
80
- * tags: [],
81
- * utm: {
82
- * source: undefined,
83
- * medium: undefined,
84
- * campaign: undefined,
85
- * term: undefined,
86
- * content: undefined
87
- * },
88
- * trace_id: "string"
89
- * },
90
- * preferences: {
91
- * subscription_topic_id: "string"
92
- * },
93
- * providers: {
94
- * "string": {
95
- * override: undefined,
96
- * if: undefined,
97
- * timeouts: undefined,
98
- * metadata: undefined
99
- * }
100
- * },
101
- * routing: {
102
- * method: Courier.RoutingMethod.All,
103
- * channels: [{
104
- * channel: "string",
105
- * config: undefined,
106
- * method: undefined,
107
- * providers: undefined,
108
- * if: undefined
103
+ * type: "text",
104
+ * channels: undefined,
105
+ * ref: undefined,
106
+ * if: undefined,
107
+ * loop: undefined,
108
+ * content: "content",
109
+ * align: "left",
110
+ * text_style: undefined,
111
+ * color: undefined,
112
+ * bold: undefined,
113
+ * italic: undefined,
114
+ * strikethrough: undefined,
115
+ * underline: undefined,
116
+ * locales: undefined,
117
+ * format: undefined
118
+ * }, {
119
+ * type: "text",
120
+ * channels: undefined,
121
+ * ref: undefined,
122
+ * if: undefined,
123
+ * loop: undefined,
124
+ * content: "content",
125
+ * align: "left",
126
+ * text_style: undefined,
127
+ * color: undefined,
128
+ * bold: undefined,
129
+ * italic: undefined,
130
+ * strikethrough: undefined,
131
+ * underline: undefined,
132
+ * locales: undefined,
133
+ * format: undefined
109
134
  * }]
110
- * },
111
- * timeout: {
112
- * provider: {},
113
- * channel: {},
114
- * message: 1,
115
- * escalation: 1,
116
- * criteria: Courier.Criteria.NoEscalation
117
- * },
118
- * delay: {
119
- * duration: 1,
120
- * until: "string"
121
- * },
122
- * expiry: {
123
- * expires_at: "string",
124
- * expires_in: "string"
125
- * },
126
- * to: {
127
- * audience_id: "string",
128
- * data: {},
129
- * filters: []
130
135
  * }
131
136
  * }
132
137
  * })
133
138
  */
134
139
  send(request: Courier.SendMessageRequest, requestOptions?: CourierClient.IdempotentRequestOptions): Promise<Courier.SendMessageResponse>;
135
- protected _audiences: Audiences | undefined;
136
- get audiences(): Audiences;
137
- protected _auditEvents: AuditEvents | undefined;
138
- get auditEvents(): AuditEvents;
139
- protected _authTokens: AuthTokens | undefined;
140
- get authTokens(): AuthTokens;
141
- protected _automations: Automations | undefined;
142
- get automations(): Automations;
143
- protected _brands: Brands | undefined;
144
- get brands(): Brands;
145
- protected _bulk: Bulk | undefined;
146
- get bulk(): Bulk;
147
- protected _inbound: Inbound | undefined;
148
- get inbound(): Inbound;
149
- protected _lists: Lists | undefined;
150
- get lists(): Lists;
151
- protected _messages: Messages | undefined;
152
- get messages(): Messages;
153
- protected _notifications: Notifications | undefined;
154
- get notifications(): Notifications;
155
- protected _profiles: Profiles | undefined;
156
- get profiles(): Profiles;
157
- protected _templates: Templates | undefined;
158
- get templates(): Templates;
159
- protected _tenants: Tenants | undefined;
160
- get tenants(): Tenants;
161
- protected _translations: Translations | undefined;
162
- get translations(): Translations;
163
- protected _users: Users | undefined;
164
- get users(): Users;
165
140
  protected _getAuthorizationHeader(): Promise<string>;
166
141
  }
package/Client.js CHANGED
@@ -18,13 +18,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
18
18
  }) : function(o, v) {
19
19
  o["default"] = v;
20
20
  });
21
- var __importStar = (this && this.__importStar) || function (mod) {
22
- if (mod && mod.__esModule) return mod;
23
- var result = {};
24
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
- __setModuleDefault(result, mod);
26
- return result;
27
- };
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
28
38
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
29
39
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
30
40
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -62,145 +72,6 @@ class CourierClient {
62
72
  constructor(_options = {}) {
63
73
  this._options = _options;
64
74
  }
65
- /**
66
- * Use the send API to send a message to one or more recipients.
67
- *
68
- * @param {Courier.SendMessageRequest} request
69
- * @param {CourierClient.IdempotentRequestOptions} requestOptions - Request-specific configuration.
70
- *
71
- * @example
72
- * await courier.send({
73
- * message: {
74
- * content: {
75
- * version: "string",
76
- * brand: {
77
- * "key": "value"
78
- * },
79
- * elements: [{
80
- * type: "text"
81
- * }]
82
- * },
83
- * data: {
84
- * "string": {
85
- * "key": "value"
86
- * }
87
- * },
88
- * brand_id: "string",
89
- * channels: {
90
- * "string": {
91
- * brand_id: undefined,
92
- * providers: undefined,
93
- * routing_method: undefined,
94
- * if: undefined,
95
- * timeouts: undefined,
96
- * override: undefined,
97
- * metadata: undefined
98
- * }
99
- * },
100
- * context: {
101
- * tenant_id: "string"
102
- * },
103
- * metadata: {
104
- * event: "string",
105
- * tags: [],
106
- * utm: {
107
- * source: undefined,
108
- * medium: undefined,
109
- * campaign: undefined,
110
- * term: undefined,
111
- * content: undefined
112
- * },
113
- * trace_id: "string"
114
- * },
115
- * preferences: {
116
- * subscription_topic_id: "string"
117
- * },
118
- * providers: {
119
- * "string": {
120
- * override: undefined,
121
- * if: undefined,
122
- * timeouts: undefined,
123
- * metadata: undefined
124
- * }
125
- * },
126
- * routing: {
127
- * method: Courier.RoutingMethod.All,
128
- * channels: [{
129
- * channel: "string",
130
- * config: undefined,
131
- * method: undefined,
132
- * providers: undefined,
133
- * if: undefined
134
- * }]
135
- * },
136
- * timeout: {
137
- * provider: {},
138
- * channel: {},
139
- * message: 1,
140
- * escalation: 1,
141
- * criteria: Courier.Criteria.NoEscalation
142
- * },
143
- * delay: {
144
- * duration: 1,
145
- * until: "string"
146
- * },
147
- * expiry: {
148
- * expires_at: "string",
149
- * expires_in: "string"
150
- * },
151
- * to: {
152
- * audience_id: "string",
153
- * data: {},
154
- * filters: []
155
- * }
156
- * }
157
- * })
158
- */
159
- send(request, requestOptions) {
160
- var _a, _b;
161
- return __awaiter(this, void 0, void 0, function* () {
162
- const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
163
- url: (0, url_join_1.default)((_b = (yield core.Supplier.get(this._options.environment))) !== null && _b !== void 0 ? _b : environments.CourierEnvironment.Production, "/send"),
164
- method: "POST",
165
- headers: {
166
- Authorization: yield this._getAuthorizationHeader(),
167
- "X-Fern-Language": "JavaScript",
168
- "X-Fern-SDK-Name": "@trycourier/courier",
169
- "X-Fern-SDK-Version": "v6.3.1",
170
- "X-Fern-Runtime": core.RUNTIME.type,
171
- "X-Fern-Runtime-Version": core.RUNTIME.version,
172
- "Idempotency-Key": (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.idempotencyKey) != null ? requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.idempotencyKey : undefined,
173
- "X-Idempotency-Expiration": (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.idempotencyExpiry) != null ? requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.idempotencyExpiry : undefined,
174
- },
175
- contentType: "application/json",
176
- body: request,
177
- timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
178
- maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
179
- });
180
- if (_response.ok) {
181
- return _response.body;
182
- }
183
- if (_response.error.reason === "status-code") {
184
- throw new errors.CourierError({
185
- statusCode: _response.error.statusCode,
186
- body: _response.error.body,
187
- });
188
- }
189
- switch (_response.error.reason) {
190
- case "non-json":
191
- throw new errors.CourierError({
192
- statusCode: _response.error.statusCode,
193
- body: _response.error.rawBody,
194
- });
195
- case "timeout":
196
- throw new errors.CourierTimeoutError();
197
- case "unknown":
198
- throw new errors.CourierError({
199
- message: _response.error.errorMessage,
200
- });
201
- }
202
- });
203
- }
204
75
  get audiences() {
205
76
  var _a;
206
77
  return ((_a = this._audiences) !== null && _a !== void 0 ? _a : (this._audiences = new Client_1.Audiences(this._options)));
@@ -261,13 +132,112 @@ class CourierClient {
261
132
  var _a;
262
133
  return ((_a = this._users) !== null && _a !== void 0 ? _a : (this._users = new Client_15.Users(this._options)));
263
134
  }
135
+ /**
136
+ * Use the send API to send a message to one or more recipients.
137
+ *
138
+ * @param {Courier.SendMessageRequest} request
139
+ * @param {CourierClient.IdempotentRequestOptions} requestOptions - Request-specific configuration.
140
+ *
141
+ * @example
142
+ * await client.send({
143
+ * message: {
144
+ * data: undefined,
145
+ * brand_id: undefined,
146
+ * channels: undefined,
147
+ * context: undefined,
148
+ * metadata: undefined,
149
+ * preferences: undefined,
150
+ * providers: undefined,
151
+ * routing: undefined,
152
+ * timeout: undefined,
153
+ * delay: undefined,
154
+ * expiry: undefined,
155
+ * to: undefined,
156
+ * content: {
157
+ * version: "version",
158
+ * brand: undefined,
159
+ * elements: [{
160
+ * type: "text",
161
+ * channels: undefined,
162
+ * ref: undefined,
163
+ * if: undefined,
164
+ * loop: undefined,
165
+ * content: "content",
166
+ * align: "left",
167
+ * text_style: undefined,
168
+ * color: undefined,
169
+ * bold: undefined,
170
+ * italic: undefined,
171
+ * strikethrough: undefined,
172
+ * underline: undefined,
173
+ * locales: undefined,
174
+ * format: undefined
175
+ * }, {
176
+ * type: "text",
177
+ * channels: undefined,
178
+ * ref: undefined,
179
+ * if: undefined,
180
+ * loop: undefined,
181
+ * content: "content",
182
+ * align: "left",
183
+ * text_style: undefined,
184
+ * color: undefined,
185
+ * bold: undefined,
186
+ * italic: undefined,
187
+ * strikethrough: undefined,
188
+ * underline: undefined,
189
+ * locales: undefined,
190
+ * format: undefined
191
+ * }]
192
+ * }
193
+ * }
194
+ * })
195
+ */
196
+ send(request, requestOptions) {
197
+ return __awaiter(this, void 0, void 0, function* () {
198
+ var _a, _b, _c;
199
+ const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
200
+ url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.CourierEnvironment.Production, "/send"),
201
+ method: "POST",
202
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@trycourier/courier", "X-Fern-SDK-Version": "6.4.0", "User-Agent": "@trycourier/courier/6.4.0", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version, "Idempotency-Key": (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.idempotencyKey) != null ? requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.idempotencyKey : undefined, "X-Idempotency-Expiration": (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.idempotencyExpiry) != null ? requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.idempotencyExpiry : undefined }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
203
+ contentType: "application/json",
204
+ requestType: "json",
205
+ body: request,
206
+ timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
207
+ maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
208
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
209
+ });
210
+ if (_response.ok) {
211
+ return _response.body;
212
+ }
213
+ if (_response.error.reason === "status-code") {
214
+ throw new errors.CourierError({
215
+ statusCode: _response.error.statusCode,
216
+ body: _response.error.body,
217
+ });
218
+ }
219
+ switch (_response.error.reason) {
220
+ case "non-json":
221
+ throw new errors.CourierError({
222
+ statusCode: _response.error.statusCode,
223
+ body: _response.error.rawBody,
224
+ });
225
+ case "timeout":
226
+ throw new errors.CourierTimeoutError("Timeout exceeded when calling POST /send.");
227
+ case "unknown":
228
+ throw new errors.CourierError({
229
+ message: _response.error.errorMessage,
230
+ });
231
+ }
232
+ });
233
+ }
264
234
  _getAuthorizationHeader() {
265
- var _a;
266
235
  return __awaiter(this, void 0, void 0, function* () {
236
+ var _a;
267
237
  const bearer = (_a = (yield core.Supplier.get(this._options.authorizationToken))) !== null && _a !== void 0 ? _a : process === null || process === void 0 ? void 0 : process.env["COURIER_AUTH_TOKEN"];
268
238
  if (bearer == null) {
269
239
  throw new errors.CourierError({
270
- message: "Please specify COURIER_AUTH_TOKEN when instantiating the client.",
240
+ message: "Please specify a bearer by either passing it in to the constructor or initializing a COURIER_AUTH_TOKEN environment variable",
271
241
  });
272
242
  }
273
243
  return `Bearer ${bearer}`;
@@ -6,87 +6,54 @@ import * as Courier from "../../index";
6
6
  * @example
7
7
  * {
8
8
  * message: {
9
+ * data: undefined,
10
+ * brand_id: undefined,
11
+ * channels: undefined,
12
+ * context: undefined,
13
+ * metadata: undefined,
14
+ * preferences: undefined,
15
+ * providers: undefined,
16
+ * routing: undefined,
17
+ * timeout: undefined,
18
+ * delay: undefined,
19
+ * expiry: undefined,
20
+ * to: undefined,
9
21
  * content: {
10
- * version: "string",
11
- * brand: {
12
- * "key": "value"
13
- * },
22
+ * version: "version",
23
+ * brand: undefined,
14
24
  * elements: [{
15
- * type: "text"
25
+ * type: "text",
26
+ * channels: undefined,
27
+ * ref: undefined,
28
+ * if: undefined,
29
+ * loop: undefined,
30
+ * content: "content",
31
+ * align: "left",
32
+ * text_style: undefined,
33
+ * color: undefined,
34
+ * bold: undefined,
35
+ * italic: undefined,
36
+ * strikethrough: undefined,
37
+ * underline: undefined,
38
+ * locales: undefined,
39
+ * format: undefined
40
+ * }, {
41
+ * type: "text",
42
+ * channels: undefined,
43
+ * ref: undefined,
44
+ * if: undefined,
45
+ * loop: undefined,
46
+ * content: "content",
47
+ * align: "left",
48
+ * text_style: undefined,
49
+ * color: undefined,
50
+ * bold: undefined,
51
+ * italic: undefined,
52
+ * strikethrough: undefined,
53
+ * underline: undefined,
54
+ * locales: undefined,
55
+ * format: undefined
16
56
  * }]
17
- * },
18
- * data: {
19
- * "string": {
20
- * "key": "value"
21
- * }
22
- * },
23
- * brand_id: "string",
24
- * channels: {
25
- * "string": {
26
- * brand_id: undefined,
27
- * providers: undefined,
28
- * routing_method: undefined,
29
- * if: undefined,
30
- * timeouts: undefined,
31
- * override: undefined,
32
- * metadata: undefined
33
- * }
34
- * },
35
- * context: {
36
- * tenant_id: "string"
37
- * },
38
- * metadata: {
39
- * event: "string",
40
- * tags: [],
41
- * utm: {
42
- * source: undefined,
43
- * medium: undefined,
44
- * campaign: undefined,
45
- * term: undefined,
46
- * content: undefined
47
- * },
48
- * trace_id: "string"
49
- * },
50
- * preferences: {
51
- * subscription_topic_id: "string"
52
- * },
53
- * providers: {
54
- * "string": {
55
- * override: undefined,
56
- * if: undefined,
57
- * timeouts: undefined,
58
- * metadata: undefined
59
- * }
60
- * },
61
- * routing: {
62
- * method: Courier.RoutingMethod.All,
63
- * channels: [{
64
- * channel: "string",
65
- * config: undefined,
66
- * method: undefined,
67
- * providers: undefined,
68
- * if: undefined
69
- * }]
70
- * },
71
- * timeout: {
72
- * provider: {},
73
- * channel: {},
74
- * message: 1,
75
- * escalation: 1,
76
- * criteria: Courier.Criteria.NoEscalation
77
- * },
78
- * delay: {
79
- * duration: 1,
80
- * until: "string"
81
- * },
82
- * expiry: {
83
- * expires_at: "string",
84
- * expires_in: "string"
85
- * },
86
- * to: {
87
- * audience_id: "string",
88
- * data: {},
89
- * filters: []
90
57
  * }
91
58
  * }
92
59
  * }