agentmail 0.1.19 → 0.2.3

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 (147) hide show
  1. package/README.md +30 -1
  2. package/dist/cjs/BaseClient.d.ts +7 -7
  3. package/dist/cjs/BaseClient.js +2 -2
  4. package/dist/cjs/Client.d.ts +1 -2
  5. package/dist/cjs/api/errors/IsTakenError.js +5 -1
  6. package/dist/cjs/api/errors/NotFoundError.js +5 -1
  7. package/dist/cjs/api/errors/ValidationError.js +5 -1
  8. package/dist/cjs/api/resources/apiKeys/client/Client.d.ts +1 -2
  9. package/dist/cjs/api/resources/apiKeys/client/Client.js +8 -52
  10. package/dist/cjs/api/resources/attachments/types/AttachmentResponse.d.ts +13 -0
  11. package/dist/cjs/api/resources/attachments/types/AttachmentResponse.js +3 -0
  12. package/dist/cjs/api/resources/attachments/types/index.d.ts +1 -0
  13. package/dist/cjs/api/resources/attachments/types/index.js +1 -0
  14. package/dist/cjs/api/resources/domains/client/Client.d.ts +1 -2
  15. package/dist/cjs/api/resources/domains/client/Client.js +11 -97
  16. package/dist/cjs/api/resources/drafts/client/Client.d.ts +1 -2
  17. package/dist/cjs/api/resources/drafts/client/Client.js +20 -49
  18. package/dist/cjs/api/resources/inboxes/client/Client.d.ts +1 -2
  19. package/dist/cjs/api/resources/inboxes/client/Client.js +10 -82
  20. package/dist/cjs/api/resources/inboxes/resources/drafts/client/Client.d.ts +1 -2
  21. package/dist/cjs/api/resources/inboxes/resources/drafts/client/Client.js +24 -109
  22. package/dist/cjs/api/resources/inboxes/resources/messages/client/Client.d.ts +10 -3
  23. package/dist/cjs/api/resources/inboxes/resources/messages/client/Client.js +45 -144
  24. package/dist/cjs/api/resources/inboxes/resources/metrics/client/Client.d.ts +1 -2
  25. package/dist/cjs/api/resources/inboxes/resources/metrics/client/Client.js +16 -22
  26. package/dist/cjs/api/resources/inboxes/resources/threads/client/Client.d.ts +10 -3
  27. package/dist/cjs/api/resources/inboxes/resources/threads/client/Client.js +41 -84
  28. package/dist/cjs/api/resources/messages/errors/MessageRejectedError.js +5 -1
  29. package/dist/cjs/api/resources/metrics/client/Client.d.ts +1 -2
  30. package/dist/cjs/api/resources/metrics/client/Client.js +16 -22
  31. package/dist/cjs/api/resources/organizations/client/Client.d.ts +1 -2
  32. package/dist/cjs/api/resources/organizations/client/Client.js +2 -15
  33. package/dist/cjs/api/resources/pods/client/Client.d.ts +1 -2
  34. package/dist/cjs/api/resources/pods/client/Client.js +9 -67
  35. package/dist/cjs/api/resources/pods/resources/domains/client/Client.d.ts +1 -2
  36. package/dist/cjs/api/resources/pods/resources/domains/client/Client.js +8 -52
  37. package/dist/cjs/api/resources/pods/resources/drafts/client/Client.d.ts +1 -2
  38. package/dist/cjs/api/resources/pods/resources/drafts/client/Client.js +20 -49
  39. package/dist/cjs/api/resources/pods/resources/inboxes/client/Client.d.ts +1 -2
  40. package/dist/cjs/api/resources/pods/resources/inboxes/client/Client.js +9 -67
  41. package/dist/cjs/api/resources/pods/resources/threads/client/Client.d.ts +10 -3
  42. package/dist/cjs/api/resources/pods/resources/threads/client/Client.js +40 -69
  43. package/dist/cjs/api/resources/threads/client/Client.d.ts +9 -3
  44. package/dist/cjs/api/resources/threads/client/Client.js +39 -69
  45. package/dist/cjs/api/resources/webhooks/client/Client.d.ts +1 -2
  46. package/dist/cjs/api/resources/webhooks/client/Client.js +9 -67
  47. package/dist/cjs/api/resources/websockets/client/Client.d.ts +2 -3
  48. package/dist/cjs/api/resources/websockets/client/Client.js +3 -4
  49. package/dist/cjs/auth/BearerAuthProvider.d.ts +14 -8
  50. package/dist/cjs/auth/BearerAuthProvider.js +16 -6
  51. package/dist/cjs/core/fetcher/BinaryResponse.d.ts +6 -7
  52. package/dist/cjs/core/fetcher/EndpointSupplier.d.ts +2 -2
  53. package/dist/cjs/core/fetcher/Fetcher.d.ts +6 -3
  54. package/dist/cjs/core/fetcher/Fetcher.js +2 -1
  55. package/dist/cjs/core/fetcher/getResponseBody.js +18 -4
  56. package/dist/cjs/core/fetcher/signals.d.ts +1 -1
  57. package/dist/cjs/core/headers.d.ts +2 -2
  58. package/dist/cjs/core/runtime/runtime.js +11 -10
  59. package/dist/cjs/core/schemas/builders/object/object.js +34 -3
  60. package/dist/cjs/core/websocket/ws.d.ts +1 -1
  61. package/dist/cjs/errors/AgentMailError.js +5 -1
  62. package/dist/cjs/errors/AgentMailTimeoutError.js +5 -1
  63. package/dist/cjs/errors/handleNonStatusCodeError.d.ts +2 -0
  64. package/dist/cjs/errors/handleNonStatusCodeError.js +65 -0
  65. package/dist/cjs/serialization/resources/attachments/types/AttachmentResponse.d.ts +22 -0
  66. package/dist/cjs/serialization/resources/attachments/types/AttachmentResponse.js +54 -0
  67. package/dist/cjs/serialization/resources/attachments/types/index.d.ts +1 -0
  68. package/dist/cjs/serialization/resources/attachments/types/index.js +1 -0
  69. package/dist/cjs/version.d.ts +1 -1
  70. package/dist/cjs/version.js +1 -1
  71. package/dist/esm/BaseClient.d.mts +7 -7
  72. package/dist/esm/BaseClient.mjs +2 -2
  73. package/dist/esm/Client.d.mts +1 -2
  74. package/dist/esm/api/errors/IsTakenError.mjs +5 -1
  75. package/dist/esm/api/errors/NotFoundError.mjs +5 -1
  76. package/dist/esm/api/errors/ValidationError.mjs +5 -1
  77. package/dist/esm/api/resources/apiKeys/client/Client.d.mts +1 -2
  78. package/dist/esm/api/resources/apiKeys/client/Client.mjs +8 -52
  79. package/dist/esm/api/resources/attachments/types/AttachmentResponse.d.mts +13 -0
  80. package/dist/esm/api/resources/attachments/types/AttachmentResponse.mjs +2 -0
  81. package/dist/esm/api/resources/attachments/types/index.d.mts +1 -0
  82. package/dist/esm/api/resources/attachments/types/index.mjs +1 -0
  83. package/dist/esm/api/resources/domains/client/Client.d.mts +1 -2
  84. package/dist/esm/api/resources/domains/client/Client.mjs +11 -97
  85. package/dist/esm/api/resources/drafts/client/Client.d.mts +1 -2
  86. package/dist/esm/api/resources/drafts/client/Client.mjs +20 -49
  87. package/dist/esm/api/resources/inboxes/client/Client.d.mts +1 -2
  88. package/dist/esm/api/resources/inboxes/client/Client.mjs +10 -82
  89. package/dist/esm/api/resources/inboxes/resources/drafts/client/Client.d.mts +1 -2
  90. package/dist/esm/api/resources/inboxes/resources/drafts/client/Client.mjs +24 -109
  91. package/dist/esm/api/resources/inboxes/resources/messages/client/Client.d.mts +10 -3
  92. package/dist/esm/api/resources/inboxes/resources/messages/client/Client.mjs +45 -144
  93. package/dist/esm/api/resources/inboxes/resources/metrics/client/Client.d.mts +1 -2
  94. package/dist/esm/api/resources/inboxes/resources/metrics/client/Client.mjs +16 -22
  95. package/dist/esm/api/resources/inboxes/resources/threads/client/Client.d.mts +10 -3
  96. package/dist/esm/api/resources/inboxes/resources/threads/client/Client.mjs +41 -84
  97. package/dist/esm/api/resources/messages/errors/MessageRejectedError.mjs +5 -1
  98. package/dist/esm/api/resources/metrics/client/Client.d.mts +1 -2
  99. package/dist/esm/api/resources/metrics/client/Client.mjs +16 -22
  100. package/dist/esm/api/resources/organizations/client/Client.d.mts +1 -2
  101. package/dist/esm/api/resources/organizations/client/Client.mjs +2 -15
  102. package/dist/esm/api/resources/pods/client/Client.d.mts +1 -2
  103. package/dist/esm/api/resources/pods/client/Client.mjs +9 -67
  104. package/dist/esm/api/resources/pods/resources/domains/client/Client.d.mts +1 -2
  105. package/dist/esm/api/resources/pods/resources/domains/client/Client.mjs +8 -52
  106. package/dist/esm/api/resources/pods/resources/drafts/client/Client.d.mts +1 -2
  107. package/dist/esm/api/resources/pods/resources/drafts/client/Client.mjs +20 -49
  108. package/dist/esm/api/resources/pods/resources/inboxes/client/Client.d.mts +1 -2
  109. package/dist/esm/api/resources/pods/resources/inboxes/client/Client.mjs +9 -67
  110. package/dist/esm/api/resources/pods/resources/threads/client/Client.d.mts +10 -3
  111. package/dist/esm/api/resources/pods/resources/threads/client/Client.mjs +40 -69
  112. package/dist/esm/api/resources/threads/client/Client.d.mts +9 -3
  113. package/dist/esm/api/resources/threads/client/Client.mjs +39 -69
  114. package/dist/esm/api/resources/webhooks/client/Client.d.mts +1 -2
  115. package/dist/esm/api/resources/webhooks/client/Client.mjs +9 -67
  116. package/dist/esm/api/resources/websockets/client/Client.d.mts +2 -3
  117. package/dist/esm/api/resources/websockets/client/Client.mjs +3 -4
  118. package/dist/esm/auth/BearerAuthProvider.d.mts +14 -8
  119. package/dist/esm/auth/BearerAuthProvider.mjs +16 -6
  120. package/dist/esm/core/fetcher/BinaryResponse.d.mts +6 -7
  121. package/dist/esm/core/fetcher/EndpointSupplier.d.mts +2 -2
  122. package/dist/esm/core/fetcher/Fetcher.d.mts +6 -3
  123. package/dist/esm/core/fetcher/Fetcher.mjs +2 -1
  124. package/dist/esm/core/fetcher/getResponseBody.mjs +18 -4
  125. package/dist/esm/core/fetcher/signals.d.mts +1 -1
  126. package/dist/esm/core/headers.d.mts +2 -2
  127. package/dist/esm/core/runtime/runtime.mjs +11 -10
  128. package/dist/esm/core/schemas/builders/object/object.mjs +34 -3
  129. package/dist/esm/core/websocket/ws.d.mts +1 -1
  130. package/dist/esm/errors/AgentMailError.mjs +5 -1
  131. package/dist/esm/errors/AgentMailTimeoutError.mjs +5 -1
  132. package/dist/esm/errors/handleNonStatusCodeError.d.mts +2 -0
  133. package/dist/esm/errors/handleNonStatusCodeError.mjs +29 -0
  134. package/dist/esm/serialization/resources/attachments/types/AttachmentResponse.d.mts +22 -0
  135. package/dist/esm/serialization/resources/attachments/types/AttachmentResponse.mjs +18 -0
  136. package/dist/esm/serialization/resources/attachments/types/index.d.mts +1 -0
  137. package/dist/esm/serialization/resources/attachments/types/index.mjs +1 -0
  138. package/dist/esm/version.d.mts +1 -1
  139. package/dist/esm/version.mjs +1 -1
  140. package/dist/llms-full.txt +1905 -131
  141. package/dist/llms.txt +3 -0
  142. package/package.json +6 -3
  143. package/reference.md +4 -4
  144. package/dist/cjs/core/fetcher/ResponseWithBody.d.ts +0 -4
  145. package/dist/cjs/core/fetcher/ResponseWithBody.js +0 -6
  146. package/dist/esm/core/fetcher/ResponseWithBody.d.mts +0 -4
  147. package/dist/esm/core/fetcher/ResponseWithBody.mjs +0 -3
@@ -13,6 +13,7 @@ import { mergeHeaders } from "../../../../../../core/headers.mjs";
13
13
  import * as core from "../../../../../../core/index.mjs";
14
14
  import { toJson } from "../../../../../../core/json.mjs";
15
15
  import * as environments from "../../../../../../environments.mjs";
16
+ import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError.mjs";
16
17
  import * as errors from "../../../../../../errors/index.mjs";
17
18
  import * as serializers from "../../../../../../serialization/index.mjs";
18
19
  import * as AgentMail from "../../../../../index.mjs";
@@ -37,25 +38,23 @@ export class DraftsClient {
37
38
  return __awaiter(this, arguments, void 0, function* (pod_id, request = {}, requestOptions) {
38
39
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
39
40
  const { limit, pageToken, labels, before, after, ascending } = request;
40
- const _queryParams = {};
41
- if (limit != null) {
42
- _queryParams.limit = limit.toString();
43
- }
44
- if (pageToken != null) {
45
- _queryParams.page_token = pageToken;
46
- }
47
- if (labels != null) {
48
- _queryParams.labels = toJson(serializers.Labels.jsonOrThrow(labels, { unrecognizedObjectKeys: "strip", omitUndefined: true }));
49
- }
50
- if (before != null) {
51
- _queryParams.before = before.toISOString();
52
- }
53
- if (after != null) {
54
- _queryParams.after = after.toISOString();
55
- }
56
- if (ascending != null) {
57
- _queryParams.ascending = ascending.toString();
58
- }
41
+ const _queryParams = {
42
+ limit,
43
+ page_token: pageToken,
44
+ labels: labels != null
45
+ ? toJson(serializers.Labels.jsonOrThrow(labels, {
46
+ unrecognizedObjectKeys: "strip",
47
+ omitUndefined: true,
48
+ }))
49
+ : undefined,
50
+ before: before != null
51
+ ? serializers.Before.jsonOrThrow(before, { unrecognizedObjectKeys: "strip", omitUndefined: true })
52
+ : undefined,
53
+ after: after != null
54
+ ? serializers.After.jsonOrThrow(after, { unrecognizedObjectKeys: "strip", omitUndefined: true })
55
+ : undefined,
56
+ ascending,
57
+ };
59
58
  const _authRequest = yield this._options.authProvider.getAuthRequest();
60
59
  const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
61
60
  const _response = yield core.fetcher({
@@ -99,21 +98,7 @@ export class DraftsClient {
99
98
  });
100
99
  }
101
100
  }
102
- switch (_response.error.reason) {
103
- case "non-json":
104
- throw new errors.AgentMailError({
105
- statusCode: _response.error.statusCode,
106
- body: _response.error.rawBody,
107
- rawResponse: _response.rawResponse,
108
- });
109
- case "timeout":
110
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/pods/{pod_id}/drafts.");
111
- case "unknown":
112
- throw new errors.AgentMailError({
113
- message: _response.error.errorMessage,
114
- rawResponse: _response.rawResponse,
115
- });
116
- }
101
+ return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v0/pods/{pod_id}/drafts");
117
102
  });
118
103
  }
119
104
  /**
@@ -175,21 +160,7 @@ export class DraftsClient {
175
160
  });
176
161
  }
177
162
  }
178
- switch (_response.error.reason) {
179
- case "non-json":
180
- throw new errors.AgentMailError({
181
- statusCode: _response.error.statusCode,
182
- body: _response.error.rawBody,
183
- rawResponse: _response.rawResponse,
184
- });
185
- case "timeout":
186
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/pods/{pod_id}/drafts/{draft_id}.");
187
- case "unknown":
188
- throw new errors.AgentMailError({
189
- message: _response.error.errorMessage,
190
- rawResponse: _response.rawResponse,
191
- });
192
- }
163
+ return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v0/pods/{pod_id}/drafts/{draft_id}");
193
164
  });
194
165
  }
195
166
  }
@@ -3,8 +3,7 @@ import { type NormalizedClientOptionsWithAuth } from "../../../../../../BaseClie
3
3
  import * as core from "../../../../../../core/index.mjs";
4
4
  import * as AgentMail from "../../../../../index.mjs";
5
5
  export declare namespace InboxesClient {
6
- interface Options extends BaseClientOptions {
7
- }
6
+ type Options = BaseClientOptions;
8
7
  interface RequestOptions extends BaseRequestOptions {
9
8
  }
10
9
  }
@@ -12,6 +12,7 @@ import { normalizeClientOptionsWithAuth } from "../../../../../../BaseClient.mjs
12
12
  import { mergeHeaders } from "../../../../../../core/headers.mjs";
13
13
  import * as core from "../../../../../../core/index.mjs";
14
14
  import * as environments from "../../../../../../environments.mjs";
15
+ import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError.mjs";
15
16
  import * as errors from "../../../../../../errors/index.mjs";
16
17
  import * as serializers from "../../../../../../serialization/index.mjs";
17
18
  import * as AgentMail from "../../../../../index.mjs";
@@ -36,13 +37,10 @@ export class InboxesClient {
36
37
  return __awaiter(this, arguments, void 0, function* (pod_id, request = {}, requestOptions) {
37
38
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
38
39
  const { limit, pageToken } = request;
39
- const _queryParams = {};
40
- if (limit != null) {
41
- _queryParams.limit = limit.toString();
42
- }
43
- if (pageToken != null) {
44
- _queryParams.page_token = pageToken;
45
- }
40
+ const _queryParams = {
41
+ limit,
42
+ page_token: pageToken,
43
+ };
46
44
  const _authRequest = yield this._options.authProvider.getAuthRequest();
47
45
  const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
48
46
  const _response = yield core.fetcher({
@@ -86,21 +84,7 @@ export class InboxesClient {
86
84
  });
87
85
  }
88
86
  }
89
- switch (_response.error.reason) {
90
- case "non-json":
91
- throw new errors.AgentMailError({
92
- statusCode: _response.error.statusCode,
93
- body: _response.error.rawBody,
94
- rawResponse: _response.rawResponse,
95
- });
96
- case "timeout":
97
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/pods/{pod_id}/inboxes.");
98
- case "unknown":
99
- throw new errors.AgentMailError({
100
- message: _response.error.errorMessage,
101
- rawResponse: _response.rawResponse,
102
- });
103
- }
87
+ return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v0/pods/{pod_id}/inboxes");
104
88
  });
105
89
  }
106
90
  /**
@@ -162,21 +146,7 @@ export class InboxesClient {
162
146
  });
163
147
  }
164
148
  }
165
- switch (_response.error.reason) {
166
- case "non-json":
167
- throw new errors.AgentMailError({
168
- statusCode: _response.error.statusCode,
169
- body: _response.error.rawBody,
170
- rawResponse: _response.rawResponse,
171
- });
172
- case "timeout":
173
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/pods/{pod_id}/inboxes/{inbox_id}.");
174
- case "unknown":
175
- throw new errors.AgentMailError({
176
- message: _response.error.errorMessage,
177
- rawResponse: _response.rawResponse,
178
- });
179
- }
149
+ return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v0/pods/{pod_id}/inboxes/{inbox_id}");
180
150
  });
181
151
  }
182
152
  /**
@@ -244,21 +214,7 @@ export class InboxesClient {
244
214
  });
245
215
  }
246
216
  }
247
- switch (_response.error.reason) {
248
- case "non-json":
249
- throw new errors.AgentMailError({
250
- statusCode: _response.error.statusCode,
251
- body: _response.error.rawBody,
252
- rawResponse: _response.rawResponse,
253
- });
254
- case "timeout":
255
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling POST /v0/pods/{pod_id}/inboxes.");
256
- case "unknown":
257
- throw new errors.AgentMailError({
258
- message: _response.error.errorMessage,
259
- rawResponse: _response.rawResponse,
260
- });
261
- }
217
+ return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v0/pods/{pod_id}/inboxes");
262
218
  });
263
219
  }
264
220
  /**
@@ -311,21 +267,7 @@ export class InboxesClient {
311
267
  });
312
268
  }
313
269
  }
314
- switch (_response.error.reason) {
315
- case "non-json":
316
- throw new errors.AgentMailError({
317
- statusCode: _response.error.statusCode,
318
- body: _response.error.rawBody,
319
- rawResponse: _response.rawResponse,
320
- });
321
- case "timeout":
322
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling DELETE /v0/pods/{pod_id}/inboxes/{inbox_id}.");
323
- case "unknown":
324
- throw new errors.AgentMailError({
325
- message: _response.error.errorMessage,
326
- rawResponse: _response.rawResponse,
327
- });
328
- }
270
+ return handleNonStatusCodeError(_response.error, _response.rawResponse, "DELETE", "/v0/pods/{pod_id}/inboxes/{inbox_id}");
329
271
  });
330
272
  }
331
273
  }
@@ -3,8 +3,7 @@ import { type NormalizedClientOptionsWithAuth } from "../../../../../../BaseClie
3
3
  import * as core from "../../../../../../core/index.mjs";
4
4
  import * as AgentMail from "../../../../../index.mjs";
5
5
  export declare namespace ThreadsClient {
6
- interface Options extends BaseClientOptions {
7
- }
6
+ type Options = BaseClientOptions;
8
7
  interface RequestOptions extends BaseRequestOptions {
9
8
  }
10
9
  }
@@ -36,8 +35,16 @@ export declare class ThreadsClient {
36
35
  get(pod_id: AgentMail.pods.PodId, thread_id: AgentMail.ThreadId, requestOptions?: ThreadsClient.RequestOptions): core.HttpResponsePromise<AgentMail.Thread>;
37
36
  private __get;
38
37
  /**
38
+ * @param {AgentMail.pods.PodId} pod_id
39
+ * @param {AgentMail.ThreadId} thread_id
40
+ * @param {AgentMail.AttachmentId} attachment_id
41
+ * @param {ThreadsClient.RequestOptions} requestOptions - Request-specific configuration.
42
+ *
39
43
  * @throws {@link AgentMail.NotFoundError}
44
+ *
45
+ * @example
46
+ * await client.pods.threads.getAttachment("pod_id", "thread_id", "attachment_id")
40
47
  */
41
- getAttachment(pod_id: AgentMail.pods.PodId, thread_id: AgentMail.ThreadId, attachment_id: AgentMail.AttachmentId, requestOptions?: ThreadsClient.RequestOptions): core.HttpResponsePromise<core.BinaryResponse>;
48
+ getAttachment(pod_id: AgentMail.pods.PodId, thread_id: AgentMail.ThreadId, attachment_id: AgentMail.AttachmentId, requestOptions?: ThreadsClient.RequestOptions): core.HttpResponsePromise<AgentMail.AttachmentResponse>;
42
49
  private __getAttachment;
43
50
  }
@@ -13,6 +13,7 @@ import { mergeHeaders } from "../../../../../../core/headers.mjs";
13
13
  import * as core from "../../../../../../core/index.mjs";
14
14
  import { toJson } from "../../../../../../core/json.mjs";
15
15
  import * as environments from "../../../../../../environments.mjs";
16
+ import { handleNonStatusCodeError } from "../../../../../../errors/handleNonStatusCodeError.mjs";
16
17
  import * as errors from "../../../../../../errors/index.mjs";
17
18
  import * as serializers from "../../../../../../serialization/index.mjs";
18
19
  import * as AgentMail from "../../../../../index.mjs";
@@ -37,28 +38,24 @@ export class ThreadsClient {
37
38
  return __awaiter(this, arguments, void 0, function* (pod_id, request = {}, requestOptions) {
38
39
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
39
40
  const { limit, pageToken, labels, before, after, ascending, includeSpam } = request;
40
- const _queryParams = {};
41
- if (limit != null) {
42
- _queryParams.limit = limit.toString();
43
- }
44
- if (pageToken != null) {
45
- _queryParams.page_token = pageToken;
46
- }
47
- if (labels != null) {
48
- _queryParams.labels = toJson(serializers.Labels.jsonOrThrow(labels, { unrecognizedObjectKeys: "strip", omitUndefined: true }));
49
- }
50
- if (before != null) {
51
- _queryParams.before = before.toISOString();
52
- }
53
- if (after != null) {
54
- _queryParams.after = after.toISOString();
55
- }
56
- if (ascending != null) {
57
- _queryParams.ascending = ascending.toString();
58
- }
59
- if (includeSpam != null) {
60
- _queryParams.include_spam = includeSpam.toString();
61
- }
41
+ const _queryParams = {
42
+ limit,
43
+ page_token: pageToken,
44
+ labels: labels != null
45
+ ? toJson(serializers.Labels.jsonOrThrow(labels, {
46
+ unrecognizedObjectKeys: "strip",
47
+ omitUndefined: true,
48
+ }))
49
+ : undefined,
50
+ before: before != null
51
+ ? serializers.Before.jsonOrThrow(before, { unrecognizedObjectKeys: "strip", omitUndefined: true })
52
+ : undefined,
53
+ after: after != null
54
+ ? serializers.After.jsonOrThrow(after, { unrecognizedObjectKeys: "strip", omitUndefined: true })
55
+ : undefined,
56
+ ascending,
57
+ include_spam: includeSpam,
58
+ };
62
59
  const _authRequest = yield this._options.authProvider.getAuthRequest();
63
60
  const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
64
61
  const _response = yield core.fetcher({
@@ -102,21 +99,7 @@ export class ThreadsClient {
102
99
  });
103
100
  }
104
101
  }
105
- switch (_response.error.reason) {
106
- case "non-json":
107
- throw new errors.AgentMailError({
108
- statusCode: _response.error.statusCode,
109
- body: _response.error.rawBody,
110
- rawResponse: _response.rawResponse,
111
- });
112
- case "timeout":
113
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/pods/{pod_id}/threads.");
114
- case "unknown":
115
- throw new errors.AgentMailError({
116
- message: _response.error.errorMessage,
117
- rawResponse: _response.rawResponse,
118
- });
119
- }
102
+ return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v0/pods/{pod_id}/threads");
120
103
  });
121
104
  }
122
105
  /**
@@ -178,25 +161,19 @@ export class ThreadsClient {
178
161
  });
179
162
  }
180
163
  }
181
- switch (_response.error.reason) {
182
- case "non-json":
183
- throw new errors.AgentMailError({
184
- statusCode: _response.error.statusCode,
185
- body: _response.error.rawBody,
186
- rawResponse: _response.rawResponse,
187
- });
188
- case "timeout":
189
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/pods/{pod_id}/threads/{thread_id}.");
190
- case "unknown":
191
- throw new errors.AgentMailError({
192
- message: _response.error.errorMessage,
193
- rawResponse: _response.rawResponse,
194
- });
195
- }
164
+ return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v0/pods/{pod_id}/threads/{thread_id}");
196
165
  });
197
166
  }
198
167
  /**
168
+ * @param {AgentMail.pods.PodId} pod_id
169
+ * @param {AgentMail.ThreadId} thread_id
170
+ * @param {AgentMail.AttachmentId} attachment_id
171
+ * @param {ThreadsClient.RequestOptions} requestOptions - Request-specific configuration.
172
+ *
199
173
  * @throws {@link AgentMail.NotFoundError}
174
+ *
175
+ * @example
176
+ * await client.pods.threads.getAttachment("pod_id", "thread_id", "attachment_id")
200
177
  */
201
178
  getAttachment(pod_id, thread_id, attachment_id, requestOptions) {
202
179
  return core.HttpResponsePromise.fromPromise(this.__getAttachment(pod_id, thread_id, attachment_id, requestOptions));
@@ -211,7 +188,6 @@ export class ThreadsClient {
211
188
  method: "GET",
212
189
  headers: _headers,
213
190
  queryParameters: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams,
214
- responseType: "binary-response",
215
191
  timeoutMs: ((_f = (_d = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) !== null && _d !== void 0 ? _d : (_e = this._options) === null || _e === void 0 ? void 0 : _e.timeoutInSeconds) !== null && _f !== void 0 ? _f : 60) * 1000,
216
192
  maxRetries: (_g = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries) !== null && _g !== void 0 ? _g : (_h = this._options) === null || _h === void 0 ? void 0 : _h.maxRetries,
217
193
  abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
@@ -219,7 +195,16 @@ export class ThreadsClient {
219
195
  logging: this._options.logging,
220
196
  });
221
197
  if (_response.ok) {
222
- return { data: _response.body, rawResponse: _response.rawResponse };
198
+ return {
199
+ data: serializers.AttachmentResponse.parseOrThrow(_response.body, {
200
+ unrecognizedObjectKeys: "passthrough",
201
+ allowUnrecognizedUnionMembers: true,
202
+ allowUnrecognizedEnumValues: true,
203
+ skipValidation: true,
204
+ breadcrumbsPrefix: ["response"],
205
+ }),
206
+ rawResponse: _response.rawResponse,
207
+ };
223
208
  }
224
209
  if (_response.error.reason === "status-code") {
225
210
  switch (_response.error.statusCode) {
@@ -239,21 +224,7 @@ export class ThreadsClient {
239
224
  });
240
225
  }
241
226
  }
242
- switch (_response.error.reason) {
243
- case "non-json":
244
- throw new errors.AgentMailError({
245
- statusCode: _response.error.statusCode,
246
- body: _response.error.rawBody,
247
- rawResponse: _response.rawResponse,
248
- });
249
- case "timeout":
250
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/pods/{pod_id}/threads/{thread_id}/attachments/{attachment_id}.");
251
- case "unknown":
252
- throw new errors.AgentMailError({
253
- message: _response.error.errorMessage,
254
- rawResponse: _response.rawResponse,
255
- });
256
- }
227
+ return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v0/pods/{pod_id}/threads/{thread_id}/attachments/{attachment_id}");
257
228
  });
258
229
  }
259
230
  }
@@ -3,8 +3,7 @@ import { type NormalizedClientOptionsWithAuth } from "../../../../BaseClient.mjs
3
3
  import * as core from "../../../../core/index.mjs";
4
4
  import * as AgentMail from "../../../index.mjs";
5
5
  export declare namespace ThreadsClient {
6
- interface Options extends BaseClientOptions {
7
- }
6
+ type Options = BaseClientOptions;
8
7
  interface RequestOptions extends BaseRequestOptions {
9
8
  }
10
9
  }
@@ -34,8 +33,15 @@ export declare class ThreadsClient {
34
33
  get(thread_id: AgentMail.ThreadId, requestOptions?: ThreadsClient.RequestOptions): core.HttpResponsePromise<AgentMail.Thread>;
35
34
  private __get;
36
35
  /**
36
+ * @param {AgentMail.ThreadId} thread_id
37
+ * @param {AgentMail.AttachmentId} attachment_id
38
+ * @param {ThreadsClient.RequestOptions} requestOptions - Request-specific configuration.
39
+ *
37
40
  * @throws {@link AgentMail.NotFoundError}
41
+ *
42
+ * @example
43
+ * await client.threads.getAttachment("thread_id", "attachment_id")
38
44
  */
39
- getAttachment(thread_id: AgentMail.ThreadId, attachment_id: AgentMail.AttachmentId, requestOptions?: ThreadsClient.RequestOptions): core.HttpResponsePromise<core.BinaryResponse>;
45
+ getAttachment(thread_id: AgentMail.ThreadId, attachment_id: AgentMail.AttachmentId, requestOptions?: ThreadsClient.RequestOptions): core.HttpResponsePromise<AgentMail.AttachmentResponse>;
40
46
  private __getAttachment;
41
47
  }
@@ -13,6 +13,7 @@ import { mergeHeaders } from "../../../../core/headers.mjs";
13
13
  import * as core from "../../../../core/index.mjs";
14
14
  import { toJson } from "../../../../core/json.mjs";
15
15
  import * as environments from "../../../../environments.mjs";
16
+ import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError.mjs";
16
17
  import * as errors from "../../../../errors/index.mjs";
17
18
  import * as serializers from "../../../../serialization/index.mjs";
18
19
  import * as AgentMail from "../../../index.mjs";
@@ -36,28 +37,24 @@ export class ThreadsClient {
36
37
  return __awaiter(this, arguments, void 0, function* (request = {}, requestOptions) {
37
38
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
38
39
  const { limit, pageToken, labels, before, after, ascending, includeSpam } = request;
39
- const _queryParams = {};
40
- if (limit != null) {
41
- _queryParams.limit = limit.toString();
42
- }
43
- if (pageToken != null) {
44
- _queryParams.page_token = pageToken;
45
- }
46
- if (labels != null) {
47
- _queryParams.labels = toJson(serializers.Labels.jsonOrThrow(labels, { unrecognizedObjectKeys: "strip", omitUndefined: true }));
48
- }
49
- if (before != null) {
50
- _queryParams.before = before.toISOString();
51
- }
52
- if (after != null) {
53
- _queryParams.after = after.toISOString();
54
- }
55
- if (ascending != null) {
56
- _queryParams.ascending = ascending.toString();
57
- }
58
- if (includeSpam != null) {
59
- _queryParams.include_spam = includeSpam.toString();
60
- }
40
+ const _queryParams = {
41
+ limit,
42
+ page_token: pageToken,
43
+ labels: labels != null
44
+ ? toJson(serializers.Labels.jsonOrThrow(labels, {
45
+ unrecognizedObjectKeys: "strip",
46
+ omitUndefined: true,
47
+ }))
48
+ : undefined,
49
+ before: before != null
50
+ ? serializers.Before.jsonOrThrow(before, { unrecognizedObjectKeys: "strip", omitUndefined: true })
51
+ : undefined,
52
+ after: after != null
53
+ ? serializers.After.jsonOrThrow(after, { unrecognizedObjectKeys: "strip", omitUndefined: true })
54
+ : undefined,
55
+ ascending,
56
+ include_spam: includeSpam,
57
+ };
61
58
  const _authRequest = yield this._options.authProvider.getAuthRequest();
62
59
  const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
63
60
  const _response = yield core.fetcher({
@@ -101,21 +98,7 @@ export class ThreadsClient {
101
98
  });
102
99
  }
103
100
  }
104
- switch (_response.error.reason) {
105
- case "non-json":
106
- throw new errors.AgentMailError({
107
- statusCode: _response.error.statusCode,
108
- body: _response.error.rawBody,
109
- rawResponse: _response.rawResponse,
110
- });
111
- case "timeout":
112
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/threads.");
113
- case "unknown":
114
- throw new errors.AgentMailError({
115
- message: _response.error.errorMessage,
116
- rawResponse: _response.rawResponse,
117
- });
118
- }
101
+ return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v0/threads");
119
102
  });
120
103
  }
121
104
  /**
@@ -176,25 +159,18 @@ export class ThreadsClient {
176
159
  });
177
160
  }
178
161
  }
179
- switch (_response.error.reason) {
180
- case "non-json":
181
- throw new errors.AgentMailError({
182
- statusCode: _response.error.statusCode,
183
- body: _response.error.rawBody,
184
- rawResponse: _response.rawResponse,
185
- });
186
- case "timeout":
187
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/threads/{thread_id}.");
188
- case "unknown":
189
- throw new errors.AgentMailError({
190
- message: _response.error.errorMessage,
191
- rawResponse: _response.rawResponse,
192
- });
193
- }
162
+ return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v0/threads/{thread_id}");
194
163
  });
195
164
  }
196
165
  /**
166
+ * @param {AgentMail.ThreadId} thread_id
167
+ * @param {AgentMail.AttachmentId} attachment_id
168
+ * @param {ThreadsClient.RequestOptions} requestOptions - Request-specific configuration.
169
+ *
197
170
  * @throws {@link AgentMail.NotFoundError}
171
+ *
172
+ * @example
173
+ * await client.threads.getAttachment("thread_id", "attachment_id")
198
174
  */
199
175
  getAttachment(thread_id, attachment_id, requestOptions) {
200
176
  return core.HttpResponsePromise.fromPromise(this.__getAttachment(thread_id, attachment_id, requestOptions));
@@ -209,7 +185,6 @@ export class ThreadsClient {
209
185
  method: "GET",
210
186
  headers: _headers,
211
187
  queryParameters: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams,
212
- responseType: "binary-response",
213
188
  timeoutMs: ((_f = (_d = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) !== null && _d !== void 0 ? _d : (_e = this._options) === null || _e === void 0 ? void 0 : _e.timeoutInSeconds) !== null && _f !== void 0 ? _f : 60) * 1000,
214
189
  maxRetries: (_g = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries) !== null && _g !== void 0 ? _g : (_h = this._options) === null || _h === void 0 ? void 0 : _h.maxRetries,
215
190
  abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
@@ -217,7 +192,16 @@ export class ThreadsClient {
217
192
  logging: this._options.logging,
218
193
  });
219
194
  if (_response.ok) {
220
- return { data: _response.body, rawResponse: _response.rawResponse };
195
+ return {
196
+ data: serializers.AttachmentResponse.parseOrThrow(_response.body, {
197
+ unrecognizedObjectKeys: "passthrough",
198
+ allowUnrecognizedUnionMembers: true,
199
+ allowUnrecognizedEnumValues: true,
200
+ skipValidation: true,
201
+ breadcrumbsPrefix: ["response"],
202
+ }),
203
+ rawResponse: _response.rawResponse,
204
+ };
221
205
  }
222
206
  if (_response.error.reason === "status-code") {
223
207
  switch (_response.error.statusCode) {
@@ -237,21 +221,7 @@ export class ThreadsClient {
237
221
  });
238
222
  }
239
223
  }
240
- switch (_response.error.reason) {
241
- case "non-json":
242
- throw new errors.AgentMailError({
243
- statusCode: _response.error.statusCode,
244
- body: _response.error.rawBody,
245
- rawResponse: _response.rawResponse,
246
- });
247
- case "timeout":
248
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/threads/{thread_id}/attachments/{attachment_id}.");
249
- case "unknown":
250
- throw new errors.AgentMailError({
251
- message: _response.error.errorMessage,
252
- rawResponse: _response.rawResponse,
253
- });
254
- }
224
+ return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v0/threads/{thread_id}/attachments/{attachment_id}");
255
225
  });
256
226
  }
257
227
  }
@@ -3,8 +3,7 @@ import { type NormalizedClientOptionsWithAuth } from "../../../../BaseClient.mjs
3
3
  import * as core from "../../../../core/index.mjs";
4
4
  import * as AgentMail from "../../../index.mjs";
5
5
  export declare namespace WebhooksClient {
6
- interface Options extends BaseClientOptions {
7
- }
6
+ type Options = BaseClientOptions;
8
7
  interface RequestOptions extends BaseRequestOptions {
9
8
  }
10
9
  }