agentmail 0.5.11 → 0.5.12

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 (104) hide show
  1. package/dist/cjs/BaseClient.js +2 -2
  2. package/dist/cjs/api/resources/inboxes/resources/metrics/client/Client.d.ts +30 -4
  3. package/dist/cjs/api/resources/inboxes/resources/metrics/client/Client.js +102 -7
  4. package/dist/cjs/api/resources/inboxes/resources/metrics/client/requests/{QueryMetricsRequest.d.ts → QueryEventsRequest.d.ts} +1 -1
  5. package/dist/cjs/api/resources/inboxes/resources/metrics/client/requests/QueryUsageRequest.d.ts +13 -0
  6. package/dist/cjs/api/resources/inboxes/resources/metrics/client/requests/index.d.ts +2 -1
  7. package/dist/cjs/api/resources/metrics/client/Client.d.ts +27 -4
  8. package/dist/cjs/api/resources/metrics/client/Client.js +99 -7
  9. package/dist/cjs/api/resources/metrics/client/requests/{QueryMetricsRequest.d.ts → QueryEventsRequest.d.ts} +1 -1
  10. package/dist/cjs/api/resources/metrics/client/requests/QueryUsageRequest.d.ts +13 -0
  11. package/dist/cjs/api/resources/metrics/client/requests/QueryUsageRequest.js +3 -0
  12. package/dist/cjs/api/resources/metrics/client/requests/index.d.ts +2 -1
  13. package/dist/cjs/api/resources/metrics/types/MetricEventType.d.ts +6 -3
  14. package/dist/cjs/api/resources/metrics/types/MetricEventType.js +6 -3
  15. package/dist/cjs/api/resources/metrics/types/Period.d.ts +2 -2
  16. package/dist/cjs/api/resources/metrics/types/QueryUsageResponse.d.ts +5 -0
  17. package/dist/cjs/api/resources/metrics/types/QueryUsageResponse.js +3 -0
  18. package/dist/cjs/api/resources/metrics/types/UsagePoint.d.ts +6 -0
  19. package/dist/cjs/api/resources/metrics/types/UsagePoint.js +3 -0
  20. package/dist/cjs/api/resources/metrics/types/UsageType.d.ts +14 -0
  21. package/dist/cjs/api/resources/metrics/types/UsageType.js +17 -0
  22. package/dist/cjs/api/resources/metrics/types/UsageTypes.d.ts +5 -0
  23. package/dist/cjs/api/resources/metrics/types/UsageTypes.js +3 -0
  24. package/dist/cjs/api/resources/metrics/types/index.d.ts +4 -0
  25. package/dist/cjs/api/resources/metrics/types/index.js +4 -0
  26. package/dist/cjs/api/resources/pods/resources/metrics/client/Client.d.ts +30 -4
  27. package/dist/cjs/api/resources/pods/resources/metrics/client/Client.js +102 -7
  28. package/dist/cjs/api/resources/pods/resources/metrics/client/requests/{QueryMetricsRequest.d.ts → QueryEventsRequest.d.ts} +1 -1
  29. package/dist/cjs/api/resources/pods/resources/metrics/client/requests/QueryEventsRequest.js +3 -0
  30. package/dist/cjs/api/resources/pods/resources/metrics/client/requests/QueryUsageRequest.d.ts +13 -0
  31. package/dist/cjs/api/resources/pods/resources/metrics/client/requests/QueryUsageRequest.js +3 -0
  32. package/dist/cjs/api/resources/pods/resources/metrics/client/requests/index.d.ts +2 -1
  33. package/dist/cjs/serialization/resources/metrics/types/MetricEventType.d.ts +1 -1
  34. package/dist/cjs/serialization/resources/metrics/types/MetricEventType.js +6 -3
  35. package/dist/cjs/serialization/resources/metrics/types/Period.d.ts +1 -1
  36. package/dist/cjs/serialization/resources/metrics/types/Period.js +1 -1
  37. package/dist/cjs/serialization/resources/metrics/types/QueryUsageResponse.d.ts +9 -0
  38. package/dist/cjs/serialization/resources/metrics/types/QueryUsageResponse.js +41 -0
  39. package/dist/cjs/serialization/resources/metrics/types/UsagePoint.d.ts +10 -0
  40. package/dist/cjs/serialization/resources/metrics/types/UsagePoint.js +42 -0
  41. package/dist/cjs/serialization/resources/metrics/types/UsageType.d.ts +7 -0
  42. package/dist/cjs/serialization/resources/metrics/types/UsageType.js +46 -0
  43. package/dist/cjs/serialization/resources/metrics/types/UsageTypes.d.ts +8 -0
  44. package/dist/cjs/serialization/resources/metrics/types/UsageTypes.js +40 -0
  45. package/dist/cjs/serialization/resources/metrics/types/index.d.ts +4 -0
  46. package/dist/cjs/serialization/resources/metrics/types/index.js +4 -0
  47. package/dist/cjs/version.d.ts +1 -1
  48. package/dist/cjs/version.js +1 -1
  49. package/dist/esm/BaseClient.mjs +2 -2
  50. package/dist/esm/api/resources/inboxes/resources/metrics/client/Client.d.mts +30 -4
  51. package/dist/esm/api/resources/inboxes/resources/metrics/client/Client.mjs +102 -7
  52. package/dist/esm/api/resources/{pods/resources/metrics/client/requests/QueryMetricsRequest.d.mts → inboxes/resources/metrics/client/requests/QueryEventsRequest.d.mts} +1 -1
  53. package/dist/esm/api/resources/inboxes/resources/metrics/client/requests/QueryUsageRequest.d.mts +13 -0
  54. package/dist/esm/api/resources/inboxes/resources/metrics/client/requests/index.d.mts +2 -1
  55. package/dist/esm/api/resources/metrics/client/Client.d.mts +27 -4
  56. package/dist/esm/api/resources/metrics/client/Client.mjs +99 -7
  57. package/dist/esm/api/resources/metrics/client/requests/{QueryMetricsRequest.d.mts → QueryEventsRequest.d.mts} +1 -1
  58. package/dist/esm/api/resources/metrics/client/requests/QueryUsageRequest.d.mts +13 -0
  59. package/dist/esm/api/resources/metrics/client/requests/QueryUsageRequest.mjs +2 -0
  60. package/dist/esm/api/resources/metrics/client/requests/index.d.mts +2 -1
  61. package/dist/esm/api/resources/metrics/types/MetricEventType.d.mts +6 -3
  62. package/dist/esm/api/resources/metrics/types/MetricEventType.mjs +6 -3
  63. package/dist/esm/api/resources/metrics/types/Period.d.mts +2 -2
  64. package/dist/esm/api/resources/metrics/types/QueryUsageResponse.d.mts +5 -0
  65. package/dist/esm/api/resources/metrics/types/QueryUsageResponse.mjs +2 -0
  66. package/dist/esm/api/resources/metrics/types/UsagePoint.d.mts +6 -0
  67. package/dist/esm/api/resources/metrics/types/UsagePoint.mjs +2 -0
  68. package/dist/esm/api/resources/metrics/types/UsageType.d.mts +14 -0
  69. package/dist/esm/api/resources/metrics/types/UsageType.mjs +14 -0
  70. package/dist/esm/api/resources/metrics/types/UsageTypes.d.mts +5 -0
  71. package/dist/esm/api/resources/metrics/types/UsageTypes.mjs +2 -0
  72. package/dist/esm/api/resources/metrics/types/index.d.mts +4 -0
  73. package/dist/esm/api/resources/metrics/types/index.mjs +4 -0
  74. package/dist/esm/api/resources/pods/resources/metrics/client/Client.d.mts +30 -4
  75. package/dist/esm/api/resources/pods/resources/metrics/client/Client.mjs +102 -7
  76. package/dist/esm/api/resources/{inboxes/resources/metrics/client/requests/QueryMetricsRequest.d.mts → pods/resources/metrics/client/requests/QueryEventsRequest.d.mts} +1 -1
  77. package/dist/esm/api/resources/pods/resources/metrics/client/requests/QueryEventsRequest.mjs +2 -0
  78. package/dist/esm/api/resources/pods/resources/metrics/client/requests/QueryUsageRequest.d.mts +13 -0
  79. package/dist/esm/api/resources/pods/resources/metrics/client/requests/QueryUsageRequest.mjs +2 -0
  80. package/dist/esm/api/resources/pods/resources/metrics/client/requests/index.d.mts +2 -1
  81. package/dist/esm/serialization/resources/metrics/types/MetricEventType.d.mts +1 -1
  82. package/dist/esm/serialization/resources/metrics/types/MetricEventType.mjs +6 -3
  83. package/dist/esm/serialization/resources/metrics/types/Period.d.mts +1 -1
  84. package/dist/esm/serialization/resources/metrics/types/Period.mjs +1 -1
  85. package/dist/esm/serialization/resources/metrics/types/QueryUsageResponse.d.mts +9 -0
  86. package/dist/esm/serialization/resources/metrics/types/QueryUsageResponse.mjs +5 -0
  87. package/dist/esm/serialization/resources/metrics/types/UsagePoint.d.mts +10 -0
  88. package/dist/esm/serialization/resources/metrics/types/UsagePoint.mjs +6 -0
  89. package/dist/esm/serialization/resources/metrics/types/UsageType.d.mts +7 -0
  90. package/dist/esm/serialization/resources/metrics/types/UsageType.mjs +10 -0
  91. package/dist/esm/serialization/resources/metrics/types/UsageTypes.d.mts +8 -0
  92. package/dist/esm/serialization/resources/metrics/types/UsageTypes.mjs +4 -0
  93. package/dist/esm/serialization/resources/metrics/types/index.d.mts +4 -0
  94. package/dist/esm/serialization/resources/metrics/types/index.mjs +4 -0
  95. package/dist/esm/version.d.mts +1 -1
  96. package/dist/esm/version.mjs +1 -1
  97. package/package.json +1 -1
  98. package/reference.md +248 -9
  99. /package/dist/cjs/api/resources/inboxes/resources/metrics/client/requests/{QueryMetricsRequest.js → QueryEventsRequest.js} +0 -0
  100. /package/dist/cjs/api/resources/{metrics/client/requests/QueryMetricsRequest.js → inboxes/resources/metrics/client/requests/QueryUsageRequest.js} +0 -0
  101. /package/dist/cjs/api/resources/{pods/resources/metrics/client/requests/QueryMetricsRequest.js → metrics/client/requests/QueryEventsRequest.js} +0 -0
  102. /package/dist/esm/api/resources/inboxes/resources/metrics/client/requests/{QueryMetricsRequest.mjs → QueryEventsRequest.mjs} +0 -0
  103. /package/dist/esm/api/resources/{metrics/client/requests/QueryMetricsRequest.mjs → inboxes/resources/metrics/client/requests/QueryUsageRequest.mjs} +0 -0
  104. /package/dist/esm/api/resources/{pods/resources/metrics/client/requests/QueryMetricsRequest.mjs → metrics/client/requests/QueryEventsRequest.mjs} +0 -0
@@ -11,20 +11,46 @@ export declare class MetricsClient {
11
11
  protected readonly _options: NormalizedClientOptionsWithAuth<MetricsClient.Options>;
12
12
  constructor(options?: MetricsClient.Options);
13
13
  /**
14
+ * Counts of email events (sent, delivered, bounced, etc.) over time for
15
+ * the pod. Defaults to the last 24 hours; `start` must be within the last
16
+ * 90 days, and a future `end` is clamped to now. Omit `period` for
17
+ * individual event counts, or set it to sum counts into buckets of that
18
+ * many seconds.
19
+ *
14
20
  * **CLI:**
15
21
  * ```bash
16
22
  * agentmail pods:metrics query --pod-id <pod_id>
17
23
  * ```
18
24
  *
19
25
  * @param {AgentMail.pods.PodId} pod_id
20
- * @param {AgentMail.pods.QueryMetricsRequest} request
26
+ * @param {AgentMail.pods.QueryEventsRequest} request
27
+ * @param {MetricsClient.RequestOptions} requestOptions - Request-specific configuration.
28
+ *
29
+ * @throws {@link AgentMail.ValidationError}
30
+ *
31
+ * @example
32
+ * await client.pods.metrics.queryEvents("pod_id")
33
+ */
34
+ queryEvents(pod_id: AgentMail.pods.PodId, request?: AgentMail.pods.QueryEventsRequest, requestOptions?: MetricsClient.RequestOptions): core.HttpResponsePromise<AgentMail.QueryMetricsResponse>;
35
+ private __queryEvents;
36
+ /**
37
+ * Cumulative usage series for the pod. Each point is the running total of
38
+ * the usage type at that timestamp, not the change within the bucket.
39
+ * Pod-scoped queries carry every usage type except `pod_count`; requested
40
+ * types that don't apply to the scope are ignored. Defaults to the last
41
+ * 24 hours; `start` must be within the last 90 days, and a future `end`
42
+ * is clamped to now. The range divided by `period` must not exceed 1000
43
+ * buckets.
44
+ *
45
+ * @param {AgentMail.pods.PodId} pod_id
46
+ * @param {AgentMail.pods.QueryUsageRequest} request
21
47
  * @param {MetricsClient.RequestOptions} requestOptions - Request-specific configuration.
22
48
  *
23
49
  * @throws {@link AgentMail.ValidationError}
24
50
  *
25
51
  * @example
26
- * await client.pods.metrics.query("pod_id")
52
+ * await client.pods.metrics.queryUsage("pod_id")
27
53
  */
28
- query(pod_id: AgentMail.pods.PodId, request?: AgentMail.pods.QueryMetricsRequest, requestOptions?: MetricsClient.RequestOptions): core.HttpResponsePromise<AgentMail.QueryMetricsResponse>;
29
- private __query;
54
+ queryUsage(pod_id: AgentMail.pods.PodId, request?: AgentMail.pods.QueryUsageRequest, requestOptions?: MetricsClient.RequestOptions): core.HttpResponsePromise<AgentMail.QueryUsageResponse>;
55
+ private __queryUsage;
30
56
  }
@@ -58,24 +58,30 @@ class MetricsClient {
58
58
  this._options = (0, BaseClient_js_1.normalizeClientOptionsWithAuth)(options);
59
59
  }
60
60
  /**
61
+ * Counts of email events (sent, delivered, bounced, etc.) over time for
62
+ * the pod. Defaults to the last 24 hours; `start` must be within the last
63
+ * 90 days, and a future `end` is clamped to now. Omit `period` for
64
+ * individual event counts, or set it to sum counts into buckets of that
65
+ * many seconds.
66
+ *
61
67
  * **CLI:**
62
68
  * ```bash
63
69
  * agentmail pods:metrics query --pod-id <pod_id>
64
70
  * ```
65
71
  *
66
72
  * @param {AgentMail.pods.PodId} pod_id
67
- * @param {AgentMail.pods.QueryMetricsRequest} request
73
+ * @param {AgentMail.pods.QueryEventsRequest} request
68
74
  * @param {MetricsClient.RequestOptions} requestOptions - Request-specific configuration.
69
75
  *
70
76
  * @throws {@link AgentMail.ValidationError}
71
77
  *
72
78
  * @example
73
- * await client.pods.metrics.query("pod_id")
79
+ * await client.pods.metrics.queryEvents("pod_id")
74
80
  */
75
- query(pod_id, request = {}, requestOptions) {
76
- return core.HttpResponsePromise.fromPromise(this.__query(pod_id, request, requestOptions));
81
+ queryEvents(pod_id, request = {}, requestOptions) {
82
+ return core.HttpResponsePromise.fromPromise(this.__queryEvents(pod_id, request, requestOptions));
77
83
  }
78
- __query(pod_id_1) {
84
+ __queryEvents(pod_id_1) {
79
85
  return __awaiter(this, arguments, void 0, function* (pod_id, request = {}, requestOptions) {
80
86
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
81
87
  const { eventTypes, start, end, period, limit, descending } = request;
@@ -100,7 +106,7 @@ class MetricsClient {
100
106
  const _headers = (0, headers_js_1.mergeHeaders)(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
101
107
  const _response = yield core.fetcher({
102
108
  url: core.url.join((_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : ((_c = (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.AgentMailEnvironment.Prod)
103
- .http, `/v0/pods/${core.url.encodePathParam(serializers.pods.PodId.jsonOrThrow(pod_id, { omitUndefined: true }))}/metrics`),
109
+ .http, `/v0/pods/${core.url.encodePathParam(serializers.pods.PodId.jsonOrThrow(pod_id, { omitUndefined: true }))}/metrics/events`),
104
110
  method: "GET",
105
111
  headers: _headers,
106
112
  queryParameters: Object.assign(Object.assign({}, _queryParams), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams),
@@ -140,7 +146,96 @@ class MetricsClient {
140
146
  });
141
147
  }
142
148
  }
143
- return (0, handleNonStatusCodeError_js_1.handleNonStatusCodeError)(_response.error, _response.rawResponse, "GET", "/v0/pods/{pod_id}/metrics");
149
+ return (0, handleNonStatusCodeError_js_1.handleNonStatusCodeError)(_response.error, _response.rawResponse, "GET", "/v0/pods/{pod_id}/metrics/events");
150
+ });
151
+ }
152
+ /**
153
+ * Cumulative usage series for the pod. Each point is the running total of
154
+ * the usage type at that timestamp, not the change within the bucket.
155
+ * Pod-scoped queries carry every usage type except `pod_count`; requested
156
+ * types that don't apply to the scope are ignored. Defaults to the last
157
+ * 24 hours; `start` must be within the last 90 days, and a future `end`
158
+ * is clamped to now. The range divided by `period` must not exceed 1000
159
+ * buckets.
160
+ *
161
+ * @param {AgentMail.pods.PodId} pod_id
162
+ * @param {AgentMail.pods.QueryUsageRequest} request
163
+ * @param {MetricsClient.RequestOptions} requestOptions - Request-specific configuration.
164
+ *
165
+ * @throws {@link AgentMail.ValidationError}
166
+ *
167
+ * @example
168
+ * await client.pods.metrics.queryUsage("pod_id")
169
+ */
170
+ queryUsage(pod_id, request = {}, requestOptions) {
171
+ return core.HttpResponsePromise.fromPromise(this.__queryUsage(pod_id, request, requestOptions));
172
+ }
173
+ __queryUsage(pod_id_1) {
174
+ return __awaiter(this, arguments, void 0, function* (pod_id, request = {}, requestOptions) {
175
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
176
+ const { usageTypes, start, end, period, limit, descending } = request;
177
+ const _queryParams = {
178
+ usage_types: usageTypes != null
179
+ ? (0, json_js_1.toJson)(serializers.UsageTypes.jsonOrThrow(usageTypes, {
180
+ unrecognizedObjectKeys: "strip",
181
+ omitUndefined: true,
182
+ }))
183
+ : undefined,
184
+ start: start != null
185
+ ? serializers.Start.jsonOrThrow(start, { unrecognizedObjectKeys: "strip", omitUndefined: true })
186
+ : undefined,
187
+ end: end != null
188
+ ? serializers.End.jsonOrThrow(end, { unrecognizedObjectKeys: "strip", omitUndefined: true })
189
+ : undefined,
190
+ period,
191
+ limit,
192
+ descending,
193
+ };
194
+ const _authRequest = yield this._options.authProvider.getAuthRequest();
195
+ const _headers = (0, headers_js_1.mergeHeaders)(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
196
+ const _response = yield core.fetcher({
197
+ url: core.url.join((_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : ((_c = (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.AgentMailEnvironment.Prod)
198
+ .http, `/v0/pods/${core.url.encodePathParam(serializers.pods.PodId.jsonOrThrow(pod_id, { omitUndefined: true }))}/metrics/usage`),
199
+ method: "GET",
200
+ headers: _headers,
201
+ queryParameters: Object.assign(Object.assign({}, _queryParams), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams),
202
+ 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,
203
+ 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,
204
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
205
+ fetchFn: (_j = this._options) === null || _j === void 0 ? void 0 : _j.fetch,
206
+ logging: this._options.logging,
207
+ });
208
+ if (_response.ok) {
209
+ return {
210
+ data: serializers.QueryUsageResponse.parseOrThrow(_response.body, {
211
+ unrecognizedObjectKeys: "passthrough",
212
+ allowUnrecognizedUnionMembers: true,
213
+ allowUnrecognizedEnumValues: true,
214
+ skipValidation: true,
215
+ breadcrumbsPrefix: ["response"],
216
+ }),
217
+ rawResponse: _response.rawResponse,
218
+ };
219
+ }
220
+ if (_response.error.reason === "status-code") {
221
+ switch (_response.error.statusCode) {
222
+ case 400:
223
+ throw new AgentMail.ValidationError(serializers.ValidationErrorResponse.parseOrThrow(_response.error.body, {
224
+ unrecognizedObjectKeys: "passthrough",
225
+ allowUnrecognizedUnionMembers: true,
226
+ allowUnrecognizedEnumValues: true,
227
+ skipValidation: true,
228
+ breadcrumbsPrefix: ["response"],
229
+ }), _response.rawResponse);
230
+ default:
231
+ throw new errors.AgentMailError({
232
+ statusCode: _response.error.statusCode,
233
+ body: _response.error.body,
234
+ rawResponse: _response.rawResponse,
235
+ });
236
+ }
237
+ }
238
+ return (0, handleNonStatusCodeError_js_1.handleNonStatusCodeError)(_response.error, _response.rawResponse, "GET", "/v0/pods/{pod_id}/metrics/usage");
144
239
  });
145
240
  }
146
241
  }
@@ -3,7 +3,7 @@ import type * as AgentMail from "../../../../../../index.js";
3
3
  * @example
4
4
  * {}
5
5
  */
6
- export interface QueryMetricsRequest {
6
+ export interface QueryEventsRequest {
7
7
  eventTypes?: AgentMail.MetricEventTypes;
8
8
  start?: AgentMail.Start;
9
9
  end?: AgentMail.End;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ // This file was auto-generated by Fern from our API Definition.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,13 @@
1
+ import type * as AgentMail from "../../../../../../index.js";
2
+ /**
3
+ * @example
4
+ * {}
5
+ */
6
+ export interface QueryUsageRequest {
7
+ usageTypes?: AgentMail.UsageTypes;
8
+ start?: AgentMail.Start;
9
+ end?: AgentMail.End;
10
+ period?: AgentMail.Period;
11
+ limit?: AgentMail.MetricLimit;
12
+ descending?: AgentMail.Descending;
13
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ // This file was auto-generated by Fern from our API Definition.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1 +1,2 @@
1
- export type { QueryMetricsRequest } from "./QueryMetricsRequest.js";
1
+ export type { QueryEventsRequest } from "./QueryEventsRequest.js";
2
+ export type { QueryUsageRequest } from "./QueryUsageRequest.js";
@@ -3,5 +3,5 @@ import * as core from "../../../../core/index.js";
3
3
  import type * as serializers from "../../../index.js";
4
4
  export declare const MetricEventType: core.serialization.Schema<serializers.MetricEventType.Raw, AgentMail.MetricEventType>;
5
5
  export declare namespace MetricEventType {
6
- type Raw = "message.sent" | "message.delivered" | "message.bounced" | "message.delayed" | "message.rejected" | "message.complained" | "message.received";
6
+ type Raw = "message.received" | "message.received.spam" | "message.received.blocked" | "message.received.unauthenticated" | "message.sent" | "message.delivered" | "message.bounced" | "message.complained" | "message.rejected" | "domain.verified";
7
7
  }
@@ -37,11 +37,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
37
37
  exports.MetricEventType = void 0;
38
38
  const core = __importStar(require("../../../../core/index.js"));
39
39
  exports.MetricEventType = core.serialization.enum_([
40
+ "message.received",
41
+ "message.received.spam",
42
+ "message.received.blocked",
43
+ "message.received.unauthenticated",
40
44
  "message.sent",
41
45
  "message.delivered",
42
46
  "message.bounced",
43
- "message.delayed",
44
- "message.rejected",
45
47
  "message.complained",
46
- "message.received",
48
+ "message.rejected",
49
+ "domain.verified",
47
50
  ]);
@@ -3,5 +3,5 @@ import * as core from "../../../../core/index.js";
3
3
  import type * as serializers from "../../../index.js";
4
4
  export declare const Period: core.serialization.Schema<serializers.Period.Raw, AgentMail.Period>;
5
5
  export declare namespace Period {
6
- type Raw = string;
6
+ type Raw = number;
7
7
  }
@@ -36,4 +36,4 @@ var __importStar = (this && this.__importStar) || (function () {
36
36
  Object.defineProperty(exports, "__esModule", { value: true });
37
37
  exports.Period = void 0;
38
38
  const core = __importStar(require("../../../../core/index.js"));
39
- exports.Period = core.serialization.string();
39
+ exports.Period = core.serialization.number();
@@ -0,0 +1,9 @@
1
+ import type * as AgentMail from "../../../../api/index.js";
2
+ import * as core from "../../../../core/index.js";
3
+ import type * as serializers from "../../../index.js";
4
+ import { UsagePoint } from "./UsagePoint.js";
5
+ import { UsageType } from "./UsageType.js";
6
+ export declare const QueryUsageResponse: core.serialization.Schema<serializers.QueryUsageResponse.Raw, AgentMail.QueryUsageResponse>;
7
+ export declare namespace QueryUsageResponse {
8
+ type Raw = Record<UsageType.Raw, UsagePoint.Raw[] | null | undefined>;
9
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ // This file was auto-generated by Fern from our API Definition.
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || (function () {
20
+ var ownKeys = function(o) {
21
+ ownKeys = Object.getOwnPropertyNames || function (o) {
22
+ var ar = [];
23
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
24
+ return ar;
25
+ };
26
+ return ownKeys(o);
27
+ };
28
+ return function (mod) {
29
+ if (mod && mod.__esModule) return mod;
30
+ var result = {};
31
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
32
+ __setModuleDefault(result, mod);
33
+ return result;
34
+ };
35
+ })();
36
+ Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.QueryUsageResponse = void 0;
38
+ const core = __importStar(require("../../../../core/index.js"));
39
+ const UsagePoint_js_1 = require("./UsagePoint.js");
40
+ const UsageType_js_1 = require("./UsageType.js");
41
+ exports.QueryUsageResponse = core.serialization.partialRecord(UsageType_js_1.UsageType, core.serialization.list(UsagePoint_js_1.UsagePoint).optional());
@@ -0,0 +1,10 @@
1
+ import type * as AgentMail from "../../../../api/index.js";
2
+ import * as core from "../../../../core/index.js";
3
+ import type * as serializers from "../../../index.js";
4
+ export declare const UsagePoint: core.serialization.ObjectSchema<serializers.UsagePoint.Raw, AgentMail.UsagePoint>;
5
+ export declare namespace UsagePoint {
6
+ interface Raw {
7
+ timestamp: string;
8
+ value: number;
9
+ }
10
+ }
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ // This file was auto-generated by Fern from our API Definition.
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || (function () {
20
+ var ownKeys = function(o) {
21
+ ownKeys = Object.getOwnPropertyNames || function (o) {
22
+ var ar = [];
23
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
24
+ return ar;
25
+ };
26
+ return ownKeys(o);
27
+ };
28
+ return function (mod) {
29
+ if (mod && mod.__esModule) return mod;
30
+ var result = {};
31
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
32
+ __setModuleDefault(result, mod);
33
+ return result;
34
+ };
35
+ })();
36
+ Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.UsagePoint = void 0;
38
+ const core = __importStar(require("../../../../core/index.js"));
39
+ exports.UsagePoint = core.serialization.object({
40
+ timestamp: core.serialization.date(),
41
+ value: core.serialization.number(),
42
+ });
@@ -0,0 +1,7 @@
1
+ import type * as AgentMail from "../../../../api/index.js";
2
+ import * as core from "../../../../core/index.js";
3
+ import type * as serializers from "../../../index.js";
4
+ export declare const UsageType: core.serialization.Schema<serializers.UsageType.Raw, AgentMail.UsageType>;
5
+ export declare namespace UsageType {
6
+ type Raw = "storage_bytes" | "message_count" | "thread_count" | "inbox_count" | "pod_count" | "domain_count";
7
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ // This file was auto-generated by Fern from our API Definition.
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || (function () {
20
+ var ownKeys = function(o) {
21
+ ownKeys = Object.getOwnPropertyNames || function (o) {
22
+ var ar = [];
23
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
24
+ return ar;
25
+ };
26
+ return ownKeys(o);
27
+ };
28
+ return function (mod) {
29
+ if (mod && mod.__esModule) return mod;
30
+ var result = {};
31
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
32
+ __setModuleDefault(result, mod);
33
+ return result;
34
+ };
35
+ })();
36
+ Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.UsageType = void 0;
38
+ const core = __importStar(require("../../../../core/index.js"));
39
+ exports.UsageType = core.serialization.enum_([
40
+ "storage_bytes",
41
+ "message_count",
42
+ "thread_count",
43
+ "inbox_count",
44
+ "pod_count",
45
+ "domain_count",
46
+ ]);
@@ -0,0 +1,8 @@
1
+ import type * as AgentMail from "../../../../api/index.js";
2
+ import * as core from "../../../../core/index.js";
3
+ import type * as serializers from "../../../index.js";
4
+ import { UsageType } from "./UsageType.js";
5
+ export declare const UsageTypes: core.serialization.Schema<serializers.UsageTypes.Raw, AgentMail.UsageTypes>;
6
+ export declare namespace UsageTypes {
7
+ type Raw = UsageType.Raw[];
8
+ }
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ // This file was auto-generated by Fern from our API Definition.
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || (function () {
20
+ var ownKeys = function(o) {
21
+ ownKeys = Object.getOwnPropertyNames || function (o) {
22
+ var ar = [];
23
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
24
+ return ar;
25
+ };
26
+ return ownKeys(o);
27
+ };
28
+ return function (mod) {
29
+ if (mod && mod.__esModule) return mod;
30
+ var result = {};
31
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
32
+ __setModuleDefault(result, mod);
33
+ return result;
34
+ };
35
+ })();
36
+ Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.UsageTypes = void 0;
38
+ const core = __importStar(require("../../../../core/index.js"));
39
+ const UsageType_js_1 = require("./UsageType.js");
40
+ exports.UsageTypes = core.serialization.list(UsageType_js_1.UsageType);
@@ -6,4 +6,8 @@ export * from "./MetricEventTypes.js";
6
6
  export * from "./MetricLimit.js";
7
7
  export * from "./Period.js";
8
8
  export * from "./QueryMetricsResponse.js";
9
+ export * from "./QueryUsageResponse.js";
9
10
  export * from "./Start.js";
11
+ export * from "./UsagePoint.js";
12
+ export * from "./UsageType.js";
13
+ export * from "./UsageTypes.js";
@@ -22,4 +22,8 @@ __exportStar(require("./MetricEventTypes.js"), exports);
22
22
  __exportStar(require("./MetricLimit.js"), exports);
23
23
  __exportStar(require("./Period.js"), exports);
24
24
  __exportStar(require("./QueryMetricsResponse.js"), exports);
25
+ __exportStar(require("./QueryUsageResponse.js"), exports);
25
26
  __exportStar(require("./Start.js"), exports);
27
+ __exportStar(require("./UsagePoint.js"), exports);
28
+ __exportStar(require("./UsageType.js"), exports);
29
+ __exportStar(require("./UsageTypes.js"), exports);
@@ -1 +1 @@
1
- export declare const SDK_VERSION = "0.5.11";
1
+ export declare const SDK_VERSION = "0.5.12";
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SDK_VERSION = void 0;
4
- exports.SDK_VERSION = "0.5.11";
4
+ exports.SDK_VERSION = "0.5.12";
@@ -6,8 +6,8 @@ export function normalizeClientOptions(options) {
6
6
  const headers = mergeHeaders({
7
7
  "X-Fern-Language": "JavaScript",
8
8
  "X-Fern-SDK-Name": "agentmail",
9
- "X-Fern-SDK-Version": "0.5.11",
10
- "User-Agent": "agentmail/0.5.11",
9
+ "X-Fern-SDK-Version": "0.5.12",
10
+ "User-Agent": "agentmail/0.5.12",
11
11
  "X-Fern-Runtime": core.RUNTIME.type,
12
12
  "X-Fern-Runtime-Version": core.RUNTIME.version,
13
13
  }, options === null || options === void 0 ? void 0 : options.headers);
@@ -11,20 +11,46 @@ export declare class MetricsClient {
11
11
  protected readonly _options: NormalizedClientOptionsWithAuth<MetricsClient.Options>;
12
12
  constructor(options?: MetricsClient.Options);
13
13
  /**
14
+ * Counts of email events (sent, delivered, bounced, etc.) over time for
15
+ * the inbox. Defaults to the last 24 hours; `start` must be within the
16
+ * last 90 days, and a future `end` is clamped to now. Omit `period` for
17
+ * individual event counts, or set it to sum counts into buckets of that
18
+ * many seconds.
19
+ *
14
20
  * **CLI:**
15
21
  * ```bash
16
22
  * agentmail inboxes:metrics query --inbox-id <inbox_id>
17
23
  * ```
18
24
  *
19
25
  * @param {AgentMail.inboxes.InboxId} inbox_id
20
- * @param {AgentMail.inboxes.QueryMetricsRequest} request
26
+ * @param {AgentMail.inboxes.QueryEventsRequest} request
27
+ * @param {MetricsClient.RequestOptions} requestOptions - Request-specific configuration.
28
+ *
29
+ * @throws {@link AgentMail.ValidationError}
30
+ *
31
+ * @example
32
+ * await client.inboxes.metrics.queryEvents("inbox_id")
33
+ */
34
+ queryEvents(inbox_id: AgentMail.inboxes.InboxId, request?: AgentMail.inboxes.QueryEventsRequest, requestOptions?: MetricsClient.RequestOptions): core.HttpResponsePromise<AgentMail.QueryMetricsResponse>;
35
+ private __queryEvents;
36
+ /**
37
+ * Cumulative usage series for the inbox. Each point is the running total
38
+ * of the usage type at that timestamp, not the change within the bucket.
39
+ * Inbox-scoped queries carry `storage_bytes`, `message_count`, and
40
+ * `thread_count`; requested types that don't apply to the scope are
41
+ * ignored. Defaults to the last 24 hours; `start` must be within the
42
+ * last 90 days, and a future `end` is clamped to now. The range divided
43
+ * by `period` must not exceed 1000 buckets.
44
+ *
45
+ * @param {AgentMail.inboxes.InboxId} inbox_id
46
+ * @param {AgentMail.inboxes.QueryUsageRequest} request
21
47
  * @param {MetricsClient.RequestOptions} requestOptions - Request-specific configuration.
22
48
  *
23
49
  * @throws {@link AgentMail.ValidationError}
24
50
  *
25
51
  * @example
26
- * await client.inboxes.metrics.query("inbox_id")
52
+ * await client.inboxes.metrics.queryUsage("inbox_id")
27
53
  */
28
- query(inbox_id: AgentMail.inboxes.InboxId, request?: AgentMail.inboxes.QueryMetricsRequest, requestOptions?: MetricsClient.RequestOptions): core.HttpResponsePromise<AgentMail.QueryMetricsResponse>;
29
- private __query;
54
+ queryUsage(inbox_id: AgentMail.inboxes.InboxId, request?: AgentMail.inboxes.QueryUsageRequest, requestOptions?: MetricsClient.RequestOptions): core.HttpResponsePromise<AgentMail.QueryUsageResponse>;
55
+ private __queryUsage;
30
56
  }