agentmail 0.5.49 → 0.5.51

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 (211) hide show
  1. package/dist/cjs/BaseClient.js +2 -2
  2. package/dist/cjs/Client.d.ts +3 -0
  3. package/dist/cjs/Client.js +21 -16
  4. package/dist/cjs/api/resources/forwarding/client/Client.d.ts +127 -0
  5. package/dist/cjs/api/resources/forwarding/client/Client.js +503 -0
  6. package/dist/cjs/api/resources/forwarding/client/index.d.ts +1 -0
  7. package/dist/cjs/api/resources/forwarding/client/index.js +2 -0
  8. package/dist/cjs/api/resources/forwarding/errors/ForwardingForbiddenError.d.ts +6 -0
  9. package/dist/cjs/api/resources/forwarding/errors/ForwardingForbiddenError.js +54 -0
  10. package/dist/cjs/api/resources/forwarding/errors/ForwardingRateLimitError.d.ts +6 -0
  11. package/dist/cjs/api/resources/forwarding/errors/ForwardingRateLimitError.js +54 -0
  12. package/dist/cjs/api/resources/forwarding/errors/index.d.ts +2 -0
  13. package/dist/cjs/api/resources/forwarding/errors/index.js +18 -0
  14. package/dist/cjs/api/resources/forwarding/exports.d.ts +2 -0
  15. package/dist/cjs/api/resources/forwarding/exports.js +21 -0
  16. package/dist/cjs/api/resources/forwarding/index.d.ts +3 -0
  17. package/dist/cjs/api/resources/forwarding/index.js +19 -0
  18. package/dist/cjs/api/resources/forwarding/types/ConfirmForwardingVerificationRequest.d.ts +10 -0
  19. package/dist/cjs/api/resources/forwarding/types/ConfirmForwardingVerificationRequest.js +3 -0
  20. package/dist/cjs/api/resources/forwarding/types/Forwarding.d.ts +15 -0
  21. package/dist/cjs/api/resources/forwarding/types/Forwarding.js +3 -0
  22. package/dist/cjs/api/resources/forwarding/types/ForwardingDestination.d.ts +5 -0
  23. package/dist/cjs/api/resources/forwarding/types/ForwardingDestination.js +3 -0
  24. package/dist/cjs/api/resources/forwarding/types/ForwardingVerificationConfirmed.d.ts +4 -0
  25. package/dist/cjs/api/resources/forwarding/types/ForwardingVerificationConfirmed.js +3 -0
  26. package/dist/cjs/api/resources/forwarding/types/ForwardingVerificationStarted.d.ts +4 -0
  27. package/dist/cjs/api/resources/forwarding/types/ForwardingVerificationStarted.js +3 -0
  28. package/dist/cjs/api/resources/forwarding/types/StartForwardingVerificationRequest.d.ts +5 -0
  29. package/dist/cjs/api/resources/forwarding/types/StartForwardingVerificationRequest.js +3 -0
  30. package/dist/cjs/api/resources/forwarding/types/UpdateForwardingRequest.d.ts +9 -0
  31. package/dist/cjs/api/resources/forwarding/types/UpdateForwardingRequest.js +3 -0
  32. package/dist/cjs/api/resources/forwarding/types/UpdateForwardingResponse.d.ts +8 -0
  33. package/dist/cjs/api/resources/forwarding/types/UpdateForwardingResponse.js +3 -0
  34. package/dist/cjs/api/resources/forwarding/types/index.d.ts +8 -0
  35. package/dist/cjs/api/resources/forwarding/types/index.js +24 -0
  36. package/dist/cjs/api/resources/inboxes/client/Client.d.ts +7 -1
  37. package/dist/cjs/api/resources/inboxes/client/Client.js +27 -11
  38. package/dist/cjs/api/resources/inboxes/resources/forwarding/client/Client.d.ts +79 -0
  39. package/dist/cjs/api/resources/inboxes/resources/forwarding/client/Client.js +317 -0
  40. package/dist/cjs/api/resources/inboxes/resources/forwarding/client/index.d.ts +1 -0
  41. package/dist/cjs/api/resources/inboxes/resources/forwarding/client/index.js +2 -0
  42. package/dist/cjs/api/resources/inboxes/resources/forwarding/exports.d.ts +2 -0
  43. package/dist/cjs/api/resources/inboxes/resources/forwarding/exports.js +21 -0
  44. package/dist/cjs/api/resources/inboxes/resources/forwarding/index.d.ts +1 -0
  45. package/dist/cjs/api/resources/inboxes/resources/forwarding/index.js +17 -0
  46. package/dist/cjs/api/resources/inboxes/resources/index.d.ts +1 -0
  47. package/dist/cjs/api/resources/inboxes/resources/index.js +2 -1
  48. package/dist/cjs/api/resources/index.d.ts +3 -0
  49. package/dist/cjs/api/resources/index.js +4 -1
  50. package/dist/cjs/api/resources/messages/types/Message.d.ts +2 -0
  51. package/dist/cjs/api/resources/messages/types/MessageItem.d.ts +2 -0
  52. package/dist/cjs/api/resources/messages/types/MessageOpenedAt.d.ts +6 -0
  53. package/dist/cjs/api/resources/messages/types/MessageOpenedAt.js +3 -0
  54. package/dist/cjs/api/resources/messages/types/MessageTrackOpens.d.ts +5 -0
  55. package/dist/cjs/api/resources/messages/types/MessageTrackOpens.js +3 -0
  56. package/dist/cjs/api/resources/messages/types/TrackOpens.d.ts +4 -3
  57. package/dist/cjs/api/resources/messages/types/index.d.ts +2 -0
  58. package/dist/cjs/api/resources/messages/types/index.js +2 -0
  59. package/dist/cjs/api/resources/pods/client/Client.d.ts +3 -0
  60. package/dist/cjs/api/resources/pods/client/Client.js +15 -10
  61. package/dist/cjs/api/resources/pods/resources/forwarding/client/Client.d.ts +80 -0
  62. package/dist/cjs/api/resources/pods/resources/forwarding/client/Client.js +318 -0
  63. package/dist/cjs/api/resources/pods/resources/forwarding/client/index.d.ts +1 -0
  64. package/dist/cjs/api/resources/pods/resources/forwarding/client/index.js +2 -0
  65. package/dist/cjs/api/resources/pods/resources/forwarding/exports.d.ts +2 -0
  66. package/dist/cjs/api/resources/pods/resources/forwarding/exports.js +21 -0
  67. package/dist/cjs/api/resources/pods/resources/forwarding/index.d.ts +1 -0
  68. package/dist/cjs/api/resources/pods/resources/forwarding/index.js +17 -0
  69. package/dist/cjs/api/resources/pods/resources/index.d.ts +1 -0
  70. package/dist/cjs/api/resources/pods/resources/index.js +2 -1
  71. package/dist/cjs/serialization/resources/forwarding/index.d.ts +1 -0
  72. package/dist/cjs/serialization/resources/forwarding/index.js +17 -0
  73. package/dist/cjs/serialization/resources/forwarding/types/ConfirmForwardingVerificationRequest.d.ts +11 -0
  74. package/dist/cjs/serialization/resources/forwarding/types/ConfirmForwardingVerificationRequest.js +43 -0
  75. package/dist/cjs/serialization/resources/forwarding/types/Forwarding.d.ts +11 -0
  76. package/dist/cjs/serialization/resources/forwarding/types/Forwarding.js +43 -0
  77. package/dist/cjs/serialization/resources/forwarding/types/ForwardingDestination.d.ts +7 -0
  78. package/dist/cjs/serialization/resources/forwarding/types/ForwardingDestination.js +39 -0
  79. package/dist/cjs/serialization/resources/forwarding/types/ForwardingVerificationConfirmed.d.ts +9 -0
  80. package/dist/cjs/serialization/resources/forwarding/types/ForwardingVerificationConfirmed.js +41 -0
  81. package/dist/cjs/serialization/resources/forwarding/types/ForwardingVerificationStarted.d.ts +9 -0
  82. package/dist/cjs/serialization/resources/forwarding/types/ForwardingVerificationStarted.js +41 -0
  83. package/dist/cjs/serialization/resources/forwarding/types/StartForwardingVerificationRequest.d.ts +10 -0
  84. package/dist/cjs/serialization/resources/forwarding/types/StartForwardingVerificationRequest.js +42 -0
  85. package/dist/cjs/serialization/resources/forwarding/types/UpdateForwardingRequest.d.ts +10 -0
  86. package/dist/cjs/serialization/resources/forwarding/types/UpdateForwardingRequest.js +42 -0
  87. package/dist/cjs/serialization/resources/forwarding/types/UpdateForwardingResponse.d.ts +10 -0
  88. package/dist/cjs/serialization/resources/forwarding/types/UpdateForwardingResponse.js +42 -0
  89. package/dist/cjs/serialization/resources/forwarding/types/index.d.ts +8 -0
  90. package/dist/cjs/serialization/resources/forwarding/types/index.js +24 -0
  91. package/dist/cjs/serialization/resources/index.d.ts +2 -0
  92. package/dist/cjs/serialization/resources/index.js +3 -1
  93. package/dist/cjs/serialization/resources/messages/types/Message.d.ts +4 -0
  94. package/dist/cjs/serialization/resources/messages/types/Message.js +4 -0
  95. package/dist/cjs/serialization/resources/messages/types/MessageItem.d.ts +4 -0
  96. package/dist/cjs/serialization/resources/messages/types/MessageItem.js +4 -0
  97. package/dist/cjs/serialization/resources/messages/types/MessageOpenedAt.d.ts +7 -0
  98. package/dist/cjs/serialization/resources/messages/types/MessageOpenedAt.js +39 -0
  99. package/dist/cjs/serialization/resources/messages/types/MessageTrackOpens.d.ts +7 -0
  100. package/dist/cjs/serialization/resources/messages/types/MessageTrackOpens.js +39 -0
  101. package/dist/cjs/serialization/resources/messages/types/index.d.ts +2 -0
  102. package/dist/cjs/serialization/resources/messages/types/index.js +2 -0
  103. package/dist/cjs/version.d.ts +1 -1
  104. package/dist/cjs/version.js +1 -1
  105. package/dist/esm/BaseClient.mjs +2 -2
  106. package/dist/esm/Client.d.mts +3 -0
  107. package/dist/esm/Client.mjs +5 -0
  108. package/dist/esm/api/resources/forwarding/client/Client.d.mts +127 -0
  109. package/dist/esm/api/resources/forwarding/client/Client.mjs +466 -0
  110. package/dist/esm/api/resources/forwarding/client/index.d.mts +1 -0
  111. package/dist/esm/api/resources/forwarding/client/index.mjs +1 -0
  112. package/dist/esm/api/resources/forwarding/errors/ForwardingForbiddenError.d.mts +6 -0
  113. package/dist/esm/api/resources/forwarding/errors/ForwardingForbiddenError.mjs +17 -0
  114. package/dist/esm/api/resources/forwarding/errors/ForwardingRateLimitError.d.mts +6 -0
  115. package/dist/esm/api/resources/forwarding/errors/ForwardingRateLimitError.mjs +17 -0
  116. package/dist/esm/api/resources/forwarding/errors/index.d.mts +2 -0
  117. package/dist/esm/api/resources/forwarding/errors/index.mjs +2 -0
  118. package/dist/esm/api/resources/forwarding/exports.d.mts +2 -0
  119. package/dist/esm/api/resources/forwarding/exports.mjs +3 -0
  120. package/dist/esm/api/resources/forwarding/index.d.mts +3 -0
  121. package/dist/esm/api/resources/forwarding/index.mjs +3 -0
  122. package/dist/esm/api/resources/forwarding/types/ConfirmForwardingVerificationRequest.d.mts +10 -0
  123. package/dist/esm/api/resources/forwarding/types/ConfirmForwardingVerificationRequest.mjs +2 -0
  124. package/dist/esm/api/resources/forwarding/types/Forwarding.d.mts +15 -0
  125. package/dist/esm/api/resources/forwarding/types/Forwarding.mjs +2 -0
  126. package/dist/esm/api/resources/forwarding/types/ForwardingDestination.d.mts +5 -0
  127. package/dist/esm/api/resources/forwarding/types/ForwardingDestination.mjs +2 -0
  128. package/dist/esm/api/resources/forwarding/types/ForwardingVerificationConfirmed.d.mts +4 -0
  129. package/dist/esm/api/resources/forwarding/types/ForwardingVerificationConfirmed.mjs +2 -0
  130. package/dist/esm/api/resources/forwarding/types/ForwardingVerificationStarted.d.mts +4 -0
  131. package/dist/esm/api/resources/forwarding/types/ForwardingVerificationStarted.mjs +2 -0
  132. package/dist/esm/api/resources/forwarding/types/StartForwardingVerificationRequest.d.mts +5 -0
  133. package/dist/esm/api/resources/forwarding/types/StartForwardingVerificationRequest.mjs +2 -0
  134. package/dist/esm/api/resources/forwarding/types/UpdateForwardingRequest.d.mts +9 -0
  135. package/dist/esm/api/resources/forwarding/types/UpdateForwardingRequest.mjs +2 -0
  136. package/dist/esm/api/resources/forwarding/types/UpdateForwardingResponse.d.mts +8 -0
  137. package/dist/esm/api/resources/forwarding/types/UpdateForwardingResponse.mjs +2 -0
  138. package/dist/esm/api/resources/forwarding/types/index.d.mts +8 -0
  139. package/dist/esm/api/resources/forwarding/types/index.mjs +8 -0
  140. package/dist/esm/api/resources/inboxes/client/Client.d.mts +7 -1
  141. package/dist/esm/api/resources/inboxes/client/Client.mjs +17 -1
  142. package/dist/esm/api/resources/inboxes/resources/forwarding/client/Client.d.mts +79 -0
  143. package/dist/esm/api/resources/inboxes/resources/forwarding/client/Client.mjs +280 -0
  144. package/dist/esm/api/resources/inboxes/resources/forwarding/client/index.d.mts +1 -0
  145. package/dist/esm/api/resources/inboxes/resources/forwarding/client/index.mjs +1 -0
  146. package/dist/esm/api/resources/inboxes/resources/forwarding/exports.d.mts +2 -0
  147. package/dist/esm/api/resources/inboxes/resources/forwarding/exports.mjs +3 -0
  148. package/dist/esm/api/resources/inboxes/resources/forwarding/index.d.mts +1 -0
  149. package/dist/esm/api/resources/inboxes/resources/forwarding/index.mjs +1 -0
  150. package/dist/esm/api/resources/inboxes/resources/index.d.mts +1 -0
  151. package/dist/esm/api/resources/inboxes/resources/index.mjs +1 -0
  152. package/dist/esm/api/resources/index.d.mts +3 -0
  153. package/dist/esm/api/resources/index.mjs +3 -0
  154. package/dist/esm/api/resources/messages/types/Message.d.mts +2 -0
  155. package/dist/esm/api/resources/messages/types/MessageItem.d.mts +2 -0
  156. package/dist/esm/api/resources/messages/types/MessageOpenedAt.d.mts +6 -0
  157. package/dist/esm/api/resources/messages/types/MessageOpenedAt.mjs +2 -0
  158. package/dist/esm/api/resources/messages/types/MessageTrackOpens.d.mts +5 -0
  159. package/dist/esm/api/resources/messages/types/MessageTrackOpens.mjs +2 -0
  160. package/dist/esm/api/resources/messages/types/TrackOpens.d.mts +4 -3
  161. package/dist/esm/api/resources/messages/types/index.d.mts +2 -0
  162. package/dist/esm/api/resources/messages/types/index.mjs +2 -0
  163. package/dist/esm/api/resources/pods/client/Client.d.mts +3 -0
  164. package/dist/esm/api/resources/pods/client/Client.mjs +5 -0
  165. package/dist/esm/api/resources/pods/resources/forwarding/client/Client.d.mts +80 -0
  166. package/dist/esm/api/resources/pods/resources/forwarding/client/Client.mjs +281 -0
  167. package/dist/esm/api/resources/pods/resources/forwarding/client/index.d.mts +1 -0
  168. package/dist/esm/api/resources/pods/resources/forwarding/client/index.mjs +1 -0
  169. package/dist/esm/api/resources/pods/resources/forwarding/exports.d.mts +2 -0
  170. package/dist/esm/api/resources/pods/resources/forwarding/exports.mjs +3 -0
  171. package/dist/esm/api/resources/pods/resources/forwarding/index.d.mts +1 -0
  172. package/dist/esm/api/resources/pods/resources/forwarding/index.mjs +1 -0
  173. package/dist/esm/api/resources/pods/resources/index.d.mts +1 -0
  174. package/dist/esm/api/resources/pods/resources/index.mjs +1 -0
  175. package/dist/esm/serialization/resources/forwarding/index.d.mts +1 -0
  176. package/dist/esm/serialization/resources/forwarding/index.mjs +1 -0
  177. package/dist/esm/serialization/resources/forwarding/types/ConfirmForwardingVerificationRequest.d.mts +11 -0
  178. package/dist/esm/serialization/resources/forwarding/types/ConfirmForwardingVerificationRequest.mjs +7 -0
  179. package/dist/esm/serialization/resources/forwarding/types/Forwarding.d.mts +11 -0
  180. package/dist/esm/serialization/resources/forwarding/types/Forwarding.mjs +7 -0
  181. package/dist/esm/serialization/resources/forwarding/types/ForwardingDestination.d.mts +7 -0
  182. package/dist/esm/serialization/resources/forwarding/types/ForwardingDestination.mjs +3 -0
  183. package/dist/esm/serialization/resources/forwarding/types/ForwardingVerificationConfirmed.d.mts +9 -0
  184. package/dist/esm/serialization/resources/forwarding/types/ForwardingVerificationConfirmed.mjs +5 -0
  185. package/dist/esm/serialization/resources/forwarding/types/ForwardingVerificationStarted.d.mts +9 -0
  186. package/dist/esm/serialization/resources/forwarding/types/ForwardingVerificationStarted.mjs +5 -0
  187. package/dist/esm/serialization/resources/forwarding/types/StartForwardingVerificationRequest.d.mts +10 -0
  188. package/dist/esm/serialization/resources/forwarding/types/StartForwardingVerificationRequest.mjs +6 -0
  189. package/dist/esm/serialization/resources/forwarding/types/UpdateForwardingRequest.d.mts +10 -0
  190. package/dist/esm/serialization/resources/forwarding/types/UpdateForwardingRequest.mjs +6 -0
  191. package/dist/esm/serialization/resources/forwarding/types/UpdateForwardingResponse.d.mts +10 -0
  192. package/dist/esm/serialization/resources/forwarding/types/UpdateForwardingResponse.mjs +6 -0
  193. package/dist/esm/serialization/resources/forwarding/types/index.d.mts +8 -0
  194. package/dist/esm/serialization/resources/forwarding/types/index.mjs +8 -0
  195. package/dist/esm/serialization/resources/index.d.mts +2 -0
  196. package/dist/esm/serialization/resources/index.mjs +2 -0
  197. package/dist/esm/serialization/resources/messages/types/Message.d.mts +4 -0
  198. package/dist/esm/serialization/resources/messages/types/Message.mjs +4 -0
  199. package/dist/esm/serialization/resources/messages/types/MessageItem.d.mts +4 -0
  200. package/dist/esm/serialization/resources/messages/types/MessageItem.mjs +4 -0
  201. package/dist/esm/serialization/resources/messages/types/MessageOpenedAt.d.mts +7 -0
  202. package/dist/esm/serialization/resources/messages/types/MessageOpenedAt.mjs +3 -0
  203. package/dist/esm/serialization/resources/messages/types/MessageTrackOpens.d.mts +7 -0
  204. package/dist/esm/serialization/resources/messages/types/MessageTrackOpens.mjs +3 -0
  205. package/dist/esm/serialization/resources/messages/types/index.d.mts +2 -0
  206. package/dist/esm/serialization/resources/messages/types/index.mjs +2 -0
  207. package/dist/esm/version.d.mts +1 -1
  208. package/dist/esm/version.mjs +1 -1
  209. package/dist/llms.txt +3 -1
  210. package/package.json +34 -1
  211. package/reference.md +1026 -239
package/reference.md CHANGED
@@ -358,6 +358,8 @@ await client.inboxes.update("inbox_id", {});
358
358
  <dl>
359
359
  <dd>
360
360
 
361
+ Deletion is asynchronous. A `202` means it has started. While it runs, requests for this inbox return `409` `resource_deleting`. Poll `GET /v0/inboxes/{inbox_id}` until it returns `404`, then the address is free. If the inbox still has its own API keys, delete returns `409` `cannot_delete`: revoke those keys first.
362
+
361
363
  **CLI:**
362
364
  ```bash
363
365
  agentmail inboxes delete --inbox-id <inbox_id>
@@ -376,7 +378,7 @@ agentmail inboxes delete --inbox-id <inbox_id>
376
378
  <dd>
377
379
 
378
380
  ```typescript
379
- await client.inboxes.delete("inbox_id");
381
+ await client.inboxes.delete("my-agent@agentmail.to");
380
382
 
381
383
  ```
382
384
  </dd>
@@ -3180,8 +3182,8 @@ await client.drafts.getAttachment("draft_id", "attachment_id");
3180
3182
  </dl>
3181
3183
  </details>
3182
3184
 
3183
- ## Inboxes Accounts
3184
- <details><summary><code>client.inboxes.accounts.<a href="/src/api/resources/inboxes/resources/accounts/client/Client.ts">list</a>(inbox_id, { ...params }) -> AgentMail.ListAccountsResponse</code></summary>
3185
+ ## Forwarding
3186
+ <details><summary><code>client.forwarding.<a href="/src/api/resources/forwarding/client/Client.ts">get</a>() -> AgentMail.Forwarding</code></summary>
3185
3187
  <dl>
3186
3188
  <dd>
3187
3189
 
@@ -3193,7 +3195,13 @@ await client.drafts.getAttachment("draft_id", "attachment_id");
3193
3195
  <dl>
3194
3196
  <dd>
3195
3197
 
3196
- Lists accounts held by the inbox, across all apps. Requires `inbox_read`.
3198
+ Get the forwarding the organization sets. Pods and inboxes that set no forwarding of their own
3199
+ use this list. Needs an organization-scoped API key.
3200
+
3201
+ **CLI:**
3202
+ ```bash
3203
+ agentmail forwarding get
3204
+ ```
3197
3205
  </dd>
3198
3206
  </dl>
3199
3207
  </dd>
@@ -3208,7 +3216,7 @@ Lists accounts held by the inbox, across all apps. Requires `inbox_read`.
3208
3216
  <dd>
3209
3217
 
3210
3218
  ```typescript
3211
- await client.inboxes.accounts.list("inbox_id");
3219
+ await client.forwarding.get();
3212
3220
 
3213
3221
  ```
3214
3222
  </dd>
@@ -3224,23 +3232,7 @@ await client.inboxes.accounts.list("inbox_id");
3224
3232
  <dl>
3225
3233
  <dd>
3226
3234
 
3227
- **inbox_id:** `AgentMail.InboxId`
3228
-
3229
- </dd>
3230
- </dl>
3231
-
3232
- <dl>
3233
- <dd>
3234
-
3235
- **request:** `AgentMail.inboxes.ListAccountsRequest`
3236
-
3237
- </dd>
3238
- </dl>
3239
-
3240
- <dl>
3241
- <dd>
3242
-
3243
- **requestOptions:** `AccountsClient.RequestOptions`
3235
+ **requestOptions:** `ForwardingClient.RequestOptions`
3244
3236
 
3245
3237
  </dd>
3246
3238
  </dl>
@@ -3252,7 +3244,7 @@ await client.inboxes.accounts.list("inbox_id");
3252
3244
  </dl>
3253
3245
  </details>
3254
3246
 
3255
- <details><summary><code>client.inboxes.accounts.<a href="/src/api/resources/inboxes/resources/accounts/client/Client.ts">get</a>(inbox_id, account_id) -> AgentMail.Account</code></summary>
3247
+ <details><summary><code>client.forwarding.<a href="/src/api/resources/forwarding/client/Client.ts">update</a>({ ...params }) -> AgentMail.UpdateForwardingResponse</code></summary>
3256
3248
  <dl>
3257
3249
  <dd>
3258
3250
 
@@ -3264,8 +3256,14 @@ await client.inboxes.accounts.list("inbox_id");
3264
3256
  <dl>
3265
3257
  <dd>
3266
3258
 
3267
- Returns one account held by the inbox. An account elsewhere is a 404. Requires
3268
- `inbox_read`.
3259
+ Set the addresses the organization forwards to. The list replaces the current one. An address
3260
+ that is not verified is saved but receives nothing until it is verified. Needs an
3261
+ organization-scoped API key in an organization that has completed agent verification.
3262
+
3263
+ **CLI:**
3264
+ ```bash
3265
+ agentmail forwarding update --destinations ops@example.com --destinations archive@example.com
3266
+ ```
3269
3267
  </dd>
3270
3268
  </dl>
3271
3269
  </dd>
@@ -3280,7 +3278,9 @@ Returns one account held by the inbox. An account elsewhere is a 404. Requires
3280
3278
  <dd>
3281
3279
 
3282
3280
  ```typescript
3283
- await client.inboxes.accounts.get("inbox_id", "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32");
3281
+ await client.forwarding.update({
3282
+ destinations: ["destinations", "destinations"]
3283
+ });
3284
3284
 
3285
3285
  ```
3286
3286
  </dd>
@@ -3296,15 +3296,7 @@ await client.inboxes.accounts.get("inbox_id", "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ff
3296
3296
  <dl>
3297
3297
  <dd>
3298
3298
 
3299
- **inbox_id:** `AgentMail.InboxId`
3300
-
3301
- </dd>
3302
- </dl>
3303
-
3304
- <dl>
3305
- <dd>
3306
-
3307
- **account_id:** `AgentMail.AccountId`
3299
+ **request:** `AgentMail.UpdateForwardingRequest`
3308
3300
 
3309
3301
  </dd>
3310
3302
  </dl>
@@ -3312,7 +3304,7 @@ await client.inboxes.accounts.get("inbox_id", "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ff
3312
3304
  <dl>
3313
3305
  <dd>
3314
3306
 
3315
- **requestOptions:** `AccountsClient.RequestOptions`
3307
+ **requestOptions:** `ForwardingClient.RequestOptions`
3316
3308
 
3317
3309
  </dd>
3318
3310
  </dl>
@@ -3324,8 +3316,7 @@ await client.inboxes.accounts.get("inbox_id", "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ff
3324
3316
  </dl>
3325
3317
  </details>
3326
3318
 
3327
- ## Inboxes ApiKeys
3328
- <details><summary><code>client.inboxes.apiKeys.<a href="/src/api/resources/inboxes/resources/apiKeys/client/Client.ts">list</a>(inbox_id, { ...params }) -> AgentMail.ListApiKeysResponse</code></summary>
3319
+ <details><summary><code>client.forwarding.<a href="/src/api/resources/forwarding/client/Client.ts">delete</a>() -> AgentMail.Forwarding</code></summary>
3329
3320
  <dl>
3330
3321
  <dd>
3331
3322
 
@@ -3337,9 +3328,13 @@ await client.inboxes.accounts.get("inbox_id", "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ff
3337
3328
  <dl>
3338
3329
  <dd>
3339
3330
 
3331
+ Remove the organization's forwarding, so its inboxes stop forwarding unless their pod or the
3332
+ inbox sets its own. Verified addresses stay verified, so adding one again needs no new code.
3333
+ Returns `not_found` when the organization sets no forwarding.
3334
+
3340
3335
  **CLI:**
3341
3336
  ```bash
3342
- agentmail inboxes api-keys list --inbox-id <inbox_id>
3337
+ agentmail forwarding delete
3343
3338
  ```
3344
3339
  </dd>
3345
3340
  </dl>
@@ -3355,7 +3350,7 @@ agentmail inboxes api-keys list --inbox-id <inbox_id>
3355
3350
  <dd>
3356
3351
 
3357
3352
  ```typescript
3358
- await client.inboxes.apiKeys.list("inbox_id");
3353
+ await client.forwarding.delete();
3359
3354
 
3360
3355
  ```
3361
3356
  </dd>
@@ -3371,23 +3366,7 @@ await client.inboxes.apiKeys.list("inbox_id");
3371
3366
  <dl>
3372
3367
  <dd>
3373
3368
 
3374
- **inbox_id:** `AgentMail.InboxId`
3375
-
3376
- </dd>
3377
- </dl>
3378
-
3379
- <dl>
3380
- <dd>
3381
-
3382
- **request:** `AgentMail.inboxes.ListApiKeysRequest`
3383
-
3384
- </dd>
3385
- </dl>
3386
-
3387
- <dl>
3388
- <dd>
3389
-
3390
- **requestOptions:** `ApiKeysClient.RequestOptions`
3369
+ **requestOptions:** `ForwardingClient.RequestOptions`
3391
3370
 
3392
3371
  </dd>
3393
3372
  </dl>
@@ -3399,7 +3378,7 @@ await client.inboxes.apiKeys.list("inbox_id");
3399
3378
  </dl>
3400
3379
  </details>
3401
3380
 
3402
- <details><summary><code>client.inboxes.apiKeys.<a href="/src/api/resources/inboxes/resources/apiKeys/client/Client.ts">create</a>(inbox_id, { ...params }) -> AgentMail.CreateApiKeyResult</code></summary>
3381
+ <details><summary><code>client.forwarding.<a href="/src/api/resources/forwarding/client/Client.ts">startVerification</a>({ ...params }) -> AgentMail.ForwardingVerificationStarted</code></summary>
3403
3382
  <dl>
3404
3383
  <dd>
3405
3384
 
@@ -3411,9 +3390,15 @@ await client.inboxes.apiKeys.list("inbox_id");
3411
3390
  <dl>
3412
3391
  <dd>
3413
3392
 
3393
+ Email a confirmation code to an address, so it can receive forwarded mail once confirmed.
3394
+ Verification belongs to the organization: once verified, the address can be used at the
3395
+ organization, any pod and any inbox. Starting again replaces any code already sent to the
3396
+ address. Needs an organization- or pod-scoped API key in an organization that has completed
3397
+ agent verification.
3398
+
3414
3399
  **CLI:**
3415
3400
  ```bash
3416
- agentmail inboxes api-keys create --inbox-id <inbox_id> --name "My Key"
3401
+ agentmail forwarding start-verification --destination ops@example.com
3417
3402
  ```
3418
3403
  </dd>
3419
3404
  </dl>
@@ -3429,7 +3414,9 @@ agentmail inboxes api-keys create --inbox-id <inbox_id> --name "My Key"
3429
3414
  <dd>
3430
3415
 
3431
3416
  ```typescript
3432
- await client.inboxes.apiKeys.create("inbox_id", {});
3417
+ await client.forwarding.startVerification({
3418
+ destination: "destination"
3419
+ });
3433
3420
 
3434
3421
  ```
3435
3422
  </dd>
@@ -3445,15 +3432,7 @@ await client.inboxes.apiKeys.create("inbox_id", {});
3445
3432
  <dl>
3446
3433
  <dd>
3447
3434
 
3448
- **inbox_id:** `AgentMail.InboxId`
3449
-
3450
- </dd>
3451
- </dl>
3452
-
3453
- <dl>
3454
- <dd>
3455
-
3456
- **request:** `AgentMail.CreateApiKeyRequest`
3435
+ **request:** `AgentMail.StartForwardingVerificationRequest`
3457
3436
 
3458
3437
  </dd>
3459
3438
  </dl>
@@ -3461,7 +3440,7 @@ await client.inboxes.apiKeys.create("inbox_id", {});
3461
3440
  <dl>
3462
3441
  <dd>
3463
3442
 
3464
- **requestOptions:** `ApiKeysClient.RequestOptions`
3443
+ **requestOptions:** `ForwardingClient.RequestOptions`
3465
3444
 
3466
3445
  </dd>
3467
3446
  </dl>
@@ -3473,7 +3452,7 @@ await client.inboxes.apiKeys.create("inbox_id", {});
3473
3452
  </dl>
3474
3453
  </details>
3475
3454
 
3476
- <details><summary><code>client.inboxes.apiKeys.<a href="/src/api/resources/inboxes/resources/apiKeys/client/Client.ts">update</a>(inbox_id, api_key_id, { ...params }) -> AgentMail.ApiKey</code></summary>
3455
+ <details><summary><code>client.forwarding.<a href="/src/api/resources/forwarding/client/Client.ts">confirmVerification</a>({ ...params }) -> AgentMail.ForwardingVerificationConfirmed</code></summary>
3477
3456
  <dl>
3478
3457
  <dd>
3479
3458
 
@@ -3485,9 +3464,14 @@ await client.inboxes.apiKeys.create("inbox_id", {});
3485
3464
  <dl>
3486
3465
  <dd>
3487
3466
 
3467
+ Submit the code emailed by Start Verification to verify the address. A code allows 10 wrong
3468
+ attempts, then stops working even with the right code, and Start Verification sends a new one.
3469
+ Needs an organization- or pod-scoped API key in an organization that has completed agent
3470
+ verification.
3471
+
3488
3472
  **CLI:**
3489
3473
  ```bash
3490
- agentmail inboxes api-keys update --inbox-id <inbox_id> --api-key-id <api_key_id> --name "Renamed"
3474
+ agentmail forwarding confirm-verification --destination ops@example.com --code 7KQ2M-XW9PD
3491
3475
  ```
3492
3476
  </dd>
3493
3477
  </dl>
@@ -3503,7 +3487,10 @@ agentmail inboxes api-keys update --inbox-id <inbox_id> --api-key-id <api_key_id
3503
3487
  <dd>
3504
3488
 
3505
3489
  ```typescript
3506
- await client.inboxes.apiKeys.update("inbox_id", "api_key_id", {});
3490
+ await client.forwarding.confirmVerification({
3491
+ destination: "destination",
3492
+ code: "code"
3493
+ });
3507
3494
 
3508
3495
  ```
3509
3496
  </dd>
@@ -3519,23 +3506,7 @@ await client.inboxes.apiKeys.update("inbox_id", "api_key_id", {});
3519
3506
  <dl>
3520
3507
  <dd>
3521
3508
 
3522
- **inbox_id:** `AgentMail.InboxId`
3523
-
3524
- </dd>
3525
- </dl>
3526
-
3527
- <dl>
3528
- <dd>
3529
-
3530
- **api_key_id:** `AgentMail.ApiKeyId`
3531
-
3532
- </dd>
3533
- </dl>
3534
-
3535
- <dl>
3536
- <dd>
3537
-
3538
- **request:** `AgentMail.UpdateApiKeyRequest`
3509
+ **request:** `AgentMail.ConfirmForwardingVerificationRequest`
3539
3510
 
3540
3511
  </dd>
3541
3512
  </dl>
@@ -3543,7 +3514,7 @@ await client.inboxes.apiKeys.update("inbox_id", "api_key_id", {});
3543
3514
  <dl>
3544
3515
  <dd>
3545
3516
 
3546
- **requestOptions:** `ApiKeysClient.RequestOptions`
3517
+ **requestOptions:** `ForwardingClient.RequestOptions`
3547
3518
 
3548
3519
  </dd>
3549
3520
  </dl>
@@ -3555,7 +3526,8 @@ await client.inboxes.apiKeys.update("inbox_id", "api_key_id", {});
3555
3526
  </dl>
3556
3527
  </details>
3557
3528
 
3558
- <details><summary><code>client.inboxes.apiKeys.<a href="/src/api/resources/inboxes/resources/apiKeys/client/Client.ts">delete</a>(inbox_id, api_key_id) -> void</code></summary>
3529
+ ## Inboxes Accounts
3530
+ <details><summary><code>client.inboxes.accounts.<a href="/src/api/resources/inboxes/resources/accounts/client/Client.ts">list</a>(inbox_id, { ...params }) -> AgentMail.ListAccountsResponse</code></summary>
3559
3531
  <dl>
3560
3532
  <dd>
3561
3533
 
@@ -3567,10 +3539,7 @@ await client.inboxes.apiKeys.update("inbox_id", "api_key_id", {});
3567
3539
  <dl>
3568
3540
  <dd>
3569
3541
 
3570
- **CLI:**
3571
- ```bash
3572
- agentmail inboxes api-keys delete --inbox-id <inbox_id> --api-key-id <api_key_id>
3573
- ```
3542
+ Lists accounts held by the inbox, across all apps. Requires `inbox_read`.
3574
3543
  </dd>
3575
3544
  </dl>
3576
3545
  </dd>
@@ -3585,7 +3554,7 @@ agentmail inboxes api-keys delete --inbox-id <inbox_id> --api-key-id <api_key_id
3585
3554
  <dd>
3586
3555
 
3587
3556
  ```typescript
3588
- await client.inboxes.apiKeys.delete("inbox_id", "api_key_id");
3557
+ await client.inboxes.accounts.list("inbox_id");
3589
3558
 
3590
3559
  ```
3591
3560
  </dd>
@@ -3609,7 +3578,7 @@ await client.inboxes.apiKeys.delete("inbox_id", "api_key_id");
3609
3578
  <dl>
3610
3579
  <dd>
3611
3580
 
3612
- **api_key_id:** `AgentMail.ApiKeyId`
3581
+ **request:** `AgentMail.inboxes.ListAccountsRequest`
3613
3582
 
3614
3583
  </dd>
3615
3584
  </dl>
@@ -3617,7 +3586,7 @@ await client.inboxes.apiKeys.delete("inbox_id", "api_key_id");
3617
3586
  <dl>
3618
3587
  <dd>
3619
3588
 
3620
- **requestOptions:** `ApiKeysClient.RequestOptions`
3589
+ **requestOptions:** `AccountsClient.RequestOptions`
3621
3590
 
3622
3591
  </dd>
3623
3592
  </dl>
@@ -3629,8 +3598,7 @@ await client.inboxes.apiKeys.delete("inbox_id", "api_key_id");
3629
3598
  </dl>
3630
3599
  </details>
3631
3600
 
3632
- ## Inboxes Calendar
3633
- <details><summary><code>client.inboxes.calendar.<a href="/src/api/resources/inboxes/resources/calendar/client/Client.ts">get</a>(inbox_id, { ...params }) -> AgentMail.Calendar</code></summary>
3601
+ <details><summary><code>client.inboxes.accounts.<a href="/src/api/resources/inboxes/resources/accounts/client/Client.ts">get</a>(inbox_id, account_id) -> AgentMail.Account</code></summary>
3634
3602
  <dl>
3635
3603
  <dd>
3636
3604
 
@@ -3642,12 +3610,8 @@ await client.inboxes.apiKeys.delete("inbox_id", "api_key_id");
3642
3610
  <dl>
3643
3611
  <dd>
3644
3612
 
3645
- Gets the inbox's calendar. Every inbox has one calendar, so this works before any event is
3646
- created. Its `etag` (also the `ETag` response header) is the value to send in `If-Match` to
3647
- make an update conditional.
3648
-
3649
- Requires the `calendar_read` permission. Calendar is available in US production
3650
- (`api.agentmail.to`) but not yet in EU production (`api.agentmail.eu`), which returns `403`.
3613
+ Returns one account held by the inbox. An account elsewhere is a 404. Requires
3614
+ `inbox_read`.
3651
3615
  </dd>
3652
3616
  </dl>
3653
3617
  </dd>
@@ -3662,7 +3626,7 @@ Requires the `calendar_read` permission. Calendar is available in US production
3662
3626
  <dd>
3663
3627
 
3664
3628
  ```typescript
3665
- await client.inboxes.calendar.get("scheduler@agentmail.to");
3629
+ await client.inboxes.accounts.get("inbox_id", "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32");
3666
3630
 
3667
3631
  ```
3668
3632
  </dd>
@@ -3686,7 +3650,7 @@ await client.inboxes.calendar.get("scheduler@agentmail.to");
3686
3650
  <dl>
3687
3651
  <dd>
3688
3652
 
3689
- **request:** `AgentMail.inboxes.GetCalendarRequest`
3653
+ **account_id:** `AgentMail.AccountId`
3690
3654
 
3691
3655
  </dd>
3692
3656
  </dl>
@@ -3694,7 +3658,7 @@ await client.inboxes.calendar.get("scheduler@agentmail.to");
3694
3658
  <dl>
3695
3659
  <dd>
3696
3660
 
3697
- **requestOptions:** `CalendarClient.RequestOptions`
3661
+ **requestOptions:** `AccountsClient.RequestOptions`
3698
3662
 
3699
3663
  </dd>
3700
3664
  </dl>
@@ -3706,7 +3670,8 @@ await client.inboxes.calendar.get("scheduler@agentmail.to");
3706
3670
  </dl>
3707
3671
  </details>
3708
3672
 
3709
- <details><summary><code>client.inboxes.calendar.<a href="/src/api/resources/inboxes/resources/calendar/client/Client.ts">update</a>(inbox_id, { ...params }) -> AgentMail.Calendar</code></summary>
3673
+ ## Inboxes ApiKeys
3674
+ <details><summary><code>client.inboxes.apiKeys.<a href="/src/api/resources/inboxes/resources/apiKeys/client/Client.ts">list</a>(inbox_id, { ...params }) -> AgentMail.ListApiKeysResponse</code></summary>
3710
3675
  <dl>
3711
3676
  <dd>
3712
3677
 
@@ -3718,15 +3683,10 @@ await client.inboxes.calendar.get("scheduler@agentmail.to");
3718
3683
  <dl>
3719
3684
  <dd>
3720
3685
 
3721
- Updates the calendar's default time zone. Existing events keep their own `timezone`; only
3722
- events created later without a `timezone` use the new default.
3723
-
3724
- Requires the `calendar_update` permission. To make the update conditional, send the
3725
- calendar's current `etag` in `If-Match`: a stale value returns `412`. Without `If-Match` the
3726
- update applies to the calendar as it is.
3727
-
3728
- Calendar is available in US production (`api.agentmail.to`) but not yet in EU production
3729
- (`api.agentmail.eu`), which returns `403`.
3686
+ **CLI:**
3687
+ ```bash
3688
+ agentmail inboxes api-keys list --inbox-id <inbox_id>
3689
+ ```
3730
3690
  </dd>
3731
3691
  </dl>
3732
3692
  </dd>
@@ -3741,9 +3701,7 @@ Calendar is available in US production (`api.agentmail.to`) but not yet in EU pr
3741
3701
  <dd>
3742
3702
 
3743
3703
  ```typescript
3744
- await client.inboxes.calendar.update("scheduler@agentmail.to", {
3745
- timezone: "America/New_York"
3746
- });
3704
+ await client.inboxes.apiKeys.list("inbox_id");
3747
3705
 
3748
3706
  ```
3749
3707
  </dd>
@@ -3767,7 +3725,7 @@ await client.inboxes.calendar.update("scheduler@agentmail.to", {
3767
3725
  <dl>
3768
3726
  <dd>
3769
3727
 
3770
- **request:** `AgentMail.inboxes.UpdateCalendarRequestWrapper`
3728
+ **request:** `AgentMail.inboxes.ListApiKeysRequest`
3771
3729
 
3772
3730
  </dd>
3773
3731
  </dl>
@@ -3775,7 +3733,7 @@ await client.inboxes.calendar.update("scheduler@agentmail.to", {
3775
3733
  <dl>
3776
3734
  <dd>
3777
3735
 
3778
- **requestOptions:** `CalendarClient.RequestOptions`
3736
+ **requestOptions:** `ApiKeysClient.RequestOptions`
3779
3737
 
3780
3738
  </dd>
3781
3739
  </dl>
@@ -3787,7 +3745,7 @@ await client.inboxes.calendar.update("scheduler@agentmail.to", {
3787
3745
  </dl>
3788
3746
  </details>
3789
3747
 
3790
- <details><summary><code>client.inboxes.calendar.<a href="/src/api/resources/inboxes/resources/calendar/client/Client.ts">listEvents</a>(inbox_id, { ...params }) -> AgentMail.ListCalendarEventsResponse</code></summary>
3748
+ <details><summary><code>client.inboxes.apiKeys.<a href="/src/api/resources/inboxes/resources/apiKeys/client/Client.ts">create</a>(inbox_id, { ...params }) -> AgentMail.CreateApiKeyResult</code></summary>
3791
3749
  <dl>
3792
3750
  <dd>
3793
3751
 
@@ -3799,17 +3757,10 @@ await client.inboxes.calendar.update("scheduler@agentmail.to", {
3799
3757
  <dl>
3800
3758
  <dd>
3801
3759
 
3802
- Lists the events stored on the calendar: one item per one-off or recurring event, plus one
3803
- item for each edited date of a recurring event (as that dated event, with
3804
- `is_exception: true`). Ordered by most recently updated, and cancelled events are included.
3805
- Use it to sync or manage what you created. To see what is on the calendar in a time window,
3806
- use Get Agenda.
3807
-
3808
- The list is always read in the region that serves the request, so it can trail a change made
3809
- moments earlier by a few seconds. Requires the `calendar_event_read` permission.
3810
-
3811
- Calendar is available in US production (`api.agentmail.to`) but not yet in EU production
3812
- (`api.agentmail.eu`), which returns `403`.
3760
+ **CLI:**
3761
+ ```bash
3762
+ agentmail inboxes api-keys create --inbox-id <inbox_id> --name "My Key"
3763
+ ```
3813
3764
  </dd>
3814
3765
  </dl>
3815
3766
  </dd>
@@ -3824,9 +3775,7 @@ Calendar is available in US production (`api.agentmail.to`) but not yet in EU pr
3824
3775
  <dd>
3825
3776
 
3826
3777
  ```typescript
3827
- await client.inboxes.calendar.listEvents("scheduler@agentmail.to", {
3828
- limit: 50
3829
- });
3778
+ await client.inboxes.apiKeys.create("inbox_id", {});
3830
3779
 
3831
3780
  ```
3832
3781
  </dd>
@@ -3850,7 +3799,7 @@ await client.inboxes.calendar.listEvents("scheduler@agentmail.to", {
3850
3799
  <dl>
3851
3800
  <dd>
3852
3801
 
3853
- **request:** `AgentMail.inboxes.ListCalendarEventsRequest`
3802
+ **request:** `AgentMail.CreateApiKeyRequest`
3854
3803
 
3855
3804
  </dd>
3856
3805
  </dl>
@@ -3858,7 +3807,7 @@ await client.inboxes.calendar.listEvents("scheduler@agentmail.to", {
3858
3807
  <dl>
3859
3808
  <dd>
3860
3809
 
3861
- **requestOptions:** `CalendarClient.RequestOptions`
3810
+ **requestOptions:** `ApiKeysClient.RequestOptions`
3862
3811
 
3863
3812
  </dd>
3864
3813
  </dl>
@@ -3870,7 +3819,7 @@ await client.inboxes.calendar.listEvents("scheduler@agentmail.to", {
3870
3819
  </dl>
3871
3820
  </details>
3872
3821
 
3873
- <details><summary><code>client.inboxes.calendar.<a href="/src/api/resources/inboxes/resources/calendar/client/Client.ts">getAgenda</a>(inbox_id, { ...params }) -> AgentMail.ListCalendarEventsResponse</code></summary>
3822
+ <details><summary><code>client.inboxes.apiKeys.<a href="/src/api/resources/inboxes/resources/apiKeys/client/Client.ts">update</a>(inbox_id, api_key_id, { ...params }) -> AgentMail.ApiKey</code></summary>
3874
3823
  <dl>
3875
3824
  <dd>
3876
3825
 
@@ -3882,25 +3831,10 @@ await client.inboxes.calendar.listEvents("scheduler@agentmail.to", {
3882
3831
  <dl>
3883
3832
  <dd>
3884
3833
 
3885
- Lists every date on the calendar in a time window, ordered by start time: one-off events,
3886
- and recurring events expanded into their individual dates, with cancelled dates left out.
3887
- Use it to answer "what is on the calendar".
3888
-
3889
- The window defaults to now through 90 days from now and can be at most 366 days. Items omit
3890
- `description`, `metadata` and `attendees`; get an event by ID for the full object. An item
3891
- the inbox is invited to still carries `response_status`, so `needs_action` marks an
3892
- invitation waiting for a reply. Dates of
3893
- recurring events appear only up to about 90 days from now; use List Event Instances for a
3894
- recurring event's later dates. While a recurring event's dates are being regenerated after a
3895
- schedule change, which takes a few seconds, the agenda can briefly leave out some of them;
3896
- dates that have already started or ended stay as they ran.
3897
-
3898
- The agenda is read in the region that serves the request, so it can trail a change made
3899
- moments earlier by a few seconds. Pass `consistency=primary` to read your own change right
3900
- away. Requires the `calendar_event_read` permission.
3901
-
3902
- Calendar is available in US production (`api.agentmail.to`) but not yet in EU production
3903
- (`api.agentmail.eu`), which returns `403`.
3834
+ **CLI:**
3835
+ ```bash
3836
+ agentmail inboxes api-keys update --inbox-id <inbox_id> --api-key-id <api_key_id> --name "Renamed"
3837
+ ```
3904
3838
  </dd>
3905
3839
  </dl>
3906
3840
  </dd>
@@ -3915,11 +3849,7 @@ Calendar is available in US production (`api.agentmail.to`) but not yet in EU pr
3915
3849
  <dd>
3916
3850
 
3917
3851
  ```typescript
3918
- await client.inboxes.calendar.getAgenda("scheduler@agentmail.to", {
3919
- after: new Date("2026-10-07T00:00:00.000Z"),
3920
- before: new Date("2026-10-16T00:00:00.000Z"),
3921
- limit: 3
3922
- });
3852
+ await client.inboxes.apiKeys.update("inbox_id", "api_key_id", {});
3923
3853
 
3924
3854
  ```
3925
3855
  </dd>
@@ -3943,7 +3873,7 @@ await client.inboxes.calendar.getAgenda("scheduler@agentmail.to", {
3943
3873
  <dl>
3944
3874
  <dd>
3945
3875
 
3946
- **request:** `AgentMail.inboxes.GetCalendarAgendaRequest`
3876
+ **api_key_id:** `AgentMail.ApiKeyId`
3947
3877
 
3948
3878
  </dd>
3949
3879
  </dl>
@@ -3951,7 +3881,15 @@ await client.inboxes.calendar.getAgenda("scheduler@agentmail.to", {
3951
3881
  <dl>
3952
3882
  <dd>
3953
3883
 
3954
- **requestOptions:** `CalendarClient.RequestOptions`
3884
+ **request:** `AgentMail.UpdateApiKeyRequest`
3885
+
3886
+ </dd>
3887
+ </dl>
3888
+
3889
+ <dl>
3890
+ <dd>
3891
+
3892
+ **requestOptions:** `ApiKeysClient.RequestOptions`
3955
3893
 
3956
3894
  </dd>
3957
3895
  </dl>
@@ -3963,7 +3901,7 @@ await client.inboxes.calendar.getAgenda("scheduler@agentmail.to", {
3963
3901
  </dl>
3964
3902
  </details>
3965
3903
 
3966
- <details><summary><code>client.inboxes.calendar.<a href="/src/api/resources/inboxes/resources/calendar/client/Client.ts">createEvent</a>(inbox_id, { ...params }) -> AgentMail.CalendarEventMutationResponse</code></summary>
3904
+ <details><summary><code>client.inboxes.apiKeys.<a href="/src/api/resources/inboxes/resources/apiKeys/client/Client.ts">delete</a>(inbox_id, api_key_id) -> void</code></summary>
3967
3905
  <dl>
3968
3906
  <dd>
3969
3907
 
@@ -3975,28 +3913,436 @@ await client.inboxes.calendar.getAgenda("scheduler@agentmail.to", {
3975
3913
  <dl>
3976
3914
  <dd>
3977
3915
 
3978
- Creates a one-off or recurring event on the inbox's calendar. Times are wall-clock values in
3979
- `timezone` (the calendar's default time zone if omitted); the response also gives each
3980
- boundary as a UTC instant in `start_at` and `end_at`.
3981
-
3982
- `calendar.event.created` is sent once the event is stored, then `calendar.event.starting`
3983
- and `calendar.event.ending` as each date begins and ends. With `send_invites: true` the
3984
- inbox also emails an invitation to every attendee.
3985
-
3986
- Pass `client_id` to make retries safe: repeating the request with the same `client_id` and
3987
- body returns the original event with status `200` instead of `201`, for as long as the event
3988
- exists.
3989
-
3990
- With `send_invites: true`, each attendee counts as one send against the organization, pod
3991
- and inbox send limits, charged before the event is stored. An over-limit request returns
3992
- `429` `rate_limit_exceeded` and creates nothing. A replay of an earlier create is not
3993
- charged again.
3994
-
3995
- The event's `etag` is the value to send in `If-Match` to make a later update or delete
3996
- conditional. Requires the `calendar_event_create` permission.
3997
-
3998
- Calendar is available in US production (`api.agentmail.to`) but not yet in EU production
3999
- (`api.agentmail.eu`), which returns `403`.
3916
+ **CLI:**
3917
+ ```bash
3918
+ agentmail inboxes api-keys delete --inbox-id <inbox_id> --api-key-id <api_key_id>
3919
+ ```
3920
+ </dd>
3921
+ </dl>
3922
+ </dd>
3923
+ </dl>
3924
+
3925
+ #### 🔌 Usage
3926
+
3927
+ <dl>
3928
+ <dd>
3929
+
3930
+ <dl>
3931
+ <dd>
3932
+
3933
+ ```typescript
3934
+ await client.inboxes.apiKeys.delete("inbox_id", "api_key_id");
3935
+
3936
+ ```
3937
+ </dd>
3938
+ </dl>
3939
+ </dd>
3940
+ </dl>
3941
+
3942
+ #### ⚙️ Parameters
3943
+
3944
+ <dl>
3945
+ <dd>
3946
+
3947
+ <dl>
3948
+ <dd>
3949
+
3950
+ **inbox_id:** `AgentMail.InboxId`
3951
+
3952
+ </dd>
3953
+ </dl>
3954
+
3955
+ <dl>
3956
+ <dd>
3957
+
3958
+ **api_key_id:** `AgentMail.ApiKeyId`
3959
+
3960
+ </dd>
3961
+ </dl>
3962
+
3963
+ <dl>
3964
+ <dd>
3965
+
3966
+ **requestOptions:** `ApiKeysClient.RequestOptions`
3967
+
3968
+ </dd>
3969
+ </dl>
3970
+ </dd>
3971
+ </dl>
3972
+
3973
+
3974
+ </dd>
3975
+ </dl>
3976
+ </details>
3977
+
3978
+ ## Inboxes Calendar
3979
+ <details><summary><code>client.inboxes.calendar.<a href="/src/api/resources/inboxes/resources/calendar/client/Client.ts">get</a>(inbox_id, { ...params }) -> AgentMail.Calendar</code></summary>
3980
+ <dl>
3981
+ <dd>
3982
+
3983
+ #### 📝 Description
3984
+
3985
+ <dl>
3986
+ <dd>
3987
+
3988
+ <dl>
3989
+ <dd>
3990
+
3991
+ Gets the inbox's calendar. Every inbox has one calendar, so this works before any event is
3992
+ created. Its `etag` (also the `ETag` response header) is the value to send in `If-Match` to
3993
+ make an update conditional.
3994
+
3995
+ Requires the `calendar_read` permission. Calendar is available in US production
3996
+ (`api.agentmail.to`) but not yet in EU production (`api.agentmail.eu`), which returns `403`.
3997
+ </dd>
3998
+ </dl>
3999
+ </dd>
4000
+ </dl>
4001
+
4002
+ #### 🔌 Usage
4003
+
4004
+ <dl>
4005
+ <dd>
4006
+
4007
+ <dl>
4008
+ <dd>
4009
+
4010
+ ```typescript
4011
+ await client.inboxes.calendar.get("scheduler@agentmail.to");
4012
+
4013
+ ```
4014
+ </dd>
4015
+ </dl>
4016
+ </dd>
4017
+ </dl>
4018
+
4019
+ #### ⚙️ Parameters
4020
+
4021
+ <dl>
4022
+ <dd>
4023
+
4024
+ <dl>
4025
+ <dd>
4026
+
4027
+ **inbox_id:** `AgentMail.InboxId`
4028
+
4029
+ </dd>
4030
+ </dl>
4031
+
4032
+ <dl>
4033
+ <dd>
4034
+
4035
+ **request:** `AgentMail.inboxes.GetCalendarRequest`
4036
+
4037
+ </dd>
4038
+ </dl>
4039
+
4040
+ <dl>
4041
+ <dd>
4042
+
4043
+ **requestOptions:** `CalendarClient.RequestOptions`
4044
+
4045
+ </dd>
4046
+ </dl>
4047
+ </dd>
4048
+ </dl>
4049
+
4050
+
4051
+ </dd>
4052
+ </dl>
4053
+ </details>
4054
+
4055
+ <details><summary><code>client.inboxes.calendar.<a href="/src/api/resources/inboxes/resources/calendar/client/Client.ts">update</a>(inbox_id, { ...params }) -> AgentMail.Calendar</code></summary>
4056
+ <dl>
4057
+ <dd>
4058
+
4059
+ #### 📝 Description
4060
+
4061
+ <dl>
4062
+ <dd>
4063
+
4064
+ <dl>
4065
+ <dd>
4066
+
4067
+ Updates the calendar's default time zone. Existing events keep their own `timezone`; only
4068
+ events created later without a `timezone` use the new default.
4069
+
4070
+ Requires the `calendar_update` permission. To make the update conditional, send the
4071
+ calendar's current `etag` in `If-Match`: a stale value returns `412`. Without `If-Match` the
4072
+ update applies to the calendar as it is.
4073
+
4074
+ Calendar is available in US production (`api.agentmail.to`) but not yet in EU production
4075
+ (`api.agentmail.eu`), which returns `403`.
4076
+ </dd>
4077
+ </dl>
4078
+ </dd>
4079
+ </dl>
4080
+
4081
+ #### 🔌 Usage
4082
+
4083
+ <dl>
4084
+ <dd>
4085
+
4086
+ <dl>
4087
+ <dd>
4088
+
4089
+ ```typescript
4090
+ await client.inboxes.calendar.update("scheduler@agentmail.to", {
4091
+ timezone: "America/New_York"
4092
+ });
4093
+
4094
+ ```
4095
+ </dd>
4096
+ </dl>
4097
+ </dd>
4098
+ </dl>
4099
+
4100
+ #### ⚙️ Parameters
4101
+
4102
+ <dl>
4103
+ <dd>
4104
+
4105
+ <dl>
4106
+ <dd>
4107
+
4108
+ **inbox_id:** `AgentMail.InboxId`
4109
+
4110
+ </dd>
4111
+ </dl>
4112
+
4113
+ <dl>
4114
+ <dd>
4115
+
4116
+ **request:** `AgentMail.inboxes.UpdateCalendarRequestWrapper`
4117
+
4118
+ </dd>
4119
+ </dl>
4120
+
4121
+ <dl>
4122
+ <dd>
4123
+
4124
+ **requestOptions:** `CalendarClient.RequestOptions`
4125
+
4126
+ </dd>
4127
+ </dl>
4128
+ </dd>
4129
+ </dl>
4130
+
4131
+
4132
+ </dd>
4133
+ </dl>
4134
+ </details>
4135
+
4136
+ <details><summary><code>client.inboxes.calendar.<a href="/src/api/resources/inboxes/resources/calendar/client/Client.ts">listEvents</a>(inbox_id, { ...params }) -> AgentMail.ListCalendarEventsResponse</code></summary>
4137
+ <dl>
4138
+ <dd>
4139
+
4140
+ #### 📝 Description
4141
+
4142
+ <dl>
4143
+ <dd>
4144
+
4145
+ <dl>
4146
+ <dd>
4147
+
4148
+ Lists the events stored on the calendar: one item per one-off or recurring event, plus one
4149
+ item for each edited date of a recurring event (as that dated event, with
4150
+ `is_exception: true`). Ordered by most recently updated, and cancelled events are included.
4151
+ Use it to sync or manage what you created. To see what is on the calendar in a time window,
4152
+ use Get Agenda.
4153
+
4154
+ The list is always read in the region that serves the request, so it can trail a change made
4155
+ moments earlier by a few seconds. Requires the `calendar_event_read` permission.
4156
+
4157
+ Calendar is available in US production (`api.agentmail.to`) but not yet in EU production
4158
+ (`api.agentmail.eu`), which returns `403`.
4159
+ </dd>
4160
+ </dl>
4161
+ </dd>
4162
+ </dl>
4163
+
4164
+ #### 🔌 Usage
4165
+
4166
+ <dl>
4167
+ <dd>
4168
+
4169
+ <dl>
4170
+ <dd>
4171
+
4172
+ ```typescript
4173
+ await client.inboxes.calendar.listEvents("scheduler@agentmail.to", {
4174
+ limit: 50
4175
+ });
4176
+
4177
+ ```
4178
+ </dd>
4179
+ </dl>
4180
+ </dd>
4181
+ </dl>
4182
+
4183
+ #### ⚙️ Parameters
4184
+
4185
+ <dl>
4186
+ <dd>
4187
+
4188
+ <dl>
4189
+ <dd>
4190
+
4191
+ **inbox_id:** `AgentMail.InboxId`
4192
+
4193
+ </dd>
4194
+ </dl>
4195
+
4196
+ <dl>
4197
+ <dd>
4198
+
4199
+ **request:** `AgentMail.inboxes.ListCalendarEventsRequest`
4200
+
4201
+ </dd>
4202
+ </dl>
4203
+
4204
+ <dl>
4205
+ <dd>
4206
+
4207
+ **requestOptions:** `CalendarClient.RequestOptions`
4208
+
4209
+ </dd>
4210
+ </dl>
4211
+ </dd>
4212
+ </dl>
4213
+
4214
+
4215
+ </dd>
4216
+ </dl>
4217
+ </details>
4218
+
4219
+ <details><summary><code>client.inboxes.calendar.<a href="/src/api/resources/inboxes/resources/calendar/client/Client.ts">getAgenda</a>(inbox_id, { ...params }) -> AgentMail.ListCalendarEventsResponse</code></summary>
4220
+ <dl>
4221
+ <dd>
4222
+
4223
+ #### 📝 Description
4224
+
4225
+ <dl>
4226
+ <dd>
4227
+
4228
+ <dl>
4229
+ <dd>
4230
+
4231
+ Lists every date on the calendar in a time window, ordered by start time: one-off events,
4232
+ and recurring events expanded into their individual dates, with cancelled dates left out.
4233
+ Use it to answer "what is on the calendar".
4234
+
4235
+ The window defaults to now through 90 days from now and can be at most 366 days. Items omit
4236
+ `description`, `metadata` and `attendees`; get an event by ID for the full object. An item
4237
+ the inbox is invited to still carries `response_status`, so `needs_action` marks an
4238
+ invitation waiting for a reply. Dates of
4239
+ recurring events appear only up to about 90 days from now; use List Event Instances for a
4240
+ recurring event's later dates. While a recurring event's dates are being regenerated after a
4241
+ schedule change, which takes a few seconds, the agenda can briefly leave out some of them;
4242
+ dates that have already started or ended stay as they ran.
4243
+
4244
+ The agenda is read in the region that serves the request, so it can trail a change made
4245
+ moments earlier by a few seconds. Pass `consistency=primary` to read your own change right
4246
+ away. Requires the `calendar_event_read` permission.
4247
+
4248
+ Calendar is available in US production (`api.agentmail.to`) but not yet in EU production
4249
+ (`api.agentmail.eu`), which returns `403`.
4250
+ </dd>
4251
+ </dl>
4252
+ </dd>
4253
+ </dl>
4254
+
4255
+ #### 🔌 Usage
4256
+
4257
+ <dl>
4258
+ <dd>
4259
+
4260
+ <dl>
4261
+ <dd>
4262
+
4263
+ ```typescript
4264
+ await client.inboxes.calendar.getAgenda("scheduler@agentmail.to", {
4265
+ after: new Date("2026-10-07T00:00:00.000Z"),
4266
+ before: new Date("2026-10-16T00:00:00.000Z"),
4267
+ limit: 3
4268
+ });
4269
+
4270
+ ```
4271
+ </dd>
4272
+ </dl>
4273
+ </dd>
4274
+ </dl>
4275
+
4276
+ #### ⚙️ Parameters
4277
+
4278
+ <dl>
4279
+ <dd>
4280
+
4281
+ <dl>
4282
+ <dd>
4283
+
4284
+ **inbox_id:** `AgentMail.InboxId`
4285
+
4286
+ </dd>
4287
+ </dl>
4288
+
4289
+ <dl>
4290
+ <dd>
4291
+
4292
+ **request:** `AgentMail.inboxes.GetCalendarAgendaRequest`
4293
+
4294
+ </dd>
4295
+ </dl>
4296
+
4297
+ <dl>
4298
+ <dd>
4299
+
4300
+ **requestOptions:** `CalendarClient.RequestOptions`
4301
+
4302
+ </dd>
4303
+ </dl>
4304
+ </dd>
4305
+ </dl>
4306
+
4307
+
4308
+ </dd>
4309
+ </dl>
4310
+ </details>
4311
+
4312
+ <details><summary><code>client.inboxes.calendar.<a href="/src/api/resources/inboxes/resources/calendar/client/Client.ts">createEvent</a>(inbox_id, { ...params }) -> AgentMail.CalendarEventMutationResponse</code></summary>
4313
+ <dl>
4314
+ <dd>
4315
+
4316
+ #### 📝 Description
4317
+
4318
+ <dl>
4319
+ <dd>
4320
+
4321
+ <dl>
4322
+ <dd>
4323
+
4324
+ Creates a one-off or recurring event on the inbox's calendar. Times are wall-clock values in
4325
+ `timezone` (the calendar's default time zone if omitted); the response also gives each
4326
+ boundary as a UTC instant in `start_at` and `end_at`.
4327
+
4328
+ `calendar.event.created` is sent once the event is stored, then `calendar.event.starting`
4329
+ and `calendar.event.ending` as each date begins and ends. With `send_invites: true` the
4330
+ inbox also emails an invitation to every attendee.
4331
+
4332
+ Pass `client_id` to make retries safe: repeating the request with the same `client_id` and
4333
+ body returns the original event with status `200` instead of `201`, for as long as the event
4334
+ exists.
4335
+
4336
+ With `send_invites: true`, each attendee counts as one send against the organization, pod
4337
+ and inbox send limits, charged before the event is stored. An over-limit request returns
4338
+ `429` `rate_limit_exceeded` and creates nothing. A replay of an earlier create is not
4339
+ charged again.
4340
+
4341
+ The event's `etag` is the value to send in `If-Match` to make a later update or delete
4342
+ conditional. Requires the `calendar_event_create` permission.
4343
+
4344
+ Calendar is available in US production (`api.agentmail.to`) but not yet in EU production
4345
+ (`api.agentmail.eu`), which returns `403`.
4000
4346
  </dd>
4001
4347
  </dl>
4002
4348
  </dd>
@@ -5312,8 +5658,240 @@ Returns `409` if the bytes haven't been uploaded yet, or if what was uploaded do
5312
5658
  and `sha256`. Returns `404` for a file that has expired or was deleted, including a pending file not
5313
5659
  completed within a day of its creation.
5314
5660
 
5315
- Requires the `file_create` permission. Only a key with `file_read`, or the key that created the file, can
5316
- complete it; any other key gets `404`.
5661
+ Requires the `file_create` permission. Only a key with `file_read`, or the key that created the file, can
5662
+ complete it; any other key gets `404`.
5663
+ </dd>
5664
+ </dl>
5665
+ </dd>
5666
+ </dl>
5667
+
5668
+ #### 🔌 Usage
5669
+
5670
+ <dl>
5671
+ <dd>
5672
+
5673
+ <dl>
5674
+ <dd>
5675
+
5676
+ ```typescript
5677
+ await client.inboxes.files.complete("reports@agentmail.to", "6f1c2f4e-8d3b-4a5e-9c7d-1b2a3c4d5e6f");
5678
+
5679
+ ```
5680
+ </dd>
5681
+ </dl>
5682
+ </dd>
5683
+ </dl>
5684
+
5685
+ #### ⚙️ Parameters
5686
+
5687
+ <dl>
5688
+ <dd>
5689
+
5690
+ <dl>
5691
+ <dd>
5692
+
5693
+ **inbox_id:** `AgentMail.InboxId`
5694
+
5695
+ </dd>
5696
+ </dl>
5697
+
5698
+ <dl>
5699
+ <dd>
5700
+
5701
+ **file_id:** `AgentMail.FileId`
5702
+
5703
+ </dd>
5704
+ </dl>
5705
+
5706
+ <dl>
5707
+ <dd>
5708
+
5709
+ **requestOptions:** `FilesClient.RequestOptions`
5710
+
5711
+ </dd>
5712
+ </dl>
5713
+ </dd>
5714
+ </dl>
5715
+
5716
+
5717
+ </dd>
5718
+ </dl>
5719
+ </details>
5720
+
5721
+ <details><summary><code>client.inboxes.files.<a href="/src/api/resources/inboxes/resources/files/client/Client.ts">get</a>(inbox_id, file_id) -> AgentMail.File_</code></summary>
5722
+ <dl>
5723
+ <dd>
5724
+
5725
+ #### 📝 Description
5726
+
5727
+ <dl>
5728
+ <dd>
5729
+
5730
+ <dl>
5731
+ <dd>
5732
+
5733
+ Gets a file. A `ready` file comes with a fresh `download_url`, valid for up to an hour.
5734
+
5735
+ A get reads the region that serves the request, so for about a second after a delete it can still return
5736
+ the deleted file. A file that has expired returns `404` at once.
5737
+
5738
+ Requires the `file_read` permission.
5739
+ </dd>
5740
+ </dl>
5741
+ </dd>
5742
+ </dl>
5743
+
5744
+ #### 🔌 Usage
5745
+
5746
+ <dl>
5747
+ <dd>
5748
+
5749
+ <dl>
5750
+ <dd>
5751
+
5752
+ ```typescript
5753
+ await client.inboxes.files.get("reports@agentmail.to", "6f1c2f4e-8d3b-4a5e-9c7d-1b2a3c4d5e6f");
5754
+
5755
+ ```
5756
+ </dd>
5757
+ </dl>
5758
+ </dd>
5759
+ </dl>
5760
+
5761
+ #### ⚙️ Parameters
5762
+
5763
+ <dl>
5764
+ <dd>
5765
+
5766
+ <dl>
5767
+ <dd>
5768
+
5769
+ **inbox_id:** `AgentMail.InboxId`
5770
+
5771
+ </dd>
5772
+ </dl>
5773
+
5774
+ <dl>
5775
+ <dd>
5776
+
5777
+ **file_id:** `AgentMail.FileId`
5778
+
5779
+ </dd>
5780
+ </dl>
5781
+
5782
+ <dl>
5783
+ <dd>
5784
+
5785
+ **requestOptions:** `FilesClient.RequestOptions`
5786
+
5787
+ </dd>
5788
+ </dl>
5789
+ </dd>
5790
+ </dl>
5791
+
5792
+
5793
+ </dd>
5794
+ </dl>
5795
+ </details>
5796
+
5797
+ <details><summary><code>client.inboxes.files.<a href="/src/api/resources/inboxes/resources/files/client/Client.ts">list</a>(inbox_id, { ...params }) -> AgentMail.ListFilesResponse</code></summary>
5798
+ <dl>
5799
+ <dd>
5800
+
5801
+ #### 📝 Description
5802
+
5803
+ <dl>
5804
+ <dd>
5805
+
5806
+ <dl>
5807
+ <dd>
5808
+
5809
+ Lists the inbox's files in path order, pending ones included, optionally only those whose path starts with
5810
+ `path_prefix`. A prefix matches characters, not whole segments: `reports/q` matches `reports/q3.pdf`. Items
5811
+ carry no download URL; get a file for one.
5812
+
5813
+ The list is read in the region that serves the request, so a file created or deleted a moment ago may not
5814
+ show yet. Expired files never show.
5815
+
5816
+ Requires the `file_read` permission.
5817
+ </dd>
5818
+ </dl>
5819
+ </dd>
5820
+ </dl>
5821
+
5822
+ #### 🔌 Usage
5823
+
5824
+ <dl>
5825
+ <dd>
5826
+
5827
+ <dl>
5828
+ <dd>
5829
+
5830
+ ```typescript
5831
+ await client.inboxes.files.list("reports@agentmail.to", {
5832
+ pathPrefix: "reports/"
5833
+ });
5834
+
5835
+ ```
5836
+ </dd>
5837
+ </dl>
5838
+ </dd>
5839
+ </dl>
5840
+
5841
+ #### ⚙️ Parameters
5842
+
5843
+ <dl>
5844
+ <dd>
5845
+
5846
+ <dl>
5847
+ <dd>
5848
+
5849
+ **inbox_id:** `AgentMail.InboxId`
5850
+
5851
+ </dd>
5852
+ </dl>
5853
+
5854
+ <dl>
5855
+ <dd>
5856
+
5857
+ **request:** `AgentMail.inboxes.ListFilesRequest`
5858
+
5859
+ </dd>
5860
+ </dl>
5861
+
5862
+ <dl>
5863
+ <dd>
5864
+
5865
+ **requestOptions:** `FilesClient.RequestOptions`
5866
+
5867
+ </dd>
5868
+ </dl>
5869
+ </dd>
5870
+ </dl>
5871
+
5872
+
5873
+ </dd>
5874
+ </dl>
5875
+ </details>
5876
+
5877
+ <details><summary><code>client.inboxes.files.<a href="/src/api/resources/inboxes/resources/files/client/Client.ts">delete</a>(inbox_id, file_id) -> void</code></summary>
5878
+ <dl>
5879
+ <dd>
5880
+
5881
+ #### 📝 Description
5882
+
5883
+ <dl>
5884
+ <dd>
5885
+
5886
+ <dl>
5887
+ <dd>
5888
+
5889
+ Deletes a file, pending or `ready`, and frees its path at once. Its bytes are deleted, and its space given
5890
+ back to the organization's quota, within seconds. A download URL signed before the delete keeps working
5891
+ until it expires, at most an hour. Deleting a file that is already gone returns `404`.
5892
+
5893
+ Requires the `file_delete` permission. Only a key with `file_read`, or the key that created the file, can
5894
+ delete it; any other key gets `404`.
5317
5895
  </dd>
5318
5896
  </dl>
5319
5897
  </dd>
@@ -5328,7 +5906,7 @@ complete it; any other key gets `404`.
5328
5906
  <dd>
5329
5907
 
5330
5908
  ```typescript
5331
- await client.inboxes.files.complete("reports@agentmail.to", "6f1c2f4e-8d3b-4a5e-9c7d-1b2a3c4d5e6f");
5909
+ await client.inboxes.files.delete("reports@agentmail.to", "6f1c2f4e-8d3b-4a5e-9c7d-1b2a3c4d5e6f");
5332
5910
 
5333
5911
  ```
5334
5912
  </dd>
@@ -5372,7 +5950,8 @@ await client.inboxes.files.complete("reports@agentmail.to", "6f1c2f4e-8d3b-4a5e-
5372
5950
  </dl>
5373
5951
  </details>
5374
5952
 
5375
- <details><summary><code>client.inboxes.files.<a href="/src/api/resources/inboxes/resources/files/client/Client.ts">get</a>(inbox_id, file_id) -> AgentMail.File_</code></summary>
5953
+ ## Inboxes Forwarding
5954
+ <details><summary><code>client.inboxes.forwarding.<a href="/src/api/resources/inboxes/resources/forwarding/client/Client.ts">get</a>(inbox_id) -> AgentMail.Forwarding</code></summary>
5376
5955
  <dl>
5377
5956
  <dd>
5378
5957
 
@@ -5384,12 +5963,13 @@ await client.inboxes.files.complete("reports@agentmail.to", "6f1c2f4e-8d3b-4a5e-
5384
5963
  <dl>
5385
5964
  <dd>
5386
5965
 
5387
- Gets a file. A `ready` file comes with a fresh `download_url`, valid for up to an hour.
5388
-
5389
- A get reads the region that serves the request, so for about a second after a delete it can still return
5390
- the deleted file. A file that has expired returns `404` at once.
5966
+ Get the forwarding this inbox sets. When the inbox sets nothing, `destinations` is `null` and
5967
+ the inbox uses its pod's forwarding, or the organization's when the pod sets none.
5391
5968
 
5392
- Requires the `file_read` permission.
5969
+ **CLI:**
5970
+ ```bash
5971
+ agentmail inboxes forwarding get --inbox-id <inbox_id>
5972
+ ```
5393
5973
  </dd>
5394
5974
  </dl>
5395
5975
  </dd>
@@ -5404,7 +5984,7 @@ Requires the `file_read` permission.
5404
5984
  <dd>
5405
5985
 
5406
5986
  ```typescript
5407
- await client.inboxes.files.get("reports@agentmail.to", "6f1c2f4e-8d3b-4a5e-9c7d-1b2a3c4d5e6f");
5987
+ await client.inboxes.forwarding.get("inbox_id");
5408
5988
 
5409
5989
  ```
5410
5990
  </dd>
@@ -5428,15 +6008,7 @@ await client.inboxes.files.get("reports@agentmail.to", "6f1c2f4e-8d3b-4a5e-9c7d-
5428
6008
  <dl>
5429
6009
  <dd>
5430
6010
 
5431
- **file_id:** `AgentMail.FileId`
5432
-
5433
- </dd>
5434
- </dl>
5435
-
5436
- <dl>
5437
- <dd>
5438
-
5439
- **requestOptions:** `FilesClient.RequestOptions`
6011
+ **requestOptions:** `ForwardingClient.RequestOptions`
5440
6012
 
5441
6013
  </dd>
5442
6014
  </dl>
@@ -5448,7 +6020,7 @@ await client.inboxes.files.get("reports@agentmail.to", "6f1c2f4e-8d3b-4a5e-9c7d-
5448
6020
  </dl>
5449
6021
  </details>
5450
6022
 
5451
- <details><summary><code>client.inboxes.files.<a href="/src/api/resources/inboxes/resources/files/client/Client.ts">list</a>(inbox_id, { ...params }) -> AgentMail.ListFilesResponse</code></summary>
6023
+ <details><summary><code>client.inboxes.forwarding.<a href="/src/api/resources/inboxes/resources/forwarding/client/Client.ts">update</a>(inbox_id, { ...params }) -> AgentMail.UpdateForwardingResponse</code></summary>
5452
6024
  <dl>
5453
6025
  <dd>
5454
6026
 
@@ -5460,14 +6032,15 @@ await client.inboxes.files.get("reports@agentmail.to", "6f1c2f4e-8d3b-4a5e-9c7d-
5460
6032
  <dl>
5461
6033
  <dd>
5462
6034
 
5463
- Lists the inbox's files in path order, pending ones included, optionally only those whose path starts with
5464
- `path_prefix`. A prefix matches characters, not whole segments: `reports/q` matches `reports/q3.pdf`. Items
5465
- carry no download URL; get a file for one.
5466
-
5467
- The list is read in the region that serves the request, so a file created or deleted a moment ago may not
5468
- show yet. Expired files never show.
6035
+ Set the addresses this inbox forwards to. The list replaces the inbox's current one and any pod
6036
+ or organization list for this inbox; lists are never combined. Send an empty list to stop this
6037
+ inbox forwarding even when its pod or the organization forwards. An address that is not
6038
+ verified is saved but receives nothing until it is verified.
5469
6039
 
5470
- Requires the `file_read` permission.
6040
+ **CLI:**
6041
+ ```bash
6042
+ agentmail inboxes forwarding update --inbox-id <inbox_id> --destinations ops@example.com
6043
+ ```
5471
6044
  </dd>
5472
6045
  </dl>
5473
6046
  </dd>
@@ -5482,8 +6055,8 @@ Requires the `file_read` permission.
5482
6055
  <dd>
5483
6056
 
5484
6057
  ```typescript
5485
- await client.inboxes.files.list("reports@agentmail.to", {
5486
- pathPrefix: "reports/"
6058
+ await client.inboxes.forwarding.update("inbox_id", {
6059
+ destinations: ["destinations", "destinations"]
5487
6060
  });
5488
6061
 
5489
6062
  ```
@@ -5508,7 +6081,7 @@ await client.inboxes.files.list("reports@agentmail.to", {
5508
6081
  <dl>
5509
6082
  <dd>
5510
6083
 
5511
- **request:** `AgentMail.inboxes.ListFilesRequest`
6084
+ **request:** `AgentMail.UpdateForwardingRequest`
5512
6085
 
5513
6086
  </dd>
5514
6087
  </dl>
@@ -5516,7 +6089,7 @@ await client.inboxes.files.list("reports@agentmail.to", {
5516
6089
  <dl>
5517
6090
  <dd>
5518
6091
 
5519
- **requestOptions:** `FilesClient.RequestOptions`
6092
+ **requestOptions:** `ForwardingClient.RequestOptions`
5520
6093
 
5521
6094
  </dd>
5522
6095
  </dl>
@@ -5528,7 +6101,7 @@ await client.inboxes.files.list("reports@agentmail.to", {
5528
6101
  </dl>
5529
6102
  </details>
5530
6103
 
5531
- <details><summary><code>client.inboxes.files.<a href="/src/api/resources/inboxes/resources/files/client/Client.ts">delete</a>(inbox_id, file_id) -> void</code></summary>
6104
+ <details><summary><code>client.inboxes.forwarding.<a href="/src/api/resources/inboxes/resources/forwarding/client/Client.ts">delete</a>(inbox_id) -> AgentMail.Forwarding</code></summary>
5532
6105
  <dl>
5533
6106
  <dd>
5534
6107
 
@@ -5540,12 +6113,13 @@ await client.inboxes.files.list("reports@agentmail.to", {
5540
6113
  <dl>
5541
6114
  <dd>
5542
6115
 
5543
- Deletes a file, pending or `ready`, and frees its path at once. Its bytes are deleted, and its space given
5544
- back to the organization's quota, within seconds. A download URL signed before the delete keeps working
5545
- until it expires, at most an hour. Deleting a file that is already gone returns `404`.
6116
+ Remove this inbox's own forwarding, so the inbox uses its pod's or the organization's forwarding
6117
+ again. Verified addresses stay verified. Returns `not_found` when the inbox sets no forwarding.
5546
6118
 
5547
- Requires the `file_delete` permission. Only a key with `file_read`, or the key that created the file, can
5548
- delete it; any other key gets `404`.
6119
+ **CLI:**
6120
+ ```bash
6121
+ agentmail inboxes forwarding delete --inbox-id <inbox_id>
6122
+ ```
5549
6123
  </dd>
5550
6124
  </dl>
5551
6125
  </dd>
@@ -5560,7 +6134,7 @@ delete it; any other key gets `404`.
5560
6134
  <dd>
5561
6135
 
5562
6136
  ```typescript
5563
- await client.inboxes.files.delete("reports@agentmail.to", "6f1c2f4e-8d3b-4a5e-9c7d-1b2a3c4d5e6f");
6137
+ await client.inboxes.forwarding.delete("inbox_id");
5564
6138
 
5565
6139
  ```
5566
6140
  </dd>
@@ -5584,15 +6158,7 @@ await client.inboxes.files.delete("reports@agentmail.to", "6f1c2f4e-8d3b-4a5e-9c
5584
6158
  <dl>
5585
6159
  <dd>
5586
6160
 
5587
- **file_id:** `AgentMail.FileId`
5588
-
5589
- </dd>
5590
- </dl>
5591
-
5592
- <dl>
5593
- <dd>
5594
-
5595
- **requestOptions:** `FilesClient.RequestOptions`
6161
+ **requestOptions:** `ForwardingClient.RequestOptions`
5596
6162
 
5597
6163
  </dd>
5598
6164
  </dl>
@@ -10661,6 +11227,227 @@ await client.pods.drafts.getAttachment("pod_id", "draft_id", "attachment_id");
10661
11227
  </dl>
10662
11228
 
10663
11229
 
11230
+ </dd>
11231
+ </dl>
11232
+ </details>
11233
+
11234
+ ## Pods Forwarding
11235
+ <details><summary><code>client.pods.forwarding.<a href="/src/api/resources/pods/resources/forwarding/client/Client.ts">get</a>(pod_id) -> AgentMail.Forwarding</code></summary>
11236
+ <dl>
11237
+ <dd>
11238
+
11239
+ #### 📝 Description
11240
+
11241
+ <dl>
11242
+ <dd>
11243
+
11244
+ <dl>
11245
+ <dd>
11246
+
11247
+ Get the forwarding this pod sets. Its inboxes that set no forwarding of their own use this
11248
+ list. When the pod sets nothing, `destinations` is `null` and the pod uses the organization's
11249
+ forwarding.
11250
+
11251
+ **CLI:**
11252
+ ```bash
11253
+ agentmail pods forwarding get --pod-id <pod_id>
11254
+ ```
11255
+ </dd>
11256
+ </dl>
11257
+ </dd>
11258
+ </dl>
11259
+
11260
+ #### 🔌 Usage
11261
+
11262
+ <dl>
11263
+ <dd>
11264
+
11265
+ <dl>
11266
+ <dd>
11267
+
11268
+ ```typescript
11269
+ await client.pods.forwarding.get("pod_id");
11270
+
11271
+ ```
11272
+ </dd>
11273
+ </dl>
11274
+ </dd>
11275
+ </dl>
11276
+
11277
+ #### ⚙️ Parameters
11278
+
11279
+ <dl>
11280
+ <dd>
11281
+
11282
+ <dl>
11283
+ <dd>
11284
+
11285
+ **pod_id:** `AgentMail.PodId`
11286
+
11287
+ </dd>
11288
+ </dl>
11289
+
11290
+ <dl>
11291
+ <dd>
11292
+
11293
+ **requestOptions:** `ForwardingClient.RequestOptions`
11294
+
11295
+ </dd>
11296
+ </dl>
11297
+ </dd>
11298
+ </dl>
11299
+
11300
+
11301
+ </dd>
11302
+ </dl>
11303
+ </details>
11304
+
11305
+ <details><summary><code>client.pods.forwarding.<a href="/src/api/resources/pods/resources/forwarding/client/Client.ts">update</a>(pod_id, { ...params }) -> AgentMail.UpdateForwardingResponse</code></summary>
11306
+ <dl>
11307
+ <dd>
11308
+
11309
+ #### 📝 Description
11310
+
11311
+ <dl>
11312
+ <dd>
11313
+
11314
+ <dl>
11315
+ <dd>
11316
+
11317
+ Set the addresses this pod forwards to. The list replaces the pod's current one and the
11318
+ organization's list for this pod; lists are never combined. Send an empty list to stop
11319
+ forwarding in this pod even when the organization forwards. An address that is not verified is
11320
+ saved but receives nothing until it is verified.
11321
+
11322
+ **CLI:**
11323
+ ```bash
11324
+ agentmail pods forwarding update --pod-id <pod_id> --destinations ops@example.com
11325
+ ```
11326
+ </dd>
11327
+ </dl>
11328
+ </dd>
11329
+ </dl>
11330
+
11331
+ #### 🔌 Usage
11332
+
11333
+ <dl>
11334
+ <dd>
11335
+
11336
+ <dl>
11337
+ <dd>
11338
+
11339
+ ```typescript
11340
+ await client.pods.forwarding.update("pod_id", {
11341
+ destinations: ["destinations", "destinations"]
11342
+ });
11343
+
11344
+ ```
11345
+ </dd>
11346
+ </dl>
11347
+ </dd>
11348
+ </dl>
11349
+
11350
+ #### ⚙️ Parameters
11351
+
11352
+ <dl>
11353
+ <dd>
11354
+
11355
+ <dl>
11356
+ <dd>
11357
+
11358
+ **pod_id:** `AgentMail.PodId`
11359
+
11360
+ </dd>
11361
+ </dl>
11362
+
11363
+ <dl>
11364
+ <dd>
11365
+
11366
+ **request:** `AgentMail.UpdateForwardingRequest`
11367
+
11368
+ </dd>
11369
+ </dl>
11370
+
11371
+ <dl>
11372
+ <dd>
11373
+
11374
+ **requestOptions:** `ForwardingClient.RequestOptions`
11375
+
11376
+ </dd>
11377
+ </dl>
11378
+ </dd>
11379
+ </dl>
11380
+
11381
+
11382
+ </dd>
11383
+ </dl>
11384
+ </details>
11385
+
11386
+ <details><summary><code>client.pods.forwarding.<a href="/src/api/resources/pods/resources/forwarding/client/Client.ts">delete</a>(pod_id) -> AgentMail.Forwarding</code></summary>
11387
+ <dl>
11388
+ <dd>
11389
+
11390
+ #### 📝 Description
11391
+
11392
+ <dl>
11393
+ <dd>
11394
+
11395
+ <dl>
11396
+ <dd>
11397
+
11398
+ Remove this pod's own forwarding, so the pod uses the organization's forwarding again. Verified
11399
+ addresses stay verified. Returns `not_found` when the pod sets no forwarding.
11400
+
11401
+ **CLI:**
11402
+ ```bash
11403
+ agentmail pods forwarding delete --pod-id <pod_id>
11404
+ ```
11405
+ </dd>
11406
+ </dl>
11407
+ </dd>
11408
+ </dl>
11409
+
11410
+ #### 🔌 Usage
11411
+
11412
+ <dl>
11413
+ <dd>
11414
+
11415
+ <dl>
11416
+ <dd>
11417
+
11418
+ ```typescript
11419
+ await client.pods.forwarding.delete("pod_id");
11420
+
11421
+ ```
11422
+ </dd>
11423
+ </dl>
11424
+ </dd>
11425
+ </dl>
11426
+
11427
+ #### ⚙️ Parameters
11428
+
11429
+ <dl>
11430
+ <dd>
11431
+
11432
+ <dl>
11433
+ <dd>
11434
+
11435
+ **pod_id:** `AgentMail.PodId`
11436
+
11437
+ </dd>
11438
+ </dl>
11439
+
11440
+ <dl>
11441
+ <dd>
11442
+
11443
+ **requestOptions:** `ForwardingClient.RequestOptions`
11444
+
11445
+ </dd>
11446
+ </dl>
11447
+ </dd>
11448
+ </dl>
11449
+
11450
+
10664
11451
  </dd>
10665
11452
  </dl>
10666
11453
  </details>