@trycourier/courier 6.3.1 → 6.4.1

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 (425) hide show
  1. package/Client.d.ts +49 -108
  2. package/Client.js +89 -148
  3. package/README.md +113 -808
  4. package/api/client/requests/SendMessageRequest.d.ts +8 -76
  5. package/api/resources/audiences/client/Client.d.ts +26 -21
  6. package/api/resources/audiences/client/Client.js +97 -90
  7. package/api/resources/audiences/client/requests/AudienceMembersListParams.d.ts +1 -3
  8. package/api/resources/audiences/client/requests/AudienceUpdateParams.d.ts +3 -7
  9. package/api/resources/audiences/client/requests/AudiencesListParams.d.ts +1 -3
  10. package/api/resources/audiences/types/ComparisonOperator.d.ts +1 -1
  11. package/api/resources/audiences/types/Filter.d.ts +1 -1
  12. package/api/resources/audiences/types/FilterConfig.d.ts +1 -1
  13. package/api/resources/audiences/types/LogicalOperator.d.ts +1 -1
  14. package/api/resources/audiences/types/Operator.d.ts +1 -1
  15. package/api/resources/auditEvents/client/Client.d.ts +14 -6
  16. package/api/resources/auditEvents/client/Client.js +48 -38
  17. package/api/resources/auditEvents/client/requests/ListAuditEventsRequest.d.ts +1 -3
  18. package/api/resources/authTokens/client/Client.d.ts +13 -4
  19. package/api/resources/authTokens/client/Client.js +35 -26
  20. package/api/resources/authTokens/client/requests/IssueTokenParams.d.ts +2 -2
  21. package/api/resources/automations/client/Client.d.ts +19 -15
  22. package/api/resources/automations/client/Client.js +52 -50
  23. package/api/resources/automations/types/AutomationAddToBatchMaxItemsType.d.ts +1 -1
  24. package/api/resources/automations/types/AutomationAddToBatchRetainType.d.ts +1 -1
  25. package/api/resources/automations/types/AutomationAddToBatchScope.d.ts +1 -1
  26. package/api/resources/automations/types/AutomationFetchDataWebhookMethod.d.ts +1 -1
  27. package/api/resources/automations/types/AutomationStepOption.d.ts +1 -1
  28. package/api/resources/automations/types/AutomationThrottleScope.d.ts +1 -1
  29. package/api/resources/automations/types/MergeAlgorithm.d.ts +1 -1
  30. package/api/resources/automations/types/Profile.d.ts +1 -1
  31. package/api/resources/brands/client/Client.d.ts +32 -63
  32. package/api/resources/brands/client/Client.js +103 -134
  33. package/api/resources/brands/client/requests/BrandUpdateParameters.d.ts +3 -26
  34. package/api/resources/brands/client/requests/ListBrandsRequest.d.ts +1 -3
  35. package/api/resources/bulk/client/Client.d.ts +40 -126
  36. package/api/resources/bulk/client/Client.js +111 -201
  37. package/api/resources/bulk/client/requests/BulkCreateJobParams.d.ts +6 -86
  38. package/api/resources/bulk/client/requests/BulkGetUsersParams.d.ts +1 -3
  39. package/api/resources/bulk/types/BulkJobStatus.d.ts +1 -1
  40. package/api/resources/bulk/types/BulkJobUserStatus.d.ts +1 -1
  41. package/api/resources/bulk/types/InboundBulkMessageV2.d.ts +3 -5
  42. package/api/resources/commons/errors/AlreadyExistsError.d.ts +2 -1
  43. package/api/resources/commons/errors/AlreadyExistsError.js +19 -8
  44. package/api/resources/commons/errors/BadRequestError.d.ts +2 -1
  45. package/api/resources/commons/errors/BadRequestError.js +19 -8
  46. package/api/resources/commons/errors/ConflictError.d.ts +2 -1
  47. package/api/resources/commons/errors/ConflictError.js +19 -8
  48. package/api/resources/commons/errors/MessageNotFoundError.d.ts +2 -1
  49. package/api/resources/commons/errors/MessageNotFoundError.js +19 -8
  50. package/api/resources/commons/errors/NotFoundError.d.ts +2 -1
  51. package/api/resources/commons/errors/NotFoundError.js +19 -8
  52. package/api/resources/commons/errors/PaymentRequiredError.d.ts +2 -1
  53. package/api/resources/commons/errors/PaymentRequiredError.js +19 -8
  54. package/api/resources/commons/types/ChannelClassification.d.ts +1 -1
  55. package/api/resources/commons/types/NotificationPreferences.d.ts +1 -1
  56. package/api/resources/commons/types/PreferenceStatus.d.ts +1 -1
  57. package/api/resources/inbound/client/Client.d.ts +11 -2
  58. package/api/resources/inbound/client/Client.js +35 -24
  59. package/api/resources/index.js +17 -7
  60. package/api/resources/lists/client/Client.d.ts +51 -44
  61. package/api/resources/lists/client/Client.js +181 -174
  62. package/api/resources/lists/client/requests/AddSubscribersToList.d.ts +5 -5
  63. package/api/resources/lists/client/requests/GetAllListsRequest.d.ts +1 -4
  64. package/api/resources/lists/client/requests/GetSubscriptionForListRequest.d.ts +1 -3
  65. package/api/resources/lists/client/requests/SubscribeUserToListRequest.d.ts +1 -4
  66. package/api/resources/lists/client/requests/SubscribeUsersToListRequest.d.ts +5 -5
  67. package/api/resources/messages/client/Client.d.ts +26 -29
  68. package/api/resources/messages/client/Client.js +111 -114
  69. package/api/resources/messages/client/requests/GetMessageHistoryRequest.d.ts +1 -3
  70. package/api/resources/messages/client/requests/ListMessagesRequest.d.ts +1 -16
  71. package/api/resources/messages/types/MessageDetailsExtended.d.ts +7 -0
  72. package/api/resources/messages/types/MessageDetailsExtended.js +5 -0
  73. package/api/resources/messages/types/MessageStatus.d.ts +25 -5
  74. package/api/resources/messages/types/MessageStatus.js +6 -1
  75. package/api/resources/messages/types/Reason.d.ts +1 -1
  76. package/api/resources/messages/types/index.d.ts +1 -0
  77. package/api/resources/messages/types/index.js +1 -0
  78. package/api/resources/notifications/client/Client.d.ts +32 -17
  79. package/api/resources/notifications/client/Client.js +119 -93
  80. package/api/resources/notifications/client/requests/NotificationListParams.d.ts +1 -4
  81. package/api/resources/notifications/client/requests/SubmissionChecksReplaceParams.d.ts +6 -2
  82. package/api/resources/notifications/types/BlockType.d.ts +1 -1
  83. package/api/resources/notifications/types/CheckStatus.d.ts +1 -1
  84. package/api/resources/notifications/types/MessageRoutingChannel.d.ts +1 -1
  85. package/api/resources/notifications/types/MessageRoutingMethod.d.ts +1 -1
  86. package/api/resources/notifications/types/NotificationContent.d.ts +1 -1
  87. package/api/resources/profiles/client/Client.d.ts +50 -30
  88. package/api/resources/profiles/client/Client.js +160 -139
  89. package/api/resources/profiles/client/requests/GetListSubscriptionsRequest.d.ts +1 -3
  90. package/api/resources/profiles/client/requests/MergeProfileRequest.d.ts +1 -1
  91. package/api/resources/profiles/client/requests/ReplaceProfileRequest.d.ts +1 -1
  92. package/api/resources/profiles/types/DeviceType.d.ts +1 -1
  93. package/api/resources/profiles/types/Discord.d.ts +1 -1
  94. package/api/resources/profiles/types/Expo.d.ts +1 -1
  95. package/api/resources/profiles/types/MsTeams.d.ts +1 -1
  96. package/api/resources/profiles/types/ProfileUpdateRequest.d.ts +8 -0
  97. package/api/resources/profiles/types/ProfileUpdateRequest.js +5 -0
  98. package/api/resources/profiles/types/Slack.d.ts +1 -1
  99. package/api/resources/profiles/types/SnoozeRuleType.d.ts +1 -1
  100. package/api/resources/profiles/types/UserProfileFirebaseToken.d.ts +1 -1
  101. package/api/resources/profiles/types/WebhookAuthMode.d.ts +1 -1
  102. package/api/resources/profiles/types/WebhookMethod.d.ts +1 -1
  103. package/api/resources/profiles/types/WebhookProfileType.d.ts +1 -1
  104. package/api/resources/profiles/types/index.d.ts +1 -0
  105. package/api/resources/profiles/types/index.js +1 -0
  106. package/api/resources/send/types/Attachment.d.ts +1 -1
  107. package/api/resources/send/types/ChannelSource.d.ts +1 -1
  108. package/api/resources/send/types/Content.d.ts +1 -1
  109. package/api/resources/send/types/Criteria.d.ts +1 -1
  110. package/api/resources/send/types/ElementalNode.d.ts +1 -1
  111. package/api/resources/send/types/ExpiresInType.d.ts +1 -1
  112. package/api/resources/send/types/IActionButtonStyle.d.ts +1 -1
  113. package/api/resources/send/types/IAlignment.d.ts +1 -1
  114. package/api/resources/send/types/IPreferences.d.ts +1 -1
  115. package/api/resources/send/types/InAppPlacement.d.ts +1 -1
  116. package/api/resources/send/types/Locales.d.ts +1 -1
  117. package/api/resources/send/types/Message.d.ts +1 -1
  118. package/api/resources/send/types/MessageChannels.d.ts +1 -1
  119. package/api/resources/send/types/MessageData.d.ts +1 -1
  120. package/api/resources/send/types/MessageProviders.d.ts +1 -1
  121. package/api/resources/send/types/MessageRecipient.d.ts +1 -1
  122. package/api/resources/send/types/Recipient.d.ts +1 -1
  123. package/api/resources/send/types/RecipientData.d.ts +1 -1
  124. package/api/resources/send/types/RoutingChannel.d.ts +1 -1
  125. package/api/resources/send/types/RoutingMethod.d.ts +1 -1
  126. package/api/resources/send/types/RuleType.d.ts +1 -1
  127. package/api/resources/send/types/TextAlign.d.ts +1 -1
  128. package/api/resources/send/types/TextStyle.d.ts +1 -1
  129. package/api/resources/templates/client/Client.d.ts +11 -4
  130. package/api/resources/templates/client/Client.js +34 -25
  131. package/api/resources/templates/client/requests/ListTemplatesRequest.d.ts +1 -3
  132. package/api/resources/templates/types/ChannelIdentifier.d.ts +1 -1
  133. package/api/resources/templates/types/RoutingStrategyMethod.d.ts +1 -1
  134. package/api/resources/tenants/client/Client.d.ts +37 -44
  135. package/api/resources/tenants/client/Client.js +130 -135
  136. package/api/resources/tenants/client/requests/ListTenantParams.d.ts +1 -5
  137. package/api/resources/tenants/client/requests/ListUsersForTenantParams.d.ts +1 -4
  138. package/api/resources/tenants/client/requests/TenantCreateOrReplaceParams.d.ts +6 -21
  139. package/api/resources/tenants/types/SubscriptionTopicStatus.d.ts +1 -1
  140. package/api/resources/tenants/types/TemplateProperty.d.ts +1 -1
  141. package/api/resources/translations/client/Client.d.ts +14 -4
  142. package/api/resources/translations/client/Client.js +49 -37
  143. package/api/resources/users/client/Client.d.ts +5 -7
  144. package/api/resources/users/resources/index.js +17 -7
  145. package/api/resources/users/resources/preferences/client/Client.d.ts +19 -12
  146. package/api/resources/users/resources/preferences/client/Client.js +77 -59
  147. package/api/resources/users/resources/preferences/client/requests/UserPreferencesParams.d.ts +1 -3
  148. package/api/resources/users/resources/preferences/client/requests/UserPreferencesTopicParams.d.ts +1 -3
  149. package/api/resources/users/resources/preferences/client/requests/UserPreferencesUpdateParams.d.ts +2 -2
  150. package/api/resources/users/resources/tenants/client/Client.d.ts +33 -26
  151. package/api/resources/users/resources/tenants/client/Client.js +104 -92
  152. package/api/resources/users/resources/tenants/client/requests/AddUserToMultipleTenantsParams.d.ts +9 -8
  153. package/api/resources/users/resources/tenants/client/requests/AddUserToSingleTenantsParams.d.ts +1 -5
  154. package/api/resources/users/resources/tenants/client/requests/ListTenantsForUserParams.d.ts +1 -4
  155. package/api/resources/users/resources/tokens/client/Client.d.ts +39 -35
  156. package/api/resources/users/resources/tokens/client/Client.js +121 -115
  157. package/api/resources/users/resources/tokens/types/ExpiryDate.d.ts +1 -1
  158. package/api/resources/users/resources/tokens/types/GetAllTokensResponse.d.ts +1 -1
  159. package/api/resources/users/resources/tokens/types/PatchOp.d.ts +1 -1
  160. package/api/resources/users/resources/tokens/types/ProviderKey.d.ts +1 -1
  161. package/api/resources/users/resources/tokens/types/TokenStatus.d.ts +1 -1
  162. package/core/auth/BearerToken.d.ts +1 -1
  163. package/core/fetcher/APIResponse.d.ts +11 -1
  164. package/core/fetcher/Fetcher.d.ts +7 -3
  165. package/core/fetcher/Fetcher.js +37 -135
  166. package/core/fetcher/Headers.d.ts +2 -0
  167. package/core/fetcher/Headers.js +84 -0
  168. package/core/fetcher/HttpResponsePromise.d.ts +58 -0
  169. package/core/fetcher/HttpResponsePromise.js +103 -0
  170. package/core/fetcher/RawResponse.d.ts +29 -0
  171. package/core/fetcher/RawResponse.js +44 -0
  172. package/core/fetcher/Supplier.d.ts +1 -1
  173. package/core/fetcher/createRequestUrl.d.ts +1 -0
  174. package/core/fetcher/createRequestUrl.js +12 -0
  175. package/core/fetcher/getFetchFn.d.ts +4 -0
  176. package/core/fetcher/getFetchFn.js +68 -0
  177. package/core/fetcher/getHeader.js +1 -2
  178. package/core/fetcher/getRequestBody.d.ts +7 -0
  179. package/core/fetcher/getRequestBody.js +23 -0
  180. package/core/fetcher/getResponseBody.d.ts +1 -0
  181. package/core/fetcher/getResponseBody.js +54 -0
  182. package/core/fetcher/index.d.ts +3 -0
  183. package/core/fetcher/index.js +7 -1
  184. package/core/fetcher/makeRequest.d.ts +1 -0
  185. package/core/fetcher/makeRequest.js +42 -0
  186. package/core/fetcher/requestWithRetries.d.ts +1 -0
  187. package/core/fetcher/requestWithRetries.js +40 -0
  188. package/core/fetcher/signals.d.ts +11 -0
  189. package/core/fetcher/signals.js +36 -0
  190. package/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.d.ts +30 -0
  191. package/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.js +247 -0
  192. package/core/fetcher/stream-wrappers/NodePre18StreamWrapper.d.ts +21 -0
  193. package/core/fetcher/stream-wrappers/NodePre18StreamWrapper.js +126 -0
  194. package/core/fetcher/stream-wrappers/UndiciStreamWrapper.d.ts +31 -0
  195. package/core/fetcher/stream-wrappers/UndiciStreamWrapper.js +229 -0
  196. package/core/fetcher/stream-wrappers/chooseStreamWrapper.d.ts +18 -0
  197. package/core/fetcher/stream-wrappers/chooseStreamWrapper.js +59 -0
  198. package/core/index.d.ts +1 -1
  199. package/core/index.js +1 -1
  200. package/core/json.d.ts +15 -0
  201. package/core/json.js +24 -0
  202. package/core/runtime/runtime.d.ts +2 -1
  203. package/core/runtime/runtime.js +57 -36
  204. package/dist/Client.d.ts +49 -108
  205. package/dist/Client.js +89 -148
  206. package/dist/api/client/requests/SendMessageRequest.d.ts +8 -76
  207. package/dist/api/resources/audiences/client/Client.d.ts +26 -21
  208. package/dist/api/resources/audiences/client/Client.js +97 -90
  209. package/dist/api/resources/audiences/client/requests/AudienceMembersListParams.d.ts +1 -3
  210. package/dist/api/resources/audiences/client/requests/AudienceUpdateParams.d.ts +3 -7
  211. package/dist/api/resources/audiences/client/requests/AudiencesListParams.d.ts +1 -3
  212. package/dist/api/resources/audiences/types/ComparisonOperator.d.ts +1 -1
  213. package/dist/api/resources/audiences/types/Filter.d.ts +1 -1
  214. package/dist/api/resources/audiences/types/FilterConfig.d.ts +1 -1
  215. package/dist/api/resources/audiences/types/LogicalOperator.d.ts +1 -1
  216. package/dist/api/resources/audiences/types/Operator.d.ts +1 -1
  217. package/dist/api/resources/auditEvents/client/Client.d.ts +14 -6
  218. package/dist/api/resources/auditEvents/client/Client.js +48 -38
  219. package/dist/api/resources/auditEvents/client/requests/ListAuditEventsRequest.d.ts +1 -3
  220. package/dist/api/resources/authTokens/client/Client.d.ts +13 -4
  221. package/dist/api/resources/authTokens/client/Client.js +35 -26
  222. package/dist/api/resources/authTokens/client/requests/IssueTokenParams.d.ts +2 -2
  223. package/dist/api/resources/automations/client/Client.d.ts +19 -15
  224. package/dist/api/resources/automations/client/Client.js +52 -50
  225. package/dist/api/resources/automations/types/AutomationAddToBatchMaxItemsType.d.ts +1 -1
  226. package/dist/api/resources/automations/types/AutomationAddToBatchRetainType.d.ts +1 -1
  227. package/dist/api/resources/automations/types/AutomationAddToBatchScope.d.ts +1 -1
  228. package/dist/api/resources/automations/types/AutomationFetchDataWebhookMethod.d.ts +1 -1
  229. package/dist/api/resources/automations/types/AutomationStepOption.d.ts +1 -1
  230. package/dist/api/resources/automations/types/AutomationThrottleScope.d.ts +1 -1
  231. package/dist/api/resources/automations/types/MergeAlgorithm.d.ts +1 -1
  232. package/dist/api/resources/automations/types/Profile.d.ts +1 -1
  233. package/dist/api/resources/brands/client/Client.d.ts +32 -63
  234. package/dist/api/resources/brands/client/Client.js +103 -134
  235. package/dist/api/resources/brands/client/requests/BrandUpdateParameters.d.ts +3 -26
  236. package/dist/api/resources/brands/client/requests/ListBrandsRequest.d.ts +1 -3
  237. package/dist/api/resources/bulk/client/Client.d.ts +40 -126
  238. package/dist/api/resources/bulk/client/Client.js +111 -201
  239. package/dist/api/resources/bulk/client/requests/BulkCreateJobParams.d.ts +6 -86
  240. package/dist/api/resources/bulk/client/requests/BulkGetUsersParams.d.ts +1 -3
  241. package/dist/api/resources/bulk/types/BulkJobStatus.d.ts +1 -1
  242. package/dist/api/resources/bulk/types/BulkJobUserStatus.d.ts +1 -1
  243. package/dist/api/resources/bulk/types/InboundBulkMessageV2.d.ts +3 -5
  244. package/dist/api/resources/commons/errors/AlreadyExistsError.d.ts +2 -1
  245. package/dist/api/resources/commons/errors/AlreadyExistsError.js +19 -8
  246. package/dist/api/resources/commons/errors/BadRequestError.d.ts +2 -1
  247. package/dist/api/resources/commons/errors/BadRequestError.js +19 -8
  248. package/dist/api/resources/commons/errors/ConflictError.d.ts +2 -1
  249. package/dist/api/resources/commons/errors/ConflictError.js +19 -8
  250. package/dist/api/resources/commons/errors/MessageNotFoundError.d.ts +2 -1
  251. package/dist/api/resources/commons/errors/MessageNotFoundError.js +19 -8
  252. package/dist/api/resources/commons/errors/NotFoundError.d.ts +2 -1
  253. package/dist/api/resources/commons/errors/NotFoundError.js +19 -8
  254. package/dist/api/resources/commons/errors/PaymentRequiredError.d.ts +2 -1
  255. package/dist/api/resources/commons/errors/PaymentRequiredError.js +19 -8
  256. package/dist/api/resources/commons/types/ChannelClassification.d.ts +1 -1
  257. package/dist/api/resources/commons/types/NotificationPreferences.d.ts +1 -1
  258. package/dist/api/resources/commons/types/PreferenceStatus.d.ts +1 -1
  259. package/dist/api/resources/inbound/client/Client.d.ts +11 -2
  260. package/dist/api/resources/inbound/client/Client.js +35 -24
  261. package/dist/api/resources/index.js +17 -7
  262. package/dist/api/resources/lists/client/Client.d.ts +51 -44
  263. package/dist/api/resources/lists/client/Client.js +181 -174
  264. package/dist/api/resources/lists/client/requests/AddSubscribersToList.d.ts +5 -5
  265. package/dist/api/resources/lists/client/requests/GetAllListsRequest.d.ts +1 -4
  266. package/dist/api/resources/lists/client/requests/GetSubscriptionForListRequest.d.ts +1 -3
  267. package/dist/api/resources/lists/client/requests/SubscribeUserToListRequest.d.ts +1 -4
  268. package/dist/api/resources/lists/client/requests/SubscribeUsersToListRequest.d.ts +5 -5
  269. package/dist/api/resources/messages/client/Client.d.ts +26 -29
  270. package/dist/api/resources/messages/client/Client.js +111 -114
  271. package/dist/api/resources/messages/client/requests/GetMessageHistoryRequest.d.ts +1 -3
  272. package/dist/api/resources/messages/client/requests/ListMessagesRequest.d.ts +1 -16
  273. package/dist/api/resources/messages/types/MessageDetailsExtended.d.ts +7 -0
  274. package/dist/api/resources/messages/types/MessageDetailsExtended.js +5 -0
  275. package/dist/api/resources/messages/types/MessageStatus.d.ts +25 -5
  276. package/dist/api/resources/messages/types/MessageStatus.js +6 -1
  277. package/dist/api/resources/messages/types/Reason.d.ts +1 -1
  278. package/dist/api/resources/messages/types/index.d.ts +1 -0
  279. package/dist/api/resources/messages/types/index.js +1 -0
  280. package/dist/api/resources/notifications/client/Client.d.ts +32 -17
  281. package/dist/api/resources/notifications/client/Client.js +119 -93
  282. package/dist/api/resources/notifications/client/requests/NotificationListParams.d.ts +1 -4
  283. package/dist/api/resources/notifications/client/requests/SubmissionChecksReplaceParams.d.ts +6 -2
  284. package/dist/api/resources/notifications/types/BlockType.d.ts +1 -1
  285. package/dist/api/resources/notifications/types/CheckStatus.d.ts +1 -1
  286. package/dist/api/resources/notifications/types/MessageRoutingChannel.d.ts +1 -1
  287. package/dist/api/resources/notifications/types/MessageRoutingMethod.d.ts +1 -1
  288. package/dist/api/resources/notifications/types/NotificationContent.d.ts +1 -1
  289. package/dist/api/resources/profiles/client/Client.d.ts +50 -30
  290. package/dist/api/resources/profiles/client/Client.js +160 -139
  291. package/dist/api/resources/profiles/client/requests/GetListSubscriptionsRequest.d.ts +1 -3
  292. package/dist/api/resources/profiles/client/requests/MergeProfileRequest.d.ts +1 -1
  293. package/dist/api/resources/profiles/client/requests/ReplaceProfileRequest.d.ts +1 -1
  294. package/dist/api/resources/profiles/types/DeviceType.d.ts +1 -1
  295. package/dist/api/resources/profiles/types/Discord.d.ts +1 -1
  296. package/dist/api/resources/profiles/types/Expo.d.ts +1 -1
  297. package/dist/api/resources/profiles/types/MsTeams.d.ts +1 -1
  298. package/dist/api/resources/profiles/types/ProfileUpdateRequest.d.ts +8 -0
  299. package/dist/api/resources/profiles/types/ProfileUpdateRequest.js +5 -0
  300. package/dist/api/resources/profiles/types/Slack.d.ts +1 -1
  301. package/dist/api/resources/profiles/types/SnoozeRuleType.d.ts +1 -1
  302. package/dist/api/resources/profiles/types/UserProfileFirebaseToken.d.ts +1 -1
  303. package/dist/api/resources/profiles/types/WebhookAuthMode.d.ts +1 -1
  304. package/dist/api/resources/profiles/types/WebhookMethod.d.ts +1 -1
  305. package/dist/api/resources/profiles/types/WebhookProfileType.d.ts +1 -1
  306. package/dist/api/resources/profiles/types/index.d.ts +1 -0
  307. package/dist/api/resources/profiles/types/index.js +1 -0
  308. package/dist/api/resources/send/types/Attachment.d.ts +1 -1
  309. package/dist/api/resources/send/types/ChannelSource.d.ts +1 -1
  310. package/dist/api/resources/send/types/Content.d.ts +1 -1
  311. package/dist/api/resources/send/types/Criteria.d.ts +1 -1
  312. package/dist/api/resources/send/types/ElementalNode.d.ts +1 -1
  313. package/dist/api/resources/send/types/ExpiresInType.d.ts +1 -1
  314. package/dist/api/resources/send/types/IActionButtonStyle.d.ts +1 -1
  315. package/dist/api/resources/send/types/IAlignment.d.ts +1 -1
  316. package/dist/api/resources/send/types/IPreferences.d.ts +1 -1
  317. package/dist/api/resources/send/types/InAppPlacement.d.ts +1 -1
  318. package/dist/api/resources/send/types/Locales.d.ts +1 -1
  319. package/dist/api/resources/send/types/Message.d.ts +1 -1
  320. package/dist/api/resources/send/types/MessageChannels.d.ts +1 -1
  321. package/dist/api/resources/send/types/MessageData.d.ts +1 -1
  322. package/dist/api/resources/send/types/MessageProviders.d.ts +1 -1
  323. package/dist/api/resources/send/types/MessageRecipient.d.ts +1 -1
  324. package/dist/api/resources/send/types/Recipient.d.ts +1 -1
  325. package/dist/api/resources/send/types/RecipientData.d.ts +1 -1
  326. package/dist/api/resources/send/types/RoutingChannel.d.ts +1 -1
  327. package/dist/api/resources/send/types/RoutingMethod.d.ts +1 -1
  328. package/dist/api/resources/send/types/RuleType.d.ts +1 -1
  329. package/dist/api/resources/send/types/TextAlign.d.ts +1 -1
  330. package/dist/api/resources/send/types/TextStyle.d.ts +1 -1
  331. package/dist/api/resources/templates/client/Client.d.ts +11 -4
  332. package/dist/api/resources/templates/client/Client.js +34 -25
  333. package/dist/api/resources/templates/client/requests/ListTemplatesRequest.d.ts +1 -3
  334. package/dist/api/resources/templates/types/ChannelIdentifier.d.ts +1 -1
  335. package/dist/api/resources/templates/types/RoutingStrategyMethod.d.ts +1 -1
  336. package/dist/api/resources/tenants/client/Client.d.ts +37 -44
  337. package/dist/api/resources/tenants/client/Client.js +130 -135
  338. package/dist/api/resources/tenants/client/requests/ListTenantParams.d.ts +1 -5
  339. package/dist/api/resources/tenants/client/requests/ListUsersForTenantParams.d.ts +1 -4
  340. package/dist/api/resources/tenants/client/requests/TenantCreateOrReplaceParams.d.ts +6 -21
  341. package/dist/api/resources/tenants/types/SubscriptionTopicStatus.d.ts +1 -1
  342. package/dist/api/resources/tenants/types/TemplateProperty.d.ts +1 -1
  343. package/dist/api/resources/translations/client/Client.d.ts +14 -4
  344. package/dist/api/resources/translations/client/Client.js +49 -37
  345. package/dist/api/resources/users/client/Client.d.ts +5 -7
  346. package/dist/api/resources/users/resources/index.js +17 -7
  347. package/dist/api/resources/users/resources/preferences/client/Client.d.ts +19 -12
  348. package/dist/api/resources/users/resources/preferences/client/Client.js +77 -59
  349. package/dist/api/resources/users/resources/preferences/client/requests/UserPreferencesParams.d.ts +1 -3
  350. package/dist/api/resources/users/resources/preferences/client/requests/UserPreferencesTopicParams.d.ts +1 -3
  351. package/dist/api/resources/users/resources/preferences/client/requests/UserPreferencesUpdateParams.d.ts +2 -2
  352. package/dist/api/resources/users/resources/tenants/client/Client.d.ts +33 -26
  353. package/dist/api/resources/users/resources/tenants/client/Client.js +104 -92
  354. package/dist/api/resources/users/resources/tenants/client/requests/AddUserToMultipleTenantsParams.d.ts +9 -8
  355. package/dist/api/resources/users/resources/tenants/client/requests/AddUserToSingleTenantsParams.d.ts +1 -5
  356. package/dist/api/resources/users/resources/tenants/client/requests/ListTenantsForUserParams.d.ts +1 -4
  357. package/dist/api/resources/users/resources/tokens/client/Client.d.ts +39 -35
  358. package/dist/api/resources/users/resources/tokens/client/Client.js +121 -115
  359. package/dist/api/resources/users/resources/tokens/types/ExpiryDate.d.ts +1 -1
  360. package/dist/api/resources/users/resources/tokens/types/GetAllTokensResponse.d.ts +1 -1
  361. package/dist/api/resources/users/resources/tokens/types/PatchOp.d.ts +1 -1
  362. package/dist/api/resources/users/resources/tokens/types/ProviderKey.d.ts +1 -1
  363. package/dist/api/resources/users/resources/tokens/types/TokenStatus.d.ts +1 -1
  364. package/dist/core/auth/BearerToken.d.ts +1 -1
  365. package/dist/core/fetcher/APIResponse.d.ts +11 -1
  366. package/dist/core/fetcher/Fetcher.d.ts +7 -3
  367. package/dist/core/fetcher/Fetcher.js +37 -135
  368. package/dist/core/fetcher/Headers.d.ts +2 -0
  369. package/dist/core/fetcher/Headers.js +84 -0
  370. package/dist/core/fetcher/HttpResponsePromise.d.ts +58 -0
  371. package/dist/core/fetcher/HttpResponsePromise.js +103 -0
  372. package/dist/core/fetcher/RawResponse.d.ts +29 -0
  373. package/dist/core/fetcher/RawResponse.js +44 -0
  374. package/dist/core/fetcher/Supplier.d.ts +1 -1
  375. package/dist/core/fetcher/createRequestUrl.d.ts +1 -0
  376. package/dist/core/fetcher/createRequestUrl.js +12 -0
  377. package/dist/core/fetcher/getFetchFn.d.ts +4 -0
  378. package/dist/core/fetcher/getFetchFn.js +68 -0
  379. package/dist/core/fetcher/getHeader.js +1 -2
  380. package/dist/core/fetcher/getRequestBody.d.ts +7 -0
  381. package/dist/core/fetcher/getRequestBody.js +23 -0
  382. package/dist/core/fetcher/getResponseBody.d.ts +1 -0
  383. package/dist/core/fetcher/getResponseBody.js +54 -0
  384. package/dist/core/fetcher/index.d.ts +3 -0
  385. package/dist/core/fetcher/index.js +7 -1
  386. package/dist/core/fetcher/makeRequest.d.ts +1 -0
  387. package/dist/core/fetcher/makeRequest.js +42 -0
  388. package/dist/core/fetcher/requestWithRetries.d.ts +1 -0
  389. package/dist/core/fetcher/requestWithRetries.js +40 -0
  390. package/dist/core/fetcher/signals.d.ts +11 -0
  391. package/dist/core/fetcher/signals.js +36 -0
  392. package/dist/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.d.ts +30 -0
  393. package/dist/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.js +247 -0
  394. package/dist/core/fetcher/stream-wrappers/NodePre18StreamWrapper.d.ts +21 -0
  395. package/dist/core/fetcher/stream-wrappers/NodePre18StreamWrapper.js +126 -0
  396. package/dist/core/fetcher/stream-wrappers/UndiciStreamWrapper.d.ts +31 -0
  397. package/dist/core/fetcher/stream-wrappers/UndiciStreamWrapper.js +229 -0
  398. package/dist/core/fetcher/stream-wrappers/chooseStreamWrapper.d.ts +18 -0
  399. package/dist/core/fetcher/stream-wrappers/chooseStreamWrapper.js +59 -0
  400. package/dist/core/index.d.ts +1 -1
  401. package/dist/core/index.js +1 -1
  402. package/dist/core/json.d.ts +15 -0
  403. package/dist/core/json.js +24 -0
  404. package/dist/core/runtime/runtime.d.ts +2 -1
  405. package/dist/core/runtime/runtime.js +57 -36
  406. package/dist/environments.d.ts +1 -1
  407. package/dist/errors/CourierError.d.ts +4 -1
  408. package/dist/errors/CourierError.js +6 -8
  409. package/dist/errors/CourierTimeoutError.d.ts +1 -1
  410. package/dist/errors/CourierTimeoutError.js +2 -2
  411. package/dist/index.js +17 -7
  412. package/dist/version.d.ts +1 -0
  413. package/dist/version.js +4 -0
  414. package/environments.d.ts +1 -1
  415. package/errors/CourierError.d.ts +4 -1
  416. package/errors/CourierError.js +6 -8
  417. package/errors/CourierTimeoutError.d.ts +1 -1
  418. package/errors/CourierTimeoutError.js +2 -2
  419. package/index.js +17 -7
  420. package/{jest.config.js → jest.config.mjs} +4 -1
  421. package/package.json +25 -15
  422. package/reference.md +5142 -0
  423. package/scripts/rename-to-esm-files.js +115 -0
  424. package/version.d.ts +1 -0
  425. 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,26 @@ 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
+ * to: {
88
+ * email: "email@example.com"
89
+ * },
49
90
  * content: {
50
- * version: "string",
51
- * brand: {
52
- * "key": "value"
53
- * },
54
- * elements: [{
55
- * type: "text"
56
- * }]
91
+ * title: "Welcome!",
92
+ * body: "Thanks for signing up, {{name}}"
57
93
  * },
58
94
  * 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
- * }
95
+ * "name": "Peter Parker"
100
96
  * },
101
97
  * routing: {
102
- * method: Courier.RoutingMethod.All,
103
- * channels: [{
104
- * channel: "string",
105
- * config: undefined,
106
- * method: undefined,
107
- * providers: undefined,
108
- * if: undefined
109
- * }]
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: []
98
+ * method: "single",
99
+ * channels: ["email"]
130
100
  * }
131
101
  * }
132
102
  * })
133
103
  */
134
- 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;
104
+ send(request: Courier.SendMessageRequest, requestOptions?: CourierClient.IdempotentRequestOptions): core.HttpResponsePromise<Courier.SendMessageResponse>;
105
+ private __send;
165
106
  protected _getAuthorizationHeader(): Promise<string>;
166
107
  }
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,83 @@ 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
+ * to: {
145
+ * email: "email@example.com"
146
+ * },
147
+ * content: {
148
+ * title: "Welcome!",
149
+ * body: "Thanks for signing up, {{name}}"
150
+ * },
151
+ * data: {
152
+ * "name": "Peter Parker"
153
+ * },
154
+ * routing: {
155
+ * method: "single",
156
+ * channels: ["email"]
157
+ * }
158
+ * }
159
+ * })
160
+ */
161
+ send(request, requestOptions) {
162
+ return core.HttpResponsePromise.fromPromise(this.__send(request, requestOptions));
163
+ }
164
+ __send(request, requestOptions) {
165
+ return __awaiter(this, void 0, void 0, function* () {
166
+ var _a, _b, _c;
167
+ const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
168
+ 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"),
169
+ method: "POST",
170
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@trycourier/courier", "X-Fern-SDK-Version": "6.4.1", "User-Agent": "@trycourier/courier/6.4.1", "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),
171
+ contentType: "application/json",
172
+ requestType: "json",
173
+ body: request,
174
+ timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
175
+ maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
176
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
177
+ });
178
+ if (_response.ok) {
179
+ return { data: _response.body, rawResponse: _response.rawResponse };
180
+ }
181
+ if (_response.error.reason === "status-code") {
182
+ throw new errors.CourierError({
183
+ statusCode: _response.error.statusCode,
184
+ body: _response.error.body,
185
+ rawResponse: _response.rawResponse,
186
+ });
187
+ }
188
+ switch (_response.error.reason) {
189
+ case "non-json":
190
+ throw new errors.CourierError({
191
+ statusCode: _response.error.statusCode,
192
+ body: _response.error.rawBody,
193
+ rawResponse: _response.rawResponse,
194
+ });
195
+ case "timeout":
196
+ throw new errors.CourierTimeoutError("Timeout exceeded when calling POST /send.");
197
+ case "unknown":
198
+ throw new errors.CourierError({
199
+ message: _response.error.errorMessage,
200
+ rawResponse: _response.rawResponse,
201
+ });
202
+ }
203
+ });
204
+ }
264
205
  _getAuthorizationHeader() {
265
- var _a;
266
206
  return __awaiter(this, void 0, void 0, function* () {
207
+ var _a;
267
208
  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
209
  if (bearer == null) {
269
210
  throw new errors.CourierError({
270
- message: "Please specify COURIER_AUTH_TOKEN when instantiating the client.",
211
+ message: "Please specify a bearer by either passing it in to the constructor or initializing a COURIER_AUTH_TOKEN environment variable",
271
212
  });
272
213
  }
273
214
  return `Bearer ${bearer}`;