@trycourier/courier 6.4.0 → 6.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/Client.d.ts +14 -48
  2. package/Client.js +20 -49
  3. package/README.md +113 -808
  4. package/api/client/requests/SendMessageRequest.d.ts +12 -47
  5. package/api/resources/audiences/client/Client.d.ts +10 -5
  6. package/api/resources/audiences/client/Client.js +45 -15
  7. package/api/resources/auditEvents/client/Client.d.ts +4 -2
  8. package/api/resources/auditEvents/client/Client.js +17 -5
  9. package/api/resources/authTokens/client/Client.d.ts +2 -1
  10. package/api/resources/authTokens/client/Client.js +8 -2
  11. package/api/resources/automations/client/Client.d.ts +4 -2
  12. package/api/resources/automations/client/Client.js +16 -4
  13. package/api/resources/brands/client/Client.d.ts +10 -5
  14. package/api/resources/brands/client/Client.js +45 -15
  15. package/api/resources/bulk/client/Client.d.ts +10 -5
  16. package/api/resources/bulk/client/Client.js +45 -15
  17. package/api/resources/commons/errors/AlreadyExistsError.d.ts +2 -1
  18. package/api/resources/commons/errors/AlreadyExistsError.js +2 -1
  19. package/api/resources/commons/errors/BadRequestError.d.ts +2 -1
  20. package/api/resources/commons/errors/BadRequestError.js +2 -1
  21. package/api/resources/commons/errors/ConflictError.d.ts +2 -1
  22. package/api/resources/commons/errors/ConflictError.js +2 -1
  23. package/api/resources/commons/errors/MessageNotFoundError.d.ts +2 -1
  24. package/api/resources/commons/errors/MessageNotFoundError.js +2 -1
  25. package/api/resources/commons/errors/NotFoundError.d.ts +2 -1
  26. package/api/resources/commons/errors/NotFoundError.js +2 -1
  27. package/api/resources/commons/errors/PaymentRequiredError.d.ts +2 -1
  28. package/api/resources/commons/errors/PaymentRequiredError.js +2 -1
  29. package/api/resources/inbound/client/Client.d.ts +2 -1
  30. package/api/resources/inbound/client/Client.js +10 -4
  31. package/api/resources/lists/client/Client.d.ts +20 -10
  32. package/api/resources/lists/client/Client.js +89 -29
  33. package/api/resources/messages/client/Client.d.ts +12 -6
  34. package/api/resources/messages/client/Client.js +56 -20
  35. package/api/resources/notifications/client/Client.d.ts +12 -6
  36. package/api/resources/notifications/client/Client.js +58 -13
  37. package/api/resources/profiles/client/Client.d.ts +16 -8
  38. package/api/resources/profiles/client/Client.js +75 -24
  39. package/api/resources/templates/client/Client.d.ts +2 -1
  40. package/api/resources/templates/client/Client.js +9 -3
  41. package/api/resources/tenants/client/Client.d.ts +14 -7
  42. package/api/resources/tenants/client/Client.js +61 -19
  43. package/api/resources/translations/client/Client.d.ts +4 -2
  44. package/api/resources/translations/client/Client.js +18 -6
  45. package/api/resources/users/resources/preferences/client/Client.d.ts +6 -3
  46. package/api/resources/users/resources/preferences/client/Client.js +38 -11
  47. package/api/resources/users/resources/tenants/client/Client.d.ts +10 -5
  48. package/api/resources/users/resources/tenants/client/Client.js +45 -12
  49. package/api/resources/users/resources/tokens/client/Client.d.ts +12 -6
  50. package/api/resources/users/resources/tokens/client/Client.js +53 -17
  51. package/core/fetcher/APIResponse.d.ts +10 -0
  52. package/core/fetcher/Fetcher.js +7 -0
  53. package/core/fetcher/Headers.d.ts +2 -0
  54. package/core/fetcher/Headers.js +84 -0
  55. package/core/fetcher/HttpResponsePromise.d.ts +58 -0
  56. package/core/fetcher/HttpResponsePromise.js +103 -0
  57. package/core/fetcher/RawResponse.d.ts +29 -0
  58. package/core/fetcher/RawResponse.js +44 -0
  59. package/core/fetcher/index.d.ts +3 -0
  60. package/core/fetcher/index.js +7 -1
  61. package/core/index.d.ts +1 -1
  62. package/core/index.js +1 -1
  63. package/dist/Client.d.ts +14 -48
  64. package/dist/Client.js +20 -49
  65. package/dist/api/client/requests/SendMessageRequest.d.ts +12 -47
  66. package/dist/api/resources/audiences/client/Client.d.ts +10 -5
  67. package/dist/api/resources/audiences/client/Client.js +45 -15
  68. package/dist/api/resources/auditEvents/client/Client.d.ts +4 -2
  69. package/dist/api/resources/auditEvents/client/Client.js +17 -5
  70. package/dist/api/resources/authTokens/client/Client.d.ts +2 -1
  71. package/dist/api/resources/authTokens/client/Client.js +8 -2
  72. package/dist/api/resources/automations/client/Client.d.ts +4 -2
  73. package/dist/api/resources/automations/client/Client.js +16 -4
  74. package/dist/api/resources/brands/client/Client.d.ts +10 -5
  75. package/dist/api/resources/brands/client/Client.js +45 -15
  76. package/dist/api/resources/bulk/client/Client.d.ts +10 -5
  77. package/dist/api/resources/bulk/client/Client.js +45 -15
  78. package/dist/api/resources/commons/errors/AlreadyExistsError.d.ts +2 -1
  79. package/dist/api/resources/commons/errors/AlreadyExistsError.js +2 -1
  80. package/dist/api/resources/commons/errors/BadRequestError.d.ts +2 -1
  81. package/dist/api/resources/commons/errors/BadRequestError.js +2 -1
  82. package/dist/api/resources/commons/errors/ConflictError.d.ts +2 -1
  83. package/dist/api/resources/commons/errors/ConflictError.js +2 -1
  84. package/dist/api/resources/commons/errors/MessageNotFoundError.d.ts +2 -1
  85. package/dist/api/resources/commons/errors/MessageNotFoundError.js +2 -1
  86. package/dist/api/resources/commons/errors/NotFoundError.d.ts +2 -1
  87. package/dist/api/resources/commons/errors/NotFoundError.js +2 -1
  88. package/dist/api/resources/commons/errors/PaymentRequiredError.d.ts +2 -1
  89. package/dist/api/resources/commons/errors/PaymentRequiredError.js +2 -1
  90. package/dist/api/resources/inbound/client/Client.d.ts +2 -1
  91. package/dist/api/resources/inbound/client/Client.js +10 -4
  92. package/dist/api/resources/lists/client/Client.d.ts +20 -10
  93. package/dist/api/resources/lists/client/Client.js +89 -29
  94. package/dist/api/resources/messages/client/Client.d.ts +12 -6
  95. package/dist/api/resources/messages/client/Client.js +56 -20
  96. package/dist/api/resources/notifications/client/Client.d.ts +12 -6
  97. package/dist/api/resources/notifications/client/Client.js +58 -13
  98. package/dist/api/resources/profiles/client/Client.d.ts +16 -8
  99. package/dist/api/resources/profiles/client/Client.js +75 -24
  100. package/dist/api/resources/templates/client/Client.d.ts +2 -1
  101. package/dist/api/resources/templates/client/Client.js +9 -3
  102. package/dist/api/resources/tenants/client/Client.d.ts +14 -7
  103. package/dist/api/resources/tenants/client/Client.js +61 -19
  104. package/dist/api/resources/translations/client/Client.d.ts +4 -2
  105. package/dist/api/resources/translations/client/Client.js +18 -6
  106. package/dist/api/resources/users/resources/preferences/client/Client.d.ts +6 -3
  107. package/dist/api/resources/users/resources/preferences/client/Client.js +38 -11
  108. package/dist/api/resources/users/resources/tenants/client/Client.d.ts +10 -5
  109. package/dist/api/resources/users/resources/tenants/client/Client.js +45 -12
  110. package/dist/api/resources/users/resources/tokens/client/Client.d.ts +12 -6
  111. package/dist/api/resources/users/resources/tokens/client/Client.js +53 -17
  112. package/dist/core/fetcher/APIResponse.d.ts +10 -0
  113. package/dist/core/fetcher/Fetcher.js +7 -0
  114. package/dist/core/fetcher/Headers.d.ts +2 -0
  115. package/dist/core/fetcher/Headers.js +84 -0
  116. package/dist/core/fetcher/HttpResponsePromise.d.ts +58 -0
  117. package/dist/core/fetcher/HttpResponsePromise.js +103 -0
  118. package/dist/core/fetcher/RawResponse.d.ts +29 -0
  119. package/dist/core/fetcher/RawResponse.js +44 -0
  120. package/dist/core/fetcher/index.d.ts +3 -0
  121. package/dist/core/fetcher/index.js +7 -1
  122. package/dist/core/index.d.ts +1 -1
  123. package/dist/core/index.js +1 -1
  124. package/dist/errors/CourierError.d.ts +4 -1
  125. package/dist/errors/CourierError.js +4 -7
  126. package/dist/version.d.ts +1 -1
  127. package/dist/version.js +1 -1
  128. package/errors/CourierError.d.ts +4 -1
  129. package/errors/CourierError.js +4 -7
  130. package/package.json +3 -2
  131. package/reference.md +12 -50
  132. package/version.d.ts +1 -1
  133. package/version.js +1 -1
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.unknownRawResponse = exports.abortRawResponse = void 0;
4
+ exports.toRawResponse = toRawResponse;
5
+ const Headers_1 = require("./Headers");
6
+ /**
7
+ * A raw response indicating that the request was aborted.
8
+ */
9
+ exports.abortRawResponse = {
10
+ headers: new Headers_1.Headers(),
11
+ redirected: false,
12
+ status: 499,
13
+ statusText: "Client Closed Request",
14
+ type: "error",
15
+ url: "",
16
+ };
17
+ /**
18
+ * A raw response indicating an unknown error.
19
+ */
20
+ exports.unknownRawResponse = {
21
+ headers: new Headers_1.Headers(),
22
+ redirected: false,
23
+ status: 0,
24
+ statusText: "Unknown Error",
25
+ type: "error",
26
+ url: "",
27
+ };
28
+ /**
29
+ * Converts a `RawResponse` object into a `RawResponse` by extracting its properties,
30
+ * excluding the `body` and `bodyUsed` fields.
31
+ *
32
+ * @param response - The `RawResponse` object to convert.
33
+ * @returns A `RawResponse` object containing the extracted properties of the input response.
34
+ */
35
+ function toRawResponse(response) {
36
+ return {
37
+ headers: response.headers,
38
+ redirected: response.redirected,
39
+ status: response.status,
40
+ statusText: response.statusText,
41
+ type: response.type,
42
+ url: response.url,
43
+ };
44
+ }
@@ -3,3 +3,6 @@ export { fetcher } from "./Fetcher";
3
3
  export type { Fetcher, FetchFunction } from "./Fetcher";
4
4
  export { getHeader } from "./getHeader";
5
5
  export { Supplier } from "./Supplier";
6
+ export { abortRawResponse, toRawResponse, unknownRawResponse } from "./RawResponse";
7
+ export type { RawResponse, WithRawResponse } from "./RawResponse";
8
+ export { HttpResponsePromise } from "./HttpResponsePromise";
@@ -1,9 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Supplier = exports.getHeader = exports.fetcher = void 0;
3
+ exports.HttpResponsePromise = exports.unknownRawResponse = exports.toRawResponse = exports.abortRawResponse = exports.Supplier = exports.getHeader = exports.fetcher = void 0;
4
4
  var Fetcher_1 = require("./Fetcher");
5
5
  Object.defineProperty(exports, "fetcher", { enumerable: true, get: function () { return Fetcher_1.fetcher; } });
6
6
  var getHeader_1 = require("./getHeader");
7
7
  Object.defineProperty(exports, "getHeader", { enumerable: true, get: function () { return getHeader_1.getHeader; } });
8
8
  var Supplier_1 = require("./Supplier");
9
9
  Object.defineProperty(exports, "Supplier", { enumerable: true, get: function () { return Supplier_1.Supplier; } });
10
+ var RawResponse_1 = require("./RawResponse");
11
+ Object.defineProperty(exports, "abortRawResponse", { enumerable: true, get: function () { return RawResponse_1.abortRawResponse; } });
12
+ Object.defineProperty(exports, "toRawResponse", { enumerable: true, get: function () { return RawResponse_1.toRawResponse; } });
13
+ Object.defineProperty(exports, "unknownRawResponse", { enumerable: true, get: function () { return RawResponse_1.unknownRawResponse; } });
14
+ var HttpResponsePromise_1 = require("./HttpResponsePromise");
15
+ Object.defineProperty(exports, "HttpResponsePromise", { enumerable: true, get: function () { return HttpResponsePromise_1.HttpResponsePromise; } });
package/core/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  export * from "./fetcher";
2
- export * from "./auth";
3
2
  export * from "./runtime";
3
+ export * from "./auth";
package/core/index.js CHANGED
@@ -15,5 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./fetcher"), exports);
18
- __exportStar(require("./auth"), exports);
19
18
  __exportStar(require("./runtime"), exports);
19
+ __exportStar(require("./auth"), exports);
package/dist/Client.d.ts CHANGED
@@ -84,58 +84,24 @@ export declare class CourierClient {
84
84
  * @example
85
85
  * await client.send({
86
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,
87
+ * to: {
88
+ * email: "email@example.com"
89
+ * },
99
90
  * content: {
100
- * version: "version",
101
- * brand: undefined,
102
- * elements: [{
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
134
- * }]
91
+ * title: "Welcome!",
92
+ * body: "Thanks for signing up, {{name}}"
93
+ * },
94
+ * data: {
95
+ * "name": "Peter Parker"
96
+ * },
97
+ * routing: {
98
+ * method: "single",
99
+ * channels: ["email"]
135
100
  * }
136
101
  * }
137
102
  * })
138
103
  */
139
- send(request: Courier.SendMessageRequest, requestOptions?: CourierClient.IdempotentRequestOptions): Promise<Courier.SendMessageResponse>;
104
+ send(request: Courier.SendMessageRequest, requestOptions?: CourierClient.IdempotentRequestOptions): core.HttpResponsePromise<Courier.SendMessageResponse>;
105
+ private __send;
140
106
  protected _getAuthorizationHeader(): Promise<string>;
141
107
  }
package/dist/Client.js CHANGED
@@ -141,65 +141,33 @@ class CourierClient {
141
141
  * @example
142
142
  * await client.send({
143
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,
144
+ * to: {
145
+ * email: "email@example.com"
146
+ * },
156
147
  * 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
- * }]
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"]
192
157
  * }
193
158
  * }
194
159
  * })
195
160
  */
196
161
  send(request, requestOptions) {
162
+ return core.HttpResponsePromise.fromPromise(this.__send(request, requestOptions));
163
+ }
164
+ __send(request, requestOptions) {
197
165
  return __awaiter(this, void 0, void 0, function* () {
198
166
  var _a, _b, _c;
199
167
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
200
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"),
201
169
  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),
170
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@trycourier/courier", "X-Fern-SDK-Version": "6.4.2", "User-Agent": "@trycourier/courier/6.4.2", "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
171
  contentType: "application/json",
204
172
  requestType: "json",
205
173
  body: request,
@@ -208,12 +176,13 @@ class CourierClient {
208
176
  abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
209
177
  });
210
178
  if (_response.ok) {
211
- return _response.body;
179
+ return { data: _response.body, rawResponse: _response.rawResponse };
212
180
  }
213
181
  if (_response.error.reason === "status-code") {
214
182
  throw new errors.CourierError({
215
183
  statusCode: _response.error.statusCode,
216
184
  body: _response.error.body,
185
+ rawResponse: _response.rawResponse,
217
186
  });
218
187
  }
219
188
  switch (_response.error.reason) {
@@ -221,12 +190,14 @@ class CourierClient {
221
190
  throw new errors.CourierError({
222
191
  statusCode: _response.error.statusCode,
223
192
  body: _response.error.rawBody,
193
+ rawResponse: _response.rawResponse,
224
194
  });
225
195
  case "timeout":
226
196
  throw new errors.CourierTimeoutError("Timeout exceeded when calling POST /send.");
227
197
  case "unknown":
228
198
  throw new errors.CourierError({
229
199
  message: _response.error.errorMessage,
200
+ rawResponse: _response.rawResponse,
230
201
  });
231
202
  }
232
203
  });
@@ -6,54 +6,19 @@ 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
+ * to: {
10
+ * email: "email@example.com"
11
+ * },
21
12
  * content: {
22
- * version: "version",
23
- * brand: undefined,
24
- * elements: [{
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
56
- * }]
13
+ * title: "Welcome!",
14
+ * body: "Thanks for signing up, {{name}}"
15
+ * },
16
+ * data: {
17
+ * "name": "Peter Parker"
18
+ * },
19
+ * routing: {
20
+ * method: "single",
21
+ * channels: ["email"]
57
22
  * }
58
23
  * }
59
24
  * }
@@ -35,7 +35,8 @@ export declare class Audiences {
35
35
  * @example
36
36
  * await client.audiences.get("audience_id")
37
37
  */
38
- get(audienceId: string, requestOptions?: Audiences.RequestOptions): Promise<Courier.Audience>;
38
+ get(audienceId: string, requestOptions?: Audiences.RequestOptions): core.HttpResponsePromise<Courier.Audience>;
39
+ private __get;
39
40
  /**
40
41
  * Creates or updates audience.
41
42
  *
@@ -50,7 +51,8 @@ export declare class Audiences {
50
51
  * filter: undefined
51
52
  * })
52
53
  */
53
- update(audienceId: string, request?: Courier.AudienceUpdateParams, requestOptions?: Audiences.RequestOptions): Promise<Courier.AudienceUpdateResponse>;
54
+ update(audienceId: string, request?: Courier.AudienceUpdateParams, requestOptions?: Audiences.RequestOptions): core.HttpResponsePromise<Courier.AudienceUpdateResponse>;
55
+ private __update;
54
56
  /**
55
57
  * Deletes the specified audience.
56
58
  *
@@ -60,7 +62,8 @@ export declare class Audiences {
60
62
  * @example
61
63
  * await client.audiences.delete("audience_id")
62
64
  */
63
- delete(audienceId: string, requestOptions?: Audiences.RequestOptions): Promise<void>;
65
+ delete(audienceId: string, requestOptions?: Audiences.RequestOptions): core.HttpResponsePromise<void>;
66
+ private __delete;
64
67
  /**
65
68
  * Get list of members of an audience.
66
69
  *
@@ -73,7 +76,8 @@ export declare class Audiences {
73
76
  * @example
74
77
  * await client.audiences.listMembers("audience_id")
75
78
  */
76
- listMembers(audienceId: string, request?: Courier.AudienceMembersListParams, requestOptions?: Audiences.RequestOptions): Promise<Courier.AudienceMemberListResponse>;
79
+ listMembers(audienceId: string, request?: Courier.AudienceMembersListParams, requestOptions?: Audiences.RequestOptions): core.HttpResponsePromise<Courier.AudienceMemberListResponse>;
80
+ private __listMembers;
77
81
  /**
78
82
  * Get the audiences associated with the authorization token.
79
83
  *
@@ -85,6 +89,7 @@ export declare class Audiences {
85
89
  * @example
86
90
  * await client.audiences.listAudiences()
87
91
  */
88
- listAudiences(request?: Courier.AudiencesListParams, requestOptions?: Audiences.RequestOptions): Promise<Courier.AudienceListResponse>;
92
+ listAudiences(request?: Courier.AudiencesListParams, requestOptions?: Audiences.RequestOptions): core.HttpResponsePromise<Courier.AudienceListResponse>;
93
+ private __listAudiences;
89
94
  protected _getAuthorizationHeader(): Promise<string>;
90
95
  }
@@ -68,12 +68,15 @@ class Audiences {
68
68
  * await client.audiences.get("audience_id")
69
69
  */
70
70
  get(audienceId, requestOptions) {
71
+ return core.HttpResponsePromise.fromPromise(this.__get(audienceId, requestOptions));
72
+ }
73
+ __get(audienceId, requestOptions) {
71
74
  return __awaiter(this, void 0, void 0, function* () {
72
75
  var _a, _b, _c;
73
76
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
74
77
  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, `/audiences/${encodeURIComponent(audienceId)}`),
75
78
  method: "GET",
76
- 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 }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
79
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@trycourier/courier", "X-Fern-SDK-Version": "6.4.2", "User-Agent": "@trycourier/courier/6.4.2", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
77
80
  contentType: "application/json",
78
81
  requestType: "json",
79
82
  timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
@@ -81,12 +84,13 @@ class Audiences {
81
84
  abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
82
85
  });
83
86
  if (_response.ok) {
84
- return _response.body;
87
+ return { data: _response.body, rawResponse: _response.rawResponse };
85
88
  }
86
89
  if (_response.error.reason === "status-code") {
87
90
  throw new errors.CourierError({
88
91
  statusCode: _response.error.statusCode,
89
92
  body: _response.error.body,
93
+ rawResponse: _response.rawResponse,
90
94
  });
91
95
  }
92
96
  switch (_response.error.reason) {
@@ -94,12 +98,14 @@ class Audiences {
94
98
  throw new errors.CourierError({
95
99
  statusCode: _response.error.statusCode,
96
100
  body: _response.error.rawBody,
101
+ rawResponse: _response.rawResponse,
97
102
  });
98
103
  case "timeout":
99
104
  throw new errors.CourierTimeoutError("Timeout exceeded when calling GET /audiences/{audience_id}.");
100
105
  case "unknown":
101
106
  throw new errors.CourierError({
102
107
  message: _response.error.errorMessage,
108
+ rawResponse: _response.rawResponse,
103
109
  });
104
110
  }
105
111
  });
@@ -118,13 +124,16 @@ class Audiences {
118
124
  * filter: undefined
119
125
  * })
120
126
  */
121
- update(audienceId_1) {
127
+ update(audienceId, request = {}, requestOptions) {
128
+ return core.HttpResponsePromise.fromPromise(this.__update(audienceId, request, requestOptions));
129
+ }
130
+ __update(audienceId_1) {
122
131
  return __awaiter(this, arguments, void 0, function* (audienceId, request = {}, requestOptions) {
123
132
  var _a, _b, _c;
124
133
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
125
134
  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, `/audiences/${encodeURIComponent(audienceId)}`),
126
135
  method: "PUT",
127
- 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 }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
136
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@trycourier/courier", "X-Fern-SDK-Version": "6.4.2", "User-Agent": "@trycourier/courier/6.4.2", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
128
137
  contentType: "application/json",
129
138
  requestType: "json",
130
139
  body: request,
@@ -133,12 +142,13 @@ class Audiences {
133
142
  abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
134
143
  });
135
144
  if (_response.ok) {
136
- return _response.body;
145
+ return { data: _response.body, rawResponse: _response.rawResponse };
137
146
  }
138
147
  if (_response.error.reason === "status-code") {
139
148
  throw new errors.CourierError({
140
149
  statusCode: _response.error.statusCode,
141
150
  body: _response.error.body,
151
+ rawResponse: _response.rawResponse,
142
152
  });
143
153
  }
144
154
  switch (_response.error.reason) {
@@ -146,12 +156,14 @@ class Audiences {
146
156
  throw new errors.CourierError({
147
157
  statusCode: _response.error.statusCode,
148
158
  body: _response.error.rawBody,
159
+ rawResponse: _response.rawResponse,
149
160
  });
150
161
  case "timeout":
151
162
  throw new errors.CourierTimeoutError("Timeout exceeded when calling PUT /audiences/{audience_id}.");
152
163
  case "unknown":
153
164
  throw new errors.CourierError({
154
165
  message: _response.error.errorMessage,
166
+ rawResponse: _response.rawResponse,
155
167
  });
156
168
  }
157
169
  });
@@ -166,12 +178,15 @@ class Audiences {
166
178
  * await client.audiences.delete("audience_id")
167
179
  */
168
180
  delete(audienceId, requestOptions) {
181
+ return core.HttpResponsePromise.fromPromise(this.__delete(audienceId, requestOptions));
182
+ }
183
+ __delete(audienceId, requestOptions) {
169
184
  return __awaiter(this, void 0, void 0, function* () {
170
185
  var _a, _b, _c;
171
186
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
172
187
  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, `/audiences/${encodeURIComponent(audienceId)}`),
173
188
  method: "DELETE",
174
- 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 }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
189
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@trycourier/courier", "X-Fern-SDK-Version": "6.4.2", "User-Agent": "@trycourier/courier/6.4.2", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
175
190
  contentType: "application/json",
176
191
  requestType: "json",
177
192
  timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
@@ -179,12 +194,13 @@ class Audiences {
179
194
  abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
180
195
  });
181
196
  if (_response.ok) {
182
- return;
197
+ return { data: undefined, rawResponse: _response.rawResponse };
183
198
  }
184
199
  if (_response.error.reason === "status-code") {
185
200
  throw new errors.CourierError({
186
201
  statusCode: _response.error.statusCode,
187
202
  body: _response.error.body,
203
+ rawResponse: _response.rawResponse,
188
204
  });
189
205
  }
190
206
  switch (_response.error.reason) {
@@ -192,12 +208,14 @@ class Audiences {
192
208
  throw new errors.CourierError({
193
209
  statusCode: _response.error.statusCode,
194
210
  body: _response.error.rawBody,
211
+ rawResponse: _response.rawResponse,
195
212
  });
196
213
  case "timeout":
197
214
  throw new errors.CourierTimeoutError("Timeout exceeded when calling DELETE /audiences/{audience_id}.");
198
215
  case "unknown":
199
216
  throw new errors.CourierError({
200
217
  message: _response.error.errorMessage,
218
+ rawResponse: _response.rawResponse,
201
219
  });
202
220
  }
203
221
  });
@@ -214,7 +232,10 @@ class Audiences {
214
232
  * @example
215
233
  * await client.audiences.listMembers("audience_id")
216
234
  */
217
- listMembers(audienceId_1) {
235
+ listMembers(audienceId, request = {}, requestOptions) {
236
+ return core.HttpResponsePromise.fromPromise(this.__listMembers(audienceId, request, requestOptions));
237
+ }
238
+ __listMembers(audienceId_1) {
218
239
  return __awaiter(this, arguments, void 0, function* (audienceId, request = {}, requestOptions) {
219
240
  var _a, _b, _c;
220
241
  const { cursor } = request;
@@ -225,7 +246,7 @@ class Audiences {
225
246
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
226
247
  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, `/audiences/${encodeURIComponent(audienceId)}/members`),
227
248
  method: "GET",
228
- 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 }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
249
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@trycourier/courier", "X-Fern-SDK-Version": "6.4.2", "User-Agent": "@trycourier/courier/6.4.2", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
229
250
  contentType: "application/json",
230
251
  queryParameters: _queryParams,
231
252
  requestType: "json",
@@ -234,16 +255,17 @@ class Audiences {
234
255
  abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
235
256
  });
236
257
  if (_response.ok) {
237
- return _response.body;
258
+ return { data: _response.body, rawResponse: _response.rawResponse };
238
259
  }
239
260
  if (_response.error.reason === "status-code") {
240
261
  switch (_response.error.statusCode) {
241
262
  case 400:
242
- throw new Courier.BadRequestError(_response.error.body);
263
+ throw new Courier.BadRequestError(_response.error.body, _response.rawResponse);
243
264
  default:
244
265
  throw new errors.CourierError({
245
266
  statusCode: _response.error.statusCode,
246
267
  body: _response.error.body,
268
+ rawResponse: _response.rawResponse,
247
269
  });
248
270
  }
249
271
  }
@@ -252,12 +274,14 @@ class Audiences {
252
274
  throw new errors.CourierError({
253
275
  statusCode: _response.error.statusCode,
254
276
  body: _response.error.rawBody,
277
+ rawResponse: _response.rawResponse,
255
278
  });
256
279
  case "timeout":
257
280
  throw new errors.CourierTimeoutError("Timeout exceeded when calling GET /audiences/{audience_id}/members.");
258
281
  case "unknown":
259
282
  throw new errors.CourierError({
260
283
  message: _response.error.errorMessage,
284
+ rawResponse: _response.rawResponse,
261
285
  });
262
286
  }
263
287
  });
@@ -273,7 +297,10 @@ class Audiences {
273
297
  * @example
274
298
  * await client.audiences.listAudiences()
275
299
  */
276
- listAudiences() {
300
+ listAudiences(request = {}, requestOptions) {
301
+ return core.HttpResponsePromise.fromPromise(this.__listAudiences(request, requestOptions));
302
+ }
303
+ __listAudiences() {
277
304
  return __awaiter(this, arguments, void 0, function* (request = {}, requestOptions) {
278
305
  var _a, _b, _c;
279
306
  const { cursor } = request;
@@ -284,7 +311,7 @@ class Audiences {
284
311
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
285
312
  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, "/audiences"),
286
313
  method: "GET",
287
- 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 }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
314
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@trycourier/courier", "X-Fern-SDK-Version": "6.4.2", "User-Agent": "@trycourier/courier/6.4.2", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
288
315
  contentType: "application/json",
289
316
  queryParameters: _queryParams,
290
317
  requestType: "json",
@@ -293,16 +320,17 @@ class Audiences {
293
320
  abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
294
321
  });
295
322
  if (_response.ok) {
296
- return _response.body;
323
+ return { data: _response.body, rawResponse: _response.rawResponse };
297
324
  }
298
325
  if (_response.error.reason === "status-code") {
299
326
  switch (_response.error.statusCode) {
300
327
  case 400:
301
- throw new Courier.BadRequestError(_response.error.body);
328
+ throw new Courier.BadRequestError(_response.error.body, _response.rawResponse);
302
329
  default:
303
330
  throw new errors.CourierError({
304
331
  statusCode: _response.error.statusCode,
305
332
  body: _response.error.body,
333
+ rawResponse: _response.rawResponse,
306
334
  });
307
335
  }
308
336
  }
@@ -311,12 +339,14 @@ class Audiences {
311
339
  throw new errors.CourierError({
312
340
  statusCode: _response.error.statusCode,
313
341
  body: _response.error.rawBody,
342
+ rawResponse: _response.rawResponse,
314
343
  });
315
344
  case "timeout":
316
345
  throw new errors.CourierTimeoutError("Timeout exceeded when calling GET /audiences.");
317
346
  case "unknown":
318
347
  throw new errors.CourierError({
319
348
  message: _response.error.errorMessage,
349
+ rawResponse: _response.rawResponse,
320
350
  });
321
351
  }
322
352
  });